Hacker News new | ask | show | jobs
by neya 20 days ago
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)

21 comments

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.

> People have very selective memory

> Every other website requires Flash just to show you a carousel of images. "Serious" business websites implemented in slow, buggy Java applets. iframes everywhere.

Do you see the irony? This is a very selective example by itself. The table based minimal HTML + CSS websites existed throughout the decades (even so today) which is what I'm referring to specifically.

> No one cared about accessibility of anything.

I'm not dunking on your whole argument, but as for this specific point: as someone who finds the mouse difficult to use and requires the keyboard a lot, the web definitely used to be a lot more accessible in this regard. There's no keyboard navigability anymore. And it would be so simple, just put an accesskey attribute on your buttons and textboxes. Nobody does it, anywhere.

> There's no keyboard navigability anymore. And it would be so simple, just put an accesskey attribute on your buttons and textboxes. Nobody does it, anywhere.

Nobody added those attributes in the 90s/2000s either, it's just that desktop apps (like browsers) all implemented keyboard navigation properly by default.

The real loss here isn't html authors being too lazy to add the attribute, it's that our modern desktop environments/apps stopped implementing keyboard navigation as a default

Table-based layouts that loaded faster and rendered better than anything you see today, and even read better on actually existing screenreaders (who never got the memo that tables are supposed to be less accessible than CSS and changing <b> into <strong> should make your site more disability-friendly).
> Table-based layouts that loaded faster and rendered better than anything you see today

Not true.

You're referring to the mid-late 2000s. I'm talking about the early 2000s. You can hate Flash all you want, but for all the HTML5 hype we had back then, there isn't a single authoring tool today that's not even equivalent to the original Flash Studio (by Macromedia). It was the only tool in internet's entire history where both artists and programmers could work on together. Or sometimes even without each other.

What do you have now with all your fancy React and JS libraries that's pulled off something that Flash did?

Flash died because of the carcinogen that Adobe is. It could have been the future of HTML5 had they actually invested in it.

Look at the pathetic state of HTML5 today. What tool should a non-coder use to output something you could do with keyframes on Flash studio in 5 minutes in the 2000s? There's absolutely nothing quite the equivalent of Flash. You need to write 100+ lines of code to get something decent out of HTML5 that involves animation. There are paid niche tools, but nothing at the scale of what Flash pulled off.

You're not talking about the web, you're talking about authoring tools. There are (or were) plenty of modern Flash successors; it's just that most people don't use them when you can open a game engine and target the web that way.

> You're referring to the mid-late 2000s

Things like hidden iframe hacks to load JavaScript were a thing as far back as the late 90s, and table layouts have existed as long as HTML tables have.

Tangential but I remember Flash being killed by Steve Jobs and then smartphones in general. The iPhone’s battery couldn’t handle it or in any case he didn’t want to support it. I remember Flash being so prominent when iPhone 1 came out that the decision not to support it was shocking.
> The iPhone’s battery couldn’t handle it or in any case he didn’t want to support it

Very much the latter. Apple didn't want to give Adobe control of a big part of their new ecosystem - and they were already at loggerheads over Apple shipping native PDF capabilities in OSX

I was also a time of web standards movement, birth of the Phoenix/Firefox, time of CSS ZenGarden. Beautiful time.
Every time is a beautiful time and a terrible time; it's just a matter of framing. I just don't think it's correct to point to the 2000s as some kind of golden age of amazing web design and tech.
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.

View Source on any major modern website and many (most?) others is useless. You get 15 lines with some cryptic webpacked JS references.

It must be that we now have a new generation of devs that have no experience with the beauty of the original web where others’ pages were legible and you could as a human easily read and learn from their source. I’m not saying there are 0 tradeoffs but there’s definitely a loss there.

My first time wading into web development was hopping into the source of the MSN.com homepage circa 2000 to see how their DHTML menu rollovers worked, and then stealing it. It was mostly CSS, but to support some browsers they had JS assist with what's being moused over.

That kind of thing is utterly impossible to replicate with a modern frontend build -- all the classes are generated by styled components and all the behaviors are attached with React or Angular. Best you could hope for is to find some telltale attribute that points you toward an open-source library. Or, hope they left their sourcemaps on.

True. We have a product website (1) built entirely with tables and HTML 4.01 (2) in 2026. Works as expected everywhere.

1. https://www.tirreno.com

2. https://validator.w3.org/check?uri=https://www.tirreno.com/&...

Loads super fast and scrolls easy. On mobile, my one complaint is that the menu items (top bar, footer) are quite small.
I mean, it doesn't even render properly on my default samsung android phone...
Thanks! You probably mean page zoom-out on Android because of the viewport. Should work now.
Yeah, works now
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
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 doesn’t sound like an accurate reflection of the time either. It sounds more like resentment of people who actually did invest in understanding of the domain because they might not just let you use the small toolset you knew without thinking about anything else.

And I say that as a person who did a lot of table-layout markup too.

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.
And today tailwindcss misuses the class attribute to add a gazillion classes that make your eyes bleed. By the time you reach the end of the list, you have grown a beard.
It worked for the most part.
3 by 3 iframe layout with the center one displaying the actual content.
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”
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.

The idea that 00s websites were responsive is laughable. Websites used to tell you they are designed for resolutions 1024x768 and above, because they hardcoded the size and position and everything and the moment you sizes your browser window down a horizontal scroll bar appears, or worse. Say what you want about modern web practices but responsibility is only getting better, not worse.
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.

But CSS can easily restyle every baseline HTML element. Making the web page look like the product is not only entirely possible without having to layer a framework on top, it's likely often easier and faster to implement than layering a framework on top.
I heard dropdowns and certain some other elements are notoriously difficult to style. People resorting to tricks and js to handle their visuals. And it seems to be enough hassle to deem HTML+CSS a non-solution for some folks.
Which brings up an interesting question about forced token consumption ... are "Easter Eggs" making a comeback?
> 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.
First version of my website was pure HTML but that got unwieldly fast. I've been maintaining my own fork of the old pug/jade templating engine instead. It's essentially pure HTML but with no closing tags and with features to reduce repetition. I've been enjoying it a lot.
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.
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"
> 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 like… great idea to start with the output of a SSG and then strip away the things you don’t want
Today you open any website. Everything is a fucking component.

We were doing the same things back then but with some nasty hacks to get things to work across different browsers. There's a reason why jQuery (released 2006) blew up, and plugin ecosystem was huge.

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.

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.

https://neocities.org/ is exactly what you are asking for!
> 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?

<html><body bgcolor=“#FF0000”><blink><font size=“+3” color=“#0000FF”>Me too!</font></body></blink></html>
Is this tailwind?
The simple fix of the modern web is simple: no JavaScript. Enforce it as a security measure or whatever, but scripting is what is making the web worse.
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.
That's called reader mode. You're standing next to a fresh water spring complaining that you are thirsty.