この記事はなに
高校2年生3人でチーム開発をして感じたことなどを書きます
ある程度以上できる方にとっては当たり前のことなので、読まなくてもいいと思います
初心者の中の初心者みたいな感じの人向けです
3人のスキル
メンバー | 使える言語 | チーム開発経験 |
---|---|---|
僕 | C++,Kotlin,HTML,CSSなど | 〇 |
m_arcy | C++,Pythonなど | × |
39umi | C++,HTML,CSSなど | × |
僕はチーム開発を経験したことがありますがそのプロジェクトはうまくいきませんでした(笑)
今回のプロジェクトはまぁまぁよかったかなという感じはします(笑)
作ったもの
概要
「IdeaTree」という、アイデアが出ないときに連想語を提案することでアイデアを出す手助けをするアプリケーションです。
LINK : IdeaTree
少しバグがあるかもしれません...(小声)
使った技術等
- 言語
- Python
- JavaScript
- HTML
- CSS
- フレームワーク&ライブラリ
- Django
- vis.js
- html2canvasなど
開発期間
1ヵ月と少し
チーム開発をして感じたこと
1,Gitは導入しましょう
普通に考えて当たり前ですがこれはめちゃくちゃ大事です。
失敗した前のプロジェクトでは導入していませんでした(僕がいまいち使い方を理解していなかった)
他のメンバーがGitの使い方を知らなくても導入すべきです(最初にGitの使い方を教えておけば、開発を進める中で見返りが返ってくると思いました)
僕は本当に必要なところだけドキュメントを書いてメンバーに共有しました。
2,Gitはちゃんとやっておいた方がいいです
導入しましょうって言ったんですけど、理解が曖昧だとやばいです。実際やらかしました。コンフリクトが起きたり、コンフリクトを解消しようとしてヤバいことが起きました。(もう何も触れないでください。コンフリクトを解消しようとしてバグらせたのは僕、もっとちゃんと勉強します。)
開発するメンバーが決まったなら、最初1日をGitの使い方にあててもいいんじゃないかって思いました。逆にチームメンバー全員がしっかり理解していれば開発がめっちゃ進めやすいと思います。
3,何を作るかを考えてから言語とかを選びましょう
これも本当に当たり前の話です。
僕たちは「Python書きたいな~、じゃあフレームワークはDjangoで行くか~」みたいな感じで全員Web開発未経験にもかかわらず言語,フレームワークを選んでから何を作るかを決めました。実装し終えて思ったのは「これ、もっと簡単にできたやろ...」。こんな感じになりました。
その言語を学ぶために1個アプリを作る場合ならいいと思いますが、そういう特別な理由がない限りは何を作るかを決めてから言語を選ぶべきだと思います。
ダメな例)
A君「なんか一緒に作ろうぜ!!」
B君「ええで!なんの言語使う?」
いい例)
A君「なんか一緒に作ろうぜ!!」
B君「ええで!どういうもの作る?」
4,進捗報告はこまめにしましょう
これも当たり前と言えば当たり前です。
失敗したプロジェクトでは1週間たっても返信がないチームメンバーがいました。さすがにこういうのだけは避けたいなぁと思って進捗報告を徹底しました。何日に一度とかは自由でいいと思いますが、最初のうちは1週間に1度くらいはした方がいいと思います。
5,全体的におおまかなスケジュールを立てておきましょう
これも当たり前です。
とりあえずのスケジュールは決めておきましょう
6,立てたスケジュールからめっちゃ進んでるくらいがちょうどいいです
特に全員が開発慣れしてない場合だと、スケジュールも曖昧だったりします。最初は予定通り進んでいても最後になるにつれて難しい課題が残ってきます。そうなってくるとやる気が起きなくなります(ダメ)。なので、最初の方にめっちゃ進んでるくらいじゃないと最後の方で期限に間に合わなくなってくるのでここは意識すべきだと思います。
失敗したプロジェクトでは最初予定通りに進んでいましたが、中盤終盤になるにつれてやばくなって破滅しました。
7,仕様変更が出てきた場合はみんなに話しましょう
実装していくうえで「ここはこうした方がよさそう。」みたいな仕様変更が出てくるかもしれません(僕たちも結構出てきました)。そういう時は1人で勝手に仕様変更せずにちゃんとみんなで話し合って同意を得ましょう。自分がこうした方がいいって思って勝手に消してしまうと、他の部分との兼ね合いでバグが生まれたりしてはいけないので、ちゃんと全員で相談しましょう。
最後に
こんな記事に最後まで読んでいただきありがとうございました。