Why Writing Websites Always Sucks

MagicaVoxel is fun.

The Four Elements Of Every Interface

Interfaces — by which I primarily mean web interfaces, but the principle applies to other media as well— are made up of four layers:

  1. Content: What the things are made of
  2. Styling: How things look
  3. Layout: How things interrelate to each other
  4. Logic: How the user controls the engagement
A page from “Tree In The Trail”, with a central block of text surrounded by drawings and explanatory text about the evolution and construction of covered wagons.

Enter The Tri-fold Web

After twenty-someodd years, the web has matured into a fairly stable medium. The Java(Script) wars have been fought and won, and for now, Javascript has come out on top. HTML has been expanded and clarified; CSS has grown more powerful, its focus sharpened even as its expressiveness grew.

Four Pounds Of Crap In Three Boxes

If you had said this to Web 1.0 folks, they would have said the answer was easy: content goes in HTML. Every HTML entity, in the end, contains text or an image, so the content should just go inside the HTML. Done! Easy peasy.

Duh. Put Content In The Database!

Well, maybe. But also no. The web isn’t made of databases; and therein lies the rub. Our three channels don’t include a good way to talk or even think about content; and as a result, we end up having to think about it everywhere.

So what’s the solution?

The web has many solutions to this problem. This week, the popular ones are Angular, Vue, and React. Let’s talk about their solution to this problem. (While each of these frameworks is flexible enough to do a lot of things, I’m going to only analyze the ‘standard’ practice for each, the ones taught in the READMEs and online courses.)

Keeping Content Central

And so we’re back to an unsurprising point: structure, logic, and styling are incredibly important, but they are subservient to the main goal of communicating content.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alex Feinman

Alex Feinman

Obligate infovore. All posts made with 100% recycled electrons, sustainably crafted by artisanal artisans. He/him/his.