Was just asked whether it was a good idea to use some framework (they were talking about React) to build a web site in an agile way. The answer is: NO. From an Agile perspective, you want to get something built and into the user/customer's hands as quickly as possible so you can get feedback and adjust your work. That process should not take more than a couple days. Building even a single page from scratch will not do that. It's the web-developer version of primitive obsession. You'll just get bogged down in unimportant implementation trivia, and run the risk of months of work creating something your customer doesn't want or need. For a web application, I'd start building on top of WordPress (or some other easy-to-use CMS, but I know WordPress), leveraging plugins as much as I possibly could. Then I'd get feedback and adjust. I would fall back into hand programming (and React and its ilk falls into that category) ONLY if those adjustments could not be handled by WordPress and its ecosystem. In other words, I wouldn't use ANY of the things like React or HTML or CSS unless absolutely forced to do that because there were literally no other alternatives.
It's weird, because for me, React has been a game changer for making something quick in a couple of days. I guess the real advice is: when you want to make something small, stick to whatever system you know well, where you can let your instincts do most of the work, you already know the trivia and best practices, and you can just drive.
Yes, but :-). I have a ongoing goal of making everything as simple as I possible can. I've been bitten by complexity so often that I've come to not tolerate any of it. To me, any system that you've built at the React level is inherently more complex than one just put together in a CMS like WordPress, so I don't go there as my first choice.
I'm not sure how scaling is an issue. Working with agility scales pretty easily, provided that the organization that's doing it is willing to change to pull that off. All I'm suggesting is that you need to get your code into your customer's hands as quickly as possible to get essential feedback, and adding technical complexity too early gets in the way of that. That's true regardless of scale.
It's weird, because for me, React has been a game changer for making something quick in a couple of days. I guess the real advice is: when you want to make something small, stick to whatever system you know well, where you can let your instincts do most of the work, you already know the trivia and best practices, and you can just drive.
Yes, but :-). I have a ongoing goal of making everything as simple as I possible can. I've been bitten by complexity so often that I've come to not tolerate any of it. To me, any system that you've built at the React level is inherently more complex than one just put together in a CMS like WordPress, so I don't go there as my first choice.
How would that scale? I mean in terms of team size, vcs, DevOps etc?
I'm not sure how scaling is an issue. Working with agility scales pretty easily, provided that the organization that's doing it is willing to change to pull that off. All I'm suggesting is that you need to get your code into your customer's hands as quickly as possible to get essential feedback, and adding technical complexity too early gets in the way of that. That's true regardless of scale.