Mac
 Computer >> コンピューター >  >> システム >> Mac

Node-Pixelでオンラインコミュニティを築く――アンドリュー・フィッシャー流のコミュニティ運営術

Node-Pixelでオンラインコミュニティを築く――アンドリュー・フィッシャー流のコミュニティ運営術

By Gitter

アンドリュー・フィッシャーは、ハードウェアとソフトウェアを融合させ、美しいライティング効果を実現するプロジェクトに取り組む開発者です。今回は、彼がNode-Pixelプロジェクトを取り巻くオープンソースコミュニティをどのように育成・管理しているのか、その秘訣を伺いました。ぜひ彼の言葉を読み、Node-PixelのGitterチャンネルもチェックしてみてください。

自己紹介とNode-Pixelとは?

——まず、ご自身とNode-Pixelコミュニティについて教えてください。Node-Pixelとはどのようなプロジェクトで、どのように始まったのですか?

私は20年のキャリアを持つWeb開発者で、現在はLUXE City GuidesのCTOを務めています。これまで常にさまざまな形でオープンソースコミュニティに関わり、ここ数年はJavaScript Robotics(nodebots)コミュニティに深く携わってきました。

Node-Pixelはそこから生まれたプロジェクトで、ハードウェアとソフトウェア(JavaScript)を明確に組み合わせて美しいライティング効果を作り出すものです。きっかけは、JSハードウェア界隈では歴史的にそれを簡単に実現する手段がなかったことに加え、私自身が「綺麗な光」に目がない人間だったからです。ならば自分で作ってしまおう、と決めました。

コミュニティはJohnny-FiveやNodeBotsコミュニティのサブセットであり、特にハードウェア照明に関心を持つメンバーで構成されています(他のグループは伝統的なロボティクスやホームオートメーションなどに関心があります)。このプロジェクトには、世界各地から非常に才能ある開発者たちがコミットしてくれており、「JavaScriptからハードウェア照明を直感的に制御できるようにする」という目標の実現を支えてくれています。

コミュニティとしての共通の目標

——コミュニティとして共有している目標は何ですか?

先ほど説明した通りですが、要するに「人々がJavaScriptでハードウェアを活用できるようにしたい」、特に高度なハードウェアをシンプルな方法で扱えるようにしたい、という願いです。

最近、最もワクワクしている取り組み

——Node-Pixelプロジェクトに関連する話題の中で、最近特に exciting なものは何ですか?

間違いなくInterchangeとの統合です。Interchangeは私自身も関わっているプロジェクトで、pipやnpmがPythonやJavaScriptのモジュールに対して果たす役割と同じことを、ハードウェアファームウェアに対して実現します。つまり、特定ターゲット向けのパッケージ管理システムです。

Node-Pixelプロジェクトは、JSハードウェア界におけるこの必要性を示し、Interchange誕生のきっかけとなりました。そのため、Node-PixelをInterchangeと完全互換にすることが現在の大きな目標です。

さらにその先にあるのは、アニメーション機能などの強化です。本当に洗練されたライティング効果を作り出し、それらすべてをNode.jsから、あるいは将来的にはブラウザから直接トリガーできるようにしていきたいと考えています。

コミュニティ成功の鍵:透明性と行動規範

——コミュニティの作成・維持において考慮した最重要ポイントは? 成功につながった要素は?

最大の要素は透明性だと思います。GitterとGitHub Issuesを大きな柱として活用し、地理的に離れた人々同士のコラボレーションを促進しています。議論のログが残っていることで、ある決定の背景にある理由をコミュニティに説明しやすくなります。これは、プロジェクトのユーザーではあってもコントリビューターではない人々にとって特に価値があります。

関連して、プロジェクトへの貢献には行動規範(Code of Conduct)を設けており、当初から「オープンで、信頼でき、安全で、責任あるコミュニティ」を育てる努力を続けてきました。「それが当たり前のルールだ」という形で最初に掲げると、参加者も自然とその基準を受け入れやすくなります。Node-Pixelはその点でうまくいっていますが、これはJohnny-FiveやJavaScript界全体が「安全な場所づくり」のために積み上げてきた、より広範な活動の恩恵でもあります。

コミュニティ管理の最大の難題

——コミュニティを管理するうえで直面する主な課題は?

タイムゾーン!!!!

私はオーストラリアにいて、共同作業者のほとんどは米国とEUにいます。機能開発などを進める際に、全員の時間帯が重なる場面を作るのは本当に大変です。太平洋かインド洋を半分のサイズに縮められればいいのに、と思っています;)

Gitterチャンネルで交わされる主な話題

——Node-PixelのGitterチャンネルでは、主にどんなことが議論されていますか?

日々のやり取りの多くは、プロジェクト利用者へのサポートです。私たちは「Gitterを主要なサポートチャンネルとして使っている」ことを公言しているので、気軽に立ち寄って質問するよう促しています。おかげで、新しいユーザーは素早くプロジェクトを動かせるようになります。

それ以外では、機能構築中のアプローチに関する議論や、コードレビューのメモなど、活発なやり取りが行われています。GitHubももちろん役立ちますが、私たちの場合は、まずGitterで自由に意見を交わして方向性を固め、その後にGitHubで課題と解決の手順を文書化する、という二段階の使い方をしています。

オープンソースコミュニティの変化と進化

——これまでの経験から、オープンソースコミュニティはここ数年で変化・進化したと感じますか?

間違いなく変わりました。良い面と悪い面の両方があります。

良い面として、オープンソースはソフトウェア開発のあり方をめぐる争いでほぼ「勝利」しました。開発者として、自分のプロジェクトで実行するコードを見て、検証し、変更できるのは理想的です。ソフトウェア開発は誰にとってもはるかにオープンになり、情報不足ゆえに過去の失敗を繰り返さずに済むことが、将来の開発者の学びにつながっているはずです。

一方、悪い面は「無料」部分の過剰な消費です。プロジェクトの利用者が、「頼んだのだからすぐ修正されるべき」「新機能を追加されるべき」と期待しがちになるのです。こうした姿勢を和らげるためにも、チャットツールなどを通じて人々と対話することは非常に価値があります。実際、うまく声をかければ、相手が自らコントリビュートし、自分の欲しい機能をプロジェクトの一部として作ってくれることも少なくありません。

全体として見れば、コミュニティは今や本当の意味での「コミュニティ」になっています。良い面が悪い面を確実に上回っていますが、すべてのプロジェクトがより良い体験を得られるよう、私たちは常に改善策を考え続けるべきでしょう。

ゼロからコミュニティを始める人へのアドバイス:「自分と会話せよ」

——ゼロからオンラインのオープンソースコミュニティを始めたい人に、どんなアドバイスをしますか?

自分自身と会話することです。

奇妙に聞こえるかもしれませんね。しかし、プロジェクトに取り組むのが自分だけのときは、気が重くなりがちです。アイデアがあり、コードを公開し、誰かが細かい指摘をしてくるのを待つ。自分を批判に晒すことになるわけですから、かなりの勇気が必要です。

私がこれを乗り越える方法の一つは、GitHubでIssueを立てて自分自身にアサインすることです。自分のコードを自分でレビューしてメモを取り、修正のためのチケットを立てます。さらに、誰も読まないだろうと思いつつも、現在のステータスなどをGitterによく書き込んでいます。

ところが、このアプローチには思わぬ効果があります。後で他の人にプロジェクトを説明するときの言葉遣いが洗練されていくのです。さらに、ドキュメント、意思決定の根拠、そしてプロジェクトの「活気」が自然と蓄積され、他の人がコントリビュートしやすくなります。たとえ彼らが「独り言を言う変人とコラボしている」と思ったとしても(実は、みんな心の中では独り言を言っているものです)。

だからこそ、私のアドバイスは「自分と会話せよ」です。プロジェクトを明確に言語化でき、あなた自身が親しみやすい存在になります。コミュニティは必ず一人の人間から始まるもの。その「最初の一人」になりましょう。

ありがとうございました!


無料でプログラミングを学ぼう。freeCodeCampのオープンソースカリキュラムは、これまで4万人以上の人々を開発者としての就職へと導いてきました。さあ、あなたも始めてみませんか。

  1. Xbox OneコントローラーをMacに接続する方法|ドライバ導入から各種設定まで徹底解説

    Xbox Oneコントローラーは、市場に出ているゲームパッドの中でも最高クラスの完成度を誇るデバイスです。その使いやすさと人間工学的な設計は、まさにお手本のような出来栄えです。長年にわたり大きな変更がほとんど加えられてこなかったという事実こそが、MicrosoftがXboxコントローラーをいかに「正しく」設計したかを物語っています。鋭利なエッジは一切なく、すべてのボタンが指を伸ばせばすぐ届く位置にあり、手のサイズを問わず快適にフィットし、直感的に操作できる理想的なレイアウトです。 しかし、そんなXbox OneコントローラーをMacに接続するのは、それほど簡単な話ではありません。macOSで

  2. macOS MojaveからHigh Sierraへダウングレード(ロールバック)する方法

    macOS Mojaveがベータ版としてリリースされた際にインストールしたものの、普段使っているアプリとの相性が悪く快適に使えない——そんな経験はありませんか?その場合は、High Sierraへのダウングレード(ロールバック)がおすすめです。もちろん、元に戻すことは可能ですが、作業には時間がかかるため、手順を正確に踏むことが重要です。 この記事では、macOSをMojaveからHigh Sierraへダウングレードする方法を、ステップごとに詳しく解説します。 ダウングレードが必要かどうか、まず確認しよう 動作が重いなどのパフォーマンス問題を抱えていてダウングレードを検討しているなら、その前に