📚

社内外の強い人達の調査/勉強法まとめ

2024/10/09に公開

ゆめみ/虎の穴ラボさんの「勉強法の勉強会」というのが好きで、そちらをベースに社内の強い人たちへのインタビュー(10名程度)をミックスして、みんながどうやって調査とか勉強とかしているのか、まとめてみました。

インタビュの結果、あまり共通項みたいなものがなく、結局勉強に関しても銀の弾丸はなさそうな雰囲気でした。ので、どちらかというといろんな人のいろんな方法を並べる、みたいになっています。
いろいろ詰め込もうとしすぎたのでゴチャった感ありますが、誰かの参考になれば幸いです。

前提など

今回まとめるにあたって参照した先

ソース 詳細
勉強法の勉強会 勉強法の勉強会
勉強法の勉強会#2
勉強法の勉強会#3
第4回があったがオフライン&大阪で悲しい
社内インタビュ ・社内フロントエンドスペシャリスト等への勉強習慣等に関するインタビュ
・自分がやってる方法

その他前提など

  • 私がフロントエンドエンジニアなので内容はフロントエンド寄り
  • 私の所属企業は全社1000名規模のWeb受託開発企業
  • 社内勉強会で喋る用に作ったので読むだけだとわかりにくいかも。。

使用する略称・名詞など

略称 意味
FE フロントエンド
FESP フロントエンドスペシャリスト
FW フレームワーク
ML メーリングリスト
TL タイムライン
times 社内Slackの分報

勉強法を見るその前に、そもそも

勉強ってなんだろう…みたいな沼にハマったので、長くなったしポエムだったので切り出しました。もし興味があれば。

https://kzk4043-knowledge-base.netlify.app/general/understanding/
https://kzk4043-knowledge-base.netlify.app/general/motivation/

調査、勉強法

仕事でつまったときの調査法

方法(具体例など) やり方、人によるバリエーション
対象コード自体を変えて試す ・こうなるとだめで、こうなるとOKだから…を確認
・いいとだめの境界線がどこにあるのか
・それがわかってからGPT or 検索
公式サイト ・FWレベルだと最初に公式チュートリアル触ったり
・ライブラリのリファレンスを見たり
AI

・GPT
・Copilot
・Perplexity
・見たことないエラーメッセージ丸ごと入れてみる。これなに?って。切り分けをしてもらう
・分からない単語を説明してもらう
・XとYの違いを教えてもらう
・理解を述べて確認してもらう
・クイズ出してもらう
・ダックタイピング的使い方。これだけで解決しようとは思っていない。検索のヒントを得る
・エラーメッセージ出ない場合とか言語化難しくて避けがち
ググる、まとめサイト

# 検索
・Google
・X

# 翻訳
・ブラウザ機能
・DeepL
# 方法
・検索する前にあたりを付けて考えて、GPTに聞いて、それでもだめなら検索
・エラーメッセージ全体をクオーテーションで囲って検索
・ゴミ情報が出てくるときは-ドメインとかでサイトを除外
・digる=一個のサイト見て、そこに乗っているサイトを見ていったりどんどんたどっていく
・一旦timesにリンクを流してあとでちゃんと読み直す(帰りの電車とか)

# 翻訳
・機能系の検索は英語が多いかも(機能+doesnt workとか)
・翻訳は一度ブラウザ機能でやって、精度低ければDeepLに。または原文見る。
・Vue系は中国語で調べたり
社内リポジトリ検索

・github
・特定ライブラリの実際の使われ方/導入実績があるかを知りたい時
org:組織名 /調べたい文字列/ path:package.jsonとかで検索
・Google検索と同じくらいの頻度でGithubを調べるって人も
・あまり見ないって人も多かった。コード書いた人に聞いた方が早いって人も。
社外(OSS等)リポジトリ検索

・github
・問題が起きているライブラリ等のリポジトリで検索かけてIssue上がってないか
・github.dev(ショートカット.)で開いて内部コードを見てみる(処理内容、コメントとかでヒントを探す)
・エラーが出た対象ライブラリのリポジトリでエラーメッセージ検索
・ほしい処理をしているライブラリを探して、処理内容をパクる(ライセンス注意)
小規模再現して試す

おすすめリスト
・あまり使わない、使わなくなったという人も多かった(ちょこっと試せるレベルだとある程度想像がついてしまう?)
・ちょっとしたものならブラウザの検証ツールで
・SaaSじゃなくローカルで試すという人も
人に聞く ・絶対わからないと思ったらスペシャリストとか案件の強い人に聞きに行く
・班定例で聞く
・喫煙所で聞く
・timesに書いたら誰かが助言くれたりする
・タイマーを20分設定していてそれで分からなければ聞くルールにしてる人も
  • あまりgithubで検索する習慣がなかったのでとりいれてみたい
  • RunKit知らなかった…便利

勉強法

方法(具体例など) やり方、人によるバリエーション
実装 ・自分が作りたいもの
 ・自分が使う用→土日を5回くらいつかってちょっとしたツールとか
 ・新しい技術を1つ組み込む
 ・課題ベース(不満)、技術ベース(GPT使いたいとか)
