I swear to God. I just want to go back to the 2000s where everything was just plain HTML and some basic CSS, if at all any, by default you got responsive design out of the box, readable text and super user friendly GUI from the browser's own default stylesheet.
Today you open any website. Everything is a fucking component. A simple dropdown with a finite list? Has its own loader and makes 10 fetch requests for no reason. Not even exaggerating - look at Instagram and Facebook on web.
Fuck all these specifications, just give me the raw HTML that isn't obfuscated by your shitty/shiny new JS framework that you swear will change the game (looking at you, React)
The 2000s, the golden age of web design, when people built inaccessible IE6-only mystery-meat navigation websites with Flash and HTML tables that dynamically loaded JS using iframes.
Can't upvote this enough. People have very selective memory of how the 2000s web worked. Every other website requires Flash just to show you a carousel of images. "Serious" business websites implemented in slow, buggy Java applets. iframes everywhere. Incredibly fucked up tables with no semantic meanings in your HTML just to do what modern flexbox now does in two lines. No one cared about accessibility of anything. Clicking on anything can get you pwned because you never updated your Flash player which has an RCE vulnerability. And yes, so many websites will tell you to use Internet Explorer for best experience.
I get being frustrated with some aspects of the modern web. But a lot of people are reminding of that Naomi Wolf tweet about how Belfast was calm and peaceful in the 1970s.
In the 2000s wasn't everything just misused/abused table layouts? Maybe we frequented different places, but that's how I remember it.
That's funny because the argument against tables was always that they added extra markup a.k.a lines of code, only to replace them with dozens of nested divs, half assed CSS layout ideologies (floats and clear's, for example) and barely functional JS that all somehow needed to work in sync which was almost never. That's how NPM was born.
Tables worked with 100% of the browsers. The alternatives needed polyfills and shims and ironically the whole thing needed easily 2x the number of integration time and lines of code compared to just slapping tables.
There will always be a tension between those who want purely semantic documents and those who argue for a pragmatic allowance of layout to just be allowed in the document itself.
It’s indisputable though that the modern BS of frontend tech is approaching an asymptote of ridiculous complexity. The divs go so deep that it is often pointless to even try to determine what’s going on from a web inspector. And I think the documents themselves are now less semantic than they ever were. Sure, tables were abused (to the extent they weren’t anything close to tabular data). But today every element you see being a layer of 37 divs and spans that don’t even function or in some cases even render without JavaScript getting involved… the web is now just basically a responsive version of PDF.
Did front-end dev (among other things) for half of the 2000s (and beyond) and heard plenty of arguments about semantic markup, flexible restyling, accessibility, separation of concerns, and more.
But not one about extra lines of code when it came to table layout.
And claiming non-table alternatives always needed polyfills and more code marks the real peoblem here: you had no idea what you’re talking about, and still don’t, but resent people who actually did invest in understanding the domain, who you dismiss by calling them ideologues, because approaching the topic with any kind of goals or principles beyond “just let me use the small toolset I know without thinking about anything else” was too demanding.
And I say that as a person who did a lot of table-layout markup too.
The argument was for markup to have semantic meaning, not number of lines. Also, NPM was not born for browser JS.
No, npm ultimately enabled the exact kind of accidental complexity I'm talking about where you need a massive node_modules folder and Babel just to generate client-side code
Table designs were kinda brilliant though, both in how easy they were to create[1], but also how easy they were to parse programatically or with a text-based browser. Given context of the table in front of you, you can generally piece together where on the screen the information goes without rendering anything.
You can generally do a lot of the same things with CSS grid layouts, but it's 100x more complicated, and the layout information is generally in the CSS file rather than the document itself making parsing the layout a Hard problem demanding the implementation of a partial CSS engine (and a sometimes JS engine too).
[1] A totally viable workflow was to draw your website in something like photoshop, cut boxes where the content would go, and then export it to an HTML table.
Re: photoshop html table export
Marketing email is still produced in this exact same way at some companies - ask me how I know!
(If anyone isn’t familiar with this, it’s because for security reasons we’ve all decided email should use an intentionally gimped de facto (non-)standard which only supports a few little dabs of CSS - 90% of email is formatted with strictly 90s technology.
And by “we” I mean that’s what Google and MS allow in their clients, so it’s very pointless to try to go beyond that given their combined usage share.
also how easy they were to parse programatically or with a text-based browser.
Or even a regular expression.
But what if Tony the Pony comes?
It became feasible to switch to CSS layouts for complex websites and apps in the early 00s. How early depended upon your target demographics and skill set. Lots of people who didn’t want to learn new ways of doing things carried on using table layouts long after browser support demanded it. I was using CSS sparingly from 1999 onwards and ditched table layouts in 2002, but I was ahead of the curve.
Same here, we resigned our site in early 2003 with CSS layout. Late adopters would snicker a bit back then, seeing it as chasing a fad or being too hipster.
Out of all similar situations, where I may have been an early adopter of a technology or method for reasons, using the web platform and following standards has probably been the one I least regret.
Still works fine for this site.
It worked for the most part.
Yes and no. ie6 couldn’t render anything near the full specification so tables and other tricks were used where css couldn’t cut it. I’d still that that over JavaScript “apps”
3 by 3 iframe layout with the center one displaying the actual content.
I interviewed someone once for a fullstack role, gave him a mockup of a screen we had to build and asked how he would do it, in short some things on top of other things. The only thing he managed to say was how he would divide everything into components. I thought man, so many devs don't even know how to use html/css anymore, but who's laughing now, you just need to prompt a coding agent.
Ha, and I flunked a "Fullstack Developer" interview some years ago because I didn't reach for npm or React to build a page that had a simple form to make a request to the backend.
Dodged a bullet.
Responsive design out of the box? Were you actually there? Back in 2000 you could make a career out of scripting browser polyfills or "DHTML".
Quite. Or differences in the box-model, appending weird symbols to CSS to target specific browsers, adding zoom:1, praying you didn’t have to support IE6….
That doesn't seem relevant to responsive design? HTML and CSS are definitely responsive out of the box, but OTOH I remember how many designers of that era thought responsiveness was a bug and asked devs to add width:920px to body...
CSS, especially the box model, was not consistent across browsers.
True. Does not prevent the design from being responsive. Even with no CSS at all a design is responsive unless you specifically choose to break that
Right but how would you even display a vertical menu back then? `float: left` was rather bad, so you went back to using tables[0]. Good luck making these responsive.
[0]: and to using dozens of images sliced to fit your table cells, for that cool hover effect as well as round corners. :-)
Why would documents have menus? Menus are for applications.
And there was nothing wrong with tables for layout, especially back then when the alternatives were very brittle.
> just plain HTML and some basic CSS, if at all any
I built my own website like this and I love it. Highly recommended.
I built a website the other month with just pure HTML. It seems even easier to maintain.
Yeah I’m with you. If the web was still html-driven more than JS-driven, you wouldn’t need to make your site “agent-ready”.
On the same topic, it’s hilarious how much everybody suddenly cares about ergonomics of non-browser software. I have used SO many APIs that are just miserably documented, but now they have magical MCPs!! Which seem like they’re basically well-documented APIs? And suddenly everything needs to have a decent CLI tool because that’s what LLMs are suited for.
Like dang y’all didn’t care when the API was frustrating for me to use!!
Honestly, the whole MCP thing has completely killed what little faith I had in commercial software development.
IE6 was early 2000s, I remember it not being so great. CSS was starting to be supported but it was a minefield of un-supported features.
It was bad enough I swore off front end work and made a pact with myself to focus only on backend or embedded, for my own mental health :-)
IE6 was the most popular browser still during like 2006-2010. There was a point when Opera, Firefox, Chrome were already a thing, and they supported proper standard CSS and HTML, but 90%+ of users still used IE6 and you had to use tricks to support both standard and IE6 fuckery.
I do miss those times.
I'm my school district growing up in the early '00s, every single computer had Netscape Navigator and that is what everyone used.
I was still supporting ie6 in at least 2014 for a couple of clients.
I miss those times, too, but not the IE6 bullshit.
There is a company that makes a plurality of government software that still used VBScript-based HTML pages that required IE7 compatibility mode for their court management software when I left a few years ago.
The cause is businesses are putting emphasis on showing their brand on the site. Every dropdown has to look and feel like their product.
In short almost everyone wants their website to be a video game.
Which brings up an interesting question about forced token consumption ... are "Easter Eggs" making a comeback?
I too want to go back to that, but I fear most consumers/potential visitors to your website have been conditioned to expect flashy web by this point and so it's a self reinforcing paradigm.
Nothing has changed. The "flashy web" of the 2000s was ... Flash. Corporates paid premium rates to Flash Designers who couldn't write a line of HTML.
Oh God I hated that. I'm not entirely sure why I hate it so much more than over-Javascripted sites. It feels even more alien.
I wonder, though, if there are those who notice a simple, comfortable page.
> A simple dropdown with a finite list? Has its own loader and makes 10 fetch requests for no reason. Not even exaggerating - look at Instagram and Facebook on web.
I’ve seen an address form with search dropdowns that were absolutely bonkers. First it loads the list of countries. You start typing and the list disappears – it sends the text to backend, which returns... exactly the same list. The filtering is then done on the frontend. (After you select the country, you can select the region and then the city, which, of course, work exactly the same.)
I miss the days of Flash. Not because I want to actually use it, but because it being an extension forced most websites to offer a basic HTML4 version as well as a fancy, more opaque Flash one. After the advent of HTML5 almost all websites feel like Flash on steroids. Ditto for the IE6 holdovers.
That was the exception, the norm was definitely just a page that said, "Your browser does not support flash"
I'm doing my part: https://rz01.org/handcrafted-html/
I like… great idea to start with the output of a SSG and then strip away the things you don’t want
I feel like this comment is channeling https://motherfuckingwebsite.com/
While I'm sure people here have seen these, might as well link the rest of them to set how this can be evolved while keeping it small.
- <http://bettermotherfuckingwebsite.com/> - <https://evenbettermotherfucking.website/> - <https://www.thegreatestmotherfucking.website/> - <https://perfectmotherfuckingwebsite.com/>
And there are probably even more.
<html><body bgcolor=“#FF0000”><blink><font size=“+3” color=“#0000FF”>Me too!</font></body></blink></html>
Is this tailwind?
> just plain HTML and some basic CSS
Or even better. XML + XLST.
True separation of representation and data.
Is thousands of nested <div> really a good idea?
yes. The moment when I see the interception of the scroll to show some overlay content. my brains either switching to admire the aesthetics or get's irritated by that. In the mean time I totally forgot the reason of this website visit.
The problem is smartphones.
You literally can't make a website from the 2000's nowadays, because that means you want a 800px fixed width layout or something of sort.
If you do that, your website will look absolutely gorgeous since the 800px width + precise pointer + hover requirement allows you to get rid of all unnecessary whitespace, explain the UI with tooltips, and guarantees you always have enough width for one sidebar, but it won't be responsive.
The real solution to the modern web is to destroy all mobile devices on the planet.
The css zengarden works fine on phones?
https://csszengarden.com/
Granted, then you're talking 2003.
That's called reader mode. You're standing next to a fresh water spring complaining that you are thirsty.