JSFoo 2013

All about being creative with JavaScript

Dheeraj Kumar


All you EVER wanted to know about client-side frameworks

Submitted Jul 11, 2013

At the end of this session, you will be able to -

  1. Decide if you need a client side framework.
  2. Decide a complete client-side tech stack, tailored for your use case.
  3. Start writing small client-side components that provide rich interactivity within your large web app.
  4. Start writing full-blown single page apps.
  5. Start using Backbone, Angular, Ember in your everyday work.
  6. Do all the above in a test-driven way.


Do I need a client-side MV?*”

When do I need a client-side MV?*”

I already have a large app, I don’t want to rewrite it. What should I do?

Which one do I choose? There are so many!

Should I go for Backbone? Foursquare uses it!

Should I go for Angular? Google uses it!

Should I go for Ember? Discourse uses it!

Should I go for X? It’s the new hotness!

I’ve never written tests, isn’t it very difficult to learn?

Why should I write tests for my client-side app? It takes too much time!

Sure, you can google about all these right now, read a bunch of blog posts, and you’d think you’re done, you’re ready to choose a framework for your next project.

But no, you’ll still be as confused as before.

Come, ask and learn all you EVER wanted to, about client-side frameworks.


Take a piece of paper.

Write down every single question that you want answered about client-side MV* frameworks.

Bring that, and an open mind :)

Speaker bio

Hi, I’m Dheeraj Kumar.

I’ve written normal web apps with some bits of javascript.
Things were good.

I’ve written normal web apps with some bits of javascript.
I’ve had those ‘some bits’ grow into a mass of twisted spaghetti jQuery.
I’ve faced bugs, regressions and product launch delays.
I’ve rewritten small parts of the app to use a client-side framework.

I’ve written client-side apps, entirely of javascript.
I’ve used Backbone, Angular and Ember.
I’ve tested with Jasmine and Mocha.
I know how awesome they are.


{{ gettext('Login to leave a comment') }}

{{ gettext('Post a comment…') }}
{{ gettext('New comment') }}
{{ formTitle }}

{{ errorMsg }}

{{ gettext('No comments posted yet') }}

Hosted by

JSFoo is a forum for discussing UI engineering; fullstack development; web applications engineering, performance, security and design; accessibility; and latest developments in #JavaScript. Follow JSFoo on Twitter more