30歳からのプログラミング

30歳無職から独学でプログラミングを開始した人間の記録。

「『現場で使える Ruby on Rails 5速習実践ガイド』増刷記念 著者交流会」に行ってきた

『現場で使える Ruby on Rails 5速習実践ガイド』の著者にサインをもらえるイベントがあったので、行ってきた。

diveintocode.doorkeeper.jp

正月休みに読んだのだが、よい本だった。本書のおかげで少しは「Railsの基礎を身に着けた」と思えるようになった。

よい本だったので、その著者にサインをもらえると知り、行ってみようという気持ちになった。
主催は DIVE INTO CODE というプログラミングスクールで、これからエンジニア業界を目指す人向け、という意味合いが強いイベントらしい。
なので自分は想定される参加者とは少し違うが、「Rails は初心者なのだから似たようなもんだろう」という気持ちで参加した。席も余裕があったし。
自己紹介のときにも話したのだが、かなりミーハーな気持ちで参加した。そうそうない機会だろうから。

まずは櫻井さんの講演から。

本書の出版の経緯と、Rails の学習方針について。

CURD ができた、アプリができた、というのは通過点に過ぎず、現実の問題を解決してこそ「Rails を使えている」と言える、というのは本当にそう思う。
導入として簡単な掲示板やブログを作ってみることに意味はあるはずだけど、それは、「現実的なコード」「実用的なコード」からは程遠い。
自分も1年独学してから就職したが、現場や実践でないと学びにくいことはたくさんあると実感した。

上手くなるためには訓練が必要なわけだが、具体的にはどういう風に訓練していくべきなのか。
裏側に思いを馳せる、というアプローチをお勧めされていた。
具体的には Rails の実装を読んだり、gem の中身を調べたり、ActiveRecord でどのような SQL が発行されているのかを見たり。
広く使われているライブラリを読むことで勉強になる、みたいなのは確かによく聞く。
ライブラリではなく「Rails アプリ」なら、Mastodon とかがいいのだろうか。

それこそ、DIVE INTO CODE のようなプログラミングスクールを使うのもいいのだろう。
詳しくないのだが、櫻井さんとペアプロをしたり出来るらしい。
これはかなり魅力的。

自分の能力を効率的に上げるためには、自分よりも圧倒的に優れている人と働くのが重要だから。
自分と同じくらいとか、ちょっと上とかではなく、圧倒的に上。

講演の後にあった質問コーナーでも、すごい人と働くにはどうすればいいか、という趣旨の質問をした。

すごい人と働くことの効能は、身をもって知っている。
このブログで一番はてなブックマークを集めている以下の記事は、すごい人から学んだ内容をまとめたものだ。

numb86-tech.hatenablog.com

キャリアの最初にこの方に鍛えてもらったことで相当勉強になったし、プログラマとしての正しい姿を見ることが出来た。この方がいるから入社したみたいなところがあり、それは本当に正解だった。とはいえ、そういう理由で入社するとその方がすぐに退職したときに厳しさがある。

他のプログラマの方も、一緒に働くプログラマや環境の重要性を述べている。

diary.shuichi.tech yshibata.blog.so-net.ne.jp

質問に対するご回答。

  • 櫻井さん
    • アンテナを高く張って、イベントとかで会社の存在を知る
    • GitHubですごい人のソースコードを見る
  • 大場さん
    • すごい人と働くのは現実的には難しい
    • 自分がすごくなるしかない
      • 狭くてもいいので、自分が得意な分野を作るのがよい
  • 松本さん
    • 技術コミュニティに入ることで、すごい人たちと接点を持てる
    • 思いがけず、自分の周囲にすごい人がいたりする
      • よちよち.rb というコミュニティに参加していたとき、Ruby は初心者だが他の分野ではすごい人、という方がいた
  • 小芝さん
    • 一緒に「働く」ということに拘る必要はなく、コミュニティというものもある
    • コミュニティで発表したり、何かを与えたりすることが大事

王道や近道はない、という感じだろうか。

RubyRails の腕を磨いてそれを武器に環境を移っていく、というのは現実的ではない気がするので、フロントエンドを武器にすればいいんだろうか。

取り敢えず、React でも頑張ろうかという気持ちになっている。
折しもこの日、v16.8がリリースされて、React Hooksが正式に導入された。
今の職場は Vue を使っているが、自分の動き次第で React を使った SPA の新規開発をやれそうな気配が生まれているので、それをやろうかと思っている。

reactjs.org

サインも無事にもらえた。