One reader has truly high hopes for the Java API As a science fiction aficionado, I’m always on the lookout for the unusual, the unthinkable, and the implausible — brain caps, waldos, and uplifted dolphins come to mind. But I’d never thought of Java as a potential pipeline to the divine; that is, until I read the latest batch of reader poll comments:Whenever I begin to think that Java is big enough, Sun comes out with something new and useful like JNDI or JavaMail. Who knows, perhaps someday they will devise an API so that Java can communicate directly with God.Too bad Java wasn’t around when Arthur C. Clarke was theorizing the HAL 9000.Java certainly has potential, but when it comes to how soon the platform should realize that potential, readers were split (pretty much 50/50): Those who wanted the API to continue on its growth spurt felt that additions could only help programmers to develop more robust apps (although many expressed the desire to place additional functionality into extensions rather than in the core API); while those opposed wanted Sun to work out the kinks of the existing API (and focus on the VM) before adding to it. Here’s a look at the actual voter break down:51% said no, Sun should not slow down the development of the Java API43% said yes, Sun should slow down the development of the Java API5% were unsure, or didn’t have a strong opinionSuch an even split (not to mention the draw of over 1300 readers) leads me to believe that the topic was a worthy one. My thanks to the developer who submitted the idea. Here’s a sampling of reader comments. To see more, head to our archive of past polls. And, of course, don’t forget to voice your opinion in our latest poll.Sun should not slow down the development of the Java API (51%): I don’t see a limit to the size of the API — it should grow and grow. It’s not an API in the same sense as the flaky and burdensome Win32 API, it’s a set of well-architected packages of reusable code.I think Sun is doing an incredible job with Java. We eagerly await every new release to see what new classes are available. Since we can use the classes provided by Sun to replace code we had to write in the old releases, it makes us more productive…we can concentrate on writing application-specific code instead of environmental support classes. It is difficult to keep up to speed on the APIs, but if developers can use higher-level JavaBean components so the lower-level support APIs are rarely directly accessed, it won’t matter if there are 100,000 classes. What ultimately matters is how many the developer has to work with directly, and that number should eventually decrease as smarter components become available from Sun or from other vendors. We are trying to build a complex system. I don’t want to build everything from scratch. The APIs are essential to our productivity.The development of the Java platform at such a furious pace is the only way it is able to stay relevant. It is true that the learning curve is getting steeper, but the total utility of the platform is increasing exponentially. The Java platform is reaching a high level of maturity very quickly — the bloat is “high quality”.Java is evolving from a language into an application platform or maybe, ultimately, an operating system. The real world is complex, and Java needs to have the breadth to interface with most of the real-world standards and protocols that are out there. In my opinion, most of the Sun extensions to Java add real value.Having a wide range of APIs makes programming easier and results in higher-quality code, quicker.I think the size of the Java API is an asset. Who can complain about having ready-made classes on hand for the most common and important data structures? Certainly the API is large, but the concept of packages makes the API understandable. One can get comfortable with the packages he/she needs for their applications without being bogged down with the rest of the stuff.Who says the API is exploding? I’d say it’s maturing to encompass the needs of state-of-the-art development. Compared to Windows xx + Win32, Java is hardly a bloated API. The growth of the core packages will decrease as the API matures, and more functionality will be available as standard extensions/premium extension/ and other external packages.The API must continue to grow to support Sun’s optimistic goals of encompassing all functionality found in the APIs of platform-dependent languages. Sun has done well to make the API available in sections and should further this effort as new developments such as the 3D API are refined. As a developer, I should be able to utilize the 3-D API and only the other core Java that I need for a graphics project.It’s a tradeoff: If people want more functionality in Java, they have to have a bigger API. I’ll happily suffer the larger API provided functionality continues to improve.Sun should slow down the development of the Java API (43%):Sun should spend more time on improving the quality of the implementation of the APIsSun needs to consolidate, regroup, and debug their code rather than exploding the API in the way that they’re doing. Java is *still* not ready for most real-world applications. It’s not robust enough, and you can’t guarantee the same behaviour on all java platforms — even with “100% Pure Java” apps. They need to sort this out, or pass it to a standards committee who *will* sort it out for them. If they don’t do this, Java is in danger of being ignored because it’ll be all hype and no delivery on their promises.Too many things are being included in the “core” API that should instead be made available as mix and match add on packages.Is Java 7 times more useful with 1400 classes instead of 200? No.I think that Sun should be concentrating on simplicity, stability and speed, not an API for every fringe group.I’m glad that Java is evolving, but developers should probably get a chance to breathe, here. Creeping featuritis can ruin or kill–look at, say, MS Word (or any Microsoft product). Even our top Java programmers are just starting to really dig into 1.1 and make it really sing.Keep adding API, but don’t put it in the core. Extensions are cool.Sun does not understand how to make Java more ubiquitous and is trying the bloatware strategy from lack of vision. Sun will kill Java trying to make it do everything.History has shown that if you give us developers just a little bit, we’ll wring every ounce out of it. But, if you give us too much (and too many bugs), we become lost, apathetic, and sometimes angry.I thought the whole purpose of Java was platform independence. As the API grows, Sun is limiting the number of platforms that have the resources to implement it. JavaAPIs