CIPS CONNECTIONSINTERVIEWS by STEPHEN IBARAKI, I.S.P.
Java, Linux, Radio Userland guru and accomplished author, web developer
This week, Stephen Ibaraki, I.S.P., has an exclusive interview with Rogers Cadenhead, an accomplished author, writer, Web developer and Web publisher (whose sites receive more than seven million hits a year).
Rogers is a columnist for Linux Magazine and has authored more than 17 books such as "SAMS Teach Yourself Java 2 in 21 Days"(http://www.java21days.com), "How to Use the Internet", and the recent, "Radio UserLand, Kick Start" (http://www.cadenhead.org/workbench/kickstart).
Q: Rogers, you have been active with Radio Userland programming since the first beta release. We are looking forward to discussing your experiences in this area and others. Thank you for doing this interview.
A: Thanks for giving me a chance to talk about it.
Q: As an Internet content management and programming tool, describe the features and benefits of using Radio Userland?
A: Radio UserLand has benefits on two levels. For casual users, it's an excellent way to publish a weblog and read RSS newsfeeds. You can get started with the software in minutes. My wife Mary Moewe recently began using Radio to publish Wordzilla http://www.wordzilla.com), a weblog about scriptwriting, and has started following a few of her favorite sites through the RSS aggregator. This is her introduction to weblogging and RSS, and Radio seems like the best choice for that purpose. For advanced users with some experience publishing Web sites or programming, Radio is a powerful Internet development platform, object database, and content management system that can do all kinds of interesting things -- publish dynamic Web content as HTML, RSS, and XML; produce and consume Web services with XML-RPC and SOAP; mirror content; and gather information from Web servers and Internet services.
Q: You are an acknowledged expert in Radio Userland. How do you employ Radio UserLand in your work?
A: I'm using it in so many ways that I devote the first chapter of Radio UserLand Kick Start to answering this question. Radio has quickly become essential to my daily work routine -- it's running all the time. I use it to publish Workbench (http://www.cadenhead.org/workbench/), a programming and publishing weblog that has grown to 1,700 pages and 900 entries, and to mirror Web pages and other files automatically from my desktop to several Web sites. One of the biggest timesavers is how Radio replaces the need to use an FTP client -- I offer banner ads on a Web site, and when I finish designing an ad, I save it in a folder on my computer and Radio uploads it to the right server automatically. Radio's great at this kind of information routing. I'm using it to collect and present information from a custom XML feed offered by NASA, publish my Advogato programming diary using XML-RPC, and move data around using HTTP, XML, RSS, POP3, XML-RPC, and SOAP.
Q: Can you comment on the UserTalk programming language and the software’s object database?
A: Radio is built atop the same foundation as Frontier, UserLand's Internet server and content management system. The company's scripting language and object database have been in active development for over a decade, and they're great tools. UserTalk is a loosely typed language that favors the ability to use data over the need to control what form it is in. There are more than two dozen data types that include simple things such as strings and booleans and complex types such as outlines, UserTalk scripts, and binary data. The object database, which can be accessed with simple assignment statements such as workspace.name = "Bull Mancuso", stores all of these types persistently. The code and data you create with Radio are stored in this database (or another in the same format). It's challenging to master these tools, but UserLand does something unusual that helps when you're learning to use the software: More than 90 percent of the code that implements Radio's features is stored in the object database and can be examined (or even modified) by users.
Q: Describe the development process for Web services and detail XML-RPC, RSS and other aspects of the software’s XML functionality?
A: Radio is adept at producing and consuming XML-RPC (and SOAP) Web services, reading and producing RSS newsfeeds in all of the popular formats, and can read and write XML data. New formats are supported all the time -- when Sam Ruby's Atom project finishes its weblog and syndication format, I expect that UserLand will offer a nightly software update that adds read/write support to Radio within days.
Q: Why did you write the book on the topic area?
A: I was approached by Sams Publishing because they knew I was avidly using the software to publish my own site and had been an early beta tester. I was writing about Radio frequently because I liked the software and had no idea it might turn into a book.
Q: Who would be the audience for the book and why read your book?
A: The book is primarily intended for people who have installed Radio, decided they like its weblog and RSS features, and want to take the software further. One of Radio's best-kept secrets is that it's a $39 product that has most of the functionality of the $899 Frontier. Because the software does not include formal documentation, I'm hoping the book opens some eyes about how much Radio can do.
Q: Could you provide five tips from the book?
A: 1) Use the Nightly Backups preference to enable Radio to save your weblog data on the server hosting your weblog. When you publish with Radio, your most important data is on your computer, not the Web host. Saving it to the server -- which is off by default -- makes it easy to recover from a hard drive crash and other disasters.
2) If your weblog outgrows the free hosting offered by UserLand, consider switching to the Python Community Server (http://www.pycs.net), an open-source clone created by Phillip Pearson and Georg Bauer. It's faster because there aren't as many users and offers additional features such as the ability to edit comments.
3) A lot of great add-on tools have been created for Radio. I use Kit by Mark Paschal to enhance the RSS news aggregator, Footbridge (also by Paschal) to publish a weblog category to an Advogato diary, and MyRadio by Mikel Maron to collect other data sources.
4) When you write scripts, there are times when the compiled script you are running will be different than the one you see in the editing window. This is a feature, not a bug, and the reason is explained in Chapter 12 of the book.
5) Befriend the Radio debugger. When I finally took the time to learn how it works, I was kicking myself for avoiding it for so long.
Q: As a Java developer, where do you see it evolving versus competing products and how does it compare with other development languages/environments?
A: I'm currently working on a revision to Sams' Teach Yourself Java 2 in 21 Days that will cover Java 2 version 1.5, which is presently scheduled for early 2004 release. This may be the most dramatic upgrade since the introduction of Swing -- the addition of generics, automatic conversion between primitive types and objects, new for loops, and other core language elements are eagerly anticipated in the Java community. I'm not close enough to C# to forecast how well it will do versus Java, but for me the biggest reasons to continue using Java are the well-designed class libraries, great open source Java projects from Apache Jakarta, Eclipse and other developers, and Sun's genuine commitment to platform and data independence.
Q: You’re a widely read columnist on Linux. Talk about open source, Linux, and related areas—share your views.
A: After writing a Java column for Linux Magazine for the past year, I've been amazed by the amount of great open source code that's available for Java developers today -- projects like Struts, Velocity, and Log4J from Apache and the XML Object Model (XOM) library by Elliotte Rusty Harold. You can bootstrap a useful Java Web application quickly using well-written and reliable class libraries like these, and they're also great real-world examples from which to learn. Harold's XOM is especially useful in this regard -- he has documented his design principles for the XML processing class library, and they're great lessons for any Java developer. One of my favorite principles: "Simplicity is a virtue." There's exactly one way to do things in each XOM class; you don't have to learn 10 similar methods with all of their nuances.
Q: Please share your experiences with Web publishing—any stories to tell?
Q: As a developer guru and IT expert you have a considerable grasp of the IT industry. Can you make some predictions—which products and services plus vendors to concentrate on? Can you give specifics?
A: As long as you understand that any tech analyst with a legitimate grasp on the future should be retired to a life of luxury by now, and I'm not, at the moment I'm most jazzed about IBM Eclipse, which has huge potential as an integrated development environment and an application platform; Struts, a framework that makes it much easier to design scalable, reliable Web applications with Java; and UserLand Software. Weblogging is booming, and the three companies most responsible for it are Pyra (acquired by Google), Movable Type's Six Apart (financed by venture capitalists in April), and UserLand (independent). I expect to check News.Com one of these days and learn that some software company has backed up a money truck to company founder Dave Winer's house and acquired UserLand, Weblogs.Com, and the rest of the company so they can compete in this space.
Q: With your considerable business and development knowledge, I’m going to ask you a questions on a hot and controversial topic today, Web services.
1) How do you create a successful business model for Web services?
A: Short answer: beats me. So far, the mercantile efforts I've most been impressed by are the Web services offered by Google and Amazon, but in a larger sense RSS is the most successful Web service. As a former newspaper journalist and online newspaper editor, I'm amazed that so few pro publications are offering RSS feeds to put their content before several hundred thousand webloggers and other readers. The print media needs to recognize that it has to be on a 24-hour-a-day news model to compete with TV and radio, and offering RSS feeds (and even weblogs) is the way to begin that transition.
2) What are the traditional business models and what impact will Web services have on these traditional business models?
A: We've wandered outside my comfort zone here. My last corporate experience was as programming director for Zing Systems, an interactive TV company founded by several cable companies that were burning millions long before the dot-com bust made that kind of thing fashionable.
Q: You see these everyday in your activities however it can be a tough question. What are the ten most common problems and their solutions facing businesses and developers today?
A: On the Web, the biggest problem I deal with is the futility of making money through banner ads and affiliate programs. There was a brief moment before the dot-com bust in which it seemed like mom-and-pop Web publishers had an opportunity to make respectable money publishing their sites. I haven't had any hopes of generating revenue from my Web sites until the recent launch of Google AdSense, the new context-based ad service, and that could still prove to be a fluke. I think the biggest problem for everyone on the Internet is spam. There's a huge opportunity for a company that creates an alternative e-mail network in which the cost of e-mail shifts from the recipient to the sender. I'd love the chance to pay 1 cent per e-mail with the knowledge I'd only be receiving mail from people who paid the same fee.
Q: Sometimes it’s not what you know but can you find the important information when you most need it. In your writing, development and Web publishing work, which ten resources do you find the most useful?
A: My best resource is the network of webloggers and other sources I read with my Radio news aggregator and Feedster (http://www.feedster.com), an RSS search engine. It's like being plugged into a hive mind that's a step ahead where news about Java, Internet development, and daily events are concerned. Whenever I'm considering whether to write about a topic, I check Feedster to see what webloggers are saying about it. They're great at deflating hype and spotting things before the mainstream media catches on -- one big example was how the Valerie Plame Wilson leak scandal bounced around weblogs for more than a month before the Washington Post and other media caught wind of it.
Q: Wisdom is better than knowledge and derives from life’s experiences. How did you get to your current position in life and career? You must have some useful tips to share.
A: Like a lot of people who made the land rush onto the Web early in the mid-'90s, I was there because my career up to that point was not particularly successful. (If it had been, I wouldn't have had the time to poke around the Web.) I was given an opportunity to begin writing computer books in the mid-'90s by Sams Publishing by editors I'm still working with today, and it happened primarily because I forgot that I wasn't 100 percent confident in my qualifications for the job. Sixteen-odd books later, I'm convinced that a lack of self-awareness regarding your own limitations is the biggest contributor to personal success. It's like one of the rules of the Elements of Style author William Strunk Jr.: "If you don't know how to pronounce a word, say it loud!"
Q: If you were doing this interview, what three questions would you ask of someone in your position and what would be your answers?
A: We've covered so much ground I'd like to offer three questions in the hopes someone can answer them for me.
1) Why did the Mozilla project sacrifice all of Netscape's browser market share to develop a from-the-ground-up Web browser, write a great browser, and then abandon it to develop an entirely new browser right after I wised up and adopted Mozilla?
2) Who was the person who thought executing code in e-mail was a good idea?
3) Why am I the only technology guru who recognises the singular excellence of Microsoft Bob?
Q: Rogers, thank you for telling your story and providing so many useful insights for our audience.
A: Thanks. And remember to buy Radio UserLand Kick Start. For yourself and the ones you love.