Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
学び続けるための方法
Search
ken7253
September 04, 2023
Programming
0
110
学び続けるための方法
社内LT会で話した自分の学習方法についてまとめたスライドです。
ken7253
September 04, 2023
Tweet
Share
More Decks by ken7253
See All by ken7253
レビューのやり方を(ちょっと)整理した話
ken7253
0
45
オーバーロード関数の話 @Mita.ts #2
ken7253
0
47
フロントエンドカンファレンス北海道参加レポート
ken7253
0
18
カスタムHooksと単体テストの共通点について
ken7253
0
270
検索エンジン最適化はWebサイトのすべてなのか
ken7253
0
38
使いやすいツールチップを実装する方法
ken7253
0
69
Reactにおけるkeyの使い方について
ken7253
1
130
テックブログ文豪への道
ken7253
0
53
関数型プログラミングの考え方を取り入れて予測しやすいコードを書く
ken7253
0
140
Other Decks in Programming
See All in Programming
nekko cloudにおけるProxmox VE利用事例
irumaru
3
430
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
930
MCP with Cloudflare Workers
yusukebe
2
220
複雑な仕様に立ち向かうアーキテクチャ
myohei
0
170
快速入門可觀測性
blueswen
0
360
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
550
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
Refactor your code - refactor yourself
xosofox
1
260
useSyncExternalStoreを使いまくる
ssssota
6
1k
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
250
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
780
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6.1k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
A designer walks into a library…
pauljervisheath
204
24k
A better future with KSS
kneath
238
17k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Unsuck your backbone
ammeep
669
57k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Six Lessons from altMBA
skipperchong
27
3.5k
Transcript
Keep learning 学び続けるための方法
ken7253 Frontend developer 技術記事を書いたりするのが趣味。 最近はNext.jsを使ったアプリケーションを書いています。 インターフェイス設計やアクセシビリティ・SSG関連の技術に興味があります。 https://github.com/ken7253 https://zenn.dev/ken7253 https://dairoku-studio.com
なぜこのスライドを作ったのか そろそろフロントエンド5年目になる 持論を展開するようなスライドを書きたくなった いちおう中堅エンジニアぐらいにはなれたような気がする じゃあ中堅になるまでにどういう勉強方法したっけってまとめを書いてみる
話すこと 勉強法を模索して気付いたことをまとめます あくまで個人の体感の話です 学習方法は人それぞれなので自分に合ったやり方を探すきっかけに
知識のアップデートで気をつけていること
学習における負のループ
学習における負のループとは下記のような状態 1. キャリアが増えるにつれ、知らないといけないことが増えてくる気がする 2. 不安から技術的な発言や質問を控えるようになってしまう 3. 学習の機会が減る 4. 学習効率の悪化によって更にキャッチアップが難しくなる 業務が回せるようになった時期、知らないことを質問する機会が減るので陥りやす
い。 学習における負のループ
自分が想像しているコミュニティのレベル感と自分自身のレベル感との乖離が原因 「コミュニティのレベルを下げる」ということはできないので基本的に学ぶしかない インプットの習慣化で軽減できる(気がする) アウトプットの習慣化で軽減できる(気がする) どれだけ勉強しても質問はし忘れるし、アウトプットも怖いので諦める 恐怖心があるからこそきちんと調べてからアウトプットできる 負のループへの対処
木こりのジレンマ
※ 【神様がいれば「ふりかえり」はいらない。 - ユニファ開発者ブログ 】 より引用 木こりのジレンマ
目の前の作業をこなすのに精一杯 で余裕がない状況 先程とは違い中堅以降で起こりがちな現象だと思っています。 仕事に精一杯取り組むのは偉い 休み方や斧の研ぎ方を教えるのも仕事のうち 「業務が忙しくて勉強ができない」という理由づくりを(自分に)させない 学びと同時に業務の効率化と自動化を進めてチームに余裕を持たせないといけない。 木こりのジレンマ
どう学ぶか
いきなり業務時間外でも「バリバリコード書いてアウトプット」は正直敷居が高い。 できないことを目標にしてはいけない、できる範囲で確実に 毎日30分、技術動向を追うために記事を見る 基礎知識を深めるために毎日MDNを読む 集中力が切れたらX(Twitter)を見る 毎日30分学習している人とそうでない人では年間120時間程度の差が出る 30(m) * 245(d) /
60(m) = 122.5(h) / 8(h) = 15.31(営業日) 業務時間内で学ぶ習慣づけをする
パーキンソンの法則 第一法則 より業務の空き時間で勉強することはできない。 そのため、学習時間は業務時間よりも先に確保する必要がある。 パーキンソンの法則とは、イギリスの歴史学者・政治学者であるシリル・ノースコート・パーキンソンが当時の行政組 織を研究するなかで、組織・運営と人間の心理作用に関する非合理的な行動の分析を説いた法則を指す。 パーキンソンの法則は以下の2つの法則から成り立つ。 第一法則:「仕事の量は、完成のために与えられた時間をすべて満たすまで膨張する」 第二法則:「支出の額は、収入の額に達するまで膨張する」 ※
パーキンソンの法則 | 三菱UFJリサーチ&コンサルティング より引用。 必ず業務時間より先に学習時間を確保する
インプットの習慣がついたらアウトプットもする。 アウトプットも絶対にできることから始めてみる。 まずは、読んだ記事のURLとかをX(Twitter)や自分のtimesにポストするだけでいい。 なるべくパブリックなチャンネルにポストする 読み始めにURLを貼って読みながらスレッドをつなげるとよい 記事以外にも業務の中で学んだことなどを書き留めておく (忘れるので)何かしらの形で 学んだことを残しておく アウトプットを行う
Zenn.devのスクラップ機能などもおすすめ。 アウトプットを行う
習慣化ができてきたら、たまに質を上げてみる。 インプット 社外の勉強会に参加してみる 難しめの技術書を買ってみる(オライリー・技評) アウトプット LTで話してみる 記事を書いてみる 💡 インプットの質を先に上げたほうがスムーズに進みやすい。 習慣がついてきたら
何を学ぶべきか
3つの軸 勉強する対象は色々あるので分割してみる。 仕事に必要なこと エンジニアとしての基礎知識 自分が興味がある領域・技術
おそらくみんなもうやってると思うので割愛 仕事に必要なこと
OSの話であったり、プロトコルの話だったり、プログラミングパラダイムだったり。 基礎知識があるかないかで学習効率がかなり変わってくる。 Reactを例にすると… Reactを学ぶ前に関数型言語の考え方を知っていると理解がかなり短縮される。 オブジェクト指向しか知らないでReactを触ると勘違いで挙動の理解に苦しむ。 自分の進みたい先が分からない時はとにかく基礎を学ぶといい。 エンジニアとしての基礎知識
基礎を徹底的に学ぶのもいいが、興味ある分野が見つかったら調べてみるといい。 小さな知識でも知っている人が少ない知識を持っていると凄そうに見える。 インプットコストや前提知識は大きくなるが安定したポジションを取れるとリターンも大 きい。 フロントエンドエンジニアで、領域としては${特定の技術領域}などをやってます。 フロントエンドエンジニアで、${特定の技術領域}が好きです。 最終的に自信を持ってこういう挨拶ができるように勉強を続ける。 自分の興味ある領域・技術
まとめ
まずはインプットの習慣化を業務時間内で 学習時間は業務時間より先に確保しておく アウトプットも最小限でやってみる 慣れてきたら質を上げてみる 学ぶべきことが分からない時は、エンジニアとして抑えておくべきことを学ぶ 興味が湧く領域があったら自信を持って話せるまで学んでみる まとめ