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
教える側が知らないプログラミングの3つのこと
Search
Naoki Kishida
March 26, 2022
Programming
7
15k
教える側が知らないプログラミングの3つのこと
2022/3/25に行われた「第一回プログラミング教育について話し合う会」でのLT資料です。
https://opt.connpass.com/event/240392/
Naoki Kishida
March 26, 2022
Tweet
Share
More Decks by Naoki Kishida
See All by Naoki Kishida
ローカルLLM基礎知識 / local LLM basics 2025
kishida
28
15k
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
5
970
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
13
6.2k
海外登壇の心構え - コワクナイヨ - / how to prepare for a presentation abroad
kishida
2
130
Current States of Java Web Frameworks at JCConf 2025
kishida
0
1.6k
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
25
7.1k
LLMベースAIの基本 / basics of LLM based AI
kishida
13
3.6k
Java 24まとめ / Java 24 summary
kishida
3
820
AI時代のプログラミング教育 / programming education in ai era
kishida
25
27k
Other Decks in Programming
See All in Programming
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
460
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.4k
GoLab2025 Recap
kuro_kurorrr
0
3.7k
Graviton と Nitro と私
maroon1st
0
160
dchart: charts from deck markup
ajstarks
3
960
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
440
Cap'n Webについて
yusukebe
0
160
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1k
Implementation Patterns
denyspoltorak
0
150
クラウドに依存しないS3を使った開発術
simesaba80
0
220
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
720
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
5.2k
Featured
See All Featured
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Paper Plane (Part 1)
katiecoart
PRO
0
3k
The Language of Interfaces
destraynor
162
26k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
1
350
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Darren the Foodie - Storyboard
khoart
PRO
2
2.1k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
110
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
55
The untapped power of vector embeddings
frankvandijk
1
1.5k
We Are The Robots
honzajavorek
0
130
Transcript
教える側が知らない プログラミングの3つのこと 2022/3/25 第一回プログラミング教育について話し合う会 LINE Fukuoka きしだ なおき
テーマ • プログラミング教育を考えるときは 教育の勉強もしておきましょう • 既出なので「上手な教え方の教科書」 も読みやすいのでおすすめします
プロになるJava • プロになるのだ! • Javaでプログラミングの 勉強をする本 – Not 「Javaの勉強をする本」 •
etc. floatやlongは扱ってない • あと、オブジェクト指向をdisる本です – オブジェクト指向が、いかに現代のJavaで使えないか書いてます – オブジェクト指向は現代的プログラミングに対応できない (この話すると3日くらいかかるので略。プロJavaのP337読んで) – そろそろみんな(とくに教える側)オブジェクト指向から卒業しよう • プログラミング教育の場面でしかオブジェクト指向という言葉は出てこない
プロになるJavaの インストラクショナルデザイン • 教える題材の構造ではなく理解の構造にしたがって教える – 教訓3 教える理由をはっきりさせる – 教訓4 成功の基準をはっきりさせる
– 教訓5 標的行動を見せてやらせて確認させる – 教訓9 誤答を教える – 教訓11 学び手を知る – 教訓14 学ばせて、楽しませる 職業プログラマになる Swing 練習問題 JShell 今日の話
3つのこと • テキストを出すのは「プログラム」とは みなされない • 逐次実行がわからない • プログラミング能力は読み書き能力ではない
テキストを出すのは 「プログラム」とはみなされない • できごと – メモ帳+javacでfor文などを教える – Swingでウィンドウを出す – 「プログラムがうごいた!」
• 目にみえる結果重要 – テキスト出力の意味はプログラムを理解しないと わからない – プログラムを理解したいのにプログラムの理解が必要
逐次実行がわからない • 通常目にする文章は状態が一定 – 適切な接続詞があれば順番に依存しない – 推理小説 • 犯人Aという状態を徐々に明らかにしている •
「プログラムが動く」ということがわからない – 目にみえる結果 – REPL – デバッガ
プログラミング能力は 読み書き能力ではない • 書き方読み方を教えただけではダメ – プログラミングの学習は知識の集成ではなく行為の習得 • 文法を教えただけではプログラムは組めない – 「プログラムが動く」ということの理解が必要
• エラーの読み方を教えただけではエラーは読めない – 「プログラムが動かない」ということの理解が必要 • 結局、読み書きができないのではなくプログラムの動きが わかっていない • 自分の動作への反応としての学習が必要 – なのでJShellの入力と実行結果を目にするだけと 実際に動かすときで、情報は変わらないのに理解の実感が違う – 大脳ではなく小脳への学習
まとめ • 教育への理解が必要 – プログラミング教育というときプログラミングの 特殊性に注目しがち。基本は「教育」 • プログラミングを学習することの理解も必要 – 「わからない」の理解が必要
– 文字の読み書きにとらわれすぎない • もちろんプログラミングの理解も必要