Enterprise development has its challenges; its complex, has many stakeholders with overlapping and conflicting needs, and must live a long time while being maintained by developers who weren’t part of the original team. We get it.
We have been helping enterprise organizations adopt new front-end technologies for years and, while React is newer, the challenges are not. In our experience though, so many of them are avoidable by tackling the biggest decisions upfront and avoiding the pain (and bigger problem) that comes with deferral.
The Medium Post
A few weeks ago, Răzvan Dragomir wrote a post on Medium titled “I Almost Got Fired for Choosing React in Our Enterprise App” and linked to one of our React Wednesday shows on React in the Enterprise. Our website analytics went through the roof as a result. Răzvan wrote an honest assessment from his viewpoint on why his project went off the rails.
It was a great post, not just about React, but about the problems that happen in enterprise development. In particular, those that happen when adopting a new development paradigm when teams aren’t prepared for, aren’t trained, or, worse yet, don’t realize it requires a new approach.
What is React?
It’s just a library. A library that helps you turn data into a user interface.
Some might call it an opinionated one, as it does expect adherence to certain rules and approaches to be optimal (read: not drive yourself and your teammates crazy). But the beauty of adopting these approaches is access to a vibrant ecosystem and evolving set of tools that you can assemble the toolchain that makes the most sense for your situation.
Do We Recommend React for Enterprise Application Development?
For sure. But we also recommend adopting any technology, especially one with significant differences from Java and .NET enterprise stacks, with open eyes and an understanding that new technology often calls for new patterns, new understandings, and training for the team. The problems associated with forcing square pegs into round holes are well understood.
When considering React for Enterprise application development, we usually recommend the following items to our clients:
A training path for developers to learn to think in React
It’s a new way of expressing ideas
Trying to use existing patterns is the coding equivalent of just speaking louder to someone who doesn’t understand your language
Sensible library and dependency selection
There are a lot of options… but just because you can do something doesn’t mean you should
A code-review process
You need someone more experienced than you to tell you when you missed the point
Using a standards-based approach
Every situation may be unique but there are a lot of smart people that have already solved a lot of hard problems, we can learn from them
To be honest, that is probably where we spend most of our time; creating shared understandings of strategy and practices and aligning developers to be productive.
React Wednesday is a weekly live show for React developers. Each week we discuss topics important for the React Ecosystem. Our guests are some of the best and brightest folks in the community, and they love it when you ask questions during the show. You can stay up to date with upcoming shows by subscribing to our Google calendar.
Have Questions You’d Like To Ask?
If you have questions you would like us to ask during the show, place them in a comment on this blog post.
Dan has extensive experience building and growing technology-focused products and services. He got his first taste of fast-moving bleeding-edge tech when he joined his first start-up in 1999. He's spent the last 2 decades in software engineering, consulting, and technology strategy. He prides himself on being a marketer who writes code.