・ブログをいろいろなアーキテクチャで5回くらい作り直している
 ・FWの全体をみたいから、作り直して、中途半端でおわって、素振りくらい
 ・一回作るとなんとなくわかるのでいい感じ
・ゲーム
 ・仕様が決まっているし、適度に複雑な動きがあってよい
・いろんなツール系作成
・チュートリアルとかやることもある
記事執筆 / zenn scrap ・1〜3年目はscrapboxにかなりの頻度で記事としてアウトプットを出していた
・今は頻度は高くないものの、案件が落ち着いたタイミングで使った技術に関することをzennとかにあげている
・基本何でもzenn scrapにまとめる
 ・とりあえず起票して、なにかあったらメモを追加していく
 ・思いつきベース、案件でなにか必要になったベース
・昔はスプレッドシートで調べたい項目(問題点)と、調べた結果のURLをまとめるシートを作っていた
Twitter / times ・基本的に times に流す
 ・気になったこと、良かった記事
 ・社外秘かどうかを気にしなくていい
メモツール

・Notion
・Macのメモ帳
・Obsidian
・読書記録
・実装のメモとかしたいができてない
・これ勉強しとこ、みたいな記事をためとく
 ・TODO管理的な。長期計画も立てたり
 ・定期的に棚卸し→毎日TODOみて(土日にとか)
・今やるべきことを整理する時にメモ
 ・あとでよむというより、書くことで整理する感じ
勉強会 / LT ・3分間勉強会という主に記事紹介の軽い勉強会を毎週班定例でやってた
・LTを先に入れてしまって、そこに向けて勉強する
本(紙、電子)

# ツール
・付箋
・zenn scrap
・ボイスメモ
# 読み方
・付箋を付けながら
・zenn scrap / ボイスメモ等にメモしながら
・月1-2冊という人から年数冊という人まで。ほとんど読まない人も多かった。
・全部読みきらないことも多い
・1周目は実装せずサラッと読んで、大事そうなところを実装しながら
・対象領域に関して2冊くらいがちょうどいい

# 買い方
・とりあえず買って積読
・人のおすすめを読む
・Amazonで関連ワード検索して出版順に並べて気になるやつ。
・EcmaScriptの仕様書を上から読んだという猛者も
・技術系よりも、マネジメント/自己啓発/UI関連とか自分の興味ある分野を読んでいる印象。技術系はネット。
動画

おすすめリスト
・見ない人が多かった
・インフラ/Figmaとか業務で触らない系はわからないから、動画で見たほうが理解が早いという人も
・セールのたびに気になるのを買っておいて、暇な時に見る
・電車で見ることが多い
学習用サイト

おすすめリスト
・最近みてないって人が多かった
・体系的に見るってよりは、検索に記事が引っかかったら見る、くらい
競技プログラミング

・AtCoder
・Paiza
・アルゴリズム(ABC):毎週土曜21時〜(最近サボりがち)
・ヒューリスティック(AHC):月1ぐらい
・絶対基礎能力はつくけど、JSで競プロできないしFEエンジニアはやってもな...みたいな気持ちもある
・Haskel勉強したくて4,5冊Haskel入門よんだが、AtCoderで手を動かした方が情報量多かった
・競プロ用ライブラリ/ツール作成
プログラミングスクール ・プラハチャレンジ
・就職前にスクール通った
人に教える ・違う角度から復習できる
 ・復習/振り返りは大事だが、コストが高くたいていやらない
・人に教えるためにちゃんと調べる
・誰かが疑問に思ったということは、重要な問いである可能性が高い
・質問されるポジションにつく
 ・質問される場を作る
資格 ・実践向けというよりも、網羅的な知識形成に◎
・資格の予約を先にいれて、それに向けて勉強

ピックアップ勉強法

上記の中でピックアップしたい勉強法についてメモ。
主にゆめみ/虎の穴ラボさんの「勉強法の勉強会」からの抜粋になります。

スクラップ勉強法

  • zenn scrapに勉強内容をメモしていく
    • 気になるものがあったらとりあえずオープン
  • 良い点
    • 手軽に整理しやすい。整合性にコストをかけなくていい
    • ほぼ見られないけど、一応公開されている。だけど見せるためというより雑多に書ける。
    • デザインが見やすい。Notionとかと違って、セクションに分けられるのがよい。
    • 途中まで書いておけば再スタートしやすい
    • 共著もできる
  • 使い方
    • 調べ物実況
    • 作業実況
    • ドキュメント(本)読み実況

自分リリースノート

勉強会を習慣化してみる

  • 基礎的なこと知っていることをテーマにする
    • 基礎的なことは効果が高い
    • 市販の書籍、公開されているもの
    • 熟読しないとわからないものは避ける
  • 目標設定
    • ゴールは設定しない。テーマは設定する
    • 脱線を恐れない
    • うまくいかない日もある→次調べて発表すればいい
  • 日程はあらかじめ決めておく
    • 定期的に。告知も自動化しやすい
    • 休まない!一回でも休むとなし崩し。休みそうな日はあらかじめ定休日にする

