Facebook's React Native is exciting devs. Or is it, really?

It's said to be the dog's danglies – but so were many other things before it

Facebook's React Native framework is hot. The question is, for how long? After all, while Facebook-born React is smoking, it wasn’t very long ago that Google-spawned AngularJS had the web world all a’flutter.

Before that, it was Backbone, SproutCore, and a variety of other hot-until-not JavaScript frameworks.

On the one hand, this speaks to the furious pace of innovation in web-land. But on the other, it suggests that picking a corporate standard for developing web applications is tricky at best, and fraught with peril at worst.

The ebb and flow of JavaScript It may be, as developer Jeff Waugh affirmed to me, that: “Everything [is] begin[ning] to taste more like React,” as other frameworks follow its lead in crucial ways. But that hasn’t always been the case.

In fact, it’s hardly started.

Just measuring search trends, it’s not hard to see the industry’s progression from SproutCore to Backbone to EmberJS.

But when AngularJS was launched, the industry witnessed an unprecedented level of interest in JavaScript frameworks. Everything else suddenly became a rounding error – at least, as measured by Google searches.

But it’s not just search interest that reveals this shift. By looking into Indeed.com job postings, we see the same effect: SproutCore was dominant first, then giving way to BackboneJS which, in turn, ceded ground to EmberJS.

And then AngularJS happened.

React Native has yet to impact the number of jobs offered in a big way... yet. But that’s likely to change, and soon, as Hacker News job posts reveal. These tend to cover the start-ups and, hence, the cutting edge of development.

Most companies, however, don’t want to be on the cutting edge. Not big enterprises, anyway. So how should they respond to web frameworks’ compulsive tendency to go in and out of fashion?

Is it safe to go into the JavaScript water? That question became even harder to answer after AngularJS left its users high-and-dry at version 2.0. Developer. Kylee Tilley’s response to a big release with no backward compatibility is emblematic of how many developers felt: WTH?

As he told me: “I was in the Angular camp and jumped at the first signs of 2.0” because of backward (in)compatibility. “[I] was kind of stuck not wanting to create new 1.x projects but still waiting for 2.x.”

Some saw safety in rival frameworks like EmberJS, which has a firm policy of maintaining backward compatibility. Indeed, EmberJS co-founder Yehuda Katz told me: “We don't need to break the web….We believe it's possible to achieve stability without stagnation.”

Even more people, however, jumped onto Facebook’s new shiny framework, ReactJS/React Native. Netflix is among them, ever a bellwether for where the enterprise eventually ends up – see, for example, Amazon Web Services and public cloud adoption in general. React Native offers a powerful way to build native applications with web code.

As Mozilla developer James Long puts it:

It only takes a few minutes playing with React Native to realize the potential it has. This works. It feels like I'm developing for the web.

But I'm writing a real native app, and you seriously can't tell the difference. At the UI level, there is no difference; these are all native UIViews beautifully sliding around like normal.

This is solid engineering. And it completely reinforces the fact that React.js is the right way to build apps. I can write a native app using the same techniques as I would write web app.

This is different. This sounds very much like a no-compromise approach to web development that bleeds native. Given the distribution of web developers within any enterprise, this is worth tinkering with, if nothing else.

Not everyone is so confident, given the JavaScript merry-go-round we’ve been circling for years. But there’s at least something different here worth considering.

And there’s a lot at stake, something EmberJS co-founder Tom Dale once underlined for me. While we have .Net or Java to handle big chunks of the enterprise, Swift for programming on iOS, and so on, web programming touches everything, everywhere. In Dale’s words: “Winning the web is the whole darn world.” ®


Biting the hand that feeds IT © 1998–2017