Going back in time

Many years ago at the end of the last millenium, 13-year-old me turned an obsession with famed Nintendo 64 game The Legend of Zelda: Ocarina of Time into his very first website, called Link's Oracle. Through some miraculous stroke of luck, the website survived decades of technology changes and corporate buyouts and remains hosted at its original location on Tripod. I've rehosted it here for archival purposes, and it serves now as a reflection of my past self, a look at the internet as it once was, and, well, a laugh.

For the full experience, try opening the site in a browser with 640 pixels of width, which I think is how high-tech my sick 17 inch CRT monitor was back then. And visit the "Help With This Site" page to download the font I originally used.

If you try to view this on a mobile device, you're taking your life into your own hands.

View the Site View the Source Code

The Story

To say that The Legend of Zelda: Ocarina of Time was a formative video game for me would be an understatement. I was thirteen years old when it came out in November of 1998, and twenty-five years later I still consider it a masterpiece in storytelling, game design and world-building. With a bunch of extra time on my hands, I wanted to do more than just play it.

My Dad was into computers at that time, and in early 1999 in our computer room (yes, we had a computer room), I found a copy of this book:

The book cover of Using HTML Version 3.2: Special Edition, with a stock photo of a chain and a bright label at the top saying Bestseller! Over 175,000 copies sold!
Using HTML Version 3.2: Special Edition. Over 175,000 copies sold!

It was a monster, probably over a thousand pages, something like 6-8 cm thick. I poured over it, learning everything I could about using HTML to build websites. It became my bible in 1999. I kept it next to my bed to read at night. It was so incredible to me that you could just type codes into a text document and that was about all you needed to make something that would go on the real internet.

So I got to work.

Building Link's Oracle

As a professional web developer today, I can't help but laugh thinking back to my "work flows" in 1999. The internet was so simple back then. I opened up Notepad.exe on the family Windows 95 machine (or maybe it was Windows 98 - it's unclear if and when we upgraded!) and just started typing.

The host I had chosen at the time (Tripod) had a simple upload screen on your account, a glorified way to copy the files in your hard drive to your hosted account. And just like that, I could access it via the web and share it with my friends. There wasn't a local development environment, there wasn't a testing process, you just stuck it online and refreshed your browser until you were happy. Doin' it live.

I remember experimenting with JavaScript. It was much more opaque to me than HTML was. Most of what I did was copy and pasting pre-made scripts from others on the web, some of which you can still see in the codebase today. CSS was in its infancy at this time and not well-supported, so much of the "styling" I did is encoded right there in the HTML attributes using some great elements like <FONT> and <CENTER>. The early web did not have great separation of concerns.

Hibernation

In the summer of 1999 I moved on to whatever else I was interested in at the time (Tony Hawk's Pro Skater? Playing in a rock roll band? Girls??), but apparently never bothered actually shutting anything down online. The site just kept on keeping on.

At various points in my life I would remember it and check up on it, and mirculously find it still sitting there on the web. As time passed, the internet changed around it, transforming from the document-rich weird place of scattered hyperlinks to the massive consumerism machine it is today. Tripod began injecting ads into the site, so much so that today it's virtually unusable. Real fact: I had to disable JavaScript on this site while I had it open so as to be able to click links and also to prevent my computer from overheating because it was doing some kind of infinite loop of advertisement popups.

I lost track of the account information to log in, long-forgotten passwords who could only be reset through long-forgotten email accounts on providers that had been rebranded or bought out over and over again. But somehow, Tripod kept it up.

Finally, twenty five years later, I decided to put in a little effort and recover it. For posterity.

Recovery

The first thing I had to do was retrieve the markup files. Thankfully, because there was no build stage in a simple HTML tree like this, just visiting the site would return the entire file, meaning I could "download" the content from my lost account. So, one by one, I visited each page and copied the contents of the result to a new repository. I did the same with all the referenced media files, too.

Could I have automated this? Sure. Did I? No. You should never automate something you'll only do once. Plus, this is how 13-year-old me would have done it anyway, and there's something to be said about honouring your past.

Tripod injected all kinds of weird JavaScript into each file, which I had to strip out manually. I also removed any references to others' email addresses (which apprently I used to just post online?) and last names.

After preserving this "source code" in an archive file, I went to work cleaning it up for modern viewing. My goal was to preserve the source code as much as possible while enhancing the usability, leaving in "bad" code but changing things like indentation and folder structure to make browsing it a little more sane. I left some bugs or mistakes in where it added character.

Along the way, I began annotating what I discovered. If you're a developer, you can check the source code itself for code comments. If you're just browsing it, look out for the little annotation icon, which you can click to learn more.

Annotation You can learn more about something using these!

(When I was a kid, green and purple was one of my favourite colour combinations, so I decided to enshrine it here.)

The last step was to rehost it, and like a sign from the Goddesses of Hyrule, linksoracle.com was sitting there, available, for a mere $10 per year. And so, here you are.

What I learned

This was a fun, silly, and informative little weekend project. As a professional web developer now, it's absolutely fascinating to see some of the technology in use at the time, in addition to seeing a reflection of yourself before you learned anything about anything.

But despite the absymal execution and the languishing tech stack, I feel like I actually came away from this learning some things. I am reminded of a simpler time on the internet, a time where the priority still appeared to be sharing information rather than selling something. Little nuggets of web development wisdom, like inclusive design and thinking about browser compatibility, are previews of values I hold today.

One of the things that made The Legend of Zelda: Ocarina of Time a great game was the time travelling mechanic. In the game, you begin as a child and play the first half as such. Later, you are thrust into the future by magic and have to complete the second half as an adult.

Young Link and Adult Link possess different skills and abilities, and later in the game you gain the ability to travel back and forth as needed, sometimes depending on your younger self to get your older self out of a bind.

It seems only fitting that twenty five years later I've honoured this game by doing the exact same thing for myself.