Next GenerationWeb Dev Techniqueswith Cloud Foundry      Lucas Carlson
Lucas Carlson   Circa 1996                PHP!!!?!?!
Lucas Carlson   Circa 2005                RUBY!!!?!?!
Lucas Carlson                ZOMG!!!?!?!
Lucas Carlson                ZOMG!!!?!?!
DaveMcCroy          Derek         Collison
Web App History• HTML     • Thin frontend• DHTML    • Thick backend• XHTML• CSS• AJAX     • Thick frontend• HTML5    • Thi...
Early Web• Network slow• Browsers slow   • Thick backend logic• Servers fast
Middle Web• Network fast• Browsers slow   • Thick backend logic• Servers fast    • Some client logic• AJAX/DHTML
Modern Web• Network fast• Browsers fast• Servers fast    • Thick client logic• HTML5• Mobile
Thick Clients• Gmail: 2007• MobileMe: 2008• Twitter redesign: 2011
Web Architectures• Spaghetti• MVC• API Bindings• Fat Client
Spaghetti• PHP, Perl, Javascript• Build everything from first principles
MVC• Rails, Django• Apply MVC to backend server• Client side code is still spaghetti
API Bindings• Knockout, Backbone• Client code framework, loose structure• Flexible UI• Simple API backends
Fat Client• Cappuccino, SproutCore• Apply MVC to frontend client• Prescribed UI elements• Simple API backends
SproutCore
Cappuccino
Large scale web apps• Monolithic• One code base• Feature creep• Heavier and heavier• Memory leaks• Performance nightmare
Scaling issues• Database grows• 100+ tables• SQL spaghetti queries
Pull them apart• Create services• Pull apart user registration• A few services• Big monolith hard to kill
Better Way?• Start by building services• Small, independent pieces of code• Scale independently• Compose in the front
Old Habits• Old web development was based on old  limitations• Old habits no longer serving us well
Modern Web App    Toolkit
New SaaS• SaaS is headed this way• Stripe for billing• Billing backend service on separate infra
New Frameworks
New Frameworks
New
Next Generation Web Development Techniques with Cloud Foundry
Next Generation Web Development Techniques with Cloud Foundry
Next Generation Web Development Techniques with Cloud Foundry
Next Generation Web Development Techniques with Cloud Foundry
Next Generation Web Development Techniques with Cloud Foundry
Upcoming SlideShare
Loading in...5
×

Next Generation Web Development Techniques with Cloud Foundry

432

Published on

An introduction to the changing landscape of Web Development, how Cloud App Dev is supplanting Web Dev, and how PaaS plays into the picture.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
432
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Next Generation Web Development Techniques with Cloud Foundry

  1. 1. Next GenerationWeb Dev Techniqueswith Cloud Foundry Lucas Carlson
  2. 2. Lucas Carlson Circa 1996 PHP!!!?!?!
  3. 3. Lucas Carlson Circa 2005 RUBY!!!?!?!
  4. 4. Lucas Carlson ZOMG!!!?!?!
  5. 5. Lucas Carlson ZOMG!!!?!?!
  6. 6. DaveMcCroy Derek Collison
  7. 7. Web App History• HTML • Thin frontend• DHTML • Thick backend• XHTML• CSS• AJAX • Thick frontend• HTML5 • Thin backend
  8. 8. Early Web• Network slow• Browsers slow • Thick backend logic• Servers fast
  9. 9. Middle Web• Network fast• Browsers slow • Thick backend logic• Servers fast • Some client logic• AJAX/DHTML
  10. 10. Modern Web• Network fast• Browsers fast• Servers fast • Thick client logic• HTML5• Mobile
  11. 11. Thick Clients• Gmail: 2007• MobileMe: 2008• Twitter redesign: 2011
  12. 12. Web Architectures• Spaghetti• MVC• API Bindings• Fat Client
  13. 13. Spaghetti• PHP, Perl, Javascript• Build everything from first principles
  14. 14. MVC• Rails, Django• Apply MVC to backend server• Client side code is still spaghetti
  15. 15. API Bindings• Knockout, Backbone• Client code framework, loose structure• Flexible UI• Simple API backends
  16. 16. Fat Client• Cappuccino, SproutCore• Apply MVC to frontend client• Prescribed UI elements• Simple API backends
  17. 17. SproutCore
  18. 18. Cappuccino
  19. 19. Large scale web apps• Monolithic• One code base• Feature creep• Heavier and heavier• Memory leaks• Performance nightmare
  20. 20. Scaling issues• Database grows• 100+ tables• SQL spaghetti queries
  21. 21. Pull them apart• Create services• Pull apart user registration• A few services• Big monolith hard to kill
  22. 22. Better Way?• Start by building services• Small, independent pieces of code• Scale independently• Compose in the front
  23. 23. Old Habits• Old web development was based on old limitations• Old habits no longer serving us well
  24. 24. Modern Web App Toolkit
  25. 25. New SaaS• SaaS is headed this way• Stripe for billing• Billing backend service on separate infra
  26. 26. New Frameworks
  27. 27. New Frameworks
  28. 28. New
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×