front-end complexity is all in your head

· erock's devlog

Tools merely adapt to the complexity, we are born in it

It seems like everyday there's a post on HN about some front-end tool or library that invariably leads to readers exclaiming the "front-end is too complex."

Phrases like "javascript fatigue" and "I can't keep up with the ecosystem" are lobbed over the fence, eager to be rejoiced by HN readers.

I get why these comments keep coming up, but the front-end is just the tip of the iceberg. As someone who works on a PaaS, I get to see the dizzying complexity from both sides of the spectrum.

Whenever I stumble into a conversation about front-end complexity, I like to share a single site that illustrates my counter-argument: https://landscape.cncf.io. Are you overwhelmed like I am looking at this page? Are we so quick to forget the paralyzing complexity of the Kubernetes ecosystem?

Further, I argue, that the dogma of RESTful APIs consistently push the complexity of data synchronization to the front-end. I also argue that out of all the web targets, the browser is wholly unique. Micro-services really just means "let the front-end handle the complexity of synchronizing multiple API endpoints."

We are trading back-end simplicity for front-end complexity.

Now to my final point. Tech stacks don't solve complexity. Every specialty must have complexity or else specialization wouldn't exist. The complexity doesn't live inside our tools, it lives inside us. Humans are the progenitors of complexity. Tools inherit the complexity of its creators. There is no escape, simplicity is an ideal that is always out-of-reach.


I have no idea what I'm doing. Subscribe to my rss feed to read more posts.