Feb 07 2019

Design and Single Page Applications

Design is more than just appearance. The world of software design can encompass performance, code architectures, tooling, paradigms, strategies, and a dozen other topics. In regards to single page applications, it seems that there is excessive catering to appearances at the expense of many, many other categories. This is unfortunate because not only do the developers suffer, but the users do too! While the developers mainly struggle from a technical standpoint, users can become frusterated with defective software or slow delivery of features.

A lot of frontend tooling is downright aweful, filled with bloat and instability. There is so much surface area on frontend architecture which does not need to be there! Efforts will be expended on building up this surface area with loads of javascript dependencies, a frontend architecture, and an api to integrate with. What does this mean? Probably a lot of defects popping up. Though you are dedicating additional time for frontend unit tests and integration tests to compensate right? Really, why not push things server-side?

I don’t mean to brag (well maybe I do), but react + redux is between 12x - 15x the size of this post. Instead of throwing a steaming pile of dependencies at my user, I am only serving them what they are really asking for. They do not want react or redux. They (hopefully) just want the content. So while the load time feels like a single page application, it’s really not… It’s just pragmatic.

Code responsibly.