Embrace the web
Developers often ignore the fact that the UI design lifecycle (approximately 3 years) is usually nothing like the application lifecycle in that identity is organic and continuous and applications are not. Baking the web stack fully into the back-end is usually not a good idea. The overall design of a website will change before you’ve recouped the development costs for the application. So, be careful you don’t get screwed.
HTML is really hard
In case you were wondering, HTML becomes less flexible as the site grows because changing markup causes all kinds of side effects.
As HTML is tied to other technologies you need your markup to be uniform and consistent across your website. Are you really using a Style guide to implement the given markup patterns?
Also, markup is often mixed down to a lower code level. Making changes suddenly becomes more painful requiring redundant knowledge and skill, never mind the additional testing. Something so simple has been unnecessarily promoted to application code. Adding a comma requires the developer have a full development stack with all its dependencies loaded and then ’build’ the application to see the change. That’s not just wasteful, it’s stupid. Yes, a pet peeve of mine, however, a bugbear for many.
The problem has been around forever and ways of dealing with this range from from the full lock in approach with an IDE like Visual Studio to adding more tooling like jRebel. We’re still stuck a massive development overhead. Requiring a backend build step is killing development speed.
* Lazy loading CSS is a tricky topic and usually a little too complex for most web teams. Maybe worth a post in the future.