タオルケット体操

サツバツいんたーねっとでゲームとかガジェットのレビューとかをします

プライベートにコードを書くと筋力があがる(可能性がある)仕組みについて

Sponsored link

「年末年始にコード書かないやつは……」云々のツイートについてのお気持ちはだいたい↑の通りなんだけど、どうも世間の感想(ツイートへのぶら下がりとはてなブックマークのコメントという枠です)をみる限り僕の想定とはズレた感じで批判的な人*1が沢山いるようなので、プライベートのコーディングとプログラマとしての能力がどういう相関関係にあるのか僕の考えを書こうとおもいます。

プライベートで(趣味)コーディングしてる人が有能である(可能性が高い)理由について

コーディングの前に (趣味) とついていますね?
まず趣味コーディングという概念の存在を知らない人が沢山いるので解説すると、趣味コーディングとはその名の通りプライベートの時間を使って趣味のコーディングをすることです。
ここがまず理解し難い人が沢山いるとはおもうのですが、プログラミングというものはそれ自体が登山や日曜大工、読書なんかと同じように趣味として成立します。そしてプライベートで書くコードは概ね仕事とは無関係か、直接は生きないものであることが多いです。

イラストレーターの人が激務の合間の息抜きで落書きを描く……なんてミームがありますが、プログラマーの間でも同様に「仕事の息抜きにコードを書く」みたいな文化があります(/た)。
ただ最近はこれ、あんま言ったり聞いたりしなくなりましたよね……長くなりそうなので深くは言及しませんが、今回の盛り上がりの裏側にも同様のコンテキストが流れている感はあるので僕はほんのちょっとZOZOの人には同情的です。たぶん8年前なら同じツイートしても炎上しなかったでしょうし。
とはいえその後の対応のダサさとかみるにつけ、炎上塾塾長仕込みの売名行為なのかなーとか勘繰っている僕もいますが。

とにかく、プライベートにプログラミング云々の話を理解するにはこの辺の文脈が大前提になります。

プログラミングがすき

というわけで当たり前ですが、金ももらえないのにプライベートの時間を削って好きでもないことをするのは異常者です。
なので趣味コーデイングするやつは例外なくプログラミングが好きです。好きこそ物の上手なれ、必然的に能力が高くなるわけです。

またこういう人はうまく公私混同するようにモチベーションコントロールすることが出来れば業務も趣味のように高いパフォーマンスでこなすことが出来ます。

守備範囲が広い(ことが多い)

人手に余裕のないスタートアップだったりすると一人がなんでもやらないといけないことがまれによくありますが、ある程度安定した企業であれば大抵の人はある限られた領域ひとつを業務として持っているのが真っ当でしょう。
つまり仕事でしかコードを書かないと、業務で得られる知見は自然とある限られた領域に固定されがちです。

翻って趣味プロジェクトは何時、何を立ち上げてそしてどうやめても構わないですし、一人であれもこれもやらないといけないので広い範囲の知見が手に入ることが多いです。
あるいは仕事では追求する暇もないくらいとてもマニアックで深い領域の技術である場合も多いですね。

それらが仕事に生きるかどうかは運次第ですが、なんでそんなに色々な領域に詳しいんだ!ってタイプのプログラマーは仕事をサボって遊んでいるのでない限りはプライベートで何か書いてる人です。

エッジの技術に触れている(可能性が高い)

業務においては一人の人間がいくつもプロジェクトの立ち上げに参加しまくり……なんてことはまずありえません。
基本的に途中参加するか、立ち上げが終了してもそのまま継続して保守や改善に回るのがこれまた真っ当です。

そして選定された技術もプロジェクト立ち上げた時期の最新(……とは限らず、まともな職業人は"枯れた"ライブラリ等を選ぶ)にとどまり、以降は知識のキャッチアップをするモチベーションがなくなりがちです。
というか仕事のプロジェクトに何かと出来立てホヤホヤのunstableな技術を入れたがる奴はスキルシートの欄を増やしてキャリア形成したいだけの地雷の可能性があるので気をつけましょう……*2

コードを書いていても能力向上につながらない(ことが多い)プライベートの削り方

ただの残業

ただの残業です。
先に述べた利益を何一つ享受できてませんし、楽しくないし、健康も失い……そして……

ただの副業

本業ありきの限られた時間で行う副業はよほどのバイタリティお化けだったり、あるいは業界でかなり発言力があるので技術フェローとして参加できるような身分でもない限りはいままでの貯金で成果を出して対価をもらうだけになりがちです。

