JSFoo 2014

JavaScript as the centerpiece of a complex web stack

In 2011, Node.js put JavaScript firmly in the backend, making JavaScript developers productive at both ends of the stack, and making it possible for business logic to finally be moved into JavaScript.

In 2012, AngularJS made us think about moving business logic completely into the client-side as an actually sensible idea. Meteor give that idea two thumbs up.

In 2013, we went wild thinking of all the possibilities. JavaScript phones! Robots!

In 2014, it’s time for some sobering up. The backends we built over a decade in Ruby and Python aren’t going away. New languages like Go and Hack are tantalising us with new possibilities. Our applications are increasingly distributed, often involving third party APIs. In such a scenario, where does your business logic reside?

In 2014, JavaScript is no longer a toothless child or a rebellious teenager that wants to do everything itself. JSFoo 2014 is about working with JavaScript as the centerpiece of a complex web stack.


This year’s edition spans four days, with two days of workshops and two days of conference. All days feature a single track. We invite proposals for:

  • Full-length 40 minute talks
  • A crisp 15-minute presentation
  • Sponsored sessions, 40 minute duration
  • Flash talks of 5 minutes duration. Submissions for flash talks will be accepted during the event
  • Three hour workshops where everybody gets their laptop out and follows along

Criteria to submit

You must be a practising web developer or designer, and must be able to show how your own work has advanced the state of the web in the past year. You are expected to present original work that your peers — this event’s audience — recognise as being notable enough to deserve a stage.

If you are excited about someone’s work and believe it deserves wider recognition, we recommend you contact them and ask them to submit a proposal.

Selection Process

Voting is open to attendees who have purchased event tickets. If there is a proposal you find notable, please vote for it and leave a comment to initiate discussions. Your vote will be reflected immediately, but will be counted towards selections only if you purchase a ticket.

Proposers must submit presentation drafts as part of the selection process to ensure that the talk is in line with the original proposal, and to help the editorial panel build a strong line-up for the event.

There is only one speaker per session. Entry is free for selected speakers. HasGeek will cover your travel to and accommodation in Bangalore from anywhere in the world for speakers delivering full sessions (30 minutes or longer). As our budget is limited, we will prefer speakers from locations closer home, but will do our best to cover for anyone exceptional. If you are able to raise support for your trip, we will count that as speaker travel sponsorship.

If your proposal is not accepted, you can buy a ticket at the same rate as was available on the day you proposed. We’ll send you a code.

Commitment to Open Source

HasGeek believes in open source as the binding force of our community. If you are describing a codebase for developers to work with, we’d like it to be available under a permissive open source license. If your software is commercially licensed or available under a combination of commercial and restrictive open source licenses (such as the various forms of the GPL), please consider picking up a sponsorship. We recognize that there are valid reasons for commercial licensing, but ask that you support us in return for giving you an audience. Your session will be marked on the schedule as a sponsored session.

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

Rekha Joshi


If you do not measure it, it does not exist! (Metrics with StatsD and Graphite)

Submitted Aug 8, 2014

If you cannot measure it, it does not exist!
If you do not measure it, it does not exist!

Before making a decision we need to measure, Before optimizing, we need to measure, Before investing we need to measure.

Whether it is cloud deployment, services or web application we always need the metrics. What we need to measure can range from network, machine or application specific metric. We want the metrics to tell us all we need to know about the product or service.

The world of front-end development with engaging visualization, great performance, and solving customer problem really well fails if not supported by good metric collection system. Metrics are the only reliable way to hear what your customers are saying.
The collection and consistency of the having metrics from our multiple products, services flowing into a single integrated dashboard has been our challenge.

This session intends to

  1. Emphasize the importance of measurement.
  2. How we need to do it all the time – from web, services, cloud
  3. Demo measurements with StatsD and Graphite

This presentation will demonstrate how we have used StatsD with Graphite to have good metric collection framework.


The presentation would begin by introducing StatsD, a Node.js daemon which allows sending metrics over UDP. It would go into the implementation of StatsD and some of the core concepts of metrics, backend integration. We will touch upon the different language implementations of StatsD available in scala, python, ruby and C.

The talk will then introduce Graphite, the enterprise-scale monitoring tool that can take any time series data and render graphs. And highlight the integration of StatsD and Graphite.

With an example, the demo will show installation of StatsD and it listening for messages, parsing and extracting metrics data. This on integrated environment will get flushed to graphite. The Graphite carbon component takes in the time series data and displays it on graphite django webapp to render graphs.

Wrap Up: Steps to measure (for a five-year-old kid)

  1. Install and Configure StatsD
  2. Integrate with Graphite
  3. Let the magic happen!
  4. Boom! The Graphs give the Metrics details.
  5. Thank node.js for making it so simple!

This cool capture and quick illustration of graphs enabled from StatsD and Graphite integration is what is making metric collection so easy.

There is now no excuse not to measure!


The talk will benefit people with even basic understanding of javascript, node.js and will also strike a chord with data people.

Speaker bio

Rekha Joshi is a developer at Intuit and tries to listen what data and metrics say. Her role at Intuit involves solving challenges related to data.

Intuit works on multiple products and platforms ranging from accounting systems, payments solutions to cloud applications and services. It has metric collection framework based on Graphite, Riemann, Sensu and polls data over event bus. We are obsessed with what our data tells us.


{{ 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