Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Rapid Web Development by Example
Search
Szu-Kai Hsu (brucehsu)
May 09, 2012
Programming
3.2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rapid Web Development by Example
TechWed@CCU #1
Video:
http://zh-tw.justin.tv/alan77916/b/317618710
Szu-Kai Hsu (brucehsu)
May 09, 2012
More Decks by Szu-Kai Hsu (brucehsu)
See All by Szu-Kai Hsu (brucehsu)
Running Life Lean
brucehsu
0
190
Core Unleashed Part II: Introduction to GobiesVM (and STM) @ RubyKaigi 2014
brucehsu
0
2.2k
[RubyConf.tw 2014] Cores unleashed - Exploiting Parallelism in Ruby with STM
brucehsu
0
2.3k
用 Go 打造程式語言執行環境:實例剖析 [OSDC.tw 2014]
brucehsu
3
2.5k
pickbox @ OSDC.tw 2013 Lightning Talk
brucehsu
0
150
Building Web 2.0 APIs
brucehsu
1
170
由Spanner來看Google資料庫的前世今生
brucehsu
4
390
TechWed@CCU #0
brucehsu
2
620
Chromium OS
brucehsu
2
250
Other Decks in Programming
See All in Programming
Enforcing Your Architecture with Unit Tests in the AI Era (Swift Connection X)
steliosf
PRO
1
150
社内AIエージェント「Askワンバン」における コストチューニングの取り組み
t0yohei
0
170
作れるエンジニアから、価値を届けるエンジニアへ
ryunakayama
1
250
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
130
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.7k
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
170
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
240
Crash Auto Pipelines
veronikapj
1
400
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
190
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
6
1.5k
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
3
1.7k
DroidKnights 2026 Android A2UI Jetpack Compose 기반의 안전한 AI UI 렌더링 - 박제창
itsmedreamwalker
1
210
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Facilitating Awesome Meetings
lara
57
7.2k
The Limits of Empathy - UXLibs8
cassininazir
2
770
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
970
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
460
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
520
Balancing Empowerment & Direction
lara
6
1.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
740
ラッコキーワード サービス紹介資料
rakko
5
5.8M
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Transcript
Rapid Web Development By Example Presenter: Szu-Kai Hsu (brucehsu)
treehole https://github.com/brucehsu/treehole http://photos.nj.com/photogallery/2010/05/squirrel_in_tree_hole.html
你有聽過安X嗎? MVC
Model
View http://www.freefoto.com/preview/19-26-9/Mountain--Carinthia--Austria
Controller
None
Sinatra
None
D-Live Coding
None
宅
復古、潮
潮到出水
None
None
<this><is><html>orz</html></is></this>
this is html orz
None
None
Variables
Mixin =
D-Live Coding
None
None
None
Database?
None
SELECT isbn, title, price, price * 0.06 AS sales_tax FROM
Book WHERE price > 100.00 ORDER BY title;
Object Relational Mapper
None
比較表 ORM SQL 寫法 安全性 LOC 結語 OO Query 較佳
因人而異 少 多 潮 勝 回不去了 不要怕 加班
None
Define Models
Define Models
D-Live Coding
None
None
None
不能動 不夠潮
JavaScript! not
return $('[id^=del_]').click(function(event) { var post_id; event.preventDefault(); post_id = /del_(\d+)/.exec($ (this).attr('id'))[1];
return $.ajax({ type: 'delete', url: '/delete/post/' + post_id, data: $(this).serialize(), success: function(data) { if (data['success']) { return $('.post_' + post_id).fadeOut(); } else { return alert('Failed!'); } } };
return $('[id^=del_]').click(function(event) { var post_id; event.preventDefault(); post_id = /del_(\d+)/.exec($ (this).attr('id'))[1];
return $.ajax({ type: 'delete', url: '/delete/post/' + post_id, data: $(this).serialize(), success: function(data) { if (data['success']) { return $('.post_' + post_id).fadeOut(); } else { return alert('Failed!'); } } });
None
None
None
None
None
D-Live Coding
None
Demo