Interview with the Author - Satya Kolachina talks about Linux Application Development for the Enterprise
About the author:
Satya Kolachina has been in the software industry for 17 years. His programming background begins with C, progresses to C++ and ends up with Java. He likes the UNIX platform and beginning looking for a PC version of it about 10 years ago. He found, and started using, Linux. He told me that in his opinion - for an open source community with no financial resources to develop a platform that is equal or better with Windows is an amazing phenomenon. As a proof point he observes that Microsoft no longer claims they are not scared of Linux.
Art Gould in conversation with Satya Koachina
I spoke with Satya Kolachina about his purpose for writing the book, and to get his thoughts on using the Java language for the Linux platform.
Q. Does Java on Linux have special characteristics?
A. Prior to Linux I had to think about two platforms: Windows for the client side, UNIX for the server side. Both have tried to cross over to the other side but neither has really been successful. Linux is a combination of both: a UNIX operating system with the complete functionality that Windows has (GUI interface perspective). So Java on Linux is more powerful than Java on UNIX by itself, or Java on Windows by itself. Java overcomes some disadvantages inherent in other languages because it provides unified libraries and an SDK. Java lets people develop UI applications with more ease and confidence than with packages based on C or C++. It makes an application product more sale-able because of the greater penetration. The Java platform mitigates risks that I see with open source because it separates application development from the underlying layer. There arent many Linux vendors providing tools and SDKs; they primarily provide distributions. The inventors of Java have really helped the Linux platform: there are a lot of IDEs and other tools available. So I believe that the survival and health of Linux is enhanced by Java platform.
Q. How did you get interested in Linux for enterprise application development?
A. I saw several Linux books that concentrated on a specific area, either kernel development, or device drivers or game development. I wanted to convey a message to the upper management of industry: that Linux is an operating system that enterprises can use in place of Windows or UNIX even for mission-critical applications. I also wanted them to know that there are plenty of commercial tools and applications on Linux. Open source technicians already understood the value of Linux but Windows programmers were mostly scared of UNIX because its a command-line environment. I wanted to reassure this group they could use Linux as well as they use Windows so I included chapters for the Windows developer migrating to Linux platform. I think that Windows programmers migrating to Linux should use Java for the development language.
Q. Are you doing Java applications on Linux in your own work?
A. Yes, Ive built several enterprise systems in Java on the Linux platform.
Q. How portable do you think Java really is on Linux?
A. Ive used RedHat, SuSE and Mandrake and they are all very portable. The performance of the JRE is pretty much the same on thyese platforms because the underlying kernel is the same on each.
Q. Have you encountered any particular Java issues on Linux?
A. The EJB containers from each vendor are a bit different. Vendor products can create compatibility issues.
Q. You said before that Linux helps the Java platform. Could you elaborate?
A. The meaning of cross-platform development only exists for going between Windows and Linux. The concept of portable development is only meaningful because developers can target both of those platforms with the same application. Otherwise, they would be building Windows clients and UNIX server components.
Q. Im curious if you have an opinion on the open source Java discussion currently going on.
A. I dont think that Sun should open source Java. Sun has done a great job with the Java platform. Open sourcing Java risks the advantage I mentioned before; that Java mitigates the risk of the Linux platform. The risk is that the open source Linux community could lose energy. Since Java isolates the application developer from the OS layer developers are safe with Java.