tekitoumemo’s diary

思ったことを書くだけ。長文版Twitter

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/

まだまだあるみたいなので後日感想を書いてく

iLogScanner?logparser?

最近なぜかインフラ周りもやらされる〈人辞めすぎて仕事振られ杉

毎日アクセスログlogparserで抽出してVBScriptでメール送信してる。なにかあるたびに動かなくなり、改修する人いなくて本末転倒。

で今ってIPAからiLogScannerってのがあってHTML出力できるからそれを定期的に確認しようと進めてる

っかなんでもかんでもスクリプト組んで自動化してるけど、誰も改修出来ないから自動化しただけ仕事のボトルネックになってる

いいことと思って勧めてても、一人しか動かせないシステムはただの時限爆弾でしかないということを知りました

git

明日ようやくgitに移行出来る。

今の会社入って2年弱たったけどようやく本格移行にうつれるなー。

svnでやってた時はブランチきったりmasterなかったりマージ大変だったり大変だったなーと

はじめは稼働が落ちると思うけど、やっと今時の開発が出来る。

pull requestとか粋だしね。

ぶっちゃけ何が良くなるのかわからないけど開発者としてこれやれば楽しいとかモチベーションが上がるとか非常に重要だと思ったよ。

っかgithub flowって成熟したサイト以外使いもんにならんだろあれ

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

v2.wp-api.org

WordPress4.4からバージョンアップした。

記事読み込みで使ってたんだけど、ある日突然404エラーが。WP REST API 2が4.4から対応しなくなったと。v2では取れるが、データ構造がかなり変わったので困った。同じくかなり困ってる人が以下。

stackoverflow.com

以下、変更点

記事取得
/wp-json/posts
↓
/wp-json/wp/v2/posts
カテゴリ取得
/wp-json/taxonomies/category/terms
↓
/wp-json/wp/v2/categories
固定ページ
/wp-json/pages
↓
/wp-json/wp/v2/pages

こういうオープンソースソフトウェアはお構いなしに変更されるからデータ構造をマッピングしたら詰むことがわかった。