本業の組織があまりに旧態依然としていて本人に能力があり、副業先が優良企業という超レアケースをのぞいてただの副業がスキルアップに繋がることは少ないでしょう。

「年末年始にコードを書いていない人間はエンジニア向いていない」のか?

「年末年始とか関係なく趣味でコードを書いちゃってる人間」は間違いなくITエンジニアに向いているでしょう。めちゃくちゃコーディングが好きな上に日々研鑽してるわけですから、やる気もない上に何の努力もせず惰性で仕事をしている過半数よりもそら間違いなく有能でしょう。

ただ「年末年始に書けば」エンジニアに"向ける"のか?と問うと、間違いなくそんなことはないですよね。
ここで書いているのは揚げ足取りなわけですが、アカウント名やbioに堂々とZOZOのCTOなんて肩書きを載せていたら、そりゃまぁ箔があって便利に使えることも多いんでしょうが不要な発言の揚げ足を取られて人々が盛り上がるのは当然予想すべきです。

ま、エンジニアなら条件式に雑なもの入れたら評価が壊れるのは覚悟済みでしょうけどね(米笑)

まとめ

  • 140字しか書けないツイッターのつぶやきに意味や意義を載せようとするのは正気の沙汰じゃないからやめるべき。肩書きあるなら尚更

  • 有能の条件はひとつじゃない

    • そのうちひとつを取り上げて満たせなかった奴は雑魚w みたいな攻撃的な書き方を組織の上に立つ人間がするのは普通にヤバいとおもったけど、そういう発言がぽろっと出ちゃうのがツイッターなのでこわいとおもった(小学生並みの感想)。
      家庭がある社員だっているだろうし、デジタルデトックスして読書したい人間だっているだろうし、俺みたいに引越しのインターネット開通をミスって悲しみに包まれながら筋トレしていた人間だっている。

      • ちなみにZOZOエンジニアの入社条件にしてあるなら文句ないです
  • このツイートに対する批判の仕方でその人の環境や経歴がわかってしまうので安易に言及すると危険。
    正直このツイートを読んで「年末年始も働け!!」っていう意味だと解釈する人の環境はちょっと心配……とここまで書いてて、もしかして本当にそういう意味だった可能性について考えてしまったけどそんなことないよね?労基守ってるよね?

  • 年末年始に藁人形殴ってるエンジニアは有能なのか問題
    コード書くのが楽しくてしょうがない人は自分のアウトプットや興味についてブツブツ呟いてるんじゃなかろうか

まぁ色々と書いてきたけど、ぶっちゃけ今までみてきたこの方めっちゃ優秀やん……みたいな人は仕事とか関係なくコード書いてるんでやっぱ大筋では正しいんよね。
もちろんめちゃくちゃ賢くて趣味でコーディングしない人種だけどバリバリ仕事こなせるって人も結構みてきたけど、プライベートでコード書くような人の優秀さと比べると質が違うよね。触れてる時間や吸収してる情報量、そしてモチベーションが違うもん。
ちなみに趣味で色々やってるらしいけど職場では……ってパターンは本人だけじゃなくて職場に問題があるようなケースもあり、それぞれに意見主張があったりしますね?適当に鵜呑みにするのはやめよう。

ちなみに私が年末年始に書いたコードは0行です。やれやれ

追記

大事なことを書き忘れてましたが、別に有能じゃなくたっていい。健康に生きてさえくれれば……

というわけで趣味でコード書く人間の優秀さ云々について書くと認知の歪みやバイアスに踊らされる人がなぜか「やっていけ」と強制されていると勘違いされてしまう現象がよくあるんですが、ぶっちゃけプログラマーとして普通のことが普通に出来れば基本的に問題なくないですか?それくらいありふれた職業になっているんじゃないでしょうか。
正直プライベートを犠牲にしなくてもちゃんと仕事中に

  • コードのコピペはしない

  • エラーメッセージ、ログはちゃんと読む

  • 公式のドキュメントを読む

の3つさえ守りながら要領良く仕事してくれれば普段どうしてるかとか誰も気にしないですよ。たぶん。
逆に普段どれだけ意識高いことを呟いてツイッターのフォロワー増やして自己研鑽頑張ってGitHubにくさはやしてもこの辺適当だと全部台無しなんで、どうか、たのむ……

*1:ZOZOの前社長や炎上担当執行役員の人がネガティブに影響しているというのは大いにありそう。わかるぞ

*2:とはいえそれが本当に新しくて不安定なだけの代物なのか次のデファクトなのかを判断するのは困難を極めるわけですが