Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

Java against the (Microsoft) world

Does the war between the Java camp and Microsoft really matter?

  • Print
  • Feedback
I learned programming on Wang VS systems back in 1986 using Wang COBOL. A year later, I moved into C programming on an IBM-AT machine with Microsoft Quick C and Borland Turbo C. Another year later, I took my newly acquired C programming skills and began programming on an AT&T Unix System V. I continued programming in C (and later in C++) on multiple flavors of Unix systems -- everything from SCO Unix to Amdahl to AIX to Solaris. Sometime in 1992, I got involved with programming on Microsoft Windows systems using Borland Object Windows Library, followed by Microsoft Visual C++/Microsoft Foundation Class Library and Visual Basic. From a user perspective, I actually began using Microsoft Windows 2.1 in 1987 and have used office applications (e.g., Microsoft Office, Lotus SmartSuite) on Windows to date; on Unix, I have used packages such as FrameMaker and WordPerfect for basic word processing.

Having had my foot in both camps, that is, Microsoft and Unix, I have seen the pros and cons of each operating system environment. Unix utilities and regular expressions are tough to beat for developer tools. The idea of piping input through a dozen commands resulting in the desired output has always fascinated me, and I still use Unix utilities on Windows every chance I get. Shell scripting on Unix has also been my passion; ksh/bsh/bash are my favorites. On Microsoft Windows, GUI tools with drag and drop and consistent copy, cut, and paste have their significant benefits because they are less error prone than command line tools.

Enter Java

Since I got involved with Java in late 1995, I now pay less and less attention to the operating system (i.e., the plumbing) and focus more and more on the application layer (i.e., the business software). I've developed and deployed dozens of Java applications on a variety of operating systems, including Microsoft Windows 9x/NT/2000, Sun Solaris, IBM AIX, SGI Irix, Linux, and Apple Macintosh. Many customer projects involve development on Microsoft Windows and deployment on some flavor of Unix/Linux. Sometimes source code, and even class files, are checked in a version control system, and new class files are automatically picked up by the middleware software (e.g., WebLogic) on the server (e.g., Solaris). In other cases, I simply FTP the class files to the server or just rebuild the application on the server.

My point is that when you adopt Java as your application development technology, the operating system becomes irrelevant. In fact, even other software such as databases and middleware becomes irrelevant, thanks to standard Java APIs (e.g., JDBC, servlets, Enterprise JavaBeans).

The trade-off



One thing I have had to learn over and over again in life is that "you get what you pay for." After six years of working with Java, however, I'm still looking for the catch. Today, any individual or organization can construct an end-to-end, multitier application using complete freeware. This includes the Web browser, standards such as HTML and XML, Java APIs, relational databases, JavaServer Pages/servlet/EJB engines, and much more.

  • Print
  • Feedback

Resources