return to table of content

Only 90s Web Developers Remember This (2014)

conradfr
49 replies
9h29m

To this day it is the only way to vertically center elements.

Not true anymore (edit: didn't see the 2014) but the productivity cost of not being able to just "vertical-align: middle;" inside divs for the last 30 years must be billions of dollars.

Also does anyone remember the fade of the overline style on :hover links? It must has been around the IE4 or IE6 era.

Tables were also used to make divs and buttons with rounded corners, but that was true into the 2000s as well. The agony of designing and splicing them in Photoshop and putting them in table cells...

thrdbndndn
11 replies
8h58m

Nowadays I just ask ChatGPT to write the CSS for me for that, and amusingly, it seems to be able to produce at least a dozen of solutions (often came with redundant rules, too: like having 5+ rules when 2 or 3 of them are enough).

It's hilariously stupid.

rekoil
4 replies
8h39m

It's hilariously stupid.

No no, it's going to take our jobs!

/s

zelphirkalt
2 replies
6h43m

You joke, but I am pretty sure, that in some heads that idea is already spinning. When can they hire fewer people and make those fewer people simply use ChatGPT or some other model. We might see an even further decline in web quality as a result, as we get even more copy&paste devs.

rekoil
0 replies
4h26m

Great for me, I work in IT security, and that's gonna tank even harder if people start seriously using ChatGPT in the manner you describe!

mleo
0 replies
4h25m

Increased productivity and doing certain tasks in less time or with less people has been going on forever and certainly last 30 years in web development. The growing businesses use the extra capacity to expand in other directions whether new products or new features. The stagnant companies continue to struggle with less.

digging
0 replies
1h20m

No, but the next breakthrough might...

Why do so many hackers have so much difficulty seeing that the current state of public LLMs is not the pinnacle of AI technology? Nobody ever even claimed that they were.

Sharlin
3 replies
8h35m

That's not stupid, it's just redundancy to make sure it works on all browsers!

curtisblaine
1 replies
5h28m

Not sure of sarcastic or not, but prefixed rules (per-browser prefixes) are a thing of the past in modern evergreen browsers.

Sharlin
0 replies
2h6m

Ironic. But I was not really talking per-browser prefixes, those are newfangled 2010s stuff. I'm talking way back in the day, when different browsers (well, mostly IE) sometimes had completely different ways of achieving something, in some cases requiring ~~unthinkable hacks~~clever and elegant solutions to avoid interference.

zelphirkalt
0 replies
6h36m

Oh wait, we better make it work in IE6!

How much we were held back by backward compatibility before useful standards for things came ... But nowadays I just ignore non-standard styling. Just use the standard, because support is sufficient and browsers not supporting the standard sufficiently to make the website unusable are rare. By using the standard one also gives their developers a set target to get implemented.

layer8
0 replies
5h14m

It’s just applying proper separation of concerns. ;)

jeffkeen
0 replies
4h52m

Bless its heart for being so dang confident about every wrong answer it has.

flir
6 replies
7h4m

The agony of designing and splicing them in Photoshop and putting them in table cells...

Wasn't there a Photoshop-adjacent tool that did the slicing for you? I remember a print designer on my first job feeding what was, essentially, a full-bleed leaflet design through it, and producing a "landing page" with hundreds of table cells.

whizzter
1 replies
6h57m

Adobe Imageready , was capable of visually making image-maps (you added links to sections of an image) and also had tools to create Gif animations (later embedded into Photoshop proper).

A page I have for one community project still uses those Imageready generated maps :)

flir
0 replies
6h45m

That's the puppy! Thanks!

tracker1
0 replies
3h47m

I worked with a PS wizard around 98 that was able to do that... Had to do a complicated rollover trail with a 15x9 grid of category images.

She was great to work with.

pimlottc
0 replies
2h25m

Eventually, but not originally. The first designers who knew how to do it manually were basically considered to be wizards.

jon-wood
0 replies
6h8m

Photoshop itself would let you slice an image into sections and then export them as separate images.

function_seven
0 replies
7h0m

Macromedia Fireworks?

I think that’s what you’re remembering.

https://en.m.wikipedia.org/wiki/Adobe_Fireworks

consp
6 replies
6h45m

Tables were also used to make divs and buttons with rounded corners, but that was true into the 2000s as well. The agony of designing and splicing them in Photoshop and putting them in table cells...

Wasn't an image with a click <map> easier? I wasn't old enough to write very complicated html pages so my experience is lacking here.

zelphirkalt
0 replies
6h39m

But a single image does not stretch the correct way, when you have a bigger button to make. Like:

    left-top corner: no stretch
    left: stretch vertically
    top: stretch horizontally
    ...
and so on.

I still remember learning to make the layout of a whole page as a table layout in school, with images in table cells for drawing nice borders around sections of the website. And we did that with GIMP!

tracker1
0 replies
3h50m

Depends. I'm the dialup days,. Cutting up an image and having it in a table could let you optimize each fragment as a gif with more limited pallet. So it would look better and be smaller. Especially with rollover image replacement.

I kind of wish that attention to detail for payload size was more common today.

smoe
0 replies
3h42m

From vague memory, images of buttons were indeed used, but tables or other tricks were necessary to dynamically adjust container size to its contents, e.g., for internationalization.

monkeynotes
0 replies
2h3m

Some websites did do this. But adding actual text that can be indexed by Ask Jeeves doesn't work with this solution.

Macromedia had this crazy system where you could slice your art up in Fireworks, and then ask it to generate the HTML and Javascript, then you could fine-tune it in Dreamweaver.

It was a mess.

madaxe_again
0 replies
4h5m

You could make a fantastic looking website with use of imagemaps and judicious use of hover image replacement. Glowing buttons, drop shadows, you name it.

anentropic
0 replies
3h0m

Wasn't an image with a click <map> easier

it's solving a different problem

it's referring to using a 9-cell table to make an element where the corner sizes stay static, while the middle column and middle row stretch horizontally and vertically respectively to match the size of the central cell (which e.g. has variable length text)

then with background image tiling in the left/right and top/bottom middle cells you can get an effect like a drop-shadowed panel that sizes responsively

you'd probably set the flexible cells to width=100% and then have a 1-pixel gif in the edge cells to enforce the desired min-width

I was sad the article didn't mention anything about the 216-colour "web safe" palette, but perhaps the author wasn't old enough to remember having to support users with < 24-bit colour displays... or when 1024x768 took over from 640x480 as the min screen size, allowing use of fixed-width layouts >600 pixels (the max possible: 640, minus browser default page margin, minus scroll bar)...

davedx
4 replies
7h26m

It's still a huge PITA and requires all sorts of subtle understandings. Even in tailwindcss it's not simple, you need to think about what kind of element is it (block or not), is it text or not, what layout is on the parent, yada yada yada.

plagiarist
3 replies
4h28m

Here's a puzzle I had from the olden days: how do you do webpages with header and footer such that the footer is always at least as far down as the window height, but if the content is less than enough to push the footer below the fold it should be centered.

I remember that being far harder than it needed to be. I was a child though so maybe I just didn't get CSS well enough.

logicprog
1 replies
3h41m

In modern CSS I'd try this: make a super element around the header and content, set the min-height of that to 100vh, and the display to flexbox, with flex-flow: column nowrap; and then align-items: center;

MalcolmDwyer
0 replies
28m

But watch out for 100vh on mobile. It doesn't account for the sometimes there, sometimes not there address bar.

To solve that, there's svh (small), lvh (large), and dvh (dynamic).

If you want to make a div stretch to the height of the window, so that something can appear exactly at the bottom before scrolling,

{ height: 100vh; height: 100svh; }

works best... the first line is there as a fallback for the few browsers that don't yet support svh... and if svh is supported it will replace the first line.

tracker1
0 replies
3h53m

Really wasnt a great experience... You could do similar with tables, everything was tables. But you had to keep your open and close in check across the page. Templating frameworks were less flexible earlier on. Sucked when say a large corporate team did headers and footers separate from your app team.

Flexbox today is better IMO.

Izkata
4 replies
5h49m

> To this day it is the only way to vertically center elements.

Not true anymore (edit: didn't see the 2014) but the productivity cost of not being able to just "vertical-align: middle;" inside divs for the last 30 years must be billions of dollars.

Even back then (possibly even back in the 90s? I know this existed in the 2000s) we had "VALIGN=MIDDLE" inside table cells.

deaddodo
3 replies
5h44m

Right, people seem to forget that table-based designs ruled the roost in the 90s and early 00s.

All of the vertical align, layering, etc hacks came from people not wanting to use tables anymore and divs (and other block elements) finally becoming more usable. Those hacks were the growing pains of an entire shift in paradigm.

arethuza
1 replies
2h24m

"table-based designs ruled the roost in the 90s and early 00s"

Have you checked how HN does layout?

deaddodo
0 replies
35m

No longer being preeminent doesn't mean non-existent.

ssharp
0 replies
32m

Tables made much more intuitive sense than something like flexbox now but that came at the expense of being a nightmare to maintain.

Trying to hack a table layout together often led to frequent edits and initial attempts to maintain clean layout comments ended. You're left with never ending <tr><td><tr><td><tr><td> that you hopefully at least indented to maintain sanity. But god help you if your stumbled into another person's table layout code...

Spending time just entering "here", saving the file, and seeing where the "here" shows up. By the time 5pm rolled around "here" often turned into something like "ass" or "fuck", or if it's really bad "fuck you". IYKYK

cqqxo4zV46cp
2 replies
7h49m

I think I saw something about being able to directly center block elements just come down the pike.

rezonant
1 replies
6h47m

Yeah, it turns out vertical align works differently in tables, so you can just make a one cell table and vertical center all day.

I think there was a Chrome developers blog post about it recently.

tracker1
0 replies
3h45m

Until you had a few hundred tables in a complex page and IE6 just renders a blank screen.

Don't miss those days.

Vespasian
2 replies
8h6m

(2014)

so while "technically" flex was available at the time it wasn't really widespread yet.

spacecadet
0 replies
6h52m

The place I was at in 2014 started replacing code with flex around 2014 and it was welcomed!

conradfr
0 replies
7h46m

I missed the (2014), not sure it was there initially (but it was in the article anyway).

spacecadet
1 replies
6h54m

oooh god please no photoshop splices. PTSD.

neonnoodle
0 replies
6h36m

.ptsd files

chasd00
1 replies
5h16m

Tables were also used to make divs and buttons with rounded corners,

i remember when that was all the rage. So much time spent on freaking corners...

sroussey
0 replies
2h34m

On *rounded* corners. :)

