第一回プログラミング教育について話し合う会
①私にとってもプログラミング教育 ②アプリケーション開発を学ぶ ③教え方の基本方針 ④本物のアプリケーション開発 私の教え方の原風景 ⑤読む力(読もうとする力) ⑥何が起きるか? 本物で教えるための推薦図書
玩具じゃなくて本物で教えよう有限会社システム設計 増田 亨第一回プログラミング教育について話し合う会2022年3月25日
View Slide
①私にとってのプログラミング教育A) アプリケーション開発者の育成B) プログラミング教育とは設計と文書化の教育C) 設計は経験則D) 体験的に学び成長していくことを支援する
②アプリケーション開発を学ぶ✓既存コードを理解する✓部分的に変更する(失敗して修正)✓ちいさく追加する(失敗して修正)利用者の立場になって、自分で使ってみる
③教え方の基本方針◆本物のアプリケーション開発を最初から体験する◆本物のアプリケーションの部分変更に挑戦する◆うまくいかない時にどこを見て、何を探すと良いかをガイド成功体験よりも失敗体験をたいせつに!
④本物のアプリケーション開発自分のスマートフォンからアクセスできる公開WebアプリケーションHerokuにデプロイGitHubソースコードリポジトリ/ドキュメント/コミュニケーション統合開発 IntelliJ IDEAエディタ、ビルドツール、プログラミング支援言語(さまざまなソースコード)Java, SQL, HTML, CSS, XML, GroovyフレームワークとライブラリSpring Web, Thymeleaf, MyBatis, Junit, JIG, Almond.css, …
私の教え方の原風景Unix開発チームの統合開発環境豊富なツール・ライブラリ・manページユーザ・グループ・パーミッションドラゴンクエスト広大で奥深い世界外の世界にでて旅をしながら成長していく成長のストーリーは一つではない死んでも生き返ればよい#include main(){printf(“hello, world¥n”);}$ cc hello.c$ a.out・これを実行できる環境のアカウント・最初から stdio.h・次のお題は摂氏と華氏の対応表
何を教えるの?
⑤読む力(読もうとする力)IDEのプロジェクトのファイル構成ソースコード、定義ファイルIDEの警告・サジェション実行時のログメッセージAPIドキュメント攻略本/攻略サイト• わかるとこだけつまみ食いで良い• 名著は積読で良い• 三日坊主でよい(アクションを起こすことがたいせつ)• 三日坊主を繰り返す、積読をたまにはつまみ食い
⑥何が起きるか設計の経験則データベースの強化学習① 脳内キャッシュ(短期記憶)を刺激し続ける② 脳内データベース(長期記憶)に多重に書き込み③ 書込み強度・頻度・回数で長期記憶への書き込み深さが変わる④ 脳内データベースのインデックス/パーティションの継続的再構築⑤ パターンマッチ力強化• 探索パスの効率化• フィルタリング(取捨選択)の動的最適化• 最適化ヒントの活用能力
本物で教えるための推薦図書教える側はこのくらいは完全にマスターしているよね?