Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The Thick Front-End

2,007 views

Published on

Published in: Technology
  • Be the first to comment

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

×