rzzzt
0 replies
8h15m

Macromedia Fireworks will slice it for you.

aimor
0 replies
1h56m

This week I ran into a problem with vertical centering I couldn't figure out: Text in a flex item with overflow ellipses and vertical centering. Other people online have shared solutions that did not work for me, but I've since convinced myself it looks better as-is. Billions of dollar is not an exaggeration.

Andrex
0 replies
4h37m

not being able to just "vertical-align: middle;" inside divs for the last 30 years must be billions of dollars.

One of my favorite CSS hacks, it doesn't always work in every single situation though...

div { display: table-cell; vertical-align: middle; }

Feels dirty at first but separation of concerns is still enforced, and I can't see any other downsides.

CM30
28 replies
9h0m

Let's not forget frames, the original 'solution' to the problem of having to edit the navigation bar on every page.

Unfortunately, you then had to figure out what to do if someone accessed the frame page directly, since search engines could still index these parts of the page seperately. And they always felt jarring and awkward too, since the cutoff between sections was always obvious...

steve1977
6 replies
8h38m

since the cutoff between sections was always obvious...

and not exactly the same across different browsers.

Yes kids, there was a time when not everybody was using the same browser.

ReleaseCandidat
5 replies
8h8m

Well, actually, there was only a short time, when more than one had been widely used. Something like Mosaic - Netscape - IE - Mozilla/Firefox/The Browser Now Known As Vivaldi/... - Chrome

steve1977
4 replies
7h47m

I seem to remember Netscape and IE having had similar market shares for a while at that time (the infamous first browser war), but my memories might be distorted to be honest.

flir
2 replies
6h48m

Netscape was the only game in town at one point. From memory, the three big transitions have been Mosaic > Navigator > IE > Chrome.

Here's hoping for another one, just to keep them on their toes.

rezonant
1 replies
6h40m

Just before Chrome, Firefox was quite popular, at least among the terminally online. But it wasn't enough to take the crown iirc.

Izkata
0 replies
5h17m

I think I remember Firefox topping out around 30% just before Chrome was released.

tracker1
0 replies
3h36m

They did, even worse, there was a time when both Netscape and IE were common. But also multiple versions with incompatible rendering and features.

thriftwy
4 replies
8h36m

That and also tables (with invisible borders), which was the content positioning before CSS tool of choice and went way into the 2010s.

throwaway744678
3 replies
8h20m

and went way into the 2010s.

Unfortunately, it is still used for html formatted emails

rezonant
1 replies
6h38m

This continually blows my mind. Even Gmail is this way. If they just put a flex box in there it'd be mostly fine.

CM30
0 replies
4h23m

If I had to hazard a guess, it'd be that HTML email is probably one of the lowest priority things on the roadmap over at Google or Microsoft. The vast majority of regular folks sending emails send mostly plain text, and even many company sent emails also on the basic side (though with these limitations, it's probably self reinforcing there).

Add this how more complex emails could potentially lead to security issues for their webmail clients and waht not...

And well, "eh, good enough" is probably the order of the day.

cqqxo4zV46cp
0 replies
7h47m

Yeah. If you ever want to feel nostalgic about old-school web development, go build an email template.

europeanNyan
4 replies
8h11m

Frames are still used as underlying microfrontend technology with surprising success. Theory available at https://martinfowler.com/articles/micro-frontends.html#Run-t... and an implementation at https://luigi-project.io.

rezonant
3 replies
6h44m

That's iframes. There is an older, even more archaic spell that lets you do iframes, but not inline. Those are, as we all know, superior.

susam
2 replies
6h35m

Yes! Those were made with the now obsolete <frameset> tag. An example here: https://www.quackit.com/html/html_4/tags/html_frameset_tag.c...

In fact, I used them too around 2001 or so for my website when I did not enough programming/scripting to add a common layout to all content pages. That's how I originally implemented a two column layout: a narrow frame on the left for navigation links and a wide one on the right for content. I don't do it anymore, of course. I do know how to program now and generate my HTML website using a tiny Common Lisp program that adds common headers and footers to all my web pages.

rezonant
1 replies
6h17m

We've come so far. Using a language from the 60s to write markup in a language from the 90s all so we can feel good by avoiding writing imperative code in another language from the 90s.

Seriously though, why can HTML not have a client side include?

lelanthran
0 replies
4h9m

Thankfully you can do it now in a custom elements. I used one, I assumed everybody else would have one by now, too

jon-wood
2 replies
6h7m

The real pros used server side includes, where you could drop specially formed comments into your HTML which then be processed by Apache and replaced with the content of another file before being sent on to the client.

donatj
1 replies
5h18m

Frames lead me to IIS SSI’s which lead me to PHP 3 which kicked off my entire career.

jon-wood
0 replies
4h59m

Likewise, I think its under appreciated just how many people got their start in this industry through tinkering with things because they seemed interesting.

DecoySalamander
1 replies
6h30m

There has also been the reverse problem of someone embedding your entire site in their frames to place ads on top of your content.

joquarky
0 replies
1h20m

We called those "para sites"

Brajeshwar
1 replies
8h39m

If you are being framed by other websites, you deploy your 'frame-buster' script. If your page is orphaned without your own frames, then you summon your 'frame-joiner' script.

rezonant
0 replies
6h42m

And if you mess up the domain detection, it just navigates perpetually between the two.

wharvle
0 replies
2h26m

A comically large proportion of “AJAX”-type use of JavaScript could just be frames and probably perform better, if frames had evolved a bit rather than remaining stagnant.

Fix that and give us HTML tables with basic features built-in and datasource-backed tables + list views back in the mid ‘00s and mind-boggling amounts of time and money could have been saved.

Instead, none of that happened, and it still hasn’t.

Don’t even get me started on how much money could have been saved if the Web had adopted payment standards so that the browser itself could handle payment input.

tracker1
0 replies
3h41m

LoL... I used 1px frames to post to for sending data to/from the server..

window.top.callbacks[number]("serializedData™)

In the latter 90s. Would also client render navigation frames at the time. Wicked fast compared to most web apps at the time.

brnt
0 replies
1h10m

216 web safe colors anyone?

Sharlin
0 replies
8h39m

Not just that, but also the solution for having the navigation (and ads! can't forget the ads!) stay on the screen when you scroll down…

ahmedfromtunis
18 replies
9h11m

I miss MS FrontPage!

I remember how shocked my friends looked whenever they came by and saw it open on my screen. They never understood why I spend hours on that thing instead of just playing games.

The first time I thought about learning to code was when I visited Linkin Park's website. Sure, it took 10 long minutes to load but it was a masterpiece of its own.

I'd just open the website and stare at it. And one day I just decided that I'm going to make one myself. I'm trying still...

_kb
3 replies
6h26m

FrontPage was good and all, but you can pry Macromedia Dreamweaver from my cold dead hands.

throwaway167
0 replies
6h1m

Dreamweaver 3. It was downhill from 4.

madaxe_again
0 replies
4h0m

The PHP code generation it did was hilarious - I remember my designer partner trying to make a dynamic form, and it ended up with 1400 lines of code where 14 would have done.

andruby
0 replies
5h47m

Dreamweaver was glorious and the tool that introduced me to html.

CM30
3 replies
9h3m

I remember using FrontPage quite a bit too. It had some... interesting quirks when it came to outputting HTML, but it seemed fine enough for me at the time.

Which also reminds me; did anyone actually use the FrontPage Server Extensions they had for it? I remember the tool having a bunch of dynamic features like counters and guestbooks that relied on them being installed, and web hosts sometimes having these extensions listed in their features, but I never saw any sites actually using them.

cqqxo4zV46cp
1 replies
7h43m

I was thinking this exact thing just the other day, as in, within the last week.

rezonant
0 replies
6h26m

It's the nerd's roman empire. I thought about it this morning.

ahmedfromtunis
0 replies
8h2m

I remember adding counters to the bottom of my websites in FP, but not sure what technology I was using. Fun times indeed!

8organicbits
2 replies
9h5m

Archive.org has some old copies, maybe you remember this one? Still loads slowly :)

https://web.archive.org/web/20011202145112/http://linkinpark...

ahmedfromtunis
1 replies
8h3m

No, it was from around the launch of meteora iirc.

I tried to look it up, but the only copy that have a bearing resemblance to what I remember doesn't load very well as many files seem to be missing. And, the snapshots after that one just keep returning a 302 error :/

rezonant
0 replies
6h24m

Meteora is such a great album. I got the special edition on CD back in the day, the album art is fantastic.

rezonant
1 replies
6h32m

I'm trying still...

Don't worry, you got this. Web development has become a lot simpler since then, after all.

sysoleg
0 replies
24m

Easier, yes, but not simpler.

ahmedfromtunis
1 replies
8h30m

I also remember finding out about scripting with either VBScript or JScript (which was different from JavaScript).

Shortly after, I discovered that there's a function capable of listing folders and files from the visitor's hard drive. No permissions needed. The browser just had full access to the hard drive.

Naturally, I wrote a script and loaded it on the homepage of my website. The goal was to save, on a file, the contents of visitors hard drives' contents.

For some reason that never worked. But yeah, the internet back then was a very scary place.

rezonant
0 replies
6h27m

JScript (which was different from JavaScript).

It was just Microsoft's name for JavaScript because they didn't want to deal with Sun's trademark, but they did add a sprinkle of their own extra stuff in there without talking to any other implementers about it. That was par for the course for Microsoft of the day though.

Franzeus
1 replies
7h58m

I used FrontPage to teach myself how to create websites (if you could call it that). I placed elements in the WYSIWYG editor and then looked at the code which elements etc were produced. Such an amazing time.

rezonant
0 replies
6h22m

Nowadays you can just get half correct tutorials from W3 schools written in an extremely authoritative tone.

Or have ChatGPT give you the same quality of learning, and with the same authoritative tone.

autoexec
0 replies
7h34m

Frontpage was notoriously horrible. It'd make pages that usually looked the way people wanted them to, but the source was a total mess. It was full of redundant and unnecessary tags. You could spend ages cleaning up HTML written in frontpage but if you put in the work you could decrease pageload times and file sizes significantly. Personally, I avoided it at all costs and stuck to text editors. Frontpage was so terrible that it made me resist using Dreamweaver at first out of fear that it'd be just as bad.

xnorswap
15 replies
9h41m

DHTML, which stands for “distributed HTML”

Is this a joke I don't understand?

metaxy2
5 replies
9h28m

It's almost certainly a joke but not obvious exactly what the joke is. What it actually stood for (in case you don't know) is "Dynamic HTML." My guess is that he's drawing a parallel with "distributed" as a modern day buzzword that's used in so many ways it's almost meaningless, but attracts attention and money almost automatically (other modern-day buzzwords like this include "blockchain," although that's fading, and "AI").

