CleanCoderを読んだ
プログラミングを仕事にする人向けの読み物として、金言と思える文章がたくさんあった。 印象に残った物を列挙しておく。
プロにならないのは簡単だ。自分の仕事に責任を持たなければいい。
プロフェッショナルというのは尊敬される存在だが、それは大きな責任を伴うものだからこそだと改めて思った。
プロはこの「少し違った気持ち」を常に抱いている。この気持が。プロ意識の本質である。プロ意識というのは自分で責任を取ることに他ならない。
自分のした仕事によって損失が生じた場合、自費で責任を取るくらいの気持ちを持とうと思った。
週60時間働く計画を立てよう。40時間は雇用主のため、残り20時間は自分のためだ。
これを読んで、少なくとも1日3時間働く時間を増やしてみようと思った。
ミーティングには明確な議題・時間割・目標を確認しよう。
無駄なミーティングをなくす、短くするのは当たり前として、意識するべきは「議題、時間割、目標」の3点セット。
selectとmap
配列の中で条件に合致するものを取ってきてくれるのが、select 配列の各要素が条件に合致するかどうか、真偽値を返すのが、map
irb(main):004:0> ["1", "2"].select {|i| i == "1"} => ["1"] irb(main):006:0> ["1", "2"].map {|i| i == "1"} => [true, false]
selectの反対はreject
irb(main):005:0> ["1", "2"].reject {|i| i == "1"} => ["2"]
10から300までの数を10ずつ配列で出力する
[*10.step(300, 10).to_a]
エンジニア1年目、半年の振り返り
新米エンジニアが4~5ヶ月目を振り返る
ざっくり振り返る。
課題図書
全13冊の課題図書の内、6冊は読了。 オブジェクト指向設計実践ガイドは途中で難しいと感じたので、一旦ストップしました。
オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方
- 作者:Sandi Metz
- 発売日: 2016/09/02
- メディア: 大型本
代わりにこちらの本の序盤を現在読んでいます。
オブジェクト指向のこころ (SOFTWARE PATTERNS SERIES)
- 作者:アラン・シャロウェイ,ジェームズ・R・トロット
- 発売日: 2014/03/11
- メディア: 単行本(ソフトカバー)
RSpecの講義
Rubyのテスティングフレームワークとして有名なRSpecの講義がありました。 英語っぽく書けるので可読性が高い点はminitestより良いなぁと思いました。 しかし、初めはかなり苦戦しました。 ユニットテストを書くことは、メソッドの振る舞いを考えることなので、設計する力も身につきそうです。 それと、システムスペックでブラウザを自動操作できると知って、面白いなぁと思いました。
Goもくもく会
オフィスから近くで開催されていたので、参加しました。 エウレカさんのオフィスは広くてオシャレでフリードリンク付きでとてもよかったです。 久々にGoを触りました。
Tokyo Rubyist Meetup
Go言語で書かれたRubyっぽい言語、Gobyの作者であるStan Lo氏が参加するということを前日に知って、慌てて申し込んで参加しました。 ミートアップのトークは一つだけで、仮想テーブルを扱うGemの話だった気がします。 英語で色々な人と技術のお話が出来て、とても勉強になりました。 Stanさんや主催者のPaulさんとも話せました!
パイロットプロジェクト
ここまでの研修の山場だったかもしれません。 エンジニア1人のチームで、アジャイル開発をやってみる感じでした。 お題はシンプルなTODOアプリでしたが、会社のデザインシステムを使ってマークアップしたり、厳しいコードレビューを通してデモを見せてプロダクトオーナーにOKを貰ったりするのが難しかったです。
MobaSiFリーディング
PerlのフレームワークであるMobaSiFのコードの読み方の研修でした。 10年以上も前に書かれたコードを読むのは大変ですが、新規の開発案件でない限り古いコードを読んで移行するという仕事はいろんな現場であることなのかなと思いました。
デプロイ
恐れずにデプロイできるようになるための様々な知識を授けていただきました。 アプリケーションエンジニアがコマンド一発で安全かつ高速にデプロイできる仕組みは素晴らしいです。 インフラへの興味がより強くなりました。
その他研修
バッチ処理や、センシティブデータの扱い、簡単なデータ分析手法などなど雑多だけど業務上大事な知識を先輩から習いました。
新米エンジニアが2~3ヶ月目を振り返る
5月
うっかりしていて、5月の振り返りを書かないままでした。 基本的にはRailsTutorialとSQLドリルをやっていました。 railstutorial.jp
午前中はSQLドリルを進めて、午後はRailsチュートリアル。 その日の終わりにはプルリクを提出して、翌日午前にSQLドリルをやっている間にレビューしてもらって、午後はチュートリアルの繰り返しでした。
6月
社の先輩が書いた本を使ってのセキュリティ研修や、社のGithubフロー、社で使っている静的解析ツールについての講義が前半にありました。 booth.pm 6月後半はマークアップ研修でHTML/CSSの基礎から、Haml/Sassで社のプロダクトのページを実際に作るところまでをやりました。CSSの苦手意識が薄くなった一方で、クラス設計の難しさを実感しました。
短いですが、色々書こうとすると永久に下書きになるのでこのへんで。
追記
このあと、テーブル設計とトランザクションも講義を受けました。 仮想の送金、決済サービスである「みんなのPay」のテーブル設計を考えて、SQLを書いてレコードを作ったり、チームで送金しあったりするなどしました。