About the conference: ReactFoo is a single-day React conference by HasGeek.
We’ll be annoucing the theme shortly
We are inviting proposals for:
Full-length 40 minute talks.
Crisp 15-minute talks.
Hands-on Workshop sessions, 3 and 6 hour duration.
Proposals will be filtered and shortlisted by an Editorial Panel. Please make sure to add links to videos / slide decks when submitting proposals. This will help us understand your speaking experience and delivery style. Blurbs or blog posts covering the relevance of a particular problem statement and how it is tackled will help the Editorial Panel better judge your proposals. We might contact you to ask if you’d like to repost your content on the official conference blog.
We expect you to submit an outline of your proposed talk – either in the form of a mind map or a text document or draft slides within two weeks of submitting your proposal.
You can check back on this page for the status of your proposal. We will notify you if we either move your proposal to the next round or if we reject it. Selected speakers must participate in one or two rounds of rehearsals before the conference. This is mandatory and helps you to prepare well for the conference.
A speaker is NOT confirmed a slot unless we explicitly mention so in an email or over any other medium of communication.
There is only one speaker per session. Entry to the conference is free for selected speakers. As our budget is limited, we prefer speakers from locations closer home, but will do our best to cover for anyone exceptional. HasGeek provides these limited grants where applicable: two international travel and accommodation grants, three domestic travel and accommodation grants. Grants are limited and made available to speakers delivering full sessions (40 minutes or longer). Speaker travel grants will be given in order of preference to students, women, persons of non-binary genders, and individuals for Asia and Africa first.
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”.
Deadline for submitting proposals: 23 August 2017
Conference date: 14 September 2017
For more information about speaking proposals, tickets and sponsorships, contact email@example.com or call +91 76763 32020.
Please note, we will not evaluate proposals that do not have a slide deck and a video in them.
Building applications for the next billion users
There are 340 million internet users in India, that’s more than the entire population of the US. Sadly, 86% of them are on slow networks. These harsh conditions bring out the best architecture patterns for building performant applications.
That does not mean that the developer experience has to be terrible. Let’s talk about server rendering, loading strategies and progressive enhancement to fulfil the gold standard performance checklist without breaking a sweat.
- Understand importance of performance for users + businesses
- Take-home performance checklist
- Architecture patterns that are friendly for developers + performant by default
- How can they implement these in their applications today
– Part 1: performance
Why should you care about performance?
1.1 Big numbers about the network spread in India (86% on slow networks)
1.2 Some scary stats about impact of performance on user behaviour + businesses
Understand web performance nicely
2.1 How to measure performance
2.2 Metrics that matter
2.2 Network constraints
What can I do to improve my application’s performance
3.1 Performance budget
3.2 Server side rendering (get to meaningful paint fast)
3.5 Lazy loading good-to-have features, analytics et al (second level of code-splitting)
3.6 Mention smaller frameworks (preact, react-lite, svelt, etc.)
We can do even better (advanced)
4.1 2 state architecture pattern
4.3 Think of each interactive component having 2 states (example in slides)
4.4 Use only static state on AMP pages and 2G and get that SEO juice.
Cache + Prefetch
5.1 Further optimisations: preload, h2 push
5.2 Prefetch resources based on the next step in user’s journey (service worker)
Enter React - What is so great about react
6.2 Share-able components (tiny love letter to CSS-in-JS)
6.3 We got a tooling upgrade (Code-splitting, tree shaking, hot module replacement)
– Part 2: productivity
7.1 js fatigue
7.2 Abstractions for productivity
7.3 creact-react-app (what is it great for, but where it fails in the perf checklist from 1.)
7.4 view on react boilerplates
7.5 architecture patterns that are friendly for developers + performant by default
7.6 data fetching on the server (problem + solution)
7.7 introduce my work: reaqt
Sum up take aways for audience
Folks who have built a react application or two. This isn’t very beginner friendly.
webperf fans will love this.
Why should you let me talk about this/Why am I excited about it?
- I spend a lot of time during my day job thinking about (and implementing) architecture patterns for a healthcare startup in India. (It is literally my job to talk about this :D)
- I am a regular speaker at ReactJS Meetup in Bangalore. Have talked about styling, testing, performance, designing and some more
- I make OSS projects for building performant apps easier: cost-of-modules, recreate, reaqt, css-constructor.
- I obsess over interfaces, web performance and developer experience.
- Github: https://github.com/siddharthkp
- Twitter: https://twitter.com/siddharthkp
- Bunch of talks from this year: https://speakerdeck.com/siddharthkp
- Jsfoo 2016 (Flash Talk): https://youtu.be/ZKb9l9NrW8E?t=1h2m46s
- React meetup: https://youtu.be/gIinaKFZXFA?t=1h48m35s