Incidentally, nowadays we never refer to DHTML because probably over 99.9% of pages use at least some JavaScript and CSS, so it's redundant to even mention them; you just say "front-end development."

kevindamm
3 replies
9h8m

At the time it was more about being able to load more content without having to do a whole-page fetch.

This was around when XHR first debuted and devs could stop relying on hacks or Flash to do it.

JimDabell
1 replies
6h0m

DHTML was long before XHR; the term was more or less already out of fashion by the time XHR came along.

DHTML was used for situations like when you had hierarchical selects where the contents of the second select depended upon what you picked for the first select. All the code and data was delivered up front with the page load; you didn’t go back to the server for it with XHR.

kevindamm
0 replies
5h33m

That's right, I think I let the concepts overlap in my head a bit. Back then I was mostly doing game dev for PCs and some backend work. I remember pre-web 2.0 (loading a whole new page just to see the next tile over on MapQuest or Yahoo!Maps was.. annoying) but my just-waking mind probably confused dynamic to also mean dynamically-loaded. I shouldn't jump on HN before getting out of bed. I would delete my GP comment if I could.

The ability to pull down new results and load them was largely enabled by DHTML, though, because you still need a way to update the page with the new data. But now that I'm more awake I agree DHTML and the unrelated web2.0 features are different things.

metaxy2
0 replies
8h48m

I remember it taking a few years between DHTML becoming a buzzword and XHR becoming popular. XHR was slept on for a while even though it was available in all major browsers by the early 2000's. Back when we were calling things "DHTML," updates originating from the server typically would happen by refreshing the whole page, or sometimes an IFRAME if you wanted to get fancy [1]. Once XHR finally started to get popular is when people started talking about "Web 2.0" in the mid 2000s.

I heard that someone did a talk on why it took so long for the Web 2.0 phenomenon to happen even though the technologies were available for several years before. Can't remember who.

A little known fact is that even streaming updates (e.g. for live chat) were actually not that hard to implement on the front end going back to the original days of XHR, via "long polling" (basically starting a new XHR request that you held open until the next piece of info comes in) though it took until well into the Web 2.0 era for that to be common. The problem was actually on the server side; to cope with long polling, the server would have to keep a long-running thread (and in the case of CGI, a whole process!) for each of those open requests and the servers would get overloaded. Nowadays of course servers have much better hardware, and we have technologies like nginx that can handle huge amounts of connections in one thread.

In principle you could build almost everything in the modern day front page of Facebook or Google results page with the tools we had in 2001, front-end wise, but the servers couldn't handle long polling for the streaming updated needed for things like the Facebook chat. Also the pages are so complex that it would be easy to get yourself tied in knots without modern conveniences like CSS frameworks (or even resets!)

[1] https://en.wikipedia.org/wiki/Dynamic_HTML

xnorswap
0 replies
8h58m

It's almost certainly a joke but not obvious exactly what the joke is.

That's the conclusion I've come to from all the responses. (Thanks everyone.)

The reason I asked is because I remember web development in the 90's, and the article while irreverent in tone misses the mark for me.

I think it's aiming for "The Register" style irreverence but their style is to have a cynical mocking and sarcastic tone while still being factually accurate, while this article changes facts in a way that feels like a joke, but stops short of actually making the joke or point it wants to make.

It's as if "This joke is left as an Exercise to the reader". Given the range of different explanations of "the joke" that have followed, I've come to the conclusion that the author has nailed the tone of being funny while not actually being funny.

frereubu
3 replies
9h36m

Yeah, I think there's some deliberate mistakes in there for understated comic effect - e.g. "To this day [1x1.gif] is the only way to vertically center elements."

The joke (at least the DHTML one) is probably that only people who were developers then will know that's wrong. (Or I suppose this could have been written by someone who wasn't around at that time and this is a bit of faux nostalgia!)

metaxy2
1 replies
9h17m

I think the joke about it being "the only way to vertically center elements" is just referring to the fact that it's still kind of hard to do vertical centering and there's still no definitive, easy solution after 27 years of CSS. (It's now doable with Flexbox or CSS Grid as well as more obscure hacks, but it's still more fiddly than it should be.) Could be wrong, though.

Edit: I think thejohnconway has the answer [1]: the post was written before the Flexbox stuff for vertical centering was widely supported.

There were still less nasty options than 1x1 GIFs available, like "display: table-cell", so it's still very likely a joke.

[1] https://news.ycombinator.com/item?id=39127936

neurostimulant
0 replies
8h39m

I still need to consult a cheatsheet from time to time when working with flex.

thejohnconway
0 replies
8h23m

The Flexbox stuff that allows vertical alignment wasn’t widely supported until 2015, a year after this was written.

oleganza
0 replies
9h38m

For me personally this is a nice bit of absurdist humour that so few people cherish lately.

mauricioc
0 replies
9h22m

The whole page is tongue-in-cheek. In the '90s, <blink> was only supported by Netscape while <marquee> was only supported by Internet Explorer, so combining the two didn't make a lot of sense. Mozilla only added <marquee> support in 2002: https://bugzilla.mozilla.org/show_bug.cgi?id=156979.

bandyaboot
0 replies
1h18m

DHTML, which absolutely stands for “distributed HTML” because that’s the name and this isn’t obvious bait for the no fun crowd at Hacker News…

I’m confused by this discussion…was the above quoted bit added later or something? Because as it stands, it seems pretty clear that making this very discussion happen is the punchline.

Scotrix
0 replies
9h16m

I guess the joke here is that you used to do really a lot of in-line JavaScript in HTML, there was even a time during high latency where it was better to use inline JavaScript than JavaScript imports (<script src>) for faster rendering times (you usually just had 2 concurrent connections with high latency and low bandwidth). So “distributing” your JavaScript in a single HTML all over the place was the way and fail to go :-)

Klonoar
0 replies
9h34m

It's just poking fun at the overall dumb acronym.

trojan13
9 replies
9h28m

Ah, the 90s - a time when <table> was the answer to every web layout question. Miss aligning your text? <table>. Need a fancy menu? <table>. Creating a full website? Nested <table>s! Who needed CSS when you had rows and cells to hack your way through design? Good old days of <td>-ing everything!

cyberax
2 replies
9h13m

I still love tables. They are so awesome for dynamic design. The support column and row spans, alignment, weights.

And CSS is still way more complicated than good old tables.

toyg
1 replies
8h42m

That's because Tables actually map to how digital imaging works: dividing an area into little squares and deciding what to show in it. The screen does it, the driver does it, the window manager does it, the desktop primitives do it... and then you get to the browser screen, and suddenly you have to figure out a byzantine system of self-mutating shapes.

I was an early CSS supporter but man, didn't the boffins screw up that one.

mmcgaha
0 replies
7h44m

Exactly and this is why CSS grid has changed my life. CSS grid is tables on Wheaties.

arkh
1 replies
9h13m

And now we get some more semantically correct way to do it.

<div class="row"><div class="col">

cqqxo4zV46cp
0 replies
7h44m

Hang on. Those don’t look like auto-generated React classes!

unsupp0rted
0 replies
9h27m

Still true for email layout in 2024

cstuder
0 replies
9h26m

But don't forget that you'll have to add the `<font>` tag in _every single cell_.

andruby
0 replies
5h50m

It was all TDD back then. TD-Driven design.

DonHopkins
0 replies
8h41m

<table> was the Robitussin of the web.

https://www.youtube.com/watch?v=BvyHEijg59A

donatj
9 replies
5h21m

DHTML, which stands for “distributed HTML”

Sites like Dynamic Drive meant that instead of thinking through creative solutions for problems you face, you could just copy and paste this 50 line block of code and everything would be fixed.

DHTML in this context stood for Dynamic HTML, not “distributed”, hence the Dynamic of Dynamic Drive.

balls187
1 replies
40m

DHTML, which absolutely stands for “distributed HTML” because that’s the name and this isn’t obvious bait for the no fun crowd at Hacker News

That was meant as a joke, which you misquoted.

Edit to add: others made the same misquote, so I wonder if the author cheekily edited it recently.

LVB
0 replies
26m
xnorswap
0 replies
5h9m

Discussed down-thread: https://news.ycombinator.com/item?id=39127528

Conclusion was that it's a joke, but not a good one.

layer8
0 replies
5h16m

I was wondering if this was meant to allude to the “you could just copy and paste” a bit further down. And maybe a riff on DCOM.

gscott
0 replies
42m

Coping scripts from Dynamic Drive made people think I was some sort of Web God.

blantonl
0 replies
4h58m

"Technology of Terror" as the description still stands though with no rebuttal.

beauzero
0 replies
2h7m

A person I know won a Microsoft contest when this was first announced and rolled out. Here's to you Scotty. A very smart person at a company full of them in the late 90's. I was one of the dumbest around in a place packed with talent. Never worked at a place as smart since.

TravisCooper
0 replies
3h22m

So, so much time spent on DynamicDrive. It was the future. Thanks for the reminder!

SpaceNoodled
0 replies
1h11m

Wow, he really did find the No Fun Crowd here.

somat
8 replies
3h24m

The server side image map.

True story. I am the worlds worst web programmer, that is I am not a web programmer, I am a sys-admin that occasionally makes web based tooling. And as such my web skills are stuck in the early 2000's. On top of that I have this terrible aversion to javascript(I am already writing a code generator in one language to create a second language, now you want me to throw a third language on top of that... no thanks). On one of my recent tools I needed to do some basic operations involving points on a picture. it probably would have been 5 lines of javascript, the only 5 lines of javascript in the whole infernal thing. No thanks, I won't be having any of that in my program, I am going with server side image maps... in 2023... yeah. So now instead of 5 lines of JS I now have 50 lines of python managing state and a special case in the request handler to handle the screwball fragment syntax.

I cringe a little, but am also strangely enough, a little proud of getting the thing to work at all.

dylan604
1 replies
2h5m

good gawd! you could do the same with some CSS with absolute positioned hot spots. i can think of plenty of other CSS ideas to make it responsive. not one line of JS required.

i get it. i hate being in charge of UI. i'm a backend type through and through. however, i do have to do it much more regularly than you. i refuse to use libraries. so i've kept up with the changes to CSS since the early 2000s, and you can do some amazing things with it. i think it fits your "get off my lawn" style and can't recommend enough teaching an old dog new CSS tricks.

Edit: left out enough which is totally the opposite of intended point

somat
0 replies
1h11m

If it were anything other than tagging features in a picture I probably could and would have.

Magodo
1 replies
3h6m

only 5 lines of javascript in the whole infernal thing. No thanks, I won't be having any of that in my program

I feel exactly the same way. HTMX is a godsend. That and a Tailwind UI purchase can make anybody very dangerous at frontend. I'm curious for other viewpoints though: what exactly about js gives that icky feeling. For me it's just the inconsistent syntax. With TS, on the other hand just seeing a node modules folder makes me nauseous. The whole thing gives me a feeling of a lack of control over what's happening and has thrown me off front end for many years until now

somat
0 replies
2h25m

Sure the language is a little iffy, but as someone who enjoys shell scripting I have used worse. I think what I don't like is managing the logic two steps removed from where it is used.

I tend to write my web apps in what is referred to today as server side rendered(Which sounds stupid to me, I am not rendering anything, I am outputting html for the html terminal to render) as such, all my logic is on one end, and mixing in logic, in a different language, for the other end feels really ugly.

I have recently tried to be a better person and get more comfortable with javascript. What I have found that works is to completely invert the logic dynamics, give the browser a single static page that has nothing in it. only a single script tag that includes a javascript file. Then generate the whole page from that. Now all your logic is still in one language[1] and really javascript is a lot of fun to write, the language is still sort of crap, but now the dynamic stuff is really simple.

1. as a footnote, the great tragedy of the web is that (script language=) only works for javascript. wasm is an attempt to rectify this, but I think that while they are doing the best they can with the shitshow they have to work with. wasm is solving the problem at entirely the wrong layer.

whalesalad
0 replies
2h20m

https://www.weather.gov/dtx/

still use one almost daily for getting weather data in my area lol

pimlottc
0 replies
2h30m

The worst part about server side image maps is that it completely breaks archiving. So many times I've tracked down an old website address on archive.org's Wayback Machine, only to find that the homepage is one big server side image map. Without the original server, there's no way to discover the destination URLs for the rest of the site. It's a complete dead end.

electroly
0 replies
2h38m

Back in 2015 I fixed Chromium's support for server side image maps. It was almost totally broken at the time--any zoom/scale level other than 100% would throw it off, nonzero padding would throw it off, several issues like that. Nobody had noticed because image maps aren't used any more in general, and server-side image maps REALLY aren't used, but I was in the same boat as you: I wanted an easy way out without JavaScript, and I remembered my 90s HTML.

Sadly, after I fixed the Chromium bug, I decided the server-side image map sucked and I wrote the JavaScript anyway. The JavaScript version is better :(

commandlinefan
0 replies
1h59m

I am the worlds worst web programmer

Hey there now, you can't just lay claim to my title without first beating me for it in a title match.

npteljes
6 replies
9h5m

Don't forget that tables could be used for rounded corners. Or maybe I'm an early 00s web developer with that? The trick is that we created 3×3 tables, and aside of the middle cell, it would contain <img>s, so that the creation was a website element with rounded edges, the pinnacle of human expressiveness.

Since HTML emails were also the rage, and email clients updated much slower than browsers, this technique was used well into the 2010s, if you wanted your thing to be displayed correctly.

padjo
1 replies
7h40m

And right at the time we got border radius the design trend changed and nobody wanted round corners anymore

RedShift1
0 replies
7h14m

I still want round corners! Square corners feel claustrophobic.

tomnipotent
0 replies
8h59m

Will never forget having to create collections of tl.gif, tr.gif, bl.gif etc. images for those 3x3 tables, not to mention the 1x1.gif the article mentioned that was needed for the left/right cell backgrounds to show since browsers at the time didn't render background images of empty cells. Good times.

pocketsand
0 replies
5h36m

I saw a post shared on some platform recently that some screens in Amazon still use this technique.

I remember slicing and dicing up the rounded corners in photoshop.

eps
0 replies
8h32m

Don't forget that tables could be used for rounded corners.

And drop shadows!

Sharlin
0 replies
8h35m

and aside of the middle cell

No no, the middle cell contained the tiled background image, of course!

narven
6 replies
9h9m

DHTML means Dynamic HTML, not distributed html

kripy
1 replies
8h51m

And SHTML for Server Side Includes.

technotarek
0 replies
7h3m

Yes! And occasionally, I still miss them.

narven
0 replies
9h5m

distributed word did not existed in the dictionary back then

jahnu
0 replies
8h45m

Fairly sure that was a joke given the rest of the paragraph.

eps
0 replies
8h44m

It was a joke.

decremental
0 replies
8h58m

I assume it was a joke since he then goes on to talk about Dynamic Drive and would for sure know what DHTML stood for.

Spare_account
6 replies
8h20m

Not a single use of the word 'webmaster' in the whole article. Was Zach even around in the 90s? ;-)

sen
4 replies
8h4m

Still got my “Webmaster” business cards from the late 90s. No one will ever understand how “cool” it was to have that title back then. Now even I cringe when looking at them but so many good memories.

throwaway167
0 replies
6h4m

Not only was it full stack, but user/community management, strategy, perhaps sales, all rolled into one.

tasuki
0 replies
6h43m

Why do you cringe?

The titles of today, such as Site Reliability Engineer, are way more cringey...

fuzzfactor
0 replies
3h11m

Yes, that's as far as you should have to go when it comes to somebody ultimately responsible for a whole website ;)

flir
0 replies
6h47m

Hope you had a Nokia 7110 to go with it. I know I did.

Living 15 minutes into the future. shhhhh-clunk.

commandlinefan
0 replies
1h55m

I worked with a woman who officially referred to herself a "webmistress". Not as a joke.

throwaway0032
5 replies
8h13m

One thing I miss from the 90s are the built in user/password dialog that enabled me to easily remember passwords.

It still exists, but most sites prefer to use their own HTML based logins because it "looks ugly".

Imagine if sites used the built in dialog; We would have a much more secure web. We would not have a need for dedicated password managers and would probably have found a low effort way of integrating auto generated passwords.

jakub_g
1 replies
8h1m

Do you mean the one which popped up from the browser UI before anything on the page has loaded? (aka "HTTP authentication")

Wasn't this abysmal? You navigate to some page, and out of nowhere it asks you for login, before you even see any content of the page. (Kind of like logging via terminal)

throwaway0032
0 replies
6h19m

It wasn't an optimal solution, but it also didn't change much from the first implementation.

I think that if it had been given a bit more attention and made it more customizable, it could have evolved into something good enough to replace today's login form.

aembleton
0 replies
7h55m

Firefox seems to manage this with current HTML based logins.

Paianni
0 replies
7h12m

You mean Basic HTTP Authentication? I wouldn't say Chrome's dialog looks 'ugly'.

JimDabell
0 replies
6h5m

You can’t log people out or switch users with HTTP auth. Once the browser knows you have valid credentials, it sends them with every request and the site can’t stop it from doing so.

junon
5 replies
8h46m

DHTML, which stands for “distributed HTML”, was the final feather in our cap of web development tools.

Dynamic*

Anyway, there's also tables for layout, including Photoshop and Dreamweaver having a slice tool to generate those tables.

Also most of the coolest early adopter sites using CSS were anime artist portfolios, because it allowed them to do much cooler stuff.

Webpage view counters.

Midi files playing when you came to the site.

The <font> tag. Oh and <strong> was spelled <b> and <em> was spelled <i>. We also had <u>.

XHTML, with very long doctype tags I used to know by heart.

Diagonal stripped images that tiled for backgrounds were all the rage.

Pixel fonts

Ohh yes. "Visitor" was the most popular one and was everywhere.

Not really dev-related but Windows used to make a noise when you would click links. For some reason, when you'd trigger a pop-up or an activeX control the multiple redirects or whatever would cause the click sound to happen over and over again. You knew a site was really turning its gears when there were three or more clicks.

Every site wanted you to install a toolbar. I collected them like pokemon, to obvious detriment (spyware galore). You bet I also had Bonzai Buddy or whatever his name was installed. Being 12 was fun.

DHTML was wild, alert was like magic. prompt() was also a favorite, haven't seen that one used in ages and it's likely now removed.

Downloads had a popup every single time you clicked on it - no download menus.

Flash. Shockwave. The other one from Microsoft that was cool for a bit but super convoluted and buggy... oh right, Silverlight I think.

PhpBB and vBulletin and Conforums. You were cool if you had a forum signature that was large and commissioned by an artist that likely used PlanetRenders. Bonus points if it was coordinated with your profile picture.

X.com still said "coming soon" or something, for decades I swear (everyone wanted x.com and I was always jealous of someone having a domain name with less than three letters).

Java applets (RuneScape was a good one).

"Sign the guestbook".

Overline styles were great fun.

Once flash hit, entire sites were made in it. No, text couldn't be selected for the longest time (ever?). Accessibility ("a11y") was but a hilarious concept. Text flying everywhere, blinking, even on fire in some cases.

Gifs with their boolean alpha channel making everything so delightfully crispy.

Bitmaps were used often since they were the defacto format for MS Paint. Most 1x1's I made were in paint. They had to match the background color you were using since MS Paint didn't support transparency (does it even do that today?)

Rounded corners were done using a 3x3 table and images for the corners. No, border radius was not yet conjured up. No, you couldn't rotate the images, you needed 4 different ones.

Emojis were not emojis but emoticons and were images, or we had a long dictionary of cool text ones people had dreamed up. Here's chef boyardee, one of my favorites: @=:{D

Clipart was exported from Microsoft Word 2003 and used everywhere. Curvey rainbow text images were rampant.

