グーテンベルクへの貢献:新しい貢献者の経験

公開: 2018-10-13

以下は、グーテンベルクの学習と貢献の経験を共有するクリス・ヴァン・パッテンによるゲスト投稿です。 グーテンベルクの新しい貢献者の参入障壁が高いという話はたくさんあります。 Van Pattenは、雑誌出版社のデジタルエージェンシーであるTomodomoの創設者です。


過去数か月間、特に過去数週間にわたって、WordPress用の次のGutenbergエディターに貢献する際に存在する参入障壁について広範な会話がありました。

もちろん、すべての人の経験は主観的でユニークです。 誰もが感じたことを理解するふりをすることはできません。 しかし、私の経験は、一部の人々が明確に述べてきたものとは異なり、私自身の見解を共有したいと思いました。

初期の頃

私は人生の半分近くの間WordPressを使用してきました。 今ではほぼ15年。 私はWordPressの初期のバージョンのいくつかを覚えています:古典的なテーマ、キューブリックの出現、MP6、今日まで。

WordPressバックエンドの初期

コミュニティの多くの人と同じように、私は完全に独学です。 私にはコンピュータサイエンスのバックグラウンドがなく、正式な指導も受けていません。 変更を加えたいと思ったので、試行錯誤し、ファイルを微調整し、サイトを壊してコードを取得しました。

それらの初期の頃から、WordPressは、個人的なプロジェクトと私の代理店Tomodomoのクライアントの両方にとって常に私の選択したCMSでした。 しかし、私がWordPressプラットフォームにコミットしたとしても、私の貢献は限られていました。

Tracへの投稿に関する規則、儀式、およびエチケットは、難解で判読できないように見えました。 今日まで、私の人生がそれに依存しているなら、私はSVNパッチを作ることができませんでした。 そして、長年の歴史と下位互換性を備えたコアコードの多くは、私が区別するのが困難でした。

その代わりに、私は他の方法で貢献しました。私が構築していたシンプルなカスタムプラグインをオープンソーシングし、WordCampsとミートアップを整理し、世界中のWordCampsで講演しました。 しかし、私はそれらのとらえどころのない「小道具」を手に入れる方法を見つけることができなかったことをいつも気にしました。

(さて、私は実際に1つのリリースで小道具を入手しましたが、それは間違いだったと確信しています。チケットを開いたり、パッチを提供したりしていませんでした。)

行く…行く…グーテンベルク

グーテンベルクについて最初に学び、探求を始めたとき、私は不安でした。 最初は怖そうだった。 私のJavaScriptの能力はjQueryを超えて拡張されませんでした。 Reactは不可解であり、その背後にあるアイデアのいくつかを理解するには博士号が必要なようでした。 私はまだWebpackがその魔法をどのように機能させるのか理解していません。 本当に誰かいますか?

しかし、新しいブロックインターフェイスの可能性は無視できないほど魅力的だったので、私は飛び込んで、それがどのように機能するかを理解し始めました。 当時(今年の初め)、グーテンベルクはまだかなり荒れていて、改善の機会がたくさんありました。 私はGitHubリポジトリに潜んでいて、問題を読み、コードを調べて、一般的に何が起こっているのか頭を包み込もうとしました。

クライアントプロジェクトでグーテンベルクをいじっていたときに、ユーザーインターフェイスのバグなどの単純な問題の報告を開始しました。 私はチケットについてコメントし始め、通常は特定の機能の提案を提供し、独立した開発者の観点から提唱しようとしました。

私も最初のプルリクエストを提出しました! シンプルでした。 READMEを更新して、毎週の#core-editor会議の日時を含めました(疑問がある場合は、水曜日の午後1時UTC)。 それは不吉な始まりでしたが、私はそれを統合することに興奮していました。

