On July 10th 2017, I had the chance to attend the first day of the first React Native conference ever organized: #ChainReact2017
Here are my key takeaways from the first day of the conference:
"The dark art of bundlers" by Mike Grabowski
Mike did an awesome presentation about how the React Native bundler actually works and why it is not that extensible right now. He created Haul, the first replacement of the React Native packager, allowing full customization of the config and tools thanks to webpack and plugins!
And (⚠️ spoilers), it WORKS WITH SYMLINKS!
Brent Vatne talked about open-source and documentation
As one of the most active contributors to Expo and React Native, Brent gave us advice on how to help people who are starting out with React Native, on how to help them have a positive experience, and how to help out the whole React Native community.
Helping on Issues Triage
- Read issues on the React Native repo
- Identify what issues are actually bugs and redirect those that are not bugs to stackoverflow
- If it is indeed a bug: Try to reproduce it, especially from a project started from scratch
- If you manage to reproduce it, provide a Snack url that reproduces the bug
A better documentation
If you're stuck on something because the documentation is not complete enough, or not up-to-date, UPDATE IT instead of writing a blog post.
The reality is that blog posts are hard to find or access, while at the same time, most people will go to the documentation and will most likely meet the same error that you did by following the same path. Updating the official docs will for sure have more impact than writing a blog post.
AWS with React Native
Richard Threlkeld from Amazon Web Services showed us how to build a secure authentication system with Amazon Cognito, streaming some video from Amazon S3 and how to enable a Web socket system in React Native with the soon-to-be production ready AWS SDK for React Native.
Paypal's R&D department and React Native
Poornima Venkatakrishnan from Paypal presented a preview of what Paypal is working on for its React Native SDK. The objective seems to be to integrate a native view into React Native or Webview-based (i.e. Ionic apps and alike) merchant apps to allow the "checkout with Paypal" experience to be better than the actual "Another tab opens for checkout" experience, and allow an actual callback state to the merchant's app.
Poornima however explained that the whole experience is under the control of the Paypal team who Codepush on their part of the React Native code without the developer of the merchant's app seeing it. I get it, but I'm not sure I like that so much has to be on the merchant's app's side.
Ben Ilegbodu's sporty "React Native and ES.next"
Ben started his talk making us stand up and do 10 squats to wake us up a little bit!
He then introduced some of the features of ES.next that are included in the React Native babel preset, namely:
Def. Futurism : An obsession with what the future looks like & how it will affect social, economic, technological, and political structures and ecosystems
The takeaways I got from this talk were:
- If you want to get good in a field, follow the leaders in that field and do the same
- Choose if you want to participate in the gold rush, or sell pickaxes (do you want to create the next B$ app or be an app developer?)
- Don't miss out on AR, machine learning and AI. These are surely the next big things
- JS doesn't seem to be going away. Even if the web dies, there's a chance that JS sticks around for a while
Naoufal Kadhom from Netflix told us about "Payments in React Native"
After introducing the Web Payment Request API, Naoufal announced, in a very natural and majestic way, his new react-native-payments library, allowing you to use Apple Pay, Android Pay, credit cards from your React Native app following the Web Payment Request API.
Really great work!
Gestures Here, Gestures There, Gestures Everywhere
Kyle Poole and Thomas Bruketta from Instrument dove into the TouchableWithoutFeedback, TouchableOpacity TouchableHighlight and PanResponder APIs and showed us how to create a pretty cool component that centralizes all types of gestures to do "super-buttery animations and interactions"
"Gestures are literally magic, you wave a finger and something happens" #ChainReact2017— Adrien Thiery (@Adrien0) July 10, 2017
Javier Cuevas gave us a good overview of what's out there to choose from when starting a React Native app
As he had to rewrite the whole Gudog app, he trashed his Ionic app to restart in React Native and gave us his tips on what to choose for the best experience when starting to work with React Native.
TL;DR : Check out ignite, they got the groove!
The furious Ken Wheeler brought back the energy to finish this first day
Subject: "Why we need an App browser = What if web pages could be 'Native enabled'"? So you could have an awesome experience in web on mobile instead of having cluttered mobile-not-first-but-supposedly-mobile-first-crappy-websites.
Feeling: Played with emotionally. Solution: Responsive? Wrong. Solution: PWA? Wrong. Solution: Loading a React Native package from URL? Meh.
Result: We got one already, it's called Expo
That's all for today folks, be sure to checkout #ChainReact2017 for all the awesome content from this legendary conference.