Speaking of, text as images when operating systems didn't have the latest cool font or you needed some gradient or something.

Oh yeah, gradients in general. Images!

bgcolor on the <body> tag.

Yahoo's genuinely great articles on website optimization.

#anchors in the URL didn't work with the id attribute, you needed an actual <a name="..."> tag. Bonus points for putting content in it and it linking you to your browser's homepage.

Ask Jeeves (which then turned into Ask.com). Babelfish translator. The speech to text software that was either parrot or turtle branded.

TortoiseSVN to download the sources for your favorite private server source code.

Filezilla deploy your site over FTP. It was the web developer's version of the "compiling!" meme, thing took forever.

Web rings, where people would link to the next site in the ring.

Lists of IP addresses you supposedly weren't supposed to ping. Got those from HellboundHackers and hackthissite forums.

BBCode. You were really cool if you implemented that.

Comet frames to implement live chat (before XMLHttpRequest or "AJAX", now simply fetch(), was a thing). Iframes before any of that.

PHP errors being dumped to the webpage, inline. You always knew someone's mysql server was down.

HTML comments that were actually if statements to switch out tags for IE.

<noscript>

"Created by Microsoft FrontPage"

Macromedia Coldfusion

Waiting 8 hours to download a 200MiB game client.

for (var k in obj) if (obj.hasOwnProperty(k)) ... being burned into memory.

On that note, actually using .prototype or I think .__proto__

Custom HTML headers had to be prefixed with X-

Java Server Pages (JSP) and ASP being the tabs vs spaces of backend development.

Low Orbit Ion Cannon

... alright I'm done :D I miss the old web.

EDIT: okay okay I'm really done now.

siva7
2 replies
8h28m

Why did guestbooks die?

junon
0 replies
8h13m

"Buy Viagra today CHEAP!"

Y-bar
0 replies
8h27m

Spam I think

andruby
0 replies
5h36m

wow. I vaguely remember the Low Orbit Ion Cannon.

Thanks for the trip down memorylane. Related, although not a website, sub7 was loads of fun too.

https://en.wikipedia.org/wiki/Low_Orbit_Ion_Cannon

Sharlin
0 replies
8h37m

That may be an intentional "mistake" given the article's ironic style. Though "dynamic" does sound much cooler and groundbreaking than "distributed". Like in "dynamic programming"!

jeswin
5 replies
9h26m

I don't remember if this was a common technique, but before XmlHttpRequest (came in 2000, i think) we used to do "Ajax" by loading data into an invisible iframe and reading the contents. Worked well iirc.

arkh
1 replies
9h14m

reading the contents

Or having some javascript code in the page loaded by the iframe which could call some parent. function.

beejiu
0 replies
7h58m

You could even do realtime stuff by leaving the HTTP socket open and writing out script tags when you needed to. https://en.wikipedia.org/wiki/Comet_(programming)

geek_at
0 replies
9h22m

Oh right I forgot about that.

Also back then (up until ~2005) browsers were hilariously insecure. For example I was in a forum of a local youth club and you could have signatures that were displayed under every post so I added some edgy image linked from my own webserver.

Some day I accidentally put the whole folder on a password protection which prompted the "username password" login window on every page my signature was linked to. FOR ALL USERS.

I realized users would think that the forum software would ask them to log in again for some reason so I basically got all passwords of people in the forum in plaintext on my webserver.

Crazy times

clownbaby
0 replies
1h8m

I also don't know how widespread this technique was back then, but I'm shocked this was left out of the article. This phenomenon was literally the method that transformed a "websites" into "webapps" in the early days. We would use pools of invisible iframes to constantly update different parts of the page for a "reactive" experience. The author mentions various important hacks that define the early days, but missing this one seems like a blunder to me.

EasyMark
0 replies
7h13m

did you ping pong communicate data back and forth between iframe and "main frame" like a queue/pipe?

esafak
5 replies
9h30m

Don't forget image slicing and image maps!

https://www.creativebloq.com/adobe/image-slicing-photoshop-6...

(2014)

jjgreen
0 replies
8h43m
darkwater
0 replies
9h23m

Image maps were top-notch to make menus with graphical buttons on the left, to change the iframe page on the right :)

cwdegidio
0 replies
9h14m

My first paying client when I was 19 (so around 1998?) commissioned a local high school graphic design student to hand paint this crazy village scene with stores. She then had it professionally scanned and gave me the files... which I then used to create an image map for each of her little "store fronts". She couldn't accept payments online (they didn't teach me that in my community college HTML course), still had to print out an order form and send in a check. I will never forget the horrid repeated plaid background she made me use.

I miss the early ugly web lol.

alexchantavy
0 replies
8h8m

My favorite workflow was to make a totally l33t render with 3dsmax, put it in Photoshop to draw UI buttons, and then use Imageready to slice it and autogenerate the html slices and maps. Instant fancy website that made me a cool kid as far as I was concerned

Izkata
0 replies
5h4m

Or faking an image map using tables: https://www.spacejam.com/1996/

q7xvh97o2pDhNrh
4 replies
8h34m

Speaking of the greatness of the 90s, does anyone have a good version of the classic "Under Construction" GIF?

You know the one — it was in the style of a yellow road sign, and on it was a pixelated silhouette of a construction worker diligently shoveling.

Long before Gmail had the smug audacity to leave "Beta" on their product name, you could use this GIF (or even a whole row of them!) to proudly announce to the world that your site was — like all great works of art — never complete.

I've searched high and low for the classic version of this GIF — the true, original, platonic ideal — but all I've been able to find are poor knockoffs.

Sharlin
1 replies
8h31m

http://textfiles.com/underconstruction/ If it isn't here, it probably can't be found anywhere.

this_is_not_you
0 replies
7h49m

Thanks, that made me laugh out loud because of pure joy.

i_like_robots
0 replies
6h53m

Take a look on https://gifcities.org/ - I'm sure you'll find what you're looking for!

giantrobot
0 replies
1h43m

The other replies might sort you out but if they don't, check out some of the shareware/CD-ROM collections on the Internet Archive. They have thousands of ISOs of magazine inserts, shareware discs, and all kinds of discs from the 90s. They're each like little time capsules so you may end up finding that image or ones like it on those.

pmontra
4 replies
9h43m

On the other side we were told that those colorful gradients that will be the fad of the 20s are cheap and we were scolded by professional designers for using them.

Not that we had CSS gradients, we were using gifs or jpegs.

ogogmad
3 replies
9h0m

I don't understand. I'm interested what this means.

lofties
2 replies
5h42m

We’d generate a 18x1 GIF with a gradient color change (or from a solid color to a transparent color) and stretched that out over however pixels we wanted to create a gradient-like effect. e.g

<IMG SRC=“/gradient.gif” HEIGHT=“18” WIDTH=“600”>

ogogmad
1 replies
5h25m

Gradients look boss.

pmontra
0 replies
3h45m

Gradients as decoration look boss today. They looked cheap 30 to at least 20 years ago. Then they were forgotten and that made their return possible. They'll become unfashionable again. It's an eternal cycle.

denton-scratch
4 replies
7h25m

DHTML, which stands for “distributed HTML”

"Dynamic", I think; not "distributed".

moron4hire
0 replies
6h18m

It's amazing how many people get this wrong while claiming they were big into web development "in the 90s".

DHTML was the beginning of the Document Object Model API. It was about changing things on the page through JS and not anything to do with the `alert()` function as the OP claims.

gortok
0 replies
6h25m

Was hoping someone would come here and say this, although we're getting to the point where if we don't write it down we won't remember it, and mandela ourselves out of how things actually were.

gnz11
0 replies
7h10m
EvanAnderson
0 replies
7h21m

That's my memory, too. I saw "distributed" and did a double-take.

asolove
4 replies
6h5m

The year is 1996. Microsoft's homepage has a menu bar that expands when you move your mouse over it. I am determined to figure out how this works.

At the time, IE has a "view source" button, but it's not very platform aware. You get a Notepad doc. The server is running Unix with files where lines break on "\n" and I'm on Windows, which needs "\r", so the source is one single long line of html.

I look through the source thoroughly: what is in their html that I don't know about that lets them make things move around? All the html tags are ones I know. All the content is text I can see on the page.

The only mysterious bit is these "&nbsp;"s. I've never seen those before and don't know what they are. They appear on sites with moving menus. They must be related.

(For six months, I believed the effect of dhtml was achieved through magic incantations of what turned out to be html entities. A bit later I found WebMonkey tutorials and this turned into a whole career.)

enobrev
1 replies
5h6m

View source was my launchpad.

Minimizers and compilers are great, but I so miss reading through the well manicured and maintained source of a well-designed site.

I wish we could have gone with a type of compression that allowed us to keep the original source formatting for perusing production code, and ideally keep the expectation that others from around the world will be reading our code.

I imagine it had a lot to do with how quickly this thing has progressed early on. It's definitely a big part of my own origin story in this industry.

tracker1
0 replies
3h28m

When Adobe bought Macromedia, my hope was for the flash format to largely become a Zip file with SVG, JS and other assets as a package.

MS Silverlight was close, but too late as flash died and people stopped installing browser plugins.

tracker1
0 replies
3h31m

Similar experience wanting to replace images on mouse over. Bought "JavaScript Bible" at Barnes & Noble, read it that weekend and never stopped learning.

joefearnley
0 replies
17m

Wow, WebMonkey....that brings back memories.

moondev
3 replies
6h14m

DHTML, which stands for “distributed HTML”,

Um excuse me? This kills the credibility of the article for me. It's "dynamic html" and as a card carrying member of the dhtmlcentral forums we are the authority on the DHTML subject and lifestyle.

sumanthvepa
0 replies
6h12m

Yup. The article lost all credibility instantly there.

dbalatero
0 replies
5h21m

I thought it was just a joke.

brazzy
0 replies
4h22m

Pretty sure that was intentional, given the tone of the article.

kqr
3 replies
9h22m

Wait, I still use dotted underlines and &nbsp; on my blog, and it does get praise for its design.

The dotted underlines look nice, but I guess the &nbsp; is just something I used to add to work around layout quirks in Internet Explorer except I never bothered figuring out in which places they're no longer needed...

nlunbeck
0 replies
47m

&nbsp; has been my go-to when I'm working in markdown and don't want to use html elements

loneranger_11x
0 replies
6h38m

