みんながGitを使えて幸せになるように

これは、【その2】ドリコム Advent Calendar 2015の19日目の記事です。

18日目は、wasbi01さんのムダを減らして心穏やかに過ごしたいです。

その2があれば当然【その1】もあるので、こちらもぜひご覧ください。

自己紹介

みかみん(mkmn)です。
今年の4月にドリコムに入社したばかりの新卒エンジニアで、同期からは「お父さん」などと呼ばれています。
現在は、某ネイティブゲームのプロジェクトでサーバーサイドエンジニアをやっています。

はじめに

何を書こうかと色々迷っていたのですが、

「非エンジニア*1が、業務においてGit・Githubをつまずきなく利用できるようにする」

という、課題への取り組みに関してお話ししようと思います。

こういった記事を初めて書きますので、読みづらいかもしれませんがどうぞ最後までお読みくださいm( )m

1. Git・Githubを初めて利用するときの課題

私の所属しているプロジェクトでは、コードやリソース、データの全てをGit・Github(場合によってGitLab)を使いバージョン管理しています。
Git・Githubといえば、エンジニアにとっては1度は使ったことのある馴染みのあるツールかと思います。

一方で、非エンジニアにとっては殆どの人が初めて触れるツールになるため、そううまくはいきません。
環境を整える → 使い方を覚える → 業務で使うという流れには、相応の時間がかかります。
また、トラブル起こる度にエンジニア(Gitがわかる人)に対応してもらうことが多く、業務をスムーズに進められなくなってしまいます。

この課題に対して、プロジェクト配属直後に私ともう一人のエンジニアで取り組む事になりました。

2. どこでつまずくのか

Gitをつまずきなく利用できるようにするためには、Gitを使っていてどこでつまずくのかを把握しなければ始まりません。

実際に非エンジニアの方に、どこでつまずくのか、何が不安なのか聞いてみると、特に次のような意見が多く挙がりました。

  • Gitの仕組み・概念がわからない
  • 初期の設定からわからない(公開鍵認証? git clone?)
  • コミットやプッシュ・プルといったコマンドがたくさんあって、使うのが不安
  • ちょっとしたトラブルの時にどうすればよいかわからない

3. つまずきをなくす

次に、上記に上げたつまづきに対して実際に行った取り組みをご紹介したいと思います。

記事にまとめる

まず取り組んだこととしては、Gitの初期設定方法や使い方を記事にまとめるということです。

解説用の記事を作る上では、次の点に注意して作成しています。

  • Gitの概念や仕組みについては最低限しか触れない
    • 非エンジニアがGitを難しいと思ってしまうことを避けます
    • 参考資料として、読むと概念などが理解できそうな記事は載せておきます
  • Git関連の初期設定、特に初めて行うであろうSSH鍵の生成やGitHubの登録方法をの解説厚くする
    • Gitをいざ使うまでに、つまずいてしまっては元も子もありません
  • 実業務の例を挙げ、流れに沿ってコマンドの使い方を解説する
    • 個別のコマンドがわかっても、それを業務で使うまでに落とし込む時間を減らします
  • スクリーンショットを多用する
    • 言葉だけではなかなか伝わらないものも、画像があると伝わりやすいものです
  • コマンドを実行する必要があるものは、すぐにコピペできるようにする
  • 同タイミングでプロジェクトJoinした非エンジニア(新卒)に、人柱になってもらい記事を見ながら作業してもらう
    • 実際に作業してもらって、出たFBを元に記事をブラッシュアップしています

上記の点に注意し作った記事の一部(例:SSH鍵の作成)が以下になります。
f:id:mkmn:20151218112322p:plain

最後に作成した記事に関してですが、作って終わりでは仕方がありません。
プロジェクトではGitを必ず使うわけですから、必要な作業をプロジェクトJoin時に必読の記事にリンクさせて必ず目を通してもらうようしました。

勉強会を開催する

記事にまとめることと並行して、非エンジニアを対象としたGit勉強会を行いました。

記事を作ってはい終わりでは、記事はいつか忘れ去られてしまいます。
そこで勉強会を開催することでGitの使い方を周知し、記事の存在をアピールするとともに、
トラブルがあった時に助けられる人が増えてほしいという意味がありました。

勉強会の時間は限られていますので、普段起きやすいトラブルに関して重点的に説明(動画付き)をし、拾いきれない部分は記事を見てね!というスタンスで行っています。

まとめ

記事と勉強会を行ったことで、Gitの基本的な使い方に関しては非エンジニアが自分たちで解決できるようになったと思います。

課題に取り組んでみて、Gitに関してちゃんと教えるのは難しいと感じました。
概念や仕組みに説明がよりすぎると、概念は意外と難しくて???な状況になってしまいます。
逆に仕組みに一切触れず使い方だけでは、何をしているのかわからなくて怖いというような状況が発生してしまいます。
この辺りのバランスは状況に合わせて調整が必要だと感じました。

この課題への取り組みの成果物を元に、非エンジニアの方には、最終的には誰かの助けがなくても、一人でトラブルを解消できるようになれば良いなと個人的に思っています。

参考サイト

最後に今回の取り組みで参考にさせていただいたサイトをご紹介させていただきたいと思います。


明日は、zizojpさんのエンジニアが半年間メタボと闘った話です。

www.adventar.org

www.adventar.org

*1:この記事で、非エンジニアとは、デザイナーやプランナー、ディレクターといった職種の方を指します