Yesterday I discovered a Github comment from Dan Abramov that laid out the potential future for Create React App (CRA), which has been the officially recommended way to spin up a new React app quickly for a long time.
As a result, CRA is showing its age.
In summary, the CRA team isn’t ignorant of this. And in the post, Abramov lays out the problems, the opportunities, and five roadmaps they have considered, and based on their research, which direction they’re likely to go.
The thoroughness and transparency of that post is what I’m focused on.
Because in my opinion, its a ✨ master class ✨ in proposing monumental work (and its just an offhand Github comment ironically).
He’s proposing rearchitecting the tool entirely, which is no small feat.
To do so, the post:
- Gives a thorough “state of the ecosystem”
- Acknowledges the strengths of market competitors, and chooses to use them rather than try to beat them
- Clearly articulates options, the benefits of each, and how the future of each might play out
- Identifies the most likely path forward
- Notes that the team hasn’t started moving on it yet, opting to collect more feedback from the community
Sometimes the tech ecosystem moves faster than our team can incrementally keep up with, or sometimes (in an extreme scenario) we acquire so much tech debt that its better to rewrite. This is a reality of the software development world — it moves fast, and we do what we need to keep up.
In either case, an overhaul is a scary proposal for stakeholders. So we should make it extremely clear how we come to a decision so that everyone affected can understand.