Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
「プログラマー脳」を読んで感覚的な部分が言語化された
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
shinnosuke
February 28, 2024
Technology
1.6k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「プログラマー脳」を読んで感覚的な部分が言語化された
めぐろLT #12「おすすめ書籍紹介LT」@日本橋 2024/02/28 (水)
https://meguro-lt.connpass.com/event/305704/
shinnosuke
February 28, 2024
More Decks by shinnosuke
See All by shinnosuke
電話に出る Python のログの話
shinnosuke_kishida
0
580
「解くべき問題」を見つけたい
shinnosuke_kishida
0
120
広告データの集計基盤で使用するDB
shinnosuke_kishida
0
78
Go製のマイグレーションツールの git-schemalex の紹介と運用方法
shinnosuke_kishida
1
1.4k
TiDB の SQL Parser を使用して CSV ファイルの不備を検知する仕組み
shinnosuke_kishida
0
220
システムと組織の課題克服を目指すリアーキテクチャとユーザ移行
shinnosuke_kishida
2
1.2k
go get で考慮している ファイルシステムの挙動について
shinnosuke_kishida
4
1.6k
広告代理店向けSaaSの開発をしている新卒3年目のこれまでのお話
shinnosuke_kishida
0
260
Ebitengineのイベントで発表するのでEbitengineを初めて触ってみた
shinnosuke_kishida
0
3.1k
Other Decks in Technology
See All in Technology
基本から分かる!AWSセキュリティ運用の考え方と任せ方
cmusudakeisuke
1
480
Gifu WordPress Meetup #200 に向けて、私たちには何ができるだろうか?/ 2026-11-07 Gifu WordPress Meetup
torounit
0
240
公共システムAdventCalendar2026
toru_kubota
0
290
HQ駆動開発で最高のAI-Contextを作ろう
sansantech
PRO
1
120
AI時代における医療情報システムのセキュリティ / Security of Healthcare IT Systems in the AI Era
henryofficial
0
130
分析作業をどこまで任せるか自分で決められる AIネイティブBI『Golden Analytics』が 良さげな話 /golden-analytics-is-ai-native-bi
shinyaa31
0
130
Software Engineering in an AI-Driven World
erikjhordan_rey
0
130
自治体AIコンタクトセンター、何をどこに任せる?~Amazon Connect Customer +Amazon Bedrockの実践知~ / 20261107 Satoshi Torano
shift_evolve
PRO
1
120
令和の今、あらためて IAM を考える。アクセスキーを「無くせない現実」との向き合い方
kazzpapa3
0
560
会社説明資料_最新版
demaecan
0
32k
Building Audio Plugin Ecosystem for Android in 2026
atsushieno
2
160
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
220
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
820
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
670
Faster Mobile Websites
deanohume
310
32k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Mind Mapping
helmedeiros
1
430
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
520
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
350
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
560
How GitHub (no longer) Works
holman
316
150k
A Soul's Torment
seathinner
8
3.9k
From π to Pie charts
rasagy
1
440
Transcript
「プログラマー脳」を読んで 感覚的な部分が言語化された 1 めぐろLT #12「おすすめ書籍紹介LT」@日本橋 2024/02/28 (Web) @mwudo / 岸田慎之介
2 自己紹介 • SO Technologies 株式会社 • 新卒3年目 • Go言語でAPI/バッチ処理の開発を主に行いつつ
問い合わせの調査も行っている グループ横断の取り組みで使うアプリの開発にも従事 • 毎週ボルダリングに通ってる 岸田 慎之介 @mwudo
プログラマー脳 出版社:秀和システム 発売日:2023/02/16 ページ数:288ページ 翔泳社主催の「ITエンジニア本大賞2024」で 技術書のベスト10に選出されている 3
読むきっかけ 4 出版イベントに参加してプレゼント企画(じゃんけん)で Get した
書籍は大きく4つのコンテンツに分かれている 5 コードをよりよく読むために 1 コードについて考える よりよいコードを書くために コーディングにおける共同作業 2 3 4
コードをよりよく読むために 6 なれないコードを読む際の混乱は認知プロセスの問題に関連 ❏ 知識不足 ❏ 情報不足 ❏ 処理能力の不足
コードをよりよく読むために 7 なれないコードを読む際の混乱は認知プロセスの問題に関連 ❏ 知識不足 ❏ 情報不足 ❏ 処理能力の不足 長期記憶(例:ハードディスク)
短期記憶(例:RAM) ワーキングメモリ(例:プロセッサ) サンプルコードを示しながら 3つの認知プロセスが互いに補完し合っていることを説明している
コードをよりよく読むために 8 プログラミング言語の文法や概念などの記憶の重要性 長期記憶 を使ってコードを読み進めることが可能 割り込みによる作業の中断があっても思い出す範囲を狭めることができる 覚える作業として フラッシュカードや積極的に何かを思い出そうとする練習(想起練習) 新しい情報を考え振り返る(精緻化)が取り上げられている
コードについて考える 9 コードの深い理解をするために • 変数の役割のフレームワーク 固定値、フラグ、ウォーカー etc • 問題を推論するために抽象化した メンタルモデル
を使った理解 「特定のコードが実行される」というものメンタルモデル 実際は対応したバイトコードが実行
コードについて考える 10 思考に潜むバグ(誤認識)を理解する必要がある 動的型付け言語を知っている人が静的型付けを学ぶ場合 身につけたメンタルモデルを変化させる必要がある 「唐辛子の種は辛い」は誤認識の一種 新米プログラマーが陥る誤認識が紹介されている
よりよいコードを書くために 命名 が重要 11 • 最もアクセスしやすいドキュメントになる • 初期の命名は永久的な影響を与える • 時間が経ても命名方法は改善されない
コーディング中は認知負荷が高く命名まで気が向かない レビューでの振り返りや名前の雛形を用意 しかし
コーディングにおける共同作業 割り込みが発生すると生産性が 低下 12 https://twitter.com/oshiroi_you/status/505686403053674496 生産性を下げないために備えが必要 割り込みをするタイミングについても言及
コーディングにおける共同作業 既存メンバーと新人メンバーとの違い 13 小さなバグや機能開発を 非常に簡単なタスク として渡しがち 「array index out of
bounds」などのエラーを見たときの反応 初心者や新しく来た人の行動を理解する必要がある オンボーディングプロセスを改善するための活動が紹介されている
プロダクト開発で実際にコーディング業務をしている人すべてに オススメ 日々のコーディング業務での無意識の行動の説明がされており納得感があった 14 まとめ プログラムをどのように読んでいるかサンプルコードを例にした内容が あったがその通りだった(かなり驚いた)
1 https://www.amazon.co.jp/dp/4798068535 購入はコチラ (アフィリエイトではありません) 15