JSFoo 2018

JSFoo 2018

On JavaScript and Security

##JSFoo 2018 will be held on 26 and 27 October 2018.

##About the conference:
JSFoo is HasGeek’s annual JavaScript conference. JSFoo is in its eighth edition this year.

The 2018 edition is single-track event with talks in auditorium 1 at the NIMHANS Convention Centre, and Birds of Feather (BOF) sessions in the hallway. Meta Refresh -- with talks on usability, user experience, design and UI engineering will be held in auditorium 2 at the NIMHANS Convention Centre.

##Theme: JavaScript and Security

Core talks, held in the mornings, at JSFoo 2018 will be based on the theme “JavaScript and Security”. Under this theme, we will cover the following topics:

  1. Security and front-end
  2. Backend, node.js and security
  3. Framework specific security concerns
  4. Authentication
  5. Security audits

Besides the main theme, JSFoo will cover the following topics:

  1. Case studies of Vue.js, GraphQL, ReasonML and other framework/language adoption.
  2. Architecture approaches (and case studies) for engineering web apps.
  3. Latest developments in JavaScript and web ecosystem – the cutting edge.
  4. Best practices: debugging and profiling on the web, testing, measuring performance.
  5. JS off the web – conversational UI, raspberry pi, IoT

We are inviting proposals:

  1. Full talks: 40 mins duration
  2. Crisp talk: 20 mins duration
  3. Hands-on workshops of 3 or 6 hour duration
  4. Birds Of Feather (BOF) sessions of 45-60 mins duration

Selection process

Proposals will be filtered and shortlisted by an Editorial Panel.

** Make sure to add links to videos / slide decks when submitting proposals. We will not review proposals without detailed outlines or slide decks and preview videos.**

The first filter for every proposal is whether the technology or solution you are referring to is open source or not. If you are referring to a proprietary technology, consider picking up a sponsored session.

The criteria for selecting proposals, in the order of importance, are:

  1. Key insight or takeaway: what can you share with participants that will help them in their work and in thinking about the problem?
  2. Structure of the talk and flow of content: a detailed outline helps us understand the focus of the talk, and the clarity of your thought process.
  3. Ability to communicate succinctly, and how you engage with the audience. You must submit link to a two-minute preview video explaining what your talk is about, and what is the key takeaway for the audience.

No one submits the perfect proposal in the first instance. We therefore encourage you to:

  1. Submit your proposal early so that we have more time to iterate if the proposal has potential.
  2. Write to us on: jsfoo.editorial@hasgeek.com if you want to discuss an idea for your proposal, and need help / advice on how to structure it.

Our editorial team also helps potential speakers in refining their talk ideas, and rehearsing at least twice - before the main conference - to sharpen the insights presented in the talk.

##Passes and honorarium for speakers:
We pay an honorarium of Rs. 3,000 to each speaker and workshop instructor at the end of their talk/workshop. Confirmed speakers and instructors also get a pass to the conference and networking dinner. We do not provide free passes for speakers’ colleagues and spouses.

##Travel grants for outstation speakers:
Travel grants are available for international speakers who have led/worked on projects that have large-scale adoption. Travel grants are available for domestic speakers (without the criteria mentioned for international speakers).
We evaluate each travel grant application on its merits, giving preference to women, people of non-binary gender, and Africans. If you require a grant, request it when you submit your proposal in the field where you add your location. JSFoo is funded through ticket purchases and sponsorships; travel grant budgets vary.

##Important dates:
JSFoo + Meta Refresh: 26 and 27 October, at the NIMHANS Convention Centre.


For 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

Shahidh K Muhammed


Architecture of scalable and resilient NodeJS apps with GraphQL & event-driven serverless

Submitted Sep 6, 2018

The true power of GraphQL lies not just in its syntax but the fact that it makes it possible to reason about applications in ways we have never thought of before. The realtime bits of the GraphQL spec is one such horizons-widening abstraction when we use it as a tool to think about architecting an asynchronous, event-driven backend.

Architecting the frontend of applications to consume a fundamentally async backend is still a challenge. GraphQL subscriptions and live-queries offer an opportunity to design a “reactive” contract between the backend and the frontend. In this model, an app makes a GraphQL mutation and then runs a GraphQL subscription to get updates as they happen. The business logic in serverless functions gets triggered automatically after the mutation and app gets success/error updates as and when they happen.

With serverless functions, we get an auto-scalable, resilient backend which is perfect for processing asynchronous actions and stateless workloads. Such tasks include sending emails/push notifications, ETL, long running business logic etc. With no servers to provision and zero ops-tasks, it is very easy for a front-end developer to write and deploy these complex logic as functions in NodeJS etc.

To draw on the Redux analogy, GraphQL mutations are actions, datastore is the “state”, asynchronous business logic are the “reducers”, and GraphQL subscriptions/live-queries become the state update glue. In this talk, I will talk about how we can use GraphQL and event-driven serverless functions to reason about the data-flow in an application.


I will start with how state of the application can be architected to be stored in the database itself and how updates to this state can be used to build reactive user interfaces which update in real-time, with GraphQL Subscriptions and live-queries. Then we will take a look at how serverless functions can be used to execute business logic and how these functions can be triggered on database events, which are updates to this state.

In short, I will go over different architecture patterns, open-source tools used, code-samples, observed benefits, and pros/cons, and how this pattern fits into the larger GraphQL and serverless revolution that we are undergoing. I will end with a small live-coding demo to show how easy it is to plan and build a reactive application.

Speaker bio

Shahidh is an engineer at Hasura and one of the maintainers of Hasura GraphQL Engine. He, along with the team at Hasura, are exploring ways to make application development easier, using GraphQL and serverless. He is the co-author of Graphqurl, an open-source curl like CLI for making GraphQL queries. Shahidh is an experienced speaker who has spoken at many conferences in India and abroad.


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