2017-01-15

趣味プログラム書いてなくても優秀な人はいるよ

ポエムだよと予防線を張っておく。

量産型プログラマを撲滅したい

https://medium.com/@kuranuki/%E9%87%8F%E7%94%A3%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%82%92%E6%92%B2%E6%BB%85%E3%81%97%E3%81%9F%E3%81%84-570302a5c243#.5jkqutaio

上の記事とは直接関係ないんだけど、ブコメを見てて思ったこと。

僕も以前は優秀なプログラマはみんな休日とかに趣味プログラムを書いてると思ってたんだけど、最近仕事でいつも他の人のコード読んでレビューしたりデザインとかチームのスタイルとかにも意見を出しながら自分仕事終わらせてる人に出会って考え方が変わった。その人に「やっぱ趣味プログラム書いてたりするんですか?」て聞いたら「仕事からやってるだけでこういうことをするのが好きなわけじゃない」って返された。

そのときに優秀な人みんなが趣味でそういうことをしてるわけじゃないんだって思った。

たぶんもともと優秀な人はどこにいっても通用する。その人はたまたまこ業界に入ったけど、おそらく広告業界に行っても商社に行っても不動産業界に行っても通用してたと思う。

なんで優秀な人はみんな趣味プログラム書いてたりするって話が出てきたのか考えてみた。

一番最初に実際としてそういう人が多いのは事実だと思う。著名なエンジニアの人たちは趣味OSS作ったりコミュニティ活躍してたりする。順番が逆か。趣味OSS作ったりコミュニティ活躍してるから著名なエンジニアになった。

でもそれは僕たちが観測できてるのがそういう人たちだけだからであって別にそんなことしてなくても優秀な人はたくさんいると思う。

次に思い浮かんだのは、ただ単に僕たちの幻想なんだと思う。活躍してるエンジニアの人たちをみて「なんであの人はあんなに優秀なんだろう」、「どうやったら自分あんなふうに活躍できるだろうか」って考えた時にきっと仕事以外にも趣味プログラムを書いてるからだって思ってる。つまり、あの人たちみたいに自分趣味プログラム書いたりすればあんなふうに活躍できるっていう幻想別に間違ってはいないと思うけど、それで活躍できるのは活動している特定コミュニティOSSプロジェクトの中だけだよきっと。もちろん、そもそもそういった活動に身を投じなければ有名になったりすることはできないんだけど。

で、ここからちょっと冒頭の記事にも関係するかも。

優秀な人、いわゆるできる人とできない人の差ってなんだろうね。僕はHOWで終わるかWHYまで突き詰めるかだと思う。コード書くときもなんでそういう書き方するの?可読性が高いから?じゃ具体的にどこが可読性が高いのか説明できる?ってとこまで突き詰められるかどうか。そこで本に書いてあったとかあの人が言ってたとか返されると、本に書いてあったから?その本はなんでこの書き方だと可読性が高いって書いてあったの?可読性が高いってしか書かれてなかった?その本大丈夫?ってなる。

HOW、どうやるかで終わる人はこのパターンはこういうやり方、あのパターンはああいうやり方ってパターンごとで覚えるから新しいことに挑戦したときにどうやったらいいのか分からなくなってしまう。

WHY、なぜそうやるかまで突き詰める人はこのパターンだとこうって言われた時に「なぜこのパターンだとこういうやり方なのか」と考えることができる。そういう人は「別のパターンだとこうかな」と考えられる。HOWで終わってしまう人も「別のパターンだとどうするんだろう」と考えることはできるが原因や理由が分からいから新しいことに挑戦したとき問題解決方法が分からない。パターンしか解決できないから。

HOWで終わってしまう人が趣味プログラム書いたりコミュニティに参加してもHOWで終わってしまうからそのプログラムコード、そのコミュニティでのやり方しか覚えない。会社から外に出ると通用しないのと同じで特定コミュニティから外に出ると通用しなくなる。

WHYまで突き詰める人はコード書くときもこう書いたら動くじゃなくて、なぜこう書くと動くのかや、コミュニティに参加するときもなぜこのコミュニティができたのか、このコミュニティ目的はなんなのかを考えられる。だからコミュニティで新しいことに挑戦するとき問題が起こった時にそもそもの目的のためにはどうしたらいいかを考えられる。その能力はどこのコミュニティに入っても通用する。

優秀な人、できる人とできない人の差ってこのへんなんだと思う。

結局なところWHYまで突き詰める人は趣味プログラムを書いていても書いていなくても優秀だしプログラマとしてもパターンごとの実装しかできない人よりは能力が高い。と僕は思ってる。

趣味プログラム書いたら優秀になれるわけじゃないんだよ。

長くなったので要点をまとめると僕が言いたいことはこんな感じ。

・できるプログラマはみんな趣味プログラム書いてるってのは僕たち凡人の幻想趣味プログラム書いてなくても優秀な人はいるよ。

・けどそもそも趣味OSS書いたりコミュニティに参加しないと有名にはなれないよ。

・けどHOWで終わってしまう人は結局どこに行ってもそこでのやり方しか覚えないからあまり活躍できないよ。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん