githubに変えてプロジェクトの本質を学んだ話
今さら感がすごいですがやっぱgithubは良かったよ!!
って話です。
ちょうど一年前、私は権力の強い上司にgithubの素晴らしさや導入するべきと適当な理論をおしつけて全サービス移行した。
「githubにするとうちのエンジニアの価値あがりますよ!!」
「プルリクってやばないすか?自動テストからのデプロイいけるんすよ」
まぁ私が使い方やらツールやらgitflow(うちはgithubflowでなくgitflowにした)やら全部調べてやったんだけど、いろいろ問題はあった(ほとんど使い方がわからねぇ系の不満。いやググれや
プルリクも強制してsvnのコミット無双無法地帯状態から脱却出来たけどスピードが遅くなるとかマージ出来ないとかsubmoduleなんぞや?みたいなのが多すぎてうちのエンジニアには向いてなかったのかな?と思い始めてた。
そのとき会社で大事件が起きてその事件の犯人(ボキャブラリーないんで言い方悪い)は辞めてしまった。
「なんでこんなの組んだの?」
「いやありえないでしょ」
「普通に向いてないよこれ」
みたいな話が出てきていてもいられなくなったのだろう。
svnだからってわけじゃないけど「出来ました!!」がプログラムの成果になってその過程はどんな手段でもいい(レビューしてないし)ので責任が一人に集中してしまう。
それって最悪でエンジニアのモチベーションは下がるし、バグ怖くて影響ないないコード(よくSIerが書くやつ)を書いたり、新しい技術は得体しれないからやりたくねーだったり何も成長しない。それがgithubのプルリクでこいつ少なくとも見てんだからこいつも責任あるよね?感が出て通常やりたくない作業とか嫌がらずにやってくれたり、こんな特殊な書き方してやろー(主に私がやる)とかで「こんな書き方出来んの?」とかで技術共有出来たりとかかなり良くなった。いわゆる老害を安心させる一つの手段にも使える。
まぁここまでふざけて書いたけど、チームでやる仕事である限りある程度の責任転嫁は必要になるということ。githubじゃなきゃダメってことはないけど、その機能を使ってプロジェクトを最適化することはアプリケーションのあり方だと思う。「責任はみんなでおってね!!」って言っても伝わらんしね、仕組み化大事。
プロジェクトを最適化するのは仕組みでもなく技術でもなく人間関係だったことをgitから学んだ。
ps:まだフリーランスになってない笑
c# 7.0
以下感想
タプル→おぉ、使い所あるけどやっぱ型ないのは慣れん!
出力変数宣言→うぉーー!!やっべーこれ!っかこれをまってたよまじでコラ
型スイッチ→スイッチ機能プラス。知ってたらオシャレレベル
値の破棄→ほぅ。知ってたら逆にわからん
参照戻り値と参照ローカル変数→??。あっそういうことか!!マニア杉
ローカル関数→こういうの書きたがる奴いるなー(ぼく
http://ufcpp.net/study/csharp/cheatsheet/ap_ver7/
まだまだあるみたいなので後日感想を書いてく
Gitメモ
ユーザー名とメールアドレスを登録
git config --global user.name "お名前" git config --global user.email "メールアドレス"
Ubuntuだとnanoエディタというものにコミットログが吐出されるのでvimに
git config --global core.editor 'vim -c "set fenc=utf-8"'
diffに色付け
git config --global color.diff auto git config --global color.status auto git config --global color.branch auto
gitの現在設定を確認する
git config --list
バージョン
git —version
リポジトリ作成
git init
ステータスの確認
git status
インデックスに追加
git add <File> git add . -> すべて
コミット
git commit -m コメント(コメントしてコミット)
変更履歴を確認するツール
gitk
コミットされた過去のファイルを復元する
git checkout [commit id] [filename]
最新のコミット内容を表示
git show
WP REST API v2
WordPress4.4からバージョンアップした。
記事読み込みで使ってたんだけど、ある日突然404エラーが。WP REST API 2が4.4から対応しなくなったと。v2では取れるが、データ構造がかなり変わったので困った。同じくかなり困ってる人が以下。
以下、変更点
記事取得
/wp-json/posts ↓ /wp-json/wp/v2/posts
カテゴリ取得
/wp-json/taxonomies/category/terms ↓ /wp-json/wp/v2/categories