Go書くぞおじさんになった話(あるいは"射撃しつつ前進"するためのスイッチの入れ方) ex-mixi Advent Calendar 2017/12/03
元ミクシィのエンジニアによるex-mixi Advent Calendar 2017の3日目を拾ったk_kinukawaです。
自分のミクシィ在籍期間は2010年から2014年までで、主にiOSアプリの開発を行っていました。
その後ヤフーを経由して、現在は株式会社Subotという会社で代表取締役&エンジニアをやっています。
アドベントカレンダー書くぞ!と久しぶりにこのブログを開いて、最終更新が2年前の大晦日で何故かUITextViewの余白を消していて、時の流れの速さと過去の自分は他人という言葉の意味をひしひしと感じております。
Go書くぞおじさんになった話
1日目のmasartz氏、2日目のKAKKA氏が真面目に書いているので、ここらでネタを一つ。
今年の春先から秋にかけて、自社サービス絡みでひたすらコードを書く期間がありました。
誰しも、孤独と戦いながらやり遂げなければいけない時がある。
振り返るとこのツイートが始まりでした。
ひたすらGo書いてる。一緒に書きたい人募集してます(誰か助けて)
— Kenji Kinukawa (@k_kinukawa) 2017年4月24日
スタートアップの社長をやっていると、とびきり嬉しいこともありますが苦しいことや辛いことがまー多い。
そんな時、いいねもらえるとほっこりしますよね、やる気出ますよね、報酬系をコチョコチョされますよね。
数日後から、毎朝デスクに着席したらGo書くぞと宣言するようになりました。
Go書くぞ
— Kenji Kinukawa (@k_kinukawa) 2017年5月3日
Go書くぞ
— Kenji Kinukawa (@k_kinukawa) 2017年5月5日
宣言をしたら、エディタを開いて黙々とコードを書くというルールを設定して。
自分の好きなJoel Spolskyのコラム
Joel on Software - 射撃しつつ前進
にも書いてある生産性の鍵 "ただはじめること" のスイッチを、この朝の「Go書くぞ」宣言としました。
しばらくは「Go書くぞ 」と同じ文言をつぶやいていたのですが、ひねりがほしい。
少し崩し始める。
Go書くぜ!
— Kenji Kinukawa (@k_kinukawa) 2017年5月12日
Goかくさー
— Kenji Kinukawa (@k_kinukawa) 2017年5月19日
アイカツを意識してみる。
今日も今日とてGolang
— Kenji Kinukawa (@k_kinukawa) 2017年5月22日
Goかけない日は悲しみをつぶやいてみる。
助成金の申請書類が終わらないのでGo書けない
— Kenji Kinukawa (@k_kinukawa) 2017年5月25日
誰も待っていないが、言い訳してみる。
遅くなりましたが今からGo書きます
— Kenji Kinukawa (@k_kinukawa) 2017年6月2日
このあたりで、知り合いに合うと必ず「Go書いているんですか?今日は書かないんですか?」と聞かれるようになる。
最近会う人に必ず「Go書きまくってますね」と言われる
— Kenji Kinukawa (@k_kinukawa) 2017年6月2日
ネタに困り滑る。
Goです(郷ひろみ風)
— Kenji Kinukawa (@k_kinukawa) 2017年6月5日
多分この時疲れていた。
昨日書き忘れましたがGo書いてます。Worker作りました。私もWorkerなので再帰的な感じがします。無限ループに気をつけます。
— Kenji Kinukawa (@k_kinukawa) 2017年6月7日
最近、腹が減らず眠くならないので異方の存在になりつつあるのかもしれない。 #カド
— Kenji Kinukawa (@k_kinukawa) 2017年6月7日
金曜日だからTGIFとかけて、俺超面白い!と思ったら木曜日だった。コメント欄で突っ込まれている。ちなみにツッコミ入れている男もex-mixi。
Thanks Gopher, It's Friday☝️
— Kenji Kinukawa (@k_kinukawa) 2017年6月22日
けど前向きに捉える。
今週あと一日多くGoかけるぞ!
— Kenji Kinukawa (@k_kinukawa) 2017年6月22日
今度こそ金曜日
Go書きまくっていたせいで溜まっていた事務仕事を片付けた!これでまたGoが書ける!TGIF!
— Kenji Kinukawa (@k_kinukawa) 2017年7月7日
場所を変えてみる。
ヤフーのロッジでGo書いてる pic.twitter.com/FFbUealGml
— Kenji Kinukawa (@k_kinukawa) 2017年7月13日
本当に、会う人会う人必ずGoネタを振ってくれた。多分タイムラインを汚していたのだと思う。反省している。
会う人色んな人にGoネタ降られて嬉しいので今月もGo書きまくります
— Kenji Kinukawa (@k_kinukawa) 2017年8月3日
音楽も大切ですね、自分は音楽聴きながらコードを書けるタイプです。
アニュータのマクロス特集聞きながらGo書いている
— Kenji Kinukawa (@k_kinukawa) 2017年8月1日
年明けに娘とアイカツライブ行くことになったので、最近はGo聞きながらアイカツしている。
— Kenji Kinukawa (@k_kinukawa) 2017年8月22日
Go書く。なんかふわふわする。ふわふわタイム。
— Kenji Kinukawa (@k_kinukawa) 2017年8月24日
— Kenji Kinukawa (@k_kinukawa) 2017年8月25日
この足は、まだ足のままです。
夜中に足を作った。Go書くぞ! pic.twitter.com/RpYVJIw1MF
— Kenji Kinukawa (@k_kinukawa) 2017年8月30日
秋の気配がしてきた。
娘の通園自転車で金木犀の香りがし始めました。
— Kenji Kinukawa (@k_kinukawa) 2017年9月12日
最近Go書いてますか?と聞かれましたが書いてます
天災にも負けない。
地震びっくりしたけど、Goを書く手は止まらないッ
— Kenji Kinukawa (@k_kinukawa) 2017年9月14日
このあたりでマイルストーン達成したのと開発メンバーが増えはじめたので毎朝の宣言をしなくなりました。
開発チームが皆優秀で嬉しいのだけど、徐々に自分がボトルネックになってきて辛い
— Kenji Kinukawa (@k_kinukawa) 2017年10月17日
やってみてどうだったか
今回は、自分のTwitter、Facebook、Qiitadonアカウントで同じに内容を投稿していました。
一番反応がもらえたのはFacebookでした。
投稿していないと死んでいるのではないかと心配されたり、楽しみにしていると言ってもらえたりして嬉しかった反面、邪魔に思っていた人もいたのではないかと少し反省しています。
成果に繋がったかというと、今回に限って言えばとても効果があったと感じています。
決まった期間中に成果を出さなければならない時、いかに時間を有効に使えるのかが鍵になることがあります。
今回自分は、「Go書くぞ」とつぶやいたらその後必ずエディタを開いてコードを書き始めるという習慣を作ることができました。
朝の一番頭が冴えている時にサクッと開発モードに入れるのは時間を有効に使えたと思います。
また、これは朝だけに限らず、打ち合わせで外出した時の夕方のカフェ、コワーキングスペースなど、時間や場所にとらわれずスイッチを切り替えることができました。
11月に入ってから別の仕事の優先度が上がったためコードを書く時間が取れなくなりこの習慣も途切れてしまいましたが、年明けにはまた開発時間を増やすことができる見込です。
その時は開発モード切替のためにTwitterあたりにつぶやこうと思っています。
最後に
ソフトウェアエンジニアは仕事柄PCの前に座りっぱなしでブラウザも開いていることが多く、SNSやニュースサイトといった誘惑が多いと思います。
また、様々な内的要因、外的要因で思うように手が動かないこともあります。
そんな時に大切なのは、とにかく書き始めることと、そこからほんの少しの間集中することだと思っています。
人それぞれスイッチの入れ方は違うはずなので、開発効率が上がらないなーという人は自分なりのスイッチの入れ方を考えて習慣化を目指してみるのはいかがでしょうか。
最後にもう一度Joel on Software - 射撃しつつ前進を貼っておきます。
明日は尊敬するエンジニアkzysさんです。