Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Agile的学習方法
Search
kanayannet
June 03, 2023
Programming
0
300
Agile的学習方法
基礎研究をやって0->1 をやる場合は、確かに開発より先に基礎だと思います。
とはいえ、基礎研究を役立てる訳じゃないパターンの人までそれというは...的な内容でした。
kanayannet
June 03, 2023
Tweet
Share
More Decks by kanayannet
See All by kanayannet
Mcp Training
kanayannet
0
49
MCP で「こいつ動くぞ」
kanayannet
0
98
無関心の谷
kanayannet
0
760
生成AIの使いどころ
kanayannet
0
200
github copilot と 心理的安全性
kanayannet
0
230
FW と ライブラリ の考え方
kanayannet
0
240
TDDと今まで
kanayannet
0
590
個人開発 稼げなくてもいいアプリ
kanayannet
0
550
システムの堅牢性
kanayannet
0
320
Other Decks in Programming
See All in Programming
【Streamlit x Snowflake】データ基盤からアプリ開発・AI活用まで、すべてをSnowflake内で実現
ayumu_yamaguchi
1
110
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
480
関数実行の裏側では何が起きているのか?
minop1205
1
620
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
180
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
34
20k
エディターってAIで操作できるんだぜ
kis9a
0
660
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
160
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
160
関数の挙動書き換える
takatofukui
4
770
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
320
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
180
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
26
21k
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Scaling GitHub
holman
464
140k
Balancing Empowerment & Direction
lara
5
790
Speed Design
sergeychernyshev
33
1.4k
Statistics for Hackers
jakevdp
799
230k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Practical Orchestrator
shlominoach
190
11k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Visualization
eitanlees
150
16k
The Language of Interfaces
destraynor
162
25k
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