I still use &nbsp; to put more than one space between 2 words in text. this requirement pops up surprisingly often. Too lazy to wrap them in spans and use paddings!

eps
0 replies
8h37m

Dotted underlines weren't supported by all browsers. Chrome rendered them as dashes... or was it the IE? Regardless, they weren't "portable" unless hacked using background-image on the offset.

j4yav
3 replies
9h35m

Honestly, in some ways, borderless tables for layout was nicer than grids and flex boxes.

ddalex
2 replies
8h38m

Yeah, but is not responsive

forgotmypw17
0 replies
2h29m

I still use tables for layout, partially. In order to make it responsive, I combine multiple tables with inline-block to allow the tables to reflow on the page.

There are more "modern" ways of doing this, but I haven't found any that are also compatible with my goals of maintaining backwards compatibility.

codingdave
0 replies
8h18m

Phones today have higher display resolutions than desktop monitors of the 90s. So table-based layouts would totally fit in mobile-first UX designs.

asimpletune
3 replies
6h10m

Any body else get online with Juno?

daedalus_j
1 replies
5h16m

Oh man, there's a name I haven't thought about in a long time.... I think they may have been my first foray into the actual web from BBS'. I remember it being pretty dang cool that you could write your emails offline and then dial up to do the send/receive...

asimpletune
0 replies
5h1m

Yeah and tying up my parent’s phone line, secretly, bc thug as no idea what the internet was.

Also there was no dmca so websites literally had sierra and Lucas arts games for download.

Izkata
0 replies
5h6m

Yep, they had that always-on-top ad banner in a separate window that you couldn't close. At some point I figured out if you start StarCraft and go online, letting it launch Juno's client instead of launching it manually, the ad banner wouldn't show up.

weinzierl
2 replies
8h20m

Scrolling text was a staple of the demo scene long before it came to the web as `<marquee>`. Of course it was not just scrolling lazily from left to right back then. It would hop up and down[1], run backwards sometimes and change its already exuberant colors. If it got really fancy the letters flew along an ever changing lissajous figure or had a faux reflection below, sometimes even with faux water perturbations.

Yes, the web was a real step back. Sensory overload became one-dimensional and we were deprived from the ability to annoy our visitors not only horizontally but also vertically. We are still recovering from that.

[1] Hopped along what looked like a sine wave to the unwitting eye, but really came from a tiny table of pre-calculated values of a quarter sine, carefully reduced to the bare minimum number of entries that still looked sinusy enough.

tdeck
1 replies
8h16m

Allow me to introduce you to the concept of a regular marquee inside a <marquee direction=down behavior=alternate>

Unbelievably the website where I learned how to use these tags is still online:

http://www.funkychickens.com/marqs2.asp

weinzierl
0 replies
7h58m

The Inception of web design! Of course it's an asp page, what else did I expect. Only missing a MIDI background track to be perfect.

unsupp0rted
2 replies
9h28m

I still use &nbsp; when writing headlines, to avoid breaking apart 2 key words that should stay together.

I also use the non-breaking hyphen for this, which is a different char than the regular hyphen or the em/en dash.

1x1.gif let you push elements all around the page effortlessly. To this day it is the only way to vertically center elements

If you can think of another way to vertically center, I’d like to hear it.

kevindamm
1 replies
9h12m

Flex box row inside a flex box column, justify: and align: center.

asimpletune
0 replies
6h12m

Even easier is grid + place contents center

trumbitta2
2 replies
4h36m

I used to greatly enjoy the author's content, before - you know - this: https://www.dailydot.com/business/julie-ann-horvath-names-gi...

IntelMiner
1 replies
3h57m

Are you sure that's the same person?

The site seems to belong to "Zach Holman" [1]

But the blog post attributes to "Aja Romano" [2]

[1] https://zachholman.com/about

[2] https://www.dailydot.com/author/aja-romano/

trumbitta2
0 replies
3h50m

I'll rephrase my comment:

I used to greatly enjoy Zach Holman's content, before - you know - he allegedly (?) did what this story tells us he did: https://www.dailydot.com/business/julie-ann-horvath-names-gi...

tracker1
2 replies
4h5m

Missing mention of Flash/Shockwave.

That said I've missed all the things mentioned. And I don't miss it. Days where IE4, NN4 and a huge margins of stealing browsers existed all at once. Nobody was willing to take the literal hours to download a new browser over dialup. Hell, people rarely ran windows updates.

I still remember IE 5.0 that was on the office 2000 and Windows 2000 disks (not ME). It broke the legacy interface for manipulation of select controls. 5.0.1 fixed that, but it was too late.

I remember when IE8's JSON parsee broke with an error you can't catch if you used the prototype library or similar.

IE4, NN4 and IE5/NN5 had different, largely incompatible interface for dynamic elements. Want a form to show a field based on another field selection, client side and cross browser, omg it was a pain.

Stack diagrams and giant charts, so much fun.

People complain about the packages and how painful it is today... I'll keep what we have.

While I think HTMX does a better job for many things today, I'll still live text more than front end web development in the mood-late 90s.

forgotmypw17
1 replies
2h38m

I still remember IE 5.0 that was on the office 2000 and Windows 2000 disks (not ME). It broke the legacy interface for manipulation of select controls. 5.0.1 fixed that, but it was too late.

Do you happen to remember more details about this. In particular, what method worked for the IE 5.0 that was broken?

I develop a framework that aims for universal browser support, and I'd like to account for this.

tracker1
0 replies
1h39m

It was just IE 5.0.0.. there was an offer interface and the new dom interface. IE5 initially only supported the new one.

I honestly wouldn't even worry about it today. I don't even recall what the method was. Both probably still work in current browsers. The bigger manipulation and the older interface.

pkorzeniewski
2 replies
4h12m

I recommend The Geocities Gallery [1] to go back in time and experience the 90s web yourself, there is something beautiful about all these personal web pages. Each one has a distinct look that alone can tell a lot about the author's personality, usually contains some bio info together with several random personal pictures, lists of recommended links with short descriptions, loose talk about their hobbies and so on - it's just so personal and calming, a striking contrast to today's social media where each profile page looks the same (bland and boring), with overwhelming, ever growing amount of content and a pressure to maintain a certain image of one's life.

[1] https://geocities.restorativland.org/

tracker1
0 replies
3h59m

I remember using the brick background from windows, combined with transparent GIF graffiti in the mid 90s to create a pretty cool effect.

Early efforts from the BBS art groups like ACID, ICE, FIRE etc was also very cool at the time.

Anything more advanced prior to IE5/6s dominance was relegated Flash though. I built a framework similar to React around E4X in the early 00s. ActionScript/Flash/Flex, Mozilla/Netscape supported it and VB.Net's XML literal notation was similar.

MS and Google wouldn't adopt it and then JSON became king.

SamBam
0 replies
2h37m

Man, thanks for the rabbit hole. I spent a while there, both trying to find my old site (I don't recall which directory under Area51 it was in, and it may never have been archived) and just reliving it.

Memory is weird. Somehow viewing Geocities made me recall the smell of the old internet. Probably just the smell of the family room where the computer was.

medion
2 replies
9h33m

The 1x1.gif, I haven’t thought about that for a long long time!

dizhn
1 replies
9h11m

I've never seen it as a layout thing but it was used a lot for email tracking.

justsomehnguy
0 replies
6h59m

Psst, press RMB, 'Inspect Source'.

blibble
2 replies
2h9m

I think the most obscure thing I used was <keygen>, which would generate a client key/cert pair, store the key locally in your browser certificate store and send the cert to the server with the form submission

I saw exactly one website use it and remember being very confused as to how it achieved that

https://web.archive.org/web/20160409081411/https://lists.wha...

napolux
0 replies
1h47m

Tried to make it work, guess support is gone for good in latest firefox/chrome

EvanAnderson
0 replies
48m

I sure wish <keygen> had had a good UI. We could be living in a world where two factor authentication based on PKI and personal HSMs would have been a thing. (I'm sure I'm thinking of it thru nostalgia-colored glasses...)

atum47
2 replies
2h29m

DHTML stands for dynamic HTML, right? Never understood the name though, it was just JavaScript animating DOM elements. Maybe i was too young to understand the difference, but i remember using text inputs for animated contet, like a clock or a scrolling message.

Anyways, I was about 10 or 11 when visiting a "big" city i saw this book about DHTML and I had my dad buying it for me.

giantrobot
1 replies
2h11m

Before DHTML JavaScript had limited ability to manipulate DOM elements after the page had loaded. JavaScript could happily edit the document (document.write) during the page load but not afterwards. If you wanted some output of a JavaScript displayed after the page load you had to put the output inside form elements or do an alert. You also could manipulate some parts of the browser with the navigator object and change the status and title.

Dynamic HTML was dynamic because the DOM could be manipulated after the page was loaded. JavaScript could directly manipulate DOM elements or even add and remove elements.

atum47
0 replies
1h18m

Nice. My comment was about the author saying DHTML stands for distributed HTML, which i find odd

angst_ridden
2 replies
2h12m

Oh, and remember the glory of Frames!?

How many hours did I spend slicing images in Photoshop and coding tables with rowspans?

Funny that coding HTML email is still not far from that experience (table-based layouts) if you want it to work in email clients like desktop Outlook.

sosborn
1 replies
2h10m

For the life of me I cannot understand why email won't render grid or flex. Those two properties would make email templating so much easier.

monkeynotes
0 replies
2h6m

I'd be happy if we didn't have to inline all the CSS.

alamsterdam
2 replies
5h38m

Using vi to update the .html directly on the production server (and this wasn't a personal website)... simpler times :)

chasd00
1 replies
5h13m

lol yeah, ssh to the server, find the www dir, edit, :w, hit reload, :q when it works :)

alamsterdam
0 replies
4h19m

I could deploy to production 30 times a minute! haha :)

FriedrichN
2 replies
8h53m

The bad good old days, I sure don't miss writing pages with byzantine structures of tables within tables.

I do miss web pages that weren't +10MB that load hundreds of JS and CSS files that clog up your computer and may or may not contain malware. I hate that having uMatrix and uBlock Origin installed is pretty much a requirement to use the web nowadays.

throwaway0032
0 replies
7h34m

I remember 2 brief glorious moments of time when everything just worked, and internet and computer speeds was ahead of web designers.

