We’ve been rewriting a site with React, which I never actually looked very deeply into. I heard it was a “framework” and expected it to be, more or less, Client Side Rails. So I assigned it, things happened, and many surprises were had.
One of them was that, in thinking about React as a framework, I missed the need to specify that it should act like it belongs on the Web, with linkable pages, and stuff. We got to the end of the road and the developer was surprised that completely lacking deep links wasn’t what I had wanted or expected.
This confused me, because we have another site that we’ve been wanting to rewrite for a while. There’s a decent list of complaints about it, and I thought he understood them, especially that it’s a single-page app written in one huge mass, that never updates the URL bar. There aren’t any seams to pull it apart and replace things gradually.
I guess not, because he wrote this auxiliary system as a single-page app in one huge mass, that never updates the URL bar. It took us nine months or so to get this result, and something so fundamental as request routing would basically require a rewrite. Which I don’t think we have time for, and besides, the developer is burning out on frontend work as it is.
tl;dr: you can’t actually manage what you don’t understand. Or you can try, but it’s going to be incredibly inefficient.