The Thick Front-End

1,869 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,869
On SlideShare
0
From Embeds
0
Number of Embeds
40
Actions
Shares
0
Downloads
18
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

The Thick Front-End

  1. 1. AngularJS Mountain View The Thick Front-End Jeff Dickey @dickeyxxx http://dickey.xxx/
  2. 2. Agenda • Why we need a Thick-Client • How I’ve written JavaScript in the past • How I architect new applications
  3. 3. This talk is about why, not what
  4. 4. Carbon Five
  5. 5. Rails is amazing • Apps are easy to build • We test everything • Easy to deploy • Packages everything for you
  6. 6. However applications require more interactivity now • Automatic refresh (notifications) • Animations • Fast editing • More speed
  7. 7. JavaScript and Rails are at odds with each other. • JavaScript is hard to test. • No structure is given for JavaScript. • Turbolinks causes bugs
  8. 8. I used to avoid JavaScript whenever possible.
  9. 9. Why?
  10. 10. Browsers are a real platform now!
  11. 11. Progressive enhancement ruins applications.
  12. 12. Why have a Single-page app? • Simple architecture • Insanely fast • Can architect back-end separately • Free API! • State lives in the client
  13. 13. If the web came out tomorrow…
  14. 14. Generating code intended to be executed by the client would be insane.
  15. 15. Browsers are smart now. Let’s architect for that.
  16. 16. Demo time.
  17. 17. Single-page app not without problems • 2 projects, new workflow • Initial page-load performance • SEO
  18. 18. There are solutions • BromBone • Prerender (phantomjs) • render_static gem (selenium) • escape_fragment
  19. 19. Marketers should not dictate how we architect.
  20. 20. Tooling is available!
  21. 21. Grunt • Compile SASS • Minify CSS/JS • Shrink .png • Test front-end • Automate deployments
  22. 22. Bower • Front-end package manager • Like rubygems, brew or package control in Sublime • Unobtrusive. Really simple.
  23. 23. Summary • The way we build applications is dated • The web is now ready for Thick-Client apps • Thick Clients make architecture simple
  24. 24. Browsers are smart now. Treat them like it. @dickeyxxx

×