目次
Githubで草を生やし続けるためのコツ:目的編
こんにちは、M.Oです。
GitHub採用と呼ばれ、すぐにコードを書ける人材かどうかを判断するための手段としてメルカリやサイバーエージェントなどの有名企業が新卒採用などに用いています。企業サイドとしてはコードが書ける人材を取得したい、コードが書ける人材から見ると自身の行動が適切に評価されるメリットがあります。
しかし実際にはGitHubにかける時間が取りづらい、やり方が分からない、続かないなどの問題があります。本人のやる気次第といえばそれで終わりますが本質的な解決にはならないのでこの記事ではいくつかの手法を紹介し、Githubで草を生やし続けるにはどのようなコツがあるかまとめてみました。
著者もオールグリーンになっていないのでこの記事を書くのは恐縮ですがこの記事が少しでもGithubへコミットする方が増えるための良い影響になり、結果的にキャリアの選択肢が増える方がいれば幸いです。下記の内容について2回に渡って記述してみます。
- 目的
- 習慣化
目的
今回の記事は目的についてです。Githubでの活動は継続して習慣化する必要があります。習慣化するには何らかの目的がないと継続することが難しくなります。また下記の観点でも目的設定は重要になります。
- 目的を設定するとその目的を達成するために必要な情報に対して集中するため
- モチベーションの源泉となるため
目的の具体例について
ここでは代表的な目的の具体的な例を挙げ、その利点、欠点も記述します。
- 独自のサービスを作成して公開する
- 利点
- 自分の必要なものを形にできた延長線上でコードを公開できる。人気のあるプロダクトになれば自然に改善のプルリクエストが来るようになる。 />
- 欠点
- 時間がかかる。マネタイズを考慮すると公開しない方が良いケースもあるため公開する部分と公開しない部分の切り分けが必要。 />
- 利点
- 仕事の成果の一部を公開する
- 利点
- プライベートの時間を使わなくて良い。 />
- 欠点
- 企業側に理解がない、制度が整っていない場合は自ら説得、制度の整備が必要。セキュリティの観点から公開できない場合がある。 />
- 利点
- 書籍などを読んだ内容のコードを記述し公開する
- 利点
- 勉強した成果をコードとして残せる。 />
- 欠点
- ライセンス関係を確認し改変公開して良いかのチェックが必要。そのまま記述したものを公開するのは権利上問題がある可能性が高いので応用した結果で公開する方が良い。 />
- 利点
それぞれの目的についてもう少し踏み込んで記述してみます。
独自のサービスを作成して公開する
独自のサービスを作成する場合に重要になるのがアイディアです。そのアイディアを考えるのに有効な指標が
- 単純明快である(Simple)
- 意外性がある(Unexpected)
- 具体的である(Concrete)
- 信頼性がある(Credible)
- 感情に訴える(Emotional)
- 物語性(Story)
上記の6つと言われています。これを満たすようなプロダクトを作るのは大変ですがそこを考えることが普段出来ない経験となり、結果としてキャリアアップにもつながると思います。
この内容自体は書籍からの引用であり詳細を知りたい方は下記の書籍を購入することをお薦めします。
Amazonでチップ ハース, ダン ハース, 飯岡 美紀の{ProductTitle}。アマゾンならポイント還元本が多数。一度購入いただいた電子書籍は、KindleおよびFire端末、スマートフォンやタブレットなど、様々な端末でもお楽しみいただけます。 アイデアのちから | チップ ハース, ダン ハース, 飯岡 美紀 | ビジネス・経済 | K... - www.amazon.co.jp |
仕事の成果の一部を公開する
クックパッドなどの一部企業ではフルコミッターを雇うなど仕事でOSS活動ができる企業も出てきています。ですがこのような状況は一部の企業のため自ら同様な状況もしくは近い状況を作り出す必要があると思います。
2017年9月18日 クックパッド株式会社 クックパッド、フルタイムRubyコミッターとして遠藤侑介氏を採用 次世代バージョンの中心的機能となるRubyの堅牢性向上に貢献 クックパッド株式会社は、フル… クックパッド、フルタイムRubyコミッターとして遠藤侑介氏を採用 次世代バージョ... - info.cookpad.com |
書籍などを読んだ内容のコードを記述し公開する
書籍のコードの写経結果はそのまま公開できません。そのためプライベートレポジトリに反映するのが一般的です。Githubではプライベートレポジトリの活動もカウントされるため、コードは公開できないですが活動を反映させることは可能です。
private リポジトリへのコミットを github の草に反映するかどうかをオプトインで選択できるようになった。また連続コミット日数表示の機能は廃止された。 / “More contributions on your pro…” https://t.co/2ihMV0rXov
— Takuto Wada (@t_wada) 2016年5月20日
技術書の写経の仕方は下記で言及してくれています。
技術書の「写経」の方法。 1.ローカルで使える SCM を用意 2.「ほんたった」などで対象の本を固定 3.ひたすらサンプルコードを写して実行 4.実行するたびにコミット(コミットログにページ番号を含める) 5.疑問点があったらコミットログや本に書き込む 6.章ごとにタグを打つ
— Takuto Wada (@t_wada) 2010年2月12日
終わりに
本記事ではGithub活動における目的について言及してみました。他にも目的設定があると思うのでご意見があれば、お問い合わせフォームからご連絡ください。
今後とも Findy をよろしくお願いいたします。
参考
GitHub採用とは?その方法とメルカリ等の企業事例について
読んで頂きありがとうございました! 宜しければ、エンジニアの皆様はFindyでご自身のスキル偏差値を測定してみてください。
[正社員の方]
ハイスキルなエンジニアのプレミアム転職サービス Findy
[フリーランスの方]
フリーランス・副業エンジニア向けの単価保証型の案件紹介サービス Findy Freelance
また、Findyでは年齢や勤務形態を問わず、様々な働き方で採用をしています。興味のある方は、こちらからご応募どうぞ!
東京大学 情報理工学系研究科 創造情報学専攻(*)卒業後、グリーに入社し、フルスタックエンジニアとして勤務する。2016年6月にファインディ立上げに伴い取締役CTO就任。
*大学院では、稲葉真理研究室に所属。過去10年分の論文に対し論文間の類似度を、自然言語処理やデータマイニングにより内容の解析を定量的・定性的に行うことで算出する論文を執筆。