ReactEurope interview #19: Christopher Chedeau

Only 29 days to go until ReactEurope and we’re getting close to our last speaker interview. I hope you’ve enjoyed reading these interviews as much as we did.

We’re honored to have Christopher (aka vjeux) on our last interview. He’s a main contributor of projects such as React Native and of course, React.js itself before that. He’s also one of the most passionate React.js advocate.

Last but not least, Christopher is the reason this conference is happening in the first place as he was the one who trusted us with it, he was also very helpful during the whole process so thank you Christopher!

Christopher will do the keynote at the start of the conference and participate in the Q&A as well as the hackathon on the 1st of July. Here’s the interview:

Tell us a bit about yourself, where are you from, what do you do?

Hey, I’ve lived all my life in Paris, France up until I moved to the US 3 years ago to work at Facebook. I studied at EPITA (which is an awesome school!). My major was in computer vision and AI, but my passion is around front-end and JavaScript ;)

What were you using before React?

Before React I was a big fan of jQuery, I found the API to be fascinating. The ability to do so many different things by overloading the same function with different argument types and chaining was super appealing. You could write super concise code very easily.

What made you switch to React?

I was working on a project at fb which was half server-side, half client-side rendered and it was a giant mess. State was everywhere: on DOM attributes, in js globals, js modules, js closures… Every time we got a bug report (and we got a ton), it was a battle to figure out what went wrong and even when I made a fix, I wasn’t sure that it wasn’t going to break again the next week.
We had 10 different plans to rewrite it but it wasn’t clear that any of them would not end up being a similar mess a year or two down the road.
This was until I randomly talked to this guy Jordan Walke who showed me his prototype: React. His idea was to only implement render() and React would implement mutations and deletions for you. My first reaction was: “This is never going to be fast, but if it is, it’s going to be huge”. I knew that if we were to rewrite the project I was working on with this model, most of the crazy bugs would vanish.
I didn’t give it much thoughts until two weeks later when I was bored during a weekend. I tried it and I was mind blown. I threw at it some non trivial but real world example and it wasn’t slow! Heck, it was on par performance-wise with my hand written DOM mutations.
Since then, I basically became React biggest fanboy ☺

What’s your greatest react projects, open source or not that you’d like to tell the world about?

React Native ☺
Interestingly, my story with React Native is about the same as React. I spent 3 months working on a mobile web project and I got super frustrated, I couldn’t replicate what we had on iOS because of the browser. Then, I did iOS training for a week but I left disgusted, the developer experience was just terrible.
It was until that same Jordan Walke showed me a week-end hack where he used React to output iOS components instead of browser DOM nodes. Then, I saw a whole world of possibilities: what if we could run things in different threads, manage our own image caching, implement a callback when the dimensions of an element changes, or animate all the position changes without relying on position: absolute hacks?
I want React Native to be a playground for crazy ideas both on the infrastructure side and on the product side.

What’s your future plan with React.js?

React is the view library, but you need much more than that in order to build a real application. You need to lint, bundle and transform your JavaScript, fetch and manage data, write tests, import 3rd party code…
Getting started on a front-end project is so damn hard. I want to be in a place where you can just do `react init` and you can start hacking on your idea. We have a v0.1 of this idea with react-native-cli but we can do so much better!

What do you expect from the conf?

Front-end has for a long time been a place where you do all kind of hacks in order to fight the way html, js, css, browsers was set up. Computer *science* was not as part of this world.
Fortunately, things have evolved and we’re now using language theory to improve JavaScript the language, tree diffing and composition with React, immutable data structures for data management…
I put a heavy focus on this in order to select React.js Conf speakers and I hope that React Europe will follow the same trend!

Anything else you want to tell future attendees?

The best quality of React is that it is an awesome foundation that *enables* building things on-top. A lot of people are exploring ways to build server-side rendering, data fetching, styling, developer experience and so much more based on this new architecture. This journey is 1% finished.

There you go, you now know a bit more about Christopher and all our speakers and hopefully you will be able to meet all of them personally at the conf.

If you haven’t done so, make sure to grab your ticket to the conference before they’re all gone and see you there!

You can follow @ReactEurope on Twitter to get the latest news about the conference and interviews.