「asa1984 Advent Calendar 2024」11日目の記事です。
最近、自分がどのように技術的な情報をキャッチアップしているか説明する機会があったので、本稿ではそれをより詳しく言語化して、再現性のある方法論に昇華させようと思います。
- 情報のハブ
- エンジニア大怪獣バトル
- インプット・アウトプットという二項対立の破棄
- 能動的な受動的キャッチアップ
キャッチアップの初期段階を加速させるのに最も適している情報源は間違いなくヒトです。大量の情報を詰め込まれているだけでなく、綺麗に整理され、関連づけられ、稀に優れたメンタルモデルまで持ち合わせています。
関心領域への知識が乏しい初期段階では、いかに自身の無知の無知を潰すかが重要です。そのためには、情報のハブを見つける必要があります。
私ならどこかの企業のリードエンジニアやOSSのコントリビューターから情報のハブを探しますが、必ずしも専門家である必要はありません。むしろ、自分と近い知識レベルの人の方が彼らが語っている内容を等身大で理解できる分よいかもしれません。
ここで重要なのは彼らから直接優れた情報を得ることではなく、己の知識だけでは認知できない領域まで手を伸ばせるようにすること、そしてその先にある知の高速道路に乗ることです。言い方が悪いですが、彼らの情報探索能力を拝借しましょう。
カンファレンスは人間がいっぱいいるのでお得です。現地参加できなくても、大きいカンファレンスなら大抵スライドや配信のアーカイブが公開されているので、そこから情報を得たり、発表者のTwitterやブログを辿って情報のハブを増やすことができます。
(東京の奴らってこんなお得なイベントにオフラインで参加できるってマジ?滅ぼした方がよくない?)
情報のハブを辿って情報の仕入れ先を増やしたら、次は自立して思考し情報を餞別できるようになる必要があります。己を鍛えて驚き屋を殺します。
最初から自分で考えるというのは非常に難しいので、対立的な意見を交互に検討して練習します。Twitterでは基本的に毎日技術に関する 喧嘩 議論が繰り広げられているので話題に事欠きません。Webフロントエンドなら、Next.jsの是非とかTailwind CSSの是非とか、つよつよエンジニアほどキッパリ意見が分かれるので面白いです。彼らが意見する際に共に述べられる背景的な知識や、どこからともなく引用RTを飛ばして問題を止揚する謎の第三勢力も美味しいです。
当たり前ですが内容スカスカのポジショントーク・冷笑1のような非建設的言論は見ても心が滅入るだけなのでシャットアウトしましょう。
一般的に、Google検索やSNSを駆使して情報を仕入れる行為(キャッチアップ)や技術書を使った勉強はインプット、個人開発や技術記事の執筆はアウトプットとされていますが、この軸だけで考えるのはちょっと雑すぎるんじゃないかと私は思っています。
インプット・アウトプットの二項対立に、アクティブ・パッシブという新たな軸を導入します。
- アクティブなインプット
- アクティブなアウトプット
- パッシブなインプット
- パッシブなアウトプット
アクティブなインプットに入るのは、Googleなどを用いた検索行為や技術書を用いた勉強です。これらは基本的に問題を解決するために行われるものです。例えば、プログラムのエラーや業務で用いるライブラリの調査、知識不足の解消など、何らかの目的意識をもって行われます。アクティブなアウトプット(開発・技術発信)も同様に目的意識を伴っています。
世間一般で言われるインプット・アウトプットは大体これらの行為を指しており、もちろんいずれも素晴らしいアプローチですが、環境や当人のモチベーション次第で簡単に持続可能性を失います。私たちが目指すのはパッシブなインプット・アウトプットです。
パッシブなインプット・アウトプットと称するとなんだかカッコいいですが、これはマイクロブログ形式のSNS、つまりはTwitterのことです。
SNSは情報の入出力のコストが著しく低いプラットフォームです。だからこそ問題もあるのですが、係る労力が常人でも余裕で耐えられるレベルまで引き下げられることで、世のつよつよエンジニアがこなしているインプット・アウトプットのミニチュア版を再現することができます。
SNSはレコメンドシステムに強く下支えされているプラットフォームです。自分が見た情報・発信した情報が自身のタイムラインを改築していきます。これは1人だけだとすぐ局所最適化の如く既知の知識が堂々巡りする穴に落ちてしまいます。しかし、複数の人間と繋がりを持っている場合、自分のポストがフォロワーのタイムラインあるいは非フォロワーのレコメンドに流れ、それを見た彼らが影響を受けてさらに発言することで爆発的に情報が循環します。上手く利用すると無知の無知が勝手に無知の知に変換されていき、ゲームで探索可能エリアが広がるかのようにキャッチアップできる知識領域が増えていきます。
SNSではある程度の繋がりを持った状態だと、インプット・アウトプットをこなしているという自覚なしにキャッチアップができる環境が出来上がります。このようにして受動的に有用な情報を収集できる環境を能動的に構築するというのが本稿で述べたかったキャッチアップの方法論です。
SNSでは全く見かけないのに異常に強いエンジニアという人はいっぱいいますが、それは彼らが実業務やオフラインあるいはクローズドな環境で、より密接な形でフィードバックループを築いているからです。そういった環境でしか得られないものも当然あるので、アプローチを変化させ続けながら多角的に実行するというのが大切なんだろうなというのが最近の所感です。
Footnotes
-
内容があるならよい。 ↩