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
15k
7
Share
教える側が知らないプログラミングの3つのこと
2022/3/25に行われた「第一回プログラミング教育について話し合う会」でのLT資料です。
https://opt.connpass.com/event/240392/
Naoki Kishida
March 26, 2022
More Decks by Naoki Kishida
See All by Naoki Kishida
ローカルLLMでどこまでコードが書けるか / How much code can be written on a local LLM
kishida
2
420
ローカルLLM基礎知識 / local LLM basics 2025
kishida
30
17k
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
5
1.2k
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
13
6.7k
海外登壇の心構え - コワクナイヨ - / how to prepare for a presentation abroad
kishida
2
170
Current States of Java Web Frameworks at JCConf 2025
kishida
0
1.8k
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
27
7.4k
LLMベースAIの基本 / basics of LLM based AI
kishida
13
3.7k
Java 24まとめ / Java 24 summary
kishida
3
850
Other Decks in Programming
See All in Programming
Are We Really Coding 10× Faster with AI?
kohzas
0
240
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
360
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
Modding RubyKaigi for Myself
yui_knk
0
470
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.1k
要はバランスからの卒業 #yumemi_grow
kajitack
0
200
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.1k
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
240
関係性から理解する"同一性"の型用語たち
pvcresin
2
570
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
0
170
OSもどきOS
arkw
0
180
AIエージェントの隔離技術の徹底比較
kawayu
0
430
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
830
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
220
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Accessibility Awareness
sabderemane
1
130
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
300
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
270
Fireside Chat
paigeccino
42
3.9k
Color Theory Basics | Prateek | Gurzu
gurzu
0
320
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の入力と実行結果を目にするだけと 実際に動かすときで、情報は変わらないのに理解の実感が違う – 大脳ではなく小脳への学習
まとめ • 教育への理解が必要 – プログラミング教育というときプログラミングの 特殊性に注目しがち。基本は「教育」 • プログラミングを学習することの理解も必要 – 「わからない」の理解が必要
– 文字の読み書きにとらわれすぎない • もちろんプログラミングの理解も必要