1. When I switched from modem to ADSL I was amazed how fast the web could be. I think I spent most of the first day just clicking around and watching how everything loaded instantly

Then the web designers and product managers caught up and started slowing down the web with larger ads and autoplaying (Flash) videos.

2. When I switched from ADSL to fiber, both my computer and internet was fast enough to counter the crappy parts of a web site and I experienced joy again.

Then SPA became the default web site and things started loading slowly again with placeholders and loading indicators.

Now that we are moving back to SSR I see a slow return to a more snappy web, all though web designers and product managers will surely find ways to counter this too.

JimDabell
0 replies
6h10m

The bad good old days, I sure don't miss writing pages with byzantine structures of tables within tables.

People used to jut throw tables everywhere for no reason, like a superstition or something. I remember one day a colleague was stuck because the page he was working on would take over a minute to render in Netscape but about two seconds to render in Internet Explorer. I took a look at the page and somehow he had tables nested twelve levels deep doing absolutely nothing. I deleted all but two of the tables, the layout looked the same but now both browsers rendered the page in under a second.

schnitzelstoat
1 replies
8h43m

Obviously the technology was a lot worse.

But I kind of miss the internet of back then when websites would still be made and run by ordinary people. As ugly as those websites were, it felt a lot more genuine and democratic than today.

jj999
0 replies
4h43m
phendrenad2
1 replies
9h11m

Ah yes, transparent images to get equal-width spacing on terrible browser engines like Opera and IE. Tracking pixels. Mixed HTTP and HTTPS content warnings. Java Applets. Perl scripts. cgi-bin. Uploading files one-by-one through a web portal (not even FTP). Building entire sites out of a mosaic of images. Having multiple versions of your site for 800x600, 1024x768, etc.

quickthrower2
0 replies
8h17m

Yeah you try SFTP on Windows FTP thingy then Filezilla too and it obviously fails on both. Plain FTP works but you feel paranoid so upload the zip file of your site via the slow web interface and unzip it on the server.

nbittich
1 replies
9h20m

I'm sad they didn't even talk about Macromedia flash, Microsoft frontpage and Dreamweaver.

vesinisa
0 replies
8h46m

They do mention FrontPage though.

As far as I can remember, FrontPage was pretty nice. I built my first home page with it. I wanted to (visually) best all of my friends on IRC. So I designed how I wanted the page to look in (an obviously pirated copy of) PaintShop Pro. A sort of an embossed oval with navigation links on the perimeter, with all the page content appearing inside the magic oval.

But to wrangle such layout to HTML was not easy in the late 90s. I eventually managed to find out that other pages used <table> elements to force position stuff. FrontPage allowed me to stitch the individual images from PSP to a table in a WYSIWYG environment - I don't think teenager me would have had the patience nor understanding to ever do it without FrontPage. When I evenetually got it to render without glitches in IE I was _so_ proud.

The only complaint to my GUESTBOOK I got was from some guy using "lynx" (a CLI web browser) who said navigation was impossible. I only later learned about the "alt" attribute for non-visual users. Not sure if FrontPage would've even allowed me to set it though.

locallost
1 replies
6h33m

Looking back at it, the weirdest thing in the list have to be pixel fonts. Back then I used them and I liked them, but today it seems like a foolish gimmick. My only thought is that it's a testament to the fact those days were for young people and they mostly didn't have issues with their sight. Today we are starting to think about reading glasses and the web is ubiquitous so readable content is beating pretty content (whatever pretty means).

JimDabell
0 replies
6h24m

I just remember there was a particular web design site that was popular with web designers that used a 10px pixel font. Every designer I knew spent so long staring at awful sites like that, they trained themselves to perceive any reasonably sized text as “massive”. Trying to get them to design something that was actually readable was a nightmare. 12px text was as far as they were willing to go for body copy.

justinmarsan
1 replies
9h25m

Youngsters need to know how much markup and images we needed for fluid containers with rounded corners...

Also did I tell you about CSS-only triangles ?

neurostimulant
0 replies
8h43m

You'll know the webmaster know their shit when their page has rounded corners everywhere.

jasode
1 replies
8h10m

>1x1.gif let you push elements all around the page effortlessly. To this day it is the only way to vertically center elements.

HN was launched February 2007 and uses <TABLE> and 1x1 gif to set the indentation level of comments.

  <table border='0'>  <tr>    <td class='ind' indent='0'>
  <img src="s.gif" height="1" width="0"></td><td valign="top" class="votelinks">
  <table border='0'>  <tr>    <td class='ind' indent='1'>
  <img src="s.gif" height="1" width="40"></td><td valign="top" class="votelinks">
  <img src="s.gif" height="1" width="80"></td><td valign="top" class="votelinks">
  <img src="s.gif" height="1" width="120"></td><td valign="top" class="votelinks">
The 1x1 s.gif is also used on the front page of stories at the bottom of the page to add spacing above the orange divider line:

  <tr><td><img src="s.gif" height="10" width="0"><table width="100%" cellspacing="0" cellpadding="1"><tr><td bgcolor="#ff6600"></td></tr></table><br>

EasyMark
0 replies
7h1m

If it ain't broke!

gk1
1 replies
9h7m

If you yearn for “the good old days,” consider that we’re living through “the good old days” of AI. In 30 years a blog post like this will poke fun at prompts, chatGPT, chat-with-docs apps, dealing with hallucinations, and what else?

JimDabell
0 replies
6h13m

Having to bribe AI with $200 tips. Giving them pep talks to convince them they are capable of doing something. Trying to persuade them not to be so gullible they’ll do anything untrusted data asks them to. Telling them you have no hands so that they’ll write code for you. Flattering them by telling them they are an expert in something.

gasparto
1 replies
8h43m

I still miss browser bouncers:

"Sorry kiddo. No Netscape in here. Boss created this stuff for IE only."

autoexec
0 replies
7h26m

Those still exist, but sites don't tell you about it anymore. Instead the sites are just broken for you. We do still get notices for using for ad blockers on some sites at least. https://old.reddit.com/r/uBlockOrigin/comments/18autyy/cnnco...

addandsubtract
1 replies
7h58m

Another big one from the 90s: splash pages. A single page dedicated to introduce and set the tone for a website. Click to enter.

CalRobert
0 replies
6h18m

Ah, and maybe I could choose the 28.8 vs. DSL version of the page!

a-dub
1 replies
9h0m

who remembers when the hip thing to do was to sign your webpages with a horizonal rule, followed by your name and your email address with a nice blue (on grey) mailto link, all in italics.

MandieD
0 replies
8h45m

Yes, I absolutely did that, back when personal websites usually had URLs like http://www.subdomain.domainname.net/~username

w3news
0 replies
3h25m

Good old times, when the web was simple, and more decentralized

toxik
0 replies
9h16m

Where my frameset people at?

thrdbndndn
0 replies
9h1m

For all the goodies in this article, I can't forgive the author for not disabling his default round corner css for the icon image!

https://i.imgur.com/CJGcSeb.png

supertron
0 replies
6h19m

This is such a superb article. I'd forgotten about a lot of this.

I used to be a grandmaster of creating any layout imaginable with tables and 1x1 pixel Gifs...

So. Many. Tables...

steveBK123
0 replies
6h23m

Feeling nostalgic right now

ssss11
0 replies
8h52m

Remember the <map> tag?!?

Also I know someone whose company’s website still runs on coldfusion

shever73
0 replies
6h43m

Ah, yes, 90s web development. Somewhere, in a dark and hidden corner of archive.org lives my first website. Updated in 1996 to be "enhanced" for Netscape Navigator 2.0.

It had a lot of what this article spoke about - including a page counter, guestbook and my first attempt at this new browser language called "JavaScript".

https://imgur.com/a/4bgnCLt

scopeh
0 replies
8h23m

90s-early 00s. The glory days.

romanhn
0 replies
3h11m

I remember all of these fondly. Though IMO the real hacks came with trying to get IE6 to comply when the rest of the world moved on. Basic things, like getting transparent PNGs to be, you know, transparent...

  img {
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(...);
  }

recursivedoubts
0 replies
7h7m

the dream of the 90s is alive at https://htmx.org

pocketsand
0 replies
5h37m

For me, the life changer was SSI. You mean I can just include files and not copy menus all over the place?

I also remember being enamored by image maps. Mapping out the polygons without software was beyond the confidence I had as an 11 year old.

And a self-hosted CGI-backed counter--the holy grail.

petecooper
0 replies
6h21m

I'm _slightly_ triggered by the border radius on the 88x31 .gif, but I'll cope.