最新情報をどうやって取るか

  • 個人的には理解というより単語を知っておく
    • 理解を目指すと継続性が下がる→理解するものは絞っている
    • 仕事で必要になったときの入口とする
  • 個人的なおすすめリスト
方法(具体例など) やり方、人によるバリエーション
Twitter

おすすめリスト
・仕事中とかでも一区切りついたら。中毒、ずっと見てるって人も
・手が空いたらひらく。気になる記事があればその場で読むorブックマークとかも
・良い感じのTLが構築できているので、Twitterからのおすすめで結構キャッチアップしている
 ・気になるリンクを踏みまくっておけばレコメンドが優秀になっていくかも?
・times をメインにしてから投稿が激減した
times ・JserInfoなどのFeedを流してる人がいたり
・各自良かった記事を流してたり
・人のTimesみてるのが一番勉強効率がいい
メーリングリスト

おすすめリスト
・週1月曜日にまとめてチェックしてzenn scrapに貯めておき、一週間かけて読む(20記事くらい)
 ・MLから集めたもの、ラボメンバのおすすめ記事、Zennトレンド
 ・長い記事は一回Geminiに突っ込んで要約を読んで、興味がわけばちゃんと読む
 ・貯めた記事のうち8割くらいは流し読み
 ・残り2割はメモを取りながらちゃんと読む
・記事をPickするフェーズと、読むフェーズを分けたほうが効率が良い気がする
記事/ニュース投稿サイト

おすすめリスト
・週1月曜日にチェックしてzenn scrapに貯める
・一日数回開いて、気になるヤツを times に流しておく
connpass

おすすめリスト
・いくつか団体をフォローして、気になるイベントは月1くらいで参加
 ・イベント登録は週1くらいでいれてるが参加できるのは月1くらい
 ・参加できなくても資料アップされたら眺めたり(週3−4スライド)
・Twitterで流れてくるイベントとかオンラインでたまに
 ・だいたい仕事中で出れない
リリースノート ・TSのリリースノートannouncementがTwitterに流れたら見る
・VSCodeのリリースノートはVSCodeにでたら見る
Podcast

おすすめリスト
・出勤時や散歩中に聞くという人が多い様子
・めちゃ聞く人と全く聞かない人に分かれている印象で、聞く人は激推ししていた
  • podcast系を聞く習慣がないので取り入れたい。通勤中歩いてるときとかよさそう。

その他

いつ、どのくらいやってるのか

  • 平日は随時気になったら。気になった時に放置せず、その場で調べる、あるいはtimesなどによけておくなど何かしら対処している人が多い印象。
  • 休日は上記ためておいたものを見たり、好きな勉強をしてるイメージ

マインドセット、考え方

勉強に対する考え方雑記

  • 実戦に勝る修行はない by 幽遊白書
    • 実戦で機会を与えられるしきい値がある
    • しきい値にのってくると、勝手に実戦の方からやってくる
    • しきい値に乗るところまでの努力が必要
  • 完成させないことを悪く考えない。完璧主義にならない。
  • 30分の勉強習慣をつける
    • 立ち上がりが大事なので、やること決める、始めるのが簡単なもの
    • あるいは勉強工程を分割する
  • 学習、実力アップに魔法はない
    • 効率✕時間
    • 現在地点を知る、目標地点を定める
    • 自分の行動原理を知る
    • 自分の行動原理を肯定する。自分の欲求を認識し、利用する
    • 人間が作ったものは人間が理解できる
  • 学習曲線を知る
    • 停滞期があることを理解する
    • 時間だけでなく、期間が必要
  • 8:2の法則の曲解
    • 価値の8割は2割の時間、人などが出している、という法則だという理解。例えば勉強では時間でいうと2割くらいが8割の価値を決めているんじゃないか?
    • 伸びる人は2割効果の勉強を捨てて、8割効果の勉強をずっとしている印象
    • 伸び悩む人は、残りの価値2割に8割の時間をかけており、効果が下がってしまっている印象
  • AI時代に学習する意味。AIの時代に勉強必要なんか?
    • AIは責任を取れない
    • 嘘を見抜く力が必要
    • 丸暗記は意味ない
    • 進化が早まるので、今までよりもっと勉強しなきゃいけない

まとめ

  • 全体的にtimesを有効活用している人が多い印象
  • 勉強ルール/習慣みたいなものがある人は実はあまりいなかった
    • どちらかというと興味の赴くまま、好きだから強くなった、という人が多い
  • 強い人たちは平日長時間取るみたいなのがむずかしいので、小分けにしている印象(たぶんベースができてるからできる?)。週末は趣味の勉強に走っている人が多そう

生物の生存戦略よろしく、最強の勉強法はないっぽい…引き出しは持っておいて、自分に合ったものを選んで行きたいなあと思いました。

Discussion