gaaamiiのブログ

悪気なく間違ったことを書いている時があります。コメントやTwitter、ブコメなどでご指摘ください

Thousand Foot Krutch 好きになった

サウザンド・フット・クラッチ - Wikipedia

soundcloud で雑に聞いてたら出てきた曲がThousand Foot KrutchのCourtesy Callという曲のリミックスで最高な気分になったので原曲聴いてみたらすっかり好きになった。音楽疎いので、Thousand Foot Krutch好きならこれも聴いてみようね、というアーティストいたら教えてください。

あと、こういうリミックスのことを Nightcore と呼ぶ文化も知らなかった。音楽疎い。

Nightcore - Wikipedia

尊敬するエンジニア

会社の飲み会で酒に酔って、気付いたら個人的に社内で尊敬してるエンジニアの尊敬してる点を話していた。こんなことを挙げていた。

  • コミットがきれい
  • 全体的に丁寧
  • 技術仕様やソースをちゃんと読む

話してみると、なんでこれらの点を尊敬しているのか考えたくなった。

コミットがきれい -> 作業がひとりのエンジニアの脳内で完結されると困るから

だれか一人で全てのプロダクトを担当するわけではないので、ひとのコードを読むこと・自分のコードが読まれることがある。きれいなコードとかクソコードとかいう言葉があるけど、実際にはただのきれいなコードとかクソコードというのは無くて、それが生まれた経緯がある。時間が無くて似たようなコードを抽象化できなかったのかもしれないし、レガシーな仕様に合わせるために命名を不自然にするしかなかった、とか。

そのコミットをするときに1つ1つ決断しなければいけなくて、逆に言うと決断の数だけコミットがあるはず。それを fix とか update とするのは、その決断をそのときの自分の頭に閉じ込めることになる。コミットがきれいだということは、決断を公にして他人や未来の自分を困惑させないための配慮をしているということだと思う。

全体的に丁寧 -> 正しい言葉は時間を節約する

尊敬しているエンジニアの仕事ぶりは、全体的に丁寧だと感じる。それはたぶん、正しい言葉を選んで使っているからだと思う。正しい言葉は、読む人(聞く人)の時間の節約につながる。正しい言葉はチームの生産性を上げる。

そして何より、正しい言葉を選んで曖昧さを消していくと、真っ当な技術力が身につくと思う。

技術仕様やソースをちゃんと読む -> 正しい知識を持っている

バイナリを書かずにプログラムを動かせるのは、誰かが書いた高度なソフトウェアを使っているからだ。そしてその内主要なソフトウェアのほとんどは仕様やソースが公開されている。http は仕様そのものだし、Linuxシステムコールはソースまで公開されている。技術仕様やソースをちゃんと読んでいる人は、検索エンジンからたどり着いたどこかの誰かが書いたstackoverflow回答から情報を得ている人よりかは、圧倒的に正しい知識を持っている。

現実

とはいえ、自分はどれくらいできているんだろう。現実は、たくさんクソコミットしてるし、stackoverflow鵜呑みにするし、雑なタイトルでissueを切って一緒に働いているエンジニアを困惑させたりしている。その方が楽だし、考える時間が必要ないからだ。

考える時間が必要ないからという理由で間違ったやり方を続けるのは良くない。

だからこそ、正しいやり方でできているエンジニアに尊敬のまなざしを向けずにはいられないんだと思う。

(お試し)Rails5.1でAngular環境を生成する

Rails5.1からwebpackビルド環境を生成してくれる,Angularもできるという話を聞いたので rails new してみただけのメモです。

$ gem install rails -v 5.1.0.beta1
$ rails new myapp --webpack=angular
$ cd myapp/app/javascript
$ ~/myapp/app/javascript (master #)$ tree -L 3
.
├── hello_angular
│   ├── app
│   │   ├── app.component.ts
│   │   └── app.module.ts
│   ├── index.ts
│   └── polyfills.ts
└── packs
    ├── application.js
    └── hello_angular.js

関連

qiita.com

www.chirashiura.com

Angular CLIでなにかつくるぞという気持ち

勤怠アプリみたいなものを作りたいと思ったのだけど、思ってるだけだと結局つくらないのでできてないものを公開してしまうことにした。気持ちよくなってきたらサーバー絡めてちゃんとやるけど、しばらくはAngular CLIベースの開発とテストの書き方などの訓練に使うことになりそう。

CouplesやめてFrognoteというノートアプリ使ってる

カップルが情報共有するにはカップル向けアプリ使えばいいんじゃないかと思って使いはじめたCouplesだったけど、あらゆる仕様が年齢的に合わないと感じてきた。

カレンダー共有とノート共有ができればいいので、niftyが出してるfrognoteというアプリを使うことにした。