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
180
Agile的学習方法
基礎研究をやって0->1 をやる場合は、確かに開発より先に基礎だと思います。
とはいえ、基礎研究を役立てる訳じゃないパターンの人までそれというは...的な内容でした。
kanayannet
June 03, 2023
Tweet
Share
More Decks by kanayannet
See All by kanayannet
TDDと今まで
kanayannet
0
200
個人開発 稼げなくてもいいアプリ
kanayannet
0
320
システムの堅牢性
kanayannet
0
160
GUIをエンジニアが考える
kanayannet
0
150
http2http3
kanayannet
0
130
old typeからのクラウドインフラ
kanayannet
0
280
疎結合と認知
kanayannet
0
300
クリーンアーキテクチャを活かす考察
kanayannet
1
180
プロジェクト管理ツールの経験則
kanayannet
0
290
Other Decks in Programming
See All in Programming
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
1.1k
新宿ダンジョンを可視化してみた
satoshi7190
3
420
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
520
禅の心を手に入れよ
eltociear
1
420
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
700
Direct Style Effect Systems The Print[A] ExampleA Comprehension Aid
philipschwarz
PRO
0
210
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.3k
AmperとFleetを使ったAndroidアプリ
yoppie
0
280
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.4k
Docker_OSS_ホスティング入門
satokoki645
0
110
Folding Cheat Sheet #4
philipschwarz
PRO
0
100
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
920
Featured
See All Featured
Making Projects Easy
brettharned
109
5.5k
Thoughts on Productivity
jonyablonski
60
3.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Practical Orchestrator
shlominoach
183
9.7k
We Have a Design System, Now What?
morganepeng
43
6.8k
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Six Lessons from altMBA
skipperchong
22
3k
Why Our Code Smells
bkeepers
PRO
331
56k
Ruby is Unlike a Banana
tanoku
96
10k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Documentation Writing (for coders)
carmenintech
60
4k
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