免責事項フリーランスエンジニア→法人化した人の技術ブログ。フリーランス事情や会社の作り方、経営などについても徒然なるままに書いていきます。主な使用言語はRuby、JavaScript。2019年4月24日Tweet今やシステム開発において必須ツールの一つとなった感のあるgitですが、未だに初心者への敷居が高いという問題点があります。私の前いたチームでは、新しくチームに入ってくる人全員が必ず一回はローカルかリモートのブランチを壊しハマるという現象がありました。́・ω・`)チームメンバー全員がgitについて正しい知識を持って開発するのが本来はベストなのですが、現実そうもいかない場合も多々あります。いっても、ブランチを毎回壊されたり事故が多発してしまうのもよくないので、何らかの方法で「gitの性能80%を、無事故で引き出す」方法が必要となってくるわけです。今回は、「gitの学習コストをなるべく下げ、事故を減らす」2つのポイントについて解説します。1.GUIツールの使用を義務付ける。SourceTreeがオススメです。cuiでコマンドを直接叩く方法は自由度が高い分、若干の慣れが必要になるのと、危険なコマンドでも平気で叩けてしまうという欠点があります。(もちろん、コマンドの挙動を正確に理解したうえで使うのであればなんの問題もないですが、そのようなスペシャルエンジニアだけでチームを組むことは現実には難しいのではないでしょうか。)グラフや変更履歴も見やすいので、導入してみるとよいのではないのでしょうか。SourceTreeは結構重めなので、できるだけSSD環境&メモリが十分ある環境での使用を推奨します。2.使用するコマンドを限定する。いざブランチを壊した時に復旧できなくなるパターンとして、「どのコマンドを叩いてその現象が起きたかわからない」というものがあります。適当にググって叩いたコマンドが動かなくて、そのエラーを解決するためにまたどこかから持ってきたよくわからないコマンドを叩いて。マニアックなコマンドはその挙動について正確な把握をしている人が急激に少なくなるので、やはり万一の時の復旧が難しくなりますし、ググっても解決策が見つからない危険性が大きくなります。そこで、みんなよく知っているコマンドのみの使用に留めてしまいます。gitのメリットの80%は、gitのコマンドの20%で達成できます。違うブランチの内容を取り込む「マージ」これらのコマンドを覚えておくだけで、だいたいの仕事には困らなくなります。プラスアルファとして、スタッシュ、リセットあたりが使えれば大丈夫。これら2つの方法を紹介しましたが、共通点としては「インタフェースを限定してしまう」という点にあります。不自由にみえますが、ユーザの自由度を下げることで問題の領域を限定し、発生源を特定しやすくしているわけです。そのことによってgitユーザも「これだけ覚えてればいいんだ」と学習コストを下げることができますね。インタフェースをシンプルに保とうという原則は、プログラミング(特に設計)をしていくうえで重要です。gitは決して知識ゼロで使えるものではありません。業務の合間にでも少しづつで良いので知識を拾っていきましょう。SESで簡単なログイン認証を実装する【募集終了しました】Web開発のお仕事募集します。公式からvue-cliというものが出ています。応答が返ってこなくなる事態に遭遇してしまいました。チュートリアル最後の章、ルーティング。...プログラミング一人マッシュアップのためのAPI一覧Web上のAPIを組み合わせて新しいアプリケーションを作る手法をマッシュアップといいますが、当然既存APIの存在を知らなければ作ることができません。プログラミングScalaの開発環境をサクッと作る近年の関数型言語への注目に従い、実務案件でScalaを使う現場も増えてきています。ChatWorkが開発言語をPHPからScalaに移行したブログ記事が話題になっていましたね。JDBCでデータを1件取得したい場合に、0件の場合がある場合はどうするか?NEXTプログラミング入門書にビット演算、while文、継承、index付きforループの解説は本当に必要なのか?yohira_dev正社員になるも80時間以上のサービス残業により過労退職→フリーランスエンジニア→月商100万突破、2017年法人成り。RailsとVue.jsを用いた高速実装・改善が強み。BeanはSingletonだから、状態持たせるとバグるよ。views最近の投稿フリーランスエンジニアに請負契約がオススメできない理由【準委任契約にしましょう】コロナウイルスのせいで投資信託が一週間で20万溶けました。SESで簡単なログイン認証を実装する【法人化3年目の体験談】今年の売上は1300万程度で着地しそうです。投資2020/02/02コロナウイルスのせいで投資信託が一週間で20万溶けました。SESで簡単なログイン認証を実装するオピニオン2020/1/27【法人化3年目の体験談】今年の売上は1300万程度で着地しそうです。免責事項フリーランスエンジニア→法人化した人の技術ブログ。フリーランス事情や会社の作り方、経営などについても徒然なるままに書いていきます。主な使用言語はRuby、JavaScript。AFFINGER5.。