How does it feel to code Java 1.0 in 2024?

And running .class files directly in Internet Explorer 4.0

Fabrício Yamamoto
WAES
5 min readJan 18, 2024

--

It was an ordinary Monday at the office. I was working on my Jira tickets because my sprint had just started. While focused on my colourful IDE, I heard some steps behind me. That’s when I heard the following:

“Hey Fabrício, I heard you do really like Java,” Newton dos Santos happily said, “so why have you never coded in Java 1.0 yet?” and as quickly as he arrived, as quickly he left.

That was enough for me. The triplex has already been rented.

Java 1.0

First, I could not find a Java 1.0 SDK to download, but Oracle provides an archive page with Java versions from 1.1 until the latest 21. At the end of the day, I was satisfied with using 1997’s Java 1.1.6 SE instead. It’s old enough for me.

Of course, I am using a MacBook with an unsupported OS; in 1997, the releases of Java 1.1.6 were supported only by Solaris and Win 95/98. So, I got the Win version because I was feeling nostalgic and was already prepared to remember how it used to be using the good old Windows 98.

Windows 98

To make it run, I’ve installed VirtualBox and ran a Windows 98 image file. To make it run correctly, I’ve followed some of these steps.

After my Windows 98 was finally installed and running, the challenge was transferring my Java 1.1.6 SDK to it, which I faced by creating an ISO and burning a virtual CD-ROM into my VirtualBox image.

Java 1.1.6 SE JDK CD-ROM

Installing

After transferring our beloved Java into Windows 98, it’s time to install. Let’s click twice on this nice file and check how beautiful life used to be.

The Java Splash image is beautiful.

After the splash loads, a very familiar page opens; it’s the good old Windows 98 Setup Wizard!

W98 Setup Wizard, I’ve missed you so much.

After installing Java in Windows 98, it asks if we want to read the readme file, which we indeed do, remembering that there was no Google back then, and everything we would have would be this readme file, some docs, and some old crazy books.

Java 1.1.6 SE Documentation

Running our Java 1.1 Hello World

Google is one of the websites that surprisingly still works with IE 4.0

After strictly following what was described in the readme file, it was finally possible to check the Java version inside the MS-DOS Prompt and thus craft our Hello World, which was pretty simple inside the good old notepad.

Hello World is printed using Java 1.1.6

Interestingly, wrappers were always there, but autoboxing was not a thing; it was released only in Java 5, along with static imports, enums, annotations, varargs, enhanced for, and generics.

Imagine not being able to sum two Integers :(

Java 5 was fire 🔥! Java 1.0 did not even support nested classes but already had something pretty interesting…

The Java 1.0 Applets

Did you know it was possible to import .class files directly from the HTML just like we import .js and .css files today?

<html>
<head>
<title> A Simple Program </title>
</head>
<body>
<applet code="HelloWorld.class" width=150 height=25></applet>
</body>
</html>

Even back then, in 1995, Java 1.0 was built with a very interesting feature called Applets. In the JDK 1.1.6 source folder, we find some nice demo projects that use them to render some things in the browser (currently Internet Explorer 4.0).

Demo projects available with Java 1.1.6 SE JDK

There are many interesting demos with animations and stuff. The ones I liked the most were the TicTacToe, which uses images, mouse events, and sound, and the SortDemo, which shows animation for different sorting algorithms.

It has a sound for each click and at the end of the game. (source)
Animation for each of the sorting algorithms made using applets. (source)

To be able to share this content, I luckily could find a Computer Science class from 1998 that still has a web page teaching Java 1.1.5, containing the source code for all these demos. (And the Java 1.0 code spec).

Conclusion

Yeah, Java 1.0 is pretty lame and shows us that the language has evolved a lot; on the other hand, it surprises having some obscure but interesting technology packed with some demo projects.

It has limited features and lacks things we are used to, but it’s at least pretty easy to print Hello World, even in the browser (using an HTML tag that has been deprecated forever).

If you want to learn more about Java 1.0 and Applets (which I doubt), there’s an excellent book called Java Tutorial, The: Object-Oriented Programming for the Internet, released in 1996. You can read it online or check the Amazon page (with reviews from 1997 😮).

I hope you enjoyed this trip back to the 90s as much as I did. See you next time!

Do you think you have what it takes to be one of us?

At WAES, we are always looking for the best developers and data engineers to help Dutch companies succeed. If you are interested in becoming a part of our team and moving to The Netherlands, look at our open positions here.

WAES publication

Our content creators constantly create new articles about software development, lifestyle, and WAES. So make sure to follow us on Medium to learn more.

Also, make sure to follow us on our social media:
LinkedInInstagramTwitterYouTube

--

--