海沿いのコテージでGW開発合宿をした
ゴールデンウィーク
社会人になって初めてのまとまった休暇だったので、同期4人と一緒に千葉県にあるコテージをAirbnbで借りて開発合宿(もくもく合宿)をやりました。
別の参加者の記事
場所
房総半島の太平洋側、海岸が徒歩5分くらいのところにあるきれいなコテージでした。
テラスに水道がついていたり、玄関からシャワーに直行できたりとどうやらサーファーや海水浴客が使うのを想定した造りになっていたみたいです。
画像引用元: GW開発合宿でGoのレコメンドエンジンを作った - カシミヤのニット
ただ、超がつくほどのクソ田舎だったので電車で向かった我々にとっては食料 ・飲み物の調達や食事処探しなどで困りまくって過ごしにくいことこの上ありませんでした。次回の合宿に活かしたい。
何やったか
各位自由に目標ややることを決めてもくもくとやっていました。
僕は以前から積んでいた Programming Elixir を読み進めることにしました。
言語の習得は形から入るタイプなのでいつもこういう感じの本をゼロからじっくり読み進めてフレームワークの勉強や実践的な開発に移ろうとするのですが、なんだか少し効率が悪いような気がしていてアドバイスが欲しいです。
Elixirをやろうと思ったきっかけとしては、Erlangと同じBEAM上で動いていることと、パラダイムが並行処理・関数型指向であった(つまり自分好みだった)ことだと思います。
以下読み終わったところまでの感想・学び(私見)
- シンタックスがRubyにかなり似ている。
- Erlangと同じように引数のパターンマッチが使える。
- Erlangと同じようにヒープ領域はプログラム単位ではなくプロセスごとに持つ。
with
はPythonのそれに似ているのかな、と思ったけどtry-except
のほうがイメージが近そう。- パイプ演算子
|>
は見やすくて良い。カリー化バンザイ。 - プレースホルダやモジュール外からのコールを想定していない関数に
_
を使うのはErlangと同じかと思ったけど多分他の言語でも共通の一般的な認識? - 日本語訳をメインで読み進めたけどやっぱり英語版もそばに置いて参照しながら読み進めるのが良い。
メモがとってあった範囲でこんな感じです。
この記事を書いている段階でもう少し読み進めてあるので、読み終わったら再度読書ログをまとめなおそうかと思います。
次に読む本
反省
2泊3日でしたが快適に作業できた上に普通に楽しかったし、また機会があれば避暑地で合宿みたいなことをやってみたいですね。