The first major piece of code that I ever wrote was a publishing workflow management system for a major newspaper. It routed page images to presses and generated pdfs of each page in each edition of the newspaper and made pdfs of each day's newspaper editions and published them to a static website where they were archived.<p>I was only allowed to use perl 4 to write this software and I wasn't allowed to use a database, even though the datastructure for a day's publishing batch had tens of thousands of keys and values and required RDBMs style queries. It also features a configurable postscript parser that extracts all kinds of data from completed newspaper pages that informs the publishing system. When I wrote it I was told that it would run for a few months only while we figured out how to get a $5M commercial product to handle the work.<p>The whole thing was written in perl 4 style OO Perl and came in at about 16k lines of code in the end -- most of the code was for the postscript processor and tons of cruft that I had to write to made a relational DBMS in memory because I wasn't allowed to use mysql. It took me four months to write it. I launched it in January of 2002 and it runs to this day. I know this because I got a call about it last month where my replacement's replacement's replacement asked me a few questions about what OO Perl is because he wanted to make a few changes. Good luck! It still runs and is responsbile for about 80% of what it was originally built to do. It is used by hundreds of people daily, who by all reports absolutely hate it. There are people working at the newspaper today that use it regularly that were not born when I wrote it. I am twice as old as I was when I wrote it.<p>They have apparently tried to replace it several times over the last 22 years and have failed to do so... this is likely due to the blockheadedness of my old boss (who is still there) as much as the radically insane obscurity of my code, which is exactly how you'd expect 16k lines of 22 year old OO Perl 4 would be.
The wayback machine is pure nostalgia. Every time I go there I’m truly amazed at what it’s like to have a society wide memory that automatically captures these different moments of our lives.<p>Old pictures I never thought I’d ever see again. Landing pages for old companies I’ve built and only a handful of my closest friends remember. Blog posts from long deleted places, times, and mental caverns.<p>Just incredible.
One of the first programs I ever wrote - a program to find valid English crossword fills given a grid pattern with optional partial completions.<p>This project came to mind recently and I looked around on the Wayback Machine.
Turns out I posted the jar on MediaFire and linked to it on an old blog on Jan 2, 2011.
Luckily, there was [_one capture_ of the jar on MediaFire](<a href="https://web.archive.org/web/20240123154949/https://download1655.mediafire.com/lbbcl7ez7adgib9-IUIf0OotUQ4kI4yMugl-Z7a2t57Sf6zL1ibXfzI6OpKsYixWErxnSa_xXvfW7VUqBTZMquQnFAxdKdhgMHDW7saQ3hopgoAbW0-Qae5nX9nbIjSjlrs595R8mCsxTh5KCv0ls3-Pizdj5ZDuPJ0Inlg2CUKDws4/rwpl49xusm55s2a/WordFillVer2.jar" rel="nofollow">https://web.archive.org/web/20240123154949/https://download1...</a>) from oddly recently (Jan 23 2024).
I downloaded and opened it on my 2023 MacBook Air, and it ran!
Since it's Java, I'm guessing it runs on other computers, too :)<p>It was a delight to find it still working. Anyone else ever find an old program you thought you lost and get it running again?
Not to be snarky but 2011 is yesterday for programming, no major shift. I'd imagine <i>almost</i> all code written there would be able to run today.
The Internet Archive is (IMO) one of the most important endeavours of our time.<p>Consider donating: <a href="https://archive.org/donate" rel="nofollow">https://archive.org/donate</a>
My earliest "large" program which I can remember was a drawing program I wrote in GW BASIC. You could draw figures, change brushes, I think it had a crude filling function and a few other things. In my innocence, I backed it up onto 5.25" floppy disks, labelled them neatly and put them in a box. This was in the late 1980s.<p>Fast forward to 2024, I still have the disks but no drive to read them. On the other hand, the notebooks where I wrote out some of the routines for the programs are still with me and I can read them. Says a lot about "digital archiving".
One of my first jobs was writing a Perl script in 1996 that did an incredibly mundane set of checks on some routers in a datacenter (using this really cool new technology "BGP") and offered essentially a public REST API (though we didn't call it that back then) you could periodically poll to see their status. Every so often I check to see if it's still there, and it always has been. I really hope it makes it to 30 years.
You can download the old Java build system, Apache Ant, from 2003 and it still runs without issue:<p><a href="https://archive.apache.org/dist/ant/binaries/" rel="nofollow">https://archive.apache.org/dist/ant/binaries/</a><p>Download the bin.zip distribution, unzip it, then run this comand:<p><pre><code> java -cp "lib/*" org.apache.tools.ant.Main
</code></pre>
It runs on Java 21 without issues :D.<p>Java is like Windows: it can run stuff written for it forever.
If you are so inclined, a decompiler might be able to "recreate" a big part of the source code. IntelliJ IDEA's one (Fernflower) works well, its fork Vineflower seems like an interesting option too. Both are released under Apache 2.<p>Fernflower works so well I don't always immediately notice I'm debugging decompiled code.
One of my first pieces of code from my first job in 1997 still exists and runs according to a long suffering colleague that <i>still</i> works at the same place. That also means the code has gone from SCCS -> CVS -> Clearcase -> Perforce -> SVN -> Git. That's enterprise development for you.
Mine was from 1984, I recovered basic program from a Commodore 64 disk using a USB to 1541 controller. A character sheet creator for a "homicidal maniacs" role playing game my school friends and I created :-).
I found some old Turbo Pascal code I wrote in the late 1980s - early 1990s and managed to compile and run it under a DOS emulator a few years back.<p>The code is a map editor for the Rockford ('Boulderdash') PC game. Unfortunately, the versions of Rockford in the wild, for download and online play, seem to be based on a later game engine and the map format has changed so the editor no longer works.<p>The code was designed to produce registered and un-registered versions, but I never released it into the wild.<p>If anyone has a copy of the original Rockford game version I'd love to know about it.<p><a href="https://github.com/linker3000/Historic-code-PC-Pascal-and-ASM-/blob/master/ROCKED~1.PAS">https://github.com/linker3000/Historic-code-PC-Pascal-and-AS...</a>
I found mine too, archived in 2001, but my browser can't run Java applets anymore.<p><a href="https://web.archive.org/web/20010407081008/http://www.multimania.com/dolmen/barcode/index.shtml" rel="nofollow">https://web.archive.org/web/20010407081008/http://www.multim...</a><p>In fact I noticed 10 years after the publishing when I tried to run the applet that it didn't even run because the compiler of that time had generated invalid byte code (not caught by the JVM) or that the source code itself was invalid and that had not been caught by the compiler. "Compile Once, Run Everywhere", they said.
My first piece of code (substantive) was an ecommerce platform (frontend and backend). Complete overkill, and the startup was dead a year later, but the project itself was fun.<p>Likely 15k+ lines of code, not a single unit test; simpler times :)
The oldest thing I've written that I can still find on the Internet — the original disks are long gone — is a microbe simulator I wrote about 35 years ago. Apparently, at least two people archived a copy:<p><a href="https://www.macintoshrepository.org/11521-microbe-swarm" rel="nofollow">https://www.macintoshrepository.org/11521-microbe-swarm</a><p>I suspect that it would run as is on a 68k Macintosh emulator.
I have Objective-C software for iOS that was built for iOS 3 that still runs on the latest version of iOS and people still pay for it. Strange how language stability is an achievable goal.
Damn, that makes me want to see if I can dig up the asm code I wrote for the TI-83 and run in on an emulator on modern hardware. Really happy for you that you were able to find that jar!
Wayback machine lead me to rediscover a Doom 2 level I made awhile back [1]. What a treasure of a resource!<p>[1] <a href="https://www.doomworld.com/idgames/levels/doom2/p-r/rurqta" rel="nofollow">https://www.doomworld.com/idgames/levels/doom2/p-r/rurqta</a>
I also found mine! The first program I wrote (aged 13) was in 1991 - it was “RADBench” a program for the Commodore Amiga that created a slimmed-down workbench that lived on a RAD disk (like RAM but survived a soft reboot). Meant you could use your computer without having to reinsert the disk containing the main OS binaries whenever you wanted to do anything.<p>I distributed it via public domain shareware listings - back then you had to send them off to a distributor and they would advertise their apps in the major computer magazines.<p>I used to get royalty cheques in the post! Which I think I spent on sweets.<p>Turns out most of the shareware from back then has been archived online so I was able to get it running again on an Amiga emulator and read all the immature embarrassing stuff that a 13 year old kid thinks belongs in a ReadMe… ;-)
My first "major" program was a ASCII art based Super Mario Bros clone in Turbo Pascal from 2005. I don't have it anymore, but since Turbo Pascal hasn't changed and text terminals haven't changed, I'm pretty sure it still works.
This is cool. I went there to check if I can find some of mine and found the page that links to some of my public downloads, unfortunately, none of the Zip files were archived.<p>And the Ruffle Flash Emulator still do not work with most interactive Flash Applications!
My son found some of my old java code from 20 years ago and managed to get a couple of the programs to run, with some very minor modifications. The java applets not so much, because no browser has had support for applets for a decade or so.
I've recently dug up some of my first "larger" scale projects that I implemented in the early 2000's, including compiled executables, which managed to run unmodified on modern Windows.<p>That is an achievement in compatibility.<p>It was 2 demos of my game engine project, one compiled in late 2001 and the other in 2002 based on the exe file timestamps. They used Win32 and OpenGL, and surprisingly work faster on my laptop with integrated graphics than on my beast desktop PC.
>on the Wayback Machine<p>I mean, the original MF link literally still works (I intentionally break the link in case HN filters it)[1].<p>> Luckily, there was [archived] from oddly recently (Jan 23 2024)<p>You can see archiving reason on WB's index page [2].<p>In this case, it was archived due to "why: archiveteam, archiveteam_mediafire".<p>[1] http s:// www. mediafire .com/file/rwpl49xusm55s2a/WordFillVer2.jar<p>[2] <a href="https://web.archive.org/web/20240000000000*/https://download1655.mediafire.com/lbbcl7ez7adgib9-IUIf0OotUQ4kI4yMugl-Z7a2t57Sf6zL1ibXfzI6OpKsYixWErxnSa_xXvfW7VUqBTZMquQnFAxdKdhgMHDW7saQ3hopgoAbW0-Qae5nX9nbIjSjlrs595R8mCsxTh5KCv0ls3-Pizdj5ZDuPJ0Inlg2CUKDws4/rwpl49xusm55s2a/WordFillVer2.jar" rel="nofollow">https://web.archive.org/web/20240000000000*/https://download...</a>
I've found some of my old .jar's (some small games) written on Windows in the 2000's. They still run on Linux 20 years later. That's why I like the JRE.
I recently realized how much data the wayback machine is archiving when I found my old webpage with dozens of videos and photos of my puppies being born and they all worked.
Plain old JavaScript (without frameworks) holds up rather well. My simplified blackjack game from 1998 (modified in 2003) and a calendar program from 2001 (probably written before then) still work in a modern browser.<p>The calendar program uses document.write(), which is very embarrassing nowadays, but then again, that was what people did back in 2001.
I wrote a similar program once. To get it to be efficient I had to use a bunch of heuristics including scrabble scoring words, so it would prefer words with low scrabble scores which were more likely to fit in with other words.
So I’ve turned into an old man screaming at the sky. 2011 is not that long ago! Lot’s of production code from that time can be still considered fairly ”fresh”.
> Luckily, there was one capture of the jar on MediaFire from oddly recently (Jan 23 2024).<p>Why is that lucky? The MediaFire link is still live anyway.
Wow, I did some work in summer 1996 in java, web applets! Would be awesome to find that again, but I think the chances are less than slim for that happening.<p>Actually I did some somewhat impressive graphical x86 assembly programs around 1994-95 which I would have really liked to see today, but I saw no value in those once I had done them. :/
Boggles my mind when coders don't save everything they've ever written. It's easy to be a digital pack-rat without much consequence.<p>That said, my first Java 1.02 programs from the 90's still compile and the old jars run surprisingly well too. Color me impressed!
> Download the jar file
> <a href="https://github.com/khiner/CrosswordFiller/WordFillVer2.jar">https://github.com/khiner/CrosswordFiller/WordFillVer2.jar</a><p>Returns:<p>> Not Found<p>currently