10

Foreword: I am not trying to accomplish a task using this technology but rather asking about the specific use cases of the very first release, out of curiosity.

Was Java used for anything else other than the web in its first release? I am just curious to know whether the very first version of Java was used for anything other than that.

I can't find this sort of information specific to the very first version. I would like to know.

Here is what I have found:

There were five primary goals in the creation of the Java language:

  • It must be simple, object-oriented, and familiar.
  • It must be robust and secure.
  • It must be architecture-neutral and portable.
  • It must execute with high performance.
  • It must be interpreted, threaded, and dynamic.

wikipedia.com does not answer my question

Java was originally designed for embedded network applications running on multiple platforms. It is a portable, object-oriented, interpreted language.

scienceredirect.com

Does this mean it was originally designed for applets and serverlets, and nothing else?

9
  • 5
    Based on your quotes, it was not first used or even intended for web. It seems there was a need for a high level C++ like language for embedded systems like PDAs and cable TV set-top boxes. But being unsuccessful with those products they experimented if a web browser running Java could provide similar interactive medium than a cable TV box. So while prototyping was made earlier, only release 1.0a2 included some browser support.
    – Justme
    Oct 4 at 9:36
  • 7
    Keep in mind, when looking at the history of Java, that it was the first language with a marketing department. Much of what was said about Java was marketing hype. Oct 5 at 12:44
  • 5
    @MichaelGraf -- maybe I've been overreacting, being deeply involved with C++ development and seeing the anti-C++ marketing. There was a time when it seemed like every article about Java progamming began with a cheap shot at C++ ("C++ can't have garbage collection because it doesn't run in a virtual machine" -- so many thing wrong there!), and you had to read the second paragraph of the article to find out what it was about. Oct 5 at 13:08
  • 4
    wikipedia is .org, the .com is a backward compatibility redirect not used since 20 years.
    – ignis
    Oct 6 at 6:15
  • 3
    The one thing Java doesn't do is execute with high performance. Even on a fast processor, it is extremely slow. It is also not portable. I've had to run 3 separate Java systems because different programs required different features which were deprecated on later versions and not available on earlier versions.
    – cup
    Oct 6 at 16:53

4 Answers 4

17

Much like today, you could compile your code and run it locally.

The JDK 1.0 starter kit is online at https://archive.org/details/javastarterkitjdk1.0 is you want to give it a try.

The original Java tutorials have somehow survived here. They include build instructions for both applications and applets.

1
  • The Java tutorials linked is from 1.2 which was the big fix-stuff version so be certain not to use any of those Oct 9 at 18:38
20

Does this mean it was originally designed for applets and serverlets, and nothing else?

No. Facing competition from the fledgling NeXT, Java originated as a project to improve Sun's workstation "story" and attract developers. Soon, Java was envisioned as an all-purpose development system for building and integrating consumer electronics. With the rise of the Web, Sun pivoted to integrate Java with browsers and, later, HTTP servers.

In December 1995, WIRED published a history of Java up to that point. After casting around for ideas to compete with NeXT, an internal team at Sun was formed to produce a unifying development and runtime environment for consumer devices—TVs, game consoles, CD & DVD players, home security, you name it:

By August 1991, [James] Gosling had the graphics running in his new language, which he called Oak (named for the tree outside his office window); this was the progenitor of Java.

The vision was for "Oak" to execute on a variety of consumer hardware, hence the language should be portable; and since reliability, rather than performance, was more important for consumer electronics, the runtime environment should be stable and guard against fatal failures.

The consumer electronics vision cooled in 1995:

The Web's sudden emergence changed all that. ... In January 1995, Gosling's version of Oak was renamed the more marketable Java. [Patrick] Naughton's killer app was an interpreter for a Web browser, later named HotJava. He wrote the bones of it in a single weekend. Following Joy's dictum, they intended to make it available free on the Web.

From there, applets were born, Netscape licensed Java for their browser, and Java spread onward, leading to the "Java Everywhere" motto.

3
  • 1
    I think grouping applets and servlets together is misleading, both in terms of the timeline, and the surrounding narrative. Applets shipped with the very first version of Java, were widely hyped, but are now a historical curiosity. Servlets were released a couple of years later, as essentially a separate product, and are still around today. The idea of Java for embedded devices is also still around - I'm not sure whether it was never really dropped, or it was revived when applets were found to be a dead end after all.
    – IMSoP
    Oct 4 at 18:19
  • 2
    I didn't intend for the final sentence to mean "all these things happened at once," but to indicate how Java's use spread and grew over time. (The OP asked specifically about applets and servlets.) I've updated the language to clarify that. As for whether Java was dropped for embedded devices, no, it wasn't (it found a home in Android, after all), but in 1995, Sun was squarely focused on adapting Java to the Web.
    – Jim Nelson
    Oct 4 at 19:26
  • The competition from next was about selling computers. Software was typically highly proprietary- Sun later was the only one going open source. Oct 9 at 18:43
9

How was the first release of Java (JDK 1.0) used?

TL; DR: scarcily


Longer answer

I was there, so I can answer from my point of view.
Back then, I was a student, and there was a lot of talk about this new language. It was something like C++, for people who didn't like C++.
So I bought a book that contains a CDROM with a JDK on it. Then, I learned / relearned /mislearned the first notions of Object Oriented Programming (it was very badly described in this book), I wrote my first classes with the notepad, and compiled them with the JDK that was supplied on a CD with this book. It was very primitive, but hey!, it ran.
I bought an other book and learned to make some clock applets that would make SVG and Flash people laugh but hey!, it ran.
I bought an other book and learned AWT. I didn't know anything about modal dialogs, but hey!, it ran.
At this time, it was already 1.1 and 1.2 was looming around, so I won't bother you with the details.
From what I learned, and what I found out people around me knew, Java 1.0 was not heavily used, except for colleges, proofs of concept, and some french nerds who were young back then.

It would take a few years and several versions for Java to become the behemoth we know today.

2
  • 3
    Anecdotal, in early 1995 I was hanging out in the CS computer lab when a grad student mentioned Java and went on about how much better it was than C/C++. He also said it was being used "for business applications". The reason this conversation was so memorable is that a few months later I got a job as a C++ developer and got to experience first-hand all the problems the dude in the lab had told me were fixed by Java. I would remember it every time I had to debug another segmentation fault. And yet Java didn't seem to me like a viable career choice until around the time 1.2 or 1.3 came out.
    – Alex R
    Oct 6 at 5:47
  • 3
    I'm a professional C++ developer, and I've never had to debug a segmentation fault in any code that I've written. If you're experiencing problems like segmentation faults in C++, then you're writing C++ incorrectly. (Probably, you're writing it like it's Java, using new. It's not Java.) Meanwhile, I have colleagues who work with Java that have no end of issues with it. There are no "problems" with C++ that are "fixed" by Java, except possibly that the program runs too fast or that there aren't enough objects. (JavaScript "fixed" both of those two things compared to Java, too.)
    – Cody Gray
    Oct 6 at 23:52
6

There was at least one serious desktop software application originally developed for Java 1.0: Corel Office for Java. While it was not very popular, it did exist. Although the documentation I found does not explicitly specify Java 1.0 (and why would it? There was only one version then), the initial preview release was in 1996 and Java 1.1 was not available until 1997, so we know it worked with Java 1.0.

In practice, Java 1.0 was not very popular. It was pretty slow (Java would not escape its reputation of being slow for over a decade), lacked many features that are today taken for granted, prone to memory leaks, and did not really live up to its claim of "write once run anywhere" until version 1.2.

The primary focus of 1.0 was applets because Sun was able to get support for applets into the Netscape browser, but Java 1.0 was also intended for desktop applications running in a standalone virtual machine. Servlets were an early concept, but did not really see a usable implementation until 1997, by which point Java 1.1 was being used.

1
  • 3
    Java has escaped its reputation of being slow and having memory leaks?
    – Cody Gray
    Oct 6 at 23:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.