Facing today’s business challenges with Java
In Part 1 of this series, I presented several observations that set the stage for a useful business discussion about Java. If you’re going to convince your manager to adopt Java, you should begin by reading that article and becoming familiar with its ideas. I’ve also prepared StarOffice and PowerPoint versions of “A Business Case for Java,” a presentation that you’re free to modify and use in your proposal; it is available for download in the Resources section below. In addition to those business concepts, I compared Java to both Visual Basic and C/C++, and explained how the cost structure inherent in those languages means that a switch from them to Java can result in dramatic research-and-development savings.
TEXTBOX: TEXTBOX_HEAD: The business case for Java: Read the whole series!
-
Part 1. Why a strategic move to Java makes good business sense
-
Part 2. Facing today’s business challenges with Java :END_TEXTBOX
All businesses face increasingly difficult challenges today, as Internet technologies reduce cycle times, increase expectations for quality, and raise the bar with respect to global competition. The message for IT managers today should be clear: IT investments must be strategic. This means that so-called Band-Aid solutions, while less costly in the short term, will have much higher costs in the future.
Clearly, IT managers must also take the notion of standards to heart. As I stated in last month’s article, exposed interfaces must be standard. Today’s competitor may very well be tomorrow’s strategic acquisition. In order to remain nimble, standards-based IT interfaces are the only choice for the prudent manager. In addition, a firm must be very strict in its cost containment in order to survive in the competitive global market of the Internet. Java’s efficacy to these ends was the essence of the first article. Just as important as Java’s lower structural development costs, however, is its ability to embrace legacy infrastructures.
Java and the legacy
When people refer to the legacy, in a single word they encompass a veritable encyclopedia of software that serves the enterprise worldwide. In the past few years, the fear of Y2K and the explosive growth of the Internet have been goads for IT managers to rethink much of their infrastructure. Using lower-cost networked systems to frontend, and ultimately assimilate, mainframe data and services had become the norm, even as personal computers had blossomed on desktops and had ultimately become nomadic. While this was happening, the Java platform matured, moving closer to complete integration with existing systems. The litany of Java APIs and initiatives are a testament to the worth of the “write once, run anywhere, integrate with anything” platform. This maturation process has culminated in three separate but related technologies:
-
Java 2 Platform, Standard Edition (J2SE):
-
The Java 2 software development kit (SDK), tools, runtimes, and APIs for developers who write, deploy, and run applets and applications in the Java programming language.
Features:
- JFC
- Swing
- Pluggable look and feel
- Accessibility
- Drag-and-drop functionality
- Security
- Internationalization
- Java IDL
- JDBC
- JavaBeans
- RMI
-
Java 2 Platform, Enterprise Edition (J2EE):
-
A combination of technologies in one architecture, with an application programming model and compatibility test suite for building enterprise-class, server-side applications.
Features:
- Enterprise JavaBeans
- CORBA
- JavaServer Pages
- JDBC
- Java Messaging Service
- JavaMail
- XML
- Servlets
- JNDI
- Transactions
-
Java 2 Platform, Micro Edition (J2ME):
-
A Java runtime environment that targets a wide range of consumer products, including pagers, cellular phones, screenphones, digital set-top boxes, and automobile navigation systems.
Features:
- K Virtual Machine (KVM)
- Device-specific APIs
- Device configuration/deployment tools
Remember, Java was designed to serve in a heterogeneous, internetworked environment, in which Internet protocols bind diverse platforms into the network. Given such a network, the homogeneous Java platform unifies programming environments by treating everything in this distributed computing environment as objects. It thus eases access to a wealth of legacy databases and applications. No matter what the legacy may be in a given IT environment, there is likely a Java API that offers an entrée into the Java platform there. This means that Java can embrace, rather than replace, the legacy. And while you may think that your company ought to throw away all of its legacy software and start over in Java, your manager may appreciate the fact that, with Java, you can make use of existing applications and data in a dot-com world.
The various Java initiatives provide a wide array of development tools and solutions to resolve existing problems. The communities behind Java, like Jini.org, make it a complete yet dynamic platform for sensible commercial deployment, regardless of ultimate architectural decisions. The point is to choose Java as the strategic IT glue and interface to the world, and glean the cost savings, improved quality, and productivity gains that will result.
Java and the future
Just as legacy considerations are key to IT platform decisions, so too are expectations for the future and possibilities that lie ahead. What will the world look like in a year? In two years? In five? And how should your business position itself in order to deal with those changes? The prudent IT manager must keep one eye on methods for maximizing legacy returns and the other on future technological innovations. Once again, Java excels at helping your manager accomplish this.
When James Gosling first designed Java, he was thinking of intelligent, nomadic devices that occasionally connected to the Internet, but were also capable of operating autonomously. The bytecode representation of Java executables, which made the memory footprint smaller, was chosen precisely because of the rapid expansion in small, intelligent devices that was assumed to be on the horizon. That assumption has been borne out by the recent explosive growth of cell phone, pager, and personal digital assistant (PDA) sales. And, since new devices become even more valuable as they join the network of other devices (as Metcalf’s Law implies; see Resources for more information), that explosion will clearly continue. Soon we’ll all be served by hundreds of cheap personal intelligent devices, each of which must be programmed and ultimately integrated into the network. The work to accomplish this on a mass scale is made much easier if Java is used as the platform; thus, Java has a natural momentum in this space.
Java momentum
As software developers around the world utilize Java for enterprise-level solutions, downloads of the Java Developer Kit now number in the millions. In Part 1 of this series, I referred to the idea of memes, alluding to the notion that, in an internetworked world, new ideas can spread at the speed of light, thus infecting human hosts in an increasingly rapid fashion. Java is one idea that ha spread very rapidly in the past decade due to the Internet. Indeed, as more and more enterprises around the globe recognize the virtues the platform proffers and change their development efforts accordingly, Java developers cannot be trained fast enough to meet the demand. Probably the most challenging problem your IT manager will face with Java projects is finding experienced Java programmers. This leads to one fairly obvious choice: he or she should consider training investments to be strategic.
Training as the strategic edge
We live in the information age, which means that the essential currency of world economies is, more and more often, knowledge itself. Even more important than raw knowledge is the application of that knowledge in a manner that adds value to existing goods or services. The implications for today’s managers should be clear: the most important asset in any firm is the wetware, or brainpower, upon which that firm can rely. As a firm generates more and more knowledge, it is more likely to prosper. Knowledge or information itself is no guarantee of success, but lack of it is most certainly a harbinger of failure. Thus, the prudent manager will readily see investments in knowledge as being of great value to the future health of the company.
Many companies are realizing significant savings in development costs when adopting Java. In light of this, the most pressing issue an IT manager faces today is finding experienced Java programmers. To that end, an aggressive Java training program for in-house development staffers can be viewed as a strategic investment. While I cannot offer a precise return-on-investment percentage, it stands to reason that investing in the most valuable asset of your firm (wetware) so as to prepare it to meet the demands of a 21st century business environment is simply common sense.
Final thoughts
The business case for Java is clear. Java is an idea whose time has come. In light of accelerating change, omnipresent intelligent devices, Joy’s Law, and Internet time, it should be clear that a cost-effective, Internet-savvy platform like Java isn’t just for geeks. Making the decision to develop mission-critical applications in Java can be one of the most astute moves an IT manager can make. If your shop is resisting Java because your manager is overly focused on existing infrastructure investments, don’t give up. Download the presentation, schedule an appointment, and make the business case for Java something your organization discusses openly. You may be surprised to find your manager suddenly convinced that some investment in Java is exactly what he or she needs to deal with business pressures.
Please let me know how it goes. My email address is below.