時間が経つにつれて、私の知識は成長しました。 それは、Web開発の初期の頃のようで、ここでCSSプロパティを学び、そこでHTML要素を学びました。 コンポーネントとは何か、さまざまな状況でそれらを再利用する方法を学びました。 JSX、ES6、およびGutenlandで遭遇する他のクレイジーな頭字語のいくつかについて学びました。

グーテンベルクを使ってさらに構築するにつれて、グーテンベルク自体を構築する新しい方法も見つけていました。 私はより多くの議論を理解し、私の考えや提案を提供することができました。 私はプルリクエストを開き始めました。主に設計の問題を扱いましたが、小さなバグや癖も解決しました。 以前にREADMEに追加した毎週の会議に出席することにしました。共有する視点がもっとあると感じたときにチャイムを鳴らしました。

今日、既存のチケットに関する数十のコメントに加えて、25の新しい問題と27のプルリクエストがあります。 私はGitHubのGutenbergチームの「メンバー」であり、新しいバグをトリアージしたり、プルリクエストを確認したりする時間を毎日見つけようとしています。 その時点に到達するのに1年のほとんどを要しました、そしてそれは確かに必ずしも容易ではありませんでした。 まだ学ぶことがたくさんあります。

グーテンベルクに貢献することがいかに難しいかを聞いたとき、それを自分の経験と調和させることはできません。 それが簡単だと言っているわけではありません。グーテンベルクはWordPressコアとは非常に異なる方法で物事を行い、間違いなく学習曲線があります。

グーテンベルクに貢献するためのアドバイス

初日からコーディングに慣れていない場合は、他にも多くの貢献方法があります。 問題を読み、独自のアイデアや提案を追加します。 バグレポートをテストして複製してみてください。 タイプミスや文法の修正については、インラインドキュメントを調べてください。 これらはすべて価値があり、常に高く評価されています。

浸透を介してGutenを吸収すると、コードが思ったほど難しくないことがわかります。コードはまったく異なります。 グーテンベルクを構築するインテリジェントな人々は、「コンピューターサイエンス」のビットを隠すのに素晴らしい仕事をしてきたので、残りの人はデータバインディングやその他の複雑なアイデアについて心配する必要はありません。 状態管理、データストア、またはコンテキストAPIについてはまだ説明できませんが、改善すべきコードの小さな領域を見つけることができました。

これは、グーテンベルクとその発展に対する誰かの欲求不満や混乱を否定するものではありません。 ドキュメントはまだ多くの場所で不足しています。 一部のAPIは直感的ではありません。 ツールの設定は最も簡単ではありません。 これらは本当の問題であり、私はそれらが存在しないふりをしたくありません。 間違いなく、グーテンベルクの開発を容易にするためにもっと多くのことを行うことができます。

そしてもちろん、私には確認する特権があります。GitHubリポジトリで過ごしたり、コードを試したり、毎週の会議に参加したりできるのは幸運です。 それは多くの人にとって現実ではないことを私は認識しています。

時間が見つからない場合でも、Classic Editorは引き続きオプションであり、アップグレードを延長することは恥ずべきことではありません。 グーテンベルクの経験が私たち全員が望むほど直感的になるには時間がかかるかもしれません、そしてそれを待つことは完全に合理的です。

しかし、WordPressが何であるかについてのいくつかの新しいアイデアに自分自身を開き、時間を作ることができれば、貢献することがいかに簡単であるかに驚くかもしれません。 困ったときは、#core-editorまたはフォーラムにアクセスしてください。 バグレポートや提案を投稿することを恐れないでください。 以前に報告された場合は、別の問題と統合する可能性がありますが、追加情報は依然として価値があります。 すべての経験が重要です。

私はグーテンベルクとのWordPressの将来に非常に興奮しており、ついに本当のWordPressの貢献者になることができます。 まだまだ長い道のりですが、それは違いを生むためのエキサイティングな方法がまだたくさんあることを意味します。 プロジェクトは、より独立したコミュニティの声が鳴り響く中でのみ、より強力になります。

ぜひご参加ください!