Related (and brace yourself if you're on an older computer):

https://neonaut.neocities.org/cyber/88x31

https://cyber.dabamos.de/88x31/

p4bl0
0 replies
7h32m

This comment is best read using IE and a screen resolution of 1024x768 pixels.

It's funny how a small article like this can bring so many memories! Thanks for sharing :).

nikos3194
0 replies
8h30m

One thing used a lot before CSS and JS was the "usemap" attribute in the img tags to make hyperlinks within images. You had to indicate the coords and whether the shape of the hiperlink was a poly, rect or circle.

neurostimulant
0 replies
8h50m

I love those cursor trail effects. Your geocities page won't be complete without them. Too bad those cursor trails on geocities pages archived at various places doesn't seem to work anymore so we can't experience them again.

mouzogu
0 replies
4h54m

using transparent png's to give a rounded corner look which was all the rage in the "web 2.0" era.

miss those days.

lmm
0 replies
7h32m

Internet Explorer 4.0 was perfection incarnate in a browser. It had Active Desktop. It had Channels. It had motherfucking Channels, the coolest technology that never reached market adoption ever not even a little bit.

Are you sure? There's some pretty stiff competition even in IE4: VRML was incredible, as were Tclets.

Seriously web technology has mostly gone backwards since then. CSS has needed multiple revisions to reach the point where on a good day it can barely match what you could do in HTML3. <video> is a worse <embed>. Chrome remembers and syncs my passwords if I type them into the input of a HTML form, but not if I use the actual native HTTP authentication, and forget trying to use proper public key certificates like worked perfectly in 1996...

kopollo
0 replies
4h25m

I remembered this, what happened?

justinzollars
0 replies
2h49m

I think I would include <iframe>

johnchristopher
0 replies
9h13m

I have a rather large website to manage. Based on Tailwind. There are still some fucking &nbsp;&nbsp; and <br /><br /> tags around because the original dev used layout all those text containers over image containers and wasn't told there would one day be no text.

N+1 still loves those 1x1 transparent GIF for newsletters.

jim_lawless
0 replies
5h41m

On the server side, I remember it being challenging trying to figure out how to run CGI's ... usually in Perl ... on a given site. Some sites had Perl 4, some had Perl 5. Your code might have needed either the .pl or .cgi file extension. Sometimes the CGI script just needed to be in the /cgi-bin/ directory with execute permissions set and the appropriate hashbang in the top comment.

While there were more elaborate Perl CGI libraries, I preferred to use cgi-lib.pl.

jdefr89
0 replies
8h25m

This brought a damn tear to my eye. The Internet was so damn cool back in the late 90s and early 2000s…

jbverschoor
0 replies
8h23m

DHTML, layer vs div..

Also, JSRS was one of the first hackidy ways to do 'ajax'.

Negative margins to fix layouts..

jakub_g
0 replies
7h50m

No 90s/00s website would be complete without a "best viewed in 800x600 resolution" button. If you wanted to go fancy, you'd also put "Valid HTML 4.01".

Another goodie: ads used to be simple standard sized <img> banners, instead of the crazy JavaScript bundles & video ads like today.

I remember being in shock when I realized that Norton Internet Security 2003 was silently rewriting HTML on the pages I visit and removing `<img width=468 height=60>` banners (and a few other standard ad sizes) but keeping everything else. (20-years old confirmation that adblockers are a security solution! ;)

idkwhoiam
0 replies
8h40m

Been there done that. Conditional CSS includes, CSS selector hacks to target different browsers. Good times. We also used JAVA applets for Ajax

hbarka
0 replies
3h3m

Can we also talk about Active Server Pages? *.asp has endured the test of time.

fortunajs
0 replies
4h55m

Made me desperately want to look in my storage for the CD with "100 000 web design assets" and open frontpage express again ... :)

foofie
0 replies
8h40m

The page is missing the "under construction" image.

dunham
0 replies
59m

Back in the day I disabled blink tags by editing the Netscape binary (in emacs) to change the string "blink" to something else.

A little earlier than that, I remember a use-after-free of a graphics context in Amiga Mosaic that would cause it to occasionally render in another window.

dudul
0 replies
6h19m

I'm surprised there is no mentions of tables to organize the page layout.

Massive nostalgia wave after reading this post. Building websites back then was so fun.

drivers99
0 replies
1h36m

Have you ever shoved a <blink> into a <marquee> tag?

If you did, it would blink on Netscape, and it would be a marquee in IE, but not both (in the 90s!). Netscape had blink and IE had marquee and did not support the other[1][2], at least in the 90s.

[1] blink: "some, such as Internet Explorer, never supported the element at all" https://en.wikipedia.org/wiki/Blink_element

[2] marquee: "the first time I tried Netscape 7, in 2002. Netscape 7 and its close descendent (sic) are, as far as I can tell, the only web browsers to support both <blink> and <marquee>." https://danq.me/2020/11/11/blink-and-marquee/

drikerf
0 replies
8h18m

Good times! I really enjoyed making a 90s version of my startup's landing page: https://90s.wobaka.com/

donatj
0 replies
5h6m

Image Maps were huge in the 90s. You’d have your landing page or header navigation as a giant image and just define shapes around the areas you wanted to be buttons. Saved you from having to chop the image up into tables.

<input type=image> was similar but processed server side, clicking the image submits the form and reports the clicked X and y to the server. We used this at my first job a ton for maps. The MDN article actually doesn’t do this input type justice and misses their true use.

HTTP 204 was huge too, and something I still use. Early way to send a message to the server without a page refresh before AJAX. If a request responds with a 204 the browser stays on the current page. Lots of star rating systems like on Amazon and early Netflix for instance used this. Click a star, link makes the request, 204 keeps you on the current page. Sometimes you’d add a little JS to pretty the interaction up. CSS active was usually good enough.

dghughes
0 replies
6h37m

That's a blast from the past. I remember image maps and the struggle to put one on my site. It was called DeskNexus.com sometime in the early to mid 1990s. It was so long ago that I forget when it was. My idea was to have a website as your desktop instead of your computer so you could access it anywhere.

dariosalvi78
0 replies
8h38m

and still it was something a lot of people would start playing with. Open Frontend, drag and drop a couple of images, write some content, done, you have a website, you can be a millionaire.

Nowadays just getting started with latest frontend framework -that became obsolete 2 hours ago- means weeks of learning, and you've not even started.

Jokes aside (yes you can start with simple HTML today too), back in the days the expectations were pretty low, which made the web ugly but accessible and fun, though awkward and hacky.

danielovichdk
0 replies
2h29m

I used to serve the 1x1 gif from an asp page that at the same time would gather visitor information.

It was the tracking pixel.

coolgoose
0 replies
9h2m

No mention of the hacks for transparent pngs :P

chrisstanchak
0 replies
1h18m

My friend invented rounded corners in tables

charcircuit
0 replies
9h11m

1x1.gif let you push elements all around the page effortlessly. To this day it is the only way to vertically center elements.

align-items: center;

bubble12345
0 replies
8h17m

I just remember making websites using <TABLE WIDTH=100%>, and at some point reading that CSS and using <div>'s was the new, more correct way to do it. I only need a simple personal website for academics, so I still use tables for the layout.

askonomm
0 replies
3h34m

I'm a 2000's programmer, but I still remember a lot of this stuff. Anyone remember doing rounded corners with a 3x3 table where the corners were GIF's/PNG's cut from Photoshop to create the illusion of a rounded div?

angst_ridden
0 replies
2h5m

Oh, and who can forget the “splash page flash movie” that you had to sit through? It was vital that the brand got to show you their vibe before you could access any actual information…

I knew a guy who bought several expensive sports cars as testament to his ability to do shockwave animations back in ‘97.

Uptrenda
0 replies
5h38m

When I think of 90s websites I think of a design trend where everything used tables, borders, and a crap load of gifs. A common design for sites is this basic pattern:

[nav bar ...]

[link1 ] content ...

[link...] content ...

All sites looked like a variation of this. Normally people were OCD so everything was carefully contained in its own box. This was kind of the opposite to today's 'flat design.' Where today everything blends seamlessly and the edges are implied by contrasts older sites didn't try hide their boundaries.

There wasn't really many front-end libraries. Front-end was mostly just templates and PHP. Large-scale web software was all just PHP + templates + HTML with minimal javascript. PHP was quite instrumental for the early for the early web. It's still huge honestly.

By the way: lets not forget that Git only came out in 2005 and that had a significant effect on how software was managed. The version control before them was painful and web devs weren't always the kind of engineers to use them.

Uptrenda
0 replies
6h2m

<blink>Never forget what they took from us.</blink>

TravisCooper
0 replies
3h20m

Another great memory was writing "broken" HTML comment tags so you could disable "auto-inserted" ads from Geocities and Angelfire (and other) sites so you could look cool with your premium, ad-free site.

PaulHoule
0 replies
3h25m

This book changed my life

https://www.killersites.com/killerSites/3-pdf/press.pdf

The author got a lot of complaints for abusing HTML and became an early advocate for CSS and the semantic web.

MulliMulli
0 replies
6h29m

Anyone still remembers AOLpress?

LeoPanthera
0 replies
9h27m

That’s nothing. The real state of the art was putting a smiley GIF inside a horizontal marquee, inside a vertical marquee, and setting behavior=“alternate” on both marquees.

For your pleasure, here’s how to do a marquee in pure CSS:

@keyframes marquee { 0% { transform: translateX(100%); } 100% { transform: translateX(-100%); } }

.marquee-container { white-space: nowrap; overflow: hidden; position: relative; animation: marquee 10s linear infinite; }

.marquee-content { display: inline-block; }

<div class="marquee-container"><div class="marquee-content">Microsoft™ Internet Explorer™ 4.0!</div></div>

Joeboy
0 replies
6h4m

So many clever solutions to the problem of HTML being too easy.

JoblessWonder
0 replies
13m

I have a printed book of "good" website design examples from the late 90's. It is an amazing time capsule.

I also really wish there was an archive of AOL's homepages... My first website is lost to the digital abyss...

Jemm
0 replies
4h0m

"Can you move it a half pixel to the left"

Galanwe
0 replies
8h29m

The article could mention the wave of "semantic web" at the end of the period.

The idea was to create a DTD+XML for your website and publish it with meaningful tags. Then you could distribute XSLT sheets that the browser applied, and have total separation of style and content.

Gabrys1
0 replies
7h37m

Have you ever shoved a <blink> into a <marquee> tag? Pixar gets all the accolades today, but in the 90s this was a serious feat of computer animation

Wrong. Marquee only worked in IE, but blink only worked in non-IE, so by embedding one in the other you simply had an attention grabbing element that either blinked or slides.

ChrisMarshallNY
0 replies
6h34m

Ah... the one-pixel transparent GIF trick (I sometimes, still use it, for iOS stuff -but for different reasons). Brings back memories of my halcyon days...

I pine for the days, when all Web pages looked like so: https://www.angelfire.com/super/badwebs/

Brajeshwar
0 replies
7h28m

tiny six-point font

I remember it more as a "eight-point" font and its multiple (next ideal being 16-point).

Not in the 90s, but in the early 2000s, I reaped Pixel Fonts' benefit to its fullest. Besides using it as part of the graphics and later sliced for HTML, I used it to render many elements of Apps/programs for Pocket PC devices -- iPAQ[1]. Even though the devices were small, they were handheld and usually used closer to the eyes than desktops, and the pixel fonts were ideal size to give enough spacing and clarity to buttons and even for the smaller text that goes in the mandatory legal writings that need to go with the programs used by Healthcare professionals.

I was lucky to be involved in creating a few such programs for physicians and clinics, making them really happy users. I remember that positioning other fonts (I think, system fonts, etc) was hard to maintain and turned out blurry when deployed to these devices. The Pixel Fonts were crisp and clear when re-aligned after calculating either an even or an odd pixel placement.

It was my second job and first Internet/Web-related Job. My boss was super happy that he spent money on my suggested items, which were repaid repeatedly.

1. https://en.wikipedia.org/wiki/IPAQ

1905
0 replies
35m

What about white text on white background to stuff keywords on the bottom of a page.....and it actually worked