今年はどんな一年だったのか振り返る的な

プライベート開発

今年は750 contributionsほど。2017年は800くらい。去年より低いだと…!?

作ったものはこんな感じ

  • goland
  • apex_parser
  • land(apex_parser2)
  • yasd
  • lui
  • soql-cli
  • go-soapforce
  • go-salesforce-formula-parser
  • salesforce-formula-parser
  • secrets_loader
  • salesforce2apex
  • logical-parser
  • racli
  • spring-commands-racli
  • log4r-date_directory_file_outputter

PR出したのはこんな感じ

  • env-injector
  • better_errors
  • bootsnap
  • byebug
  • rails (docの方だけど…
  • hanami(出したけどダメだった…が、別PRが取り込まれていたので一押しにはなった?w

ちなみにRubyのissueも出したら対応いただき感激

https://bugs.ruby-lang.org/issues/14702

全体的にSalesforce成分多めで、Ruby/Railsが次点って感じ。

あとなんと言ってもLANDの年でした。調べてみたら300時間くらい費やしていた…再実装2回くらいやったんですが、その度に精度が上がっていった感覚があるので再実装とか再発明って結構大事だなーと。

Write Code Every Dayではなくて、Study Every Dayくらいで良いんじゃね?みたいな思いがあり、まぁcontributionの数は目安程度で良いかなーと思っていたり。

ブログ

書いた数は60記事ほど。

コードリーディングがほとんどで残りはハマりどころ共有や制作物の紹介って感じ。

コードリーディング系記事はあまり芸がない(正直わかりづらいし誰でもできるしニーズも低いし花がない)のだが、今年、自分の技術力を一番押し上げてくれたのはコードリーディングと言えるくらい個人的には重要な記事でした。ブログというモチベーションがあったからこそコードリーディングを続けれたとも思います。

また、コードリーディングもRubyで書かれたものだけではなくC拡張にもチャレンジできたのが良かったです。結果としてこれがbyebugとdebaseのコンフリクト解消のPRや、Rubyのissue起票にも繋がったし。

あとアドカレは6本も参加しましたw(Salesforce、言語実装、Rails、PHP、Salesforce、Salesforce…

さすがに内容は薄くなりがちだけど、PHPだとDBGPは初めて触ったし、RailsのBulletコードリーディングも新しい知見が得られたし、Salesforceは今年作ったツールの紹介=供養をできたし、リアクションほとんどなかったけどLand Playgroundもリリースできたので実は結構満足していたりします。

参加したイベント

  • 表参道.rb(3回ほど
  • RubyKaigi
  • railsdm
  • Salesforce Developer Meetup

なんといってもRubyKaigiが最高でした。来年もテック成分強いイベントに参加したい気持ち。

表参道.rb、Salesforce Developer MeetupではLTさせていただきましたm(_ _)m

アウトプット多め、とまでは言えないけどこの調子で続けていきたいっすね。

来年はまずはDreaminで登壇させていただくので、よろしくお願いしまーす。

読んだ本(再読含めない

  • Docker for Rails Developers
  • RSpec Hacking Guide
  • Crafting Rails 4 Applications
  • Mastering Ruby Strings and Encodings(読みかけ
  • Writing Interpreter in Go
  • ふつうのコンパイラをつくろう
  • Linuxのしくみ
  • OS自作入門(読みかけ

例年と比べるとだいぶ少ない気がしているんですが、その分コードリーディングに費やした感じもするのでまぁインプットとしては悪くなかったかなーと。

30日OS本読み切れると良いなー

その他

LPIC Level2の期限が切れそうだったのでLinuC3取得しました。
LPICはエンジニアとして方向性を決めれていないときに取得した資格で、Samba/LDAPとか今後私使わないよーって感じでモチベーション的に勉強は大変でした…w

仕事だと、PHP/Symfonyに触る機会があり、PHPの良さを再認識しました。具体的には型宣言良いなーと思ったし(しかも、ダックタイプ or 型宣言で選べる。強制ではない)、mod_phpとかphp-fpmとかopcache効くとは言えイチから初期化しても速度出るんだなーとか(まぁ最近 swooleRoadRunner みたいな初期化を前もってやるタイプのものも色々出てきているけど)、LLの中でも使いやすさと堅牢性のバランスが良く取れてる印象が強かったです。Rails系じゃないフレームワークとしてSymfonyを体験できたのも非常によく、特にUnitOfWorkなDoctrineを使ったDB処理やDIコンテナの思想あたりは、Ruby/Railsと対比させながら楽しく学べています。

それ以外にも定期ライブラリアップデートのスクリプト書いたり、フレームワークのアップデートしたり、ECS周りちらっと触ってみたりひっさびさに決済系の処理書いたり、色々やってました。

コメント

コードの読み・書き・インプット・アウトプット(ブログ+LT)がバランス良くできて、技術力上げれたなーと思えるくらいとても良い一年でした。

上半期はコードリーディング量が多く、利用しているツールへの深い理解ができたし、下半期はLANDを始めとするSalesforce関連ツールを色々作ってました。特にLANDはクラウド上のプログラミング言語をローカル環境に再実装するというとてもチャレンジングなもので、紆余曲折はあったものの今も良い感じに開発が続けられているし、バイトコードやコンパイラ作成などへのチャレンジにも繋がり、私の技術領域を広げてくれました。Salesforceをフックとして色んな技術要素を試すっていうのは私にとっては良いアプローチだなーと改めて思いましたw
コード読み書きに関しては、自分が経験したことのない興味のある領域のプロダクトにチャレンジすることで、もっと技術者としての可能性を増やしていきたい気持ちです。

来年はLANDをある程度動くようにしていきたいし、OS自作なんかもチャレンジしてみたいし、LLVMとかもちょっと興味あるし、LSP実装してみたいし、何より英語をもうちょっと勉強していきたいし、やりたいこと多いわーって感じなので断捨離していかないとなw

 

最後に、この一年の技術的な成長は間違いなく働いている環境・チームメンバーのおかげなので、昨年に引き続き本当に感謝しかないですmm(ハイコンテキスト顔文字

ということで来年も健康第一で(←ここ大事)やっていきまーす