The new book, The Developer Shortcut Guide to SuSE Linux was written for developers who want to learn the quickest ways to write customized open source business applications. But the book's author, John Featherly, has insights into more than just the developer side of things.
SearchEnterpriseLinux.com caught up with Featherly to talk about his new book and to get his thoughts on where Linux and the open source applications market is heading. The author also offered tips for SuSE administrators and developers, those comparing KDE and GNOME, and those mulling the deployment of JBoss with SuSE.
Featherly, who in addition to being a writer is currently a consultant with HP Services and Consulting Integration Group, is a 20-year veteran of the IT industry.
Linux companies like Novell seem careful not to get ahead of demand for Linux on the desktop. How big is the demand for desktop Linux in your opinion? Do you see that demand growing, shrinking or staying the same over time?
John Featherly: I expect the demand to grow. Places that were early adopters like the scientific and academic [space will continue to use desktop Linux] while corporate and government [sectors] are joining in and will show the most growth. The key enablers are application types and IT support structures. Science and technical users are typically writing their own domain-specific apps and are self-supporting. A scientist is much more likely to write a research paper using TeX than they are MS Word. Home and small business adoption is somewhat further out and will be enabled by retail equipment vendors as much as the users. It may seem not necessarily related, but until there is widespread game support I predict home adoption will be slow regardless.
Chapter one of your book talks about KDE and GNOME. Have these desktop environments changed over time? How should a Linux pro go about choosing between the two?
Featherly: I think the biggest changes for both are in stability and performance. The OSS developer community model has done a great job in both cases of building up and building on strength. Of course, the other big thing is increased functionality. Media applications and media management are the recent growth areas in PC use. I think the choice between the two comes down to personal taste. KDE has taken a Windows-style direction, while GNOME seems to be going in a Mac-inspired direction.
Some analysts I've spoken to say that Linux is still mainly relegated to "edge" applications such as Web serving and e-mail. Do you agree with that? Do you see evidence that Linux is really moving into the realm of more mission-critical applications?
Featherly: Outside of the scientific users I mentioned earlier, server-side adoption of Linux certainly started with Web and e-mail servers. I would claim the Web is redefining application architectures from the edge driving through to the core. Where this has happened and where it will happen, Linux adoption is a natural pull-through. Media and entertainment companies developing Web property and Web distribution models are good examples; e-commerce -- the world's largest bookstore -- is another example.
Let's talk about the growing number of open source applications out there. Do you see products like Compiere ERP becoming mainstream in large production environments when companies like Oracle and SAP are spending so much on research and development of similar products?
Featherly: ERP and CRM are the best examples of monolithic proprietary products that have been huge to implement and maintain. In addition to those direct costs, there is also a high cost in rigidity -- lack of agility. I think the innovation for ERP and CRM will come as they transition to modular service components in an SOA. As that happens, that's where I see openings for OSS projects to seep in.
Your book talks a little bit about the open source JBoss application server. From a technical perspective, what would you say are the three most important things a Linux professional should know and/or do before deploying JBoss with SuSE Linux?
Featherly: They should definitely know EJB and be proactive and go after EJB 3.0. In its current state, one of the roughest edges with JBoss is Web services, so it's good to have a background there. Also, this is not specific to JBoss but still important, design a good and complete operations model. Design to load and performance expectations, design administration for the complete application life cycle.
I've heard that JBoss combined with Xen presents some interesting opportunities for server virtualization. What are your thoughts on this and where do you see these two technologies heading into the future?
Featherly: Server virtualization is certainly an important concept. I personally see its current implementations as a questionable compromise. The primary responsibilities of an OS are to be a resource manager and provide [an] execution environment. If it does those properly and the application structures are sane, the OS provides all the benefits of a virtualization layer. You should not have to pay the performance penalty of a virtualization layer to buy a solution to a multi-application management issue. This is more of a dominant problem with the Windows OS and Microsoft applications than it is for Linux and JBoss, in my opinion.
What are two or three of the lesser known aspects of SuSE Linux Professional that developers should know about? What are two or three little nuggets that system administrators should be aware of?
Featherly: For administrators, definitely know about and how to use YaST repositories in addition to the SuSE distribution repository. Also know about and remember to look at the SuSE packaging notes in /usr/share/doc/packages.
For developers, the .NET CLI implementation mono is in the distribution; try it out along with GTK# and boo even if you are new to .NET. Another thing, remember this is an X Window environment, the X display is remote-able and you are hosting an X server.