Applications in Java
5th April 2003
My opinion of Java as a platform for developing GUI applications has generally been that it results in slow, clunky, ugly software that is a pain to install, feels unresponsive and fails to behave in the way I expect a GUI to behave. I based this on my experience with Java applets (ugh) and Mediasurface, a content management system I had to struggle with for two years working for a dot-bomb in London.
I’ve just had my mind opinion reversed by spaces and Java Web Start. Spaces is a PIM of sorts, but stands apart from the rest in that it introduces the concepts of “spaces”, which are abstract entities that group related content together. Content comes in the form of contacts, email, notes, tasks, a calendar and RSS feeds. It’s an interesting concept and the implementation is excellent for an alpha release.
While spaces is interesting, it’s not quite good enough for me to switch to it over Evolution. What it has done is shown me that a Java application can be fast, good looking and every bit as usable as a native application. It uses Java’s look-and-feel functionality to adapt to the system it is running on, which I had seen in action once or twice before but never really took seriously until now. The author claims that write once run anywhere is no longer a myth, and backs it up with a screenshot of spaces running on OS/2.
Installation was handled by Java Web Start, which is a technology I’ve completely ignored before now. It’s very smart—essentially, it integrates with your browser (via a mime-type association) to allow execution and installation of applications with a single click on a link. Spaces weighs in at 2.5MB, so on broadband it took about a minute for it to download. It showed me a certificate, asked for permission to access my hard drive and loaded up the application. Now that it’s installed I can execute it through the Java Web Start icon on my desktop (with an option to add a direct shortcut to the start menu—yup, I’m using Windows XP at the moment). It’s very slick.
I’m sorely tempted to give Java another go.
More recent articles
- Weeknotes: datasette-enrichments, datasette-comments, sqlite-chronicle - 8th December 2023
- Datasette Enrichments: a new plugin framework for augmenting your data - 1st December 2023
- llamafile is the new best way to run a LLM on your own computer - 29th November 2023
- Prompt injection explained, November 2023 edition - 27th November 2023
- I'm on the Newsroom Robots podcast, with thoughts on the OpenAI board - 25th November 2023
- Weeknotes: DevDay, GitHub Universe, OpenAI chaos - 22nd November 2023
- Deciphering clues in a news article to understand how it was reported - 22nd November 2023
- Exploring GPTs: ChatGPT in a trench coat? - 15th November 2023
- Financial sustainability for open source projects at GitHub Universe - 10th November 2023
- ospeak: a CLI tool for speaking text in the terminal via OpenAI - 7th November 2023