私は空き時間に小さなチームでいくつかのプロジェクトに取り組んでいます。私たちは輪になって製品を開発できないという問題を抱えていますが、これは私の日常の仕事では問題ではありません. 対面でのコミュニケーションの欠如は、生産性に大きな影響を与えているようです。
オープンソース開発コミュニティで使用されているソフトウェアや方法論の例を教えていただければ幸いです。
私は空き時間に小さなチームでいくつかのプロジェクトに取り組んでいます。私たちは輪になって製品を開発できないという問題を抱えていますが、これは私の日常の仕事では問題ではありません. 対面でのコミュニケーションの欠如は、生産性に大きな影響を与えているようです。
オープンソース開発コミュニティで使用されているソフトウェアや方法論の例を教えていただければ幸いです。
ここには実際の方法論はありませんが、次の 2 つのことが重要だと思います。
オープンソース プロジェクトでは、唯一の真の最強の動機は、製品をコーディングする楽しさです。上記の 2 に関連して、人々が何をすべきかを言われ、それに同意しない場合、動機が不足し始めます。もちろん、他のタイプの関係と同様に、ギブアンドテイクが常に発生します。
また、顔を合わせる時間については、Skype は顔を合わせて会議を行うのに最適です。これは、少なくとも週または月に 1 回お勧めします (プロジェクトの規模と勢いによって異なります)。
私の推測では、あなたの非公開プロジェクトはすべて開発者によって実行およびコーディングされていると思います。開発者は...開発を続けることで知られています。私の経験では、大きな違いは、会社には物事がいつ完了するかを定義できる経験豊富なマネージャーがいるということです。誰かに目標を定義する仕事を任せて、物事がいつ終わるかを決めることをお勧めします。
私は、開発者よりも話し手のほうがはるかに多いプロジェクトに参加したことがあります。私の傾向は、話者を無視してコーダーに耳を傾けることです。それでも、通常、パッチの受け入れを担当する担当者は 1 人です。彼らが軽視しなければならない政治的問題があるかもしれませんが、すべての意図と目的のために、彼らは最終決定権を持っています.
Linus は、同じ問題でかなり有名な問題をいくつか抱えています。2006 年からのこのスレッドに注意してください:話は安いです。コードを見せて。
もう一つ。コメントでコードを持っていると言っているので、多くの書き換えがあるだけなので、Eric Raymond のThe Cathedral and the Bazaarを読むことを強くお勧めします。エリックは実際には少し頭がおかしいですが、このエッセイは、フリー ソフトウェア プロジェクトを実行したい人にとっては貴重です。
「オープンソース プロジェクト」は非常に幅広いプロジェクトの選択肢であるため、これは答えるのが難しい質問です。決定的な特徴は、プロジェクトが 1 つの統一された目標 (おそらく関連する一連の目標) を持っていることだと思います。
オープンソースのメーリング リストに参加していますか? 私はお気に入りのディストリビューションのメーリング リストに登録しており、開発者は 1 日に何度も電子メールをやり取りしています。また、IRC / Instant Messenger などの他の通信手段もあります。
私は RoR 開発者ではありませんが、Getting Realをざっと読んでインスピレーションを得ることをお勧めします。
このプロジェクトにおけるあなたとあなたのチーム メイトの動機と目標について考えてみたいと思います。彼らは:
a) 素晴らしい製品を作る
また
b) ソフトウェアをいじって、新しいことを学ぶ
両方の答えは等しく有効であり、どちらか一方に傾いていることが混在していると思います。
それが (a) に近い場合は、方法論などに関する提案を検討してください。あなたの素晴らしいアイデアを中心に会社を設立することを検討することもできます。そのようなものを作るには手間がかかるからです..そして、おそらく仕事でそれで十分です.
ほとんどが (b) である場合、素晴らしい製品を作るのは難しくなりますが、すぐにそこにたどり着かず、何度も書き直さなければならないことを許すことができるという点で、より簡単になります。そして、あなたはそれを見て一緒に働くたびに、あなたの長期的なキャリアに非常に適した新しいスキルを学びます.
まず、なぜそこにいるのかをお互いに明確にすることをお勧めします。次に、何を計画しているかを見直し、早期にリリースし、頻繁にリリースします。プロジェクトが 3 つのコンポーネントで構成されていて、そのうちの 1 つが完成したら、それを別のコンポーネントとしてリリースし、ユーザー コミュニティの構築を開始します。これらのユーザーはおそらくあなたのコードを手伝ってくれ、製品全体のユーザーのコアを形成し、後でではなく早期にどのように進んでいるかを評価できるようになるため、これは報われます.
幸運を。