The Internet is wonderful. It has created many new opportunities for artists, writers, Web masters, browser vendors, language developers and advertising agencies. But what about the software developers? Besides a handful of big players, there are few software companies making serious money on the Internet. As the founder of a Silicon Valley software company, I often wonder what the future will bring. Will there be room for us after the browser wars are over?
I spent almost three years in the Java project and I loved it. Java is a great language. It was created for hackers who stay up late, skip nights of sleep, drink too much coffee and hardly ever leave their keyboards. With Java it is now possible for every programmer to get their 15Kb of fame. Anyone can now hack some Java, add it to a Web page and have thousands of people download it with a simple click of the mouse. This is heaven! No more installation, no more porting, death to ftp!
All this was part of James Gosling's original vision: software for everyone, and for consumers in particular. The reality has turned out to be rather different. It turns out that any piece of code, if it wants to do something interesting, quickly becomes too large to download as an applet. As a result, nearly two years after Java's first release several excellent tools and libraries have emerged, but Java still isn't growing as fast as it should, and for many companies it remains a goal, rather than a solution.
At Marimba we love Java. We formed Marimba to develop consumer applications in Java and deploy them through Java-enabled browsers. However, we quickly discovered the flaw in our reasoning: the download problem. How do you download a 500Kb Application over a modem? Very slowly.
To be a successful Internet software developer, it has become a requirement that your tools and libraries become a standard. This usually means giving away the software for free, which can make you famous or notorious, but not rich. An alternate strategy is to convince Sun, Netscape, or Microsoft to make your software part of their Internet platform, and thus make it a defacto standard.
Today lots of small companies have, against all odds, created excellent Java tools and libraries which are hard to sell because of their download size. The bundle or die dilemma has to be resolved before a healthy Internet software industry can emerge!
Bigger, Better or Both?
If Java wants to capture some of the application development market, it needs more sophisticated tools and libraries. Sun has embarked on a heroic effort to extend the standard Java libraries with new functionality and has picked a set of solutions which solve some of the immediate problems which face today's Java developers. The recent beta release of the JDK 1.1 is an enormous step forward in terms of functionality, performance and (unfortunately) size.
Because of the need to embrace new functionality, the Java standard has gotten a lot bigger recently. What happened to the original goal to Keep It Simple Stupid? The standardization of new functionality has effectively robbed the developer of choice. The standard is never exactly right for all jobs, and what about all those tools and libraries which have been developed by small software developers? Was all that for nothing?
The fundamental problem which needs to be resolved is that of software downloading. If downloading software were more efficient, it would be possible to bundle libraries with your application rather than with the browser. This would keep the Java standard lean and mean and it would provide the developer with the ability to choose from a wide variety of tools rather than being restricted to those that were declared a standard by the big players.
At Marimba we've decided to tackle the download problem head-on. With Castanet, it is now possible to efficiently download Java applications in an efficient and incremental manner. Castanet provides new hope for the thousands of independent software developers who are desperately looking for a way to make a buck on the Internet.
Remember, this is the golden age of the Internet, and it won't last forever. If you believe there is room for independent software developers once the Internet wars are over then roll up your sleeves and start hacking.
About the Author
Arthur van Hoff is CTO of Marimba, Inc., which he formed in early 1996 along with three friends, Jonathan Payne, Sami Shaio and Kim Polese, all
former members of the Java team at Sun. Marimba is dedicated to improving the experiences of users and developers on the Internet by providing better mechanisms for delivering software.