JSFoo 2016

Tackling speed and performance for JavaScript

##About JSFoo

JSFoo is India’s premier JavaScript conference. We launched JSFoo in 2011 as India’s first JavaScript conference. The JS community in India has grown phenomenally since. JavaScript now pervades every aspect of web development – browsers, apps, front-end, backend, mobile, and IoT.

##JSFoo 2016: Theme

Over the last few years, JavaScript has evolved to become the centerpiece of a complex web stack. Today, it is a prime subject of the obsession that lies with performance and speed. How can you get pages to load faster? How do you work with browser constraints to enhance speed? How do you measure performance? What actually is performance? In what ways do faster response times influence your architecture choices and plans? How is this new focus on faster page loads and apps working offline influencing the development of front-ends and backends as well as server side JS?

The theme for the 2016 edition is tackling speed and performance for JavaScript.

We are inviting full talks (40 mins), crisp talks (15 mins + 5 mins Q&A), and 3-6 hour long (hands-on) workshops from practitioners on the overall theme of speed and performance, including the following topics:

  • Architecting for performance – case studies on how you got faster response times
  • Best practices: debugging and profiling on the web, measuring performance
  • Handling large volumes of data in the browser
  • Building and deploying web apps eg webpack, travis
  • Modern web technology: Angular 2, React
  • Universal JavaScript: meteor js
  • Progressive Web Apps
  • JS off the web – raspberry pi, IoT
  • The cutting edge: elm

This year, JSFoo will feature two days of talks on JavaScript (15-16 September) and a single day of talks on design (17 September) at Meta Refresh (call for proposals will open shortly).

Guidelines for submission

Every proposal MUST be accompanied by:

  • A three minute preview video where the proposer gives an elevator pitch about the talk.
  • Detailed outline of the talk – either in the form of draft slides, mind map and/or textual description.
  • If you are proposing to speak on a topic where the code is not open-sourced yet, the editorial panel will consider your proposal only if the code is made open-source at least three weeks before the conference.

Without the above information, your proposal will not be considered for review.

If you are submitting a Workshop Proposal, you must clearly state:

  • Background knowledge that participants must possess in order to attend your workshop.
  • Details and links to software / packages which participants must install before coming to the workshop.
  • Laptop configuration.
  • Links to background reading material and GitHub repos.
  • Duration of the workshop.
  • Maximum number of participants who can attend your workshop.
  • Instructor’s past experience with conducting workshops.

There is only one speaker per session. Workshops can have two or more instructors.

Entry is free for selected speakers.

Due to budgetary constraints, we prefer speakers closer to home. But if we think you stand out, we’ll provide a grant to cover part of your travel and accommodation to Bangalore. Grants are limited and are made available to speakers delivering full sessions (40 minutes or longer) only.

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 for it to be available under a permissive open source licence. If your software is commercially licensed or available under a combination of commercial and restrictive open source licences (such as the various forms of the GPL), please consider picking up a sponsorship. We recognise 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.

Important dates:

Deadline for submitting proposals: 29 August 2015
Conference dates: 15-16 September

JSFoo will be held at the MLR Convention Centre, J P Nagar.

For more information about speaking proposals, tickets and sponsorships, contact info@hasgeek.com or call +91-7676332020.

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



Modeling domains with Elm - a case study in animation

Submitted Aug 15, 2016

The Elm Architecture (TEA) is widely talked and written about as a scalable way to approach web UI development. Yet, for many it isn’t clear about how to think about and model domains within the architectural “constraint” posed by TEA. This talk will dive deep into animations in user interfaces as an example of how to approach such “effectful” domains in Elm. We’ll take a look into well known models of animation deployed on mobile devices and in browsers and single step through building a model for working with general purpose animations in Elm. The ideas and approach outlined are expected to be portable into other domains too. The process presented will also illustrate using the Elm compiler as an interactive peer to arrive at a domain model as opposed to “just a code translation tool”. Will feature demos, of course.


  1. A brief introduction to Elm and “The Elm Architecture”. (v0.17)
  2. Component composition in Elm and typical usage.
  3. Effectful domains that feel hard and how v0.17 addresses some of these difficulties. This is inspired by the “Tackling the awkward squad” work in Haskell.
  4. Intro to animations in interactive systems
    1. Fixed animations
    2. Traditional reactive approach (Fran)
    3. Interruptible and retargetable animations
    4. The Core Animation model
    5. Physics based animations
  5. Systematic decomposition of an Elm application.
  6. Modeling various types of animations in Elm. Note that I won’t be talking about a layer atop SVG or CSS animations, but about elm code that determines the appearance and behaviour of an interface at every time step - i.e. the level where a developer has full control.
    1. Basic model of physics based animations
    2. Effects and application state transitions
    3. Drag-n-drop
  7. Incorporating sophisticated animations in Elm applications.
  8. Performance roundup.
  9. Summary, code pointers, etc.

Based on ideas described in Functional thinking for fun and profit and Towards reactive animation in Elm but updated for Elm v0.17.


A basic grasp of Elm would give a leg up. Will try and make it accessible to a wide audience of programmers.

Speaker bio

Currently heads engineering at Pramati Technologies, Chennai. Has been an Elm user and evangelist for a long time. Created elm-anima to illustrate how to think about animations in Elm and used it in internal and client applications - desktop and mobile. Fan of “doing it all in Elm” - from layout to styling to animations. Part of the Elm v0.17 pre-release group.




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