Java Libre

I got together with Sun co-worker Tom Marble (and here) for dinner last night. We went to a nice Cuban restaurant called Cuba Libre only a short walk from the hotel. Shortly after we arrived, we just happened to run into Apache Harmony folks Geir Magnusson and Tim Ellison (from IBM Hursley). A little later Sara Dornsife showed up. We had a nice dinner and enjoyed the mojitos. If you know Tom and Gier, then you can probably guess the #1 topic of conversation. We talked about the pros and cons of various open source licenses for Java, the Linux ecosystem vs. the Java ecosystem, secret sauce and fair playing fields. All-and-all a very interesting conversation, but good grief, it's a complex issue -- I'm glad I'm not the one making that decision. 

Velocity is alive and well

I got to meet Will Glass-Husain today who, I was happy to learn, works on the Apache Velocity project. In case you don't know, Velocity is the template engine that Roller uses to generate blogs and feeds -- so it's near and dear to my heart, dispite it's many little deficiencies. I was a worried that Velocity was stagnating but Will told me the Velocity 1.5 is coming out soon with a load of good bug fixes and a promise of 100% backwards compatibility. We'll have to see about that. Velocity 1.5beta1 has been out for almost a month now.

Made it to ApacheCon

I didn't bring my normal assortment of carry-on sauces, lotions, juices and pastes today so air travel was no problem at all. I made it to Austin and ApacheCon around two, checked in and made myself comfortable in the hackathon. Within minutes I was talking tech; bitching about my recent JSF experience with one of the MyFaces developers and discussing the upcoming Velocity release with members of the Velocity team. And hey look, there's the afternoon beer delivery. This is gonna be fun.

Latest links

Talkin' Roller at ApacheCon US 2006

ApacheCon kinda snuck up on me and now its suddenly time to pack. I'll be in Austin from Monday thorugh Sunday, attending the hackathon and the conference. This is my fourth ApacheCon so I know I'm gonna have fun, but I also hope to get some Roller 3.1 work on during the hackathon and try to knock off some of the minor issues that are still keeping the project from graduating from the Apache Incubator.

I'm speaking on Thursday at 3PM on the subject of Roller. The talk is similar to previous talks I've given on the topic, but it's been improved and updated to cover all of the cool stuff in Roller 3.0. Here's the abstract and an outline of the talk with a couple of bonus links.

Session title: TH18 - Apache Roller: an open source Java blog server
When/where: 3PM in Salon E

Roller is the open source Java blog server that drives the popular Sun's employee blogs at blogs.sun.com, IBM developerWorks blogs, JRoller.com and numerous other blog sites. Currently making its way through the Apache incubation process, Roller is built on a host of Apache technologies including Struts, Velocity, Lucene, Jakarta Commons, XMLRPC and more. This overview, a primer for Roller users and contributors, covers the Roller feature set, the all-new Roller 3.0 page models/macros, Roller 3.0 architecture, lessons learned, project status and future plans.

  • Roller history
    • The O'Reilly article (link)
    • FreeRoller and JRoller and...
  • Roller features
  • Roller community
    • Developers, admins and bloggers
    • Community challenges
    • Release cycle
    • How to add a feature
    • How to make a release
    • Why is Roller still incubating?
  • Roller internals: backend
    • Architectural overview
    • POJOs: users, blogs and entries
    • POJOs and XDoclet markup
    • The manager interfaces
    • Today Hibernate, someday JDO, JPA ...?
  • Roller internals: frontend
    • UI archtecture
    • Struts actions and XDoclet markup
    • Page and feed rendering
    • Changes in Roller 3.0
      • New template models and macros
      • The pager interface
      • $site and $planet models
      • The new macros
  • Customizing Roller
  • Roller futures
I'll post the slides once I made the final changes.

Update: here they are ApacheConUS2006-TH18-RollerBlogServer.pdf


Raleigh bloggers meetup tonight 6:30pm at Cafe Cyclo

It's that time again...
 cafe cyclo logo
For details, check the Raleigh bloggers wiki.

Looks to be a beautiful evening to sit outside and talk blogs, podcasts and other geekly goodness.

OINC

Silver Lake sunset

The sun sets over Silver Lake, Ocracoke Island, NC


Struts Action 2.0.0

If I had known Struts 2.0.0 was complete, I might have done something different last weekend. Instead, I spent too much "free time" learning JSF. It was fun of course. I enjoy learning new technologies and so I might have to repeat the excercise with Struts 2.0.

Roller's web UI is based on Struts 1.2, so you'd think Struts 2 would be the obvious upgrade path. But Struts 2.0 is really not an upgrade of Struts 1, its a whole new thing. In case you don't know, the Struts team took an entire different, and some say much better, framework called Webwork and rebranded it as Struts 2. So you can't really migrate a Struts 1 app to Struts 2; instead you're basically porting your app to an entirely different framework -- potentially a giant amount of work. We need to think carefully about what to do with the Roller UI.

Apple repair turn-around time

The Apple support guy told me that mail-in repairs typically have a five to seven day turnaround time, but increased "back-to-school" load could mean ten days. I'm not sure if that's good or bad compared to other companies, but it's a long time to go without the trusty laptop, that's for sure. In case you're googling around for info on Apple repair turn-around time, as I was last week, here's my experience. [Read More]

Intelligence community recommends Atom and ROME

Via Tim Bray, the Intelligence Community Metadata Initiative recommends Atom format over the de facto standard RSS 2.0. And, they recommend investigating ROME too.
RSS and Atom Considerations - Moving Toward Atom: We further recommend that developers investigate free Java software called "ROME" (RSS and Atom Utilities), which provides an abstraction layer for syndication feeds so that either RSS or Atom can be generated from the same base. ROME can also be used to convert between RSS and Atom formats.
(sheesh. how can I resist) And what better way to investigate ROME than to get yourself a copy of RSS and Atom in Action, which devotes a chapter to everybody's favorite Java feed wrangler.

Tags: topic:[Atom], topic:[RSS], topic:[feeds], topic:[ROME]

Ruby MetaWeblog API example

Marcus Crafter has written-up his experience moving his blog content from MovableType to Typo and all the code he used to do the job -- an excellent example of using the XML-RPC based MetaWeblog API from Ruby

This blog is not open source

Tim Bray: I wonder if I’m weird, because I discover that my attitudes towards code and, non-code are different. The notion of restricting anyone from using code I contribute to feels entirely foreign, and if they want to use it to make some money, good on ’em. But I have strong negative feelings about other people making money from my words or pictures without involving me.
I don't think that's weird at all. I feel the same way and almost without thinking I chose the Creative Commons by-nc-sa license for my blog, but for my code I prefer the Apache license, which is just about the most commercial friendly license there is.

I agree with Mark Pilgrim that chosing a license with a no-commercial-use restriction is by definition more restrictive than chosing an open source license, but I wouldn't say it's overly restrictive. And I hold no grudge against Creative Commons. Writers, artists and musicians should be free to choose the license terms they like and that's why Creative Commons is a good thing -- it helps folks to do just that.

Tagging in Roller

Dave Johnson: But, cool thing is, IBM has already implemented tagging in Roller. Previously, we were not able to merge IBM's work into the mainline of Roller development for a number of reasons, but now Roller committer Elias Torres (of IBM) is charging ahead with a new proposal to do just that. We could have tagging support in the *very* near future, thanks to Elias and IBM. Ain't open source grand?
And by the way, there are at least four Dave Johnsons at Sun. That one is me.

RSS and Atom in Action at the JavaRanch

I'm doing a RSS and Atom in Action book promotion at JavaRanch this week in the XML and Related Technologies forum. That means that I'll be checking the forum several times a day and answering all of your questions about the book's topics. At the end of the week, we'll be giving away copies of the book to four randomly selected posters.

So far, I've been answering basic questions like what is RSS, what's the difference between RSS and Atom and what's the book about?

Tags: topic:[RSS], topic:[Atom], topic:[feeds], topic:[Java], topic:[Web 2.0]

Raleigh bloggers meetup tonight 6:30pm at Cafe Cyclo

It's that time again...
 cafe cyclo logo
For details, check the Raleigh bloggers wiki.

Sick Mac

My two year old Powerbook G4 has been behaving badly for a couple of months now. Startups slowed to 20 minutes and some applications take forever to startup. I called Apple about it several times, but they were unable to help because the diagnostics showed nothing was wrong. So I was actually kind of happy when I started up the Mac OS Disk Utility and saw the message:

"This drive has reported a fatal hardware error to Disk Utility. If the drive has not failed completely then backup as much as you can and replace it with a working drive."

Apple is sending a "dispatch" box so I can send my Powerbook in for service. They told me that the turnaround time is normally 5-7 days, but may take 10 due to back-to-school work load.

So now, I'm laptopless, living full-time in GNOME on Solaris/X64 and thinking that now would be a real nice time for Apple to rev those Mac Book Pros. According to the rumor mongers over on Apple Insider, new Mac Book Pros may be coming out next week.

Blogging from JDeveloper

Rajendra has developed a blogging plugin for the JDeveloper IDE that enables blogging via Blogger API, MetaWeblog API and Atom 0.3. I wonder if he considered using the RSS and Atom in Action Blog Client library.

Blogapps 1.0.3 and .tar.gz

I just uploaded new builds of the Blogapps Examples and Blogapps Server. See the announcement on the Manning RSS and Atom in Action forum. There are a couple of bug fixes in the Atom server implementation, a couple of missing C# examples have been added and both downloads are now available in TGZ and ZIP format.

I had thought that TGZ (i.e. gzipped tar) was fine for everybody including Windows users, because last time I checked WinZIP handled TGZ files without a hitch. But I've gotten several complaints about my TGZ only policy, so now I'm offering both formats. I guess I should do the same thing for Roller.

The next release will support Atom protocol draft #10.

Pro EJB 3 Java Persistence API

Even though we're still stuck at JDK 1.4.2 in Roller-land, I've been trying to come up to speed on Java EE 5. To that end, I bought Pro EJB 3 Java Persistence API by Mike Keith and Merrick Schincariol and I'm glad that I did, it's excellent. If you need to learn JPA, grab a copy and sit yourself down with Netbeans 5.5 beta2 and the Enterprise Pack -- it worked for me.

Min RSS

Mark Woodman has written a thorough review of the new Microsoft MAX RSS reader, which, apparently, is shiny, new, pretty and lame.

« Previous page | Main | Next page »