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
Agile的学習方法
Search
kanayannet
June 03, 2023
Programming
0
290
Agile的学習方法
基礎研究をやって0->1 をやる場合は、確かに開発より先に基礎だと思います。
とはいえ、基礎研究を役立てる訳じゃないパターンの人までそれというは...的な内容でした。
kanayannet
June 03, 2023
Tweet
Share
More Decks by kanayannet
See All by kanayannet
無関心の谷
kanayannet
0
400
生成AIの使いどころ
kanayannet
0
170
github copilot と 心理的安全性
kanayannet
0
210
FW と ライブラリ の考え方
kanayannet
0
230
TDDと今まで
kanayannet
0
560
個人開発 稼げなくてもいいアプリ
kanayannet
0
530
システムの堅牢性
kanayannet
0
300
GUIをエンジニアが考える
kanayannet
0
260
http2http3
kanayannet
0
200
Other Decks in Programming
See All in Programming
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
13
2.8k
物語を動かす行動"量" #エンジニアニメ
konifar
14
5.5k
GUI操作LLMの最新動向: UI-TARSと関連論文紹介
kfujikawa
0
1k
ソフトウェアテスト徹底指南書の紹介
goyoki
1
110
Introduction to Git & GitHub
latte72
0
120
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
150
Flutterと Vibe Coding で個人開発!
hyshu
1
270
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
730
「リーダーは意思決定する人」って本当?~ 学びを現場で活かす、リーダー4ヶ月目の試行錯誤 ~
marina1017
0
240
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
500
コンテキストエンジニアリング Cursor編
kinopeee
1
710
AIエージェント開発、DevOps and LLMOps
ymd65536
1
350
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
73
5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
820
Agile that works and the tools we love
rasmusluckow
329
21k
RailsConf 2023
tenderlove
30
1.2k
Designing Experiences People Love
moore
142
24k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Transcript
Agile 的学習方法 Gunma.web #49 @kanayannet
前提 学習方法を学習する話 すごい技術の話じゃない だがしかし「重要」です 単純な段取りの話でもない
今回の対象 自分の学習方法を見直したい方 初学者をマネジメントする役割の方 昔の技術が好きな方
対象外 「即戦力」「案件丸投げ」可能な人材 ほっといても「勉強してくる」人材 知識を「一気」に頭に詰め込みたい方
昔の技術 ? BBS CGI or 素のPHP
懐かしいでしょ?
解った方は同年齢かそれ以上
お題 プログラミングは出来る 開発は経験ない この前提の方にどういう順番で教えるか?
何を ? BBS
実は
重要な要素を揃えている 一覧表示機能 新規書込 対象指定して削除 対象を指定して表示 対象の記事を編集
例 1 Frame Work Ruby on Rails Lambda http api
Express etc.. RDB Amazon aurora: mysql
どうなりやすいか? 作法だけで頭が一杯一杯 開発どころではない SQL を覚えるまでに心が折れる
例 2 C 言語 or Java RDB mysql
どうなりやすいか? 言語で苦戦はあまりない 大学や専門学校でやってる事多い しかし...HTTP server と言語を紐づけるところで 躓く RDB つまづく レコードとカラムの概念に不慣れ
SQL??
例 4 レコードとカラムの概念を教える text ファイルでいいよ RDB 使わない 言語も「LL 」を何かしら教えて Python,
Ruby, Perl 慣れるまで待つ 文法にや実行速度に違いはあるが... 「必要な機能」で足りないものはない
どうなるか? 実装の際のイメージは湧く 疑似コードは書ける状態 実行環境整はまだイメージ沸かない
例 4( 続 ) Docker コンテナで Amazon Linux 入れるレクチャ ー会
HTTP Server 立てる Apache で構わない chmod の概念を教える 読み, 書き, 実行 何らかのLL で実装しようと提案 CGI で構わない 言語の path をファイルの先頭で定義するだけ #!/usr/bin/....
どうなるか? 立ち止まりはするが「つまずいて止まらない」 ゆっくりだが確実に進む 最後まで行く
謙虚に考える 人間「一気」には無理 一つ一つ覚える方が Easy Simple と Easy 違うっていうけど...
「 Easy 」でもいいじゃん
ここで終わり ?
SQL をレクチャー Docker: mysql 公式イメージで立ち上げる MySQL client を install する
基本的な構文を教える insert, update, delete, select where, order by, limit, offset しばらくデータを色々入れてもらって... 「遊んで」もらう
LL と繋げ方をレクチャー 端末に LL の MySQL Library を install LL
から基本構文で「遊んで」もらう
RDB(MySQL) と CGI を紐づける ここまで来れば自力でやれちゃう text ファイルから卒業おめでとう!
ここでお終い ?
デザインパターン いきなり難しい奴とかやらない MVC で十分 CGI ファイル = コントローラ 下記は別途ライブラリファイルで名前空間切っ て分ける
Model View
どうなるか ? Model のライブラリ関数に全部引数渡しする 悪いんじゃないだが...
オブジェクト指向を教える インスタンス変数があるよ これ使えば関数の() 内に引数渡しにせずともやれ るよ (...) だけで数行使う問題解決
ここまで来ると ... 基本的なデータ設計 -> OK RDB の基本操作 -> OK OO
での実装およびライブラリ設計 -> OK 自分で「とりあえず動くBBS 」を作れる
もっと 教えたい事あるんだけど詰め込みすぎ ここまでだけでも 2-3 週間は慣れながらだとかか るはず FW もこれをやってからだと「本当の価値」に気 づける
教育機関に言いたい事 プログラミングは出来るけど... 開発経験ない人多いんでない? 教えていると凄く「残念」な気持ちになる なぜなら...
「一番重要」で「一番楽しい」 おろそかにしてしまってカリキュラム消化するだ けになってない? 俺だけかな?この感想を持つのは?
まとめ 教えたい( 覚えたい) 事が一杯あるけど... 詰め込みすぎは要注意 順番守った方が結局覚えるの早い FW やRDB の「価値」にも気づける 他の学習必要なものも同じでは?
確実に「進んでいる感」大事 ちょっとづつでもね 「楽しい」よ?
ご清聴 ありがとうございました。
None