We haven't released the standalone Roller-Planet application yet, but the .Sun Engineering team quietly deployed the latest bits at a couple of weeks ago in response to requests from the Glassfish, SWDP and other teams for planet-style web sites. You can follow the links on the main page to find planets for Glassfish, SWDP, Sun India, Sun Alumni, Sun Java System Web Server, web services and globalization bloggers.

What's Roller-Planet? It's a community aggregation server, similar to Planet-Planet but with some key differences: it's got a web UI that enables groups of users to run their own planet sites, it's based on Java and it uses the ROME feed parser and fetcher. I've written about it before. We don't have a release plan yet for Roller-Planet so if you really want to try it you'll have to fetch and build it from the Apache Roller SVN repo.

Atom protocol interop event

I just got approval to attend the Atom protocol interop event at Google April 16 and 17. I'll be bringing at least three Atom protocol implementations: Roller's Atom server, Propono's simple file-based Atom server and Propono's Atom client.

Atom protocol as the substrate for reliable messaging

I've heard the argument before that the REST approach to web services doesn't give you reliable messaging and that's the reason you need to stick with WS-*. Today Bill de hÓra disputes that notion with an interesting and somewhat provocative post that mentions a couple of specs for messaging via HTTP (HTTPLR and BTF) and argues that Atom protocol can serve as the basis for web-scale reliable messaging.

Bill de hÓra: There are a number of reasons to choose Atom Protocol as the substrate for web-scale reliable messaging. First, a ton of software will be written to target APP in the next few years, and there is plenty of scope for extending the protocol; this suggests openly available and flexible software stacks. Second, since all document collections in Atom Protocol are served as Atom Feeds, it has inherent support for systems management and end to end reconciliation. Third, Atom entries have identity and are natural envelopes, unlike SOAP, where identity and true enveloping requires further specification (essentially raw Atom presents a better basis for interoperation than raw SOAP). Fourth, Atom Protocol can support binary content transmission not just XML, and thus can transmit arbitrary payloads. Finally, because Atom Protocol respects media types and deployed HTTP infrastructure, independent proxy inspection and security check-pointing can be installed cleanly, also eliminating the need to rewrite 2 stack layers and buy XML appliances to support and secure SOAP backed web services. It seems to be a question of when, rather than if, this will get built out.

I would have blogged about this earlier today, but Bill's blog looked foobar and I didn't realize that today is CSS Naked Day. My blog doesn't look half bad naked.

@JavaOne: Beyond Blogging: Feeds in Action

As promised here's some more info on my JavaOne 2007 session. It's based in part on the Beyond Blogging presentation that I presented to a tiny audience at the local Tri-XML conference last year. Tim Bray didn't attend my talk, but he read the slides and called them "the single best introduction and overview I’ve ever seen about feeds and syndication and RSS and Atom and all that stuff." I shouldn't brag. Had he attended the talk he might have had an entirely different opinion, who knows. Anyhow, the presentation has been updated, stream-lined and large portions rewritten to cover ROME and ROME's new Propono sub-project. [Read More]

Geertjan's blog

I've really been enjoying Geertjan's blog recently. Lots of interesting details, screenshots and his passion for his work really comes through. His posts on the Netbeans Schliemann generic languages framework and today's Capturing Matisse make me want to drop everything and start hacking Netbeans. And I'm especially happy to see that somebody is interesting in Breathing Life Back into a Dead Coyote (part 1 and part 2), which is currently the main vehicle for Groovy language support in Netbeans -- I'd hate to see Groovy dropped in the mad rush to Ruby.

Happy 10th birthday to Scripting News

Happy 10th birthday to Dave Winer's Scripting news blog. I often disagree with Dave's opinions but I learned about blogging by reading his blog. I respect the guy and his work and that's why I keep on reading to this day. BTW, his Userland Radio software is what inspired me to write Roller back in 2001.


"Hey Dad, guess what? I killed Linus in the wilderness."

Not exactly what a Dad wants to hear first thing in the morning. Don't worry, Linus is still alive here in the real world and in the virtual world of Runescape.

Latest links [March 29, 2007]

    @ApacheConEU: Roller and blogs as a web dev. platform

    Last week was deadline week for JavaOne and ApacheCon EU presentations, so I was busy. Fortunately for me, my other deadlines were postponed, I did some begging for time and I actually had time to take a short vacation; a family reunion at Stone Mountain park, Georgia. Here's some more information about my ApacheCon talk and an outline of the slides. 

    [Read More]

    Latest links: March 21, 2007

    JRuby on Roller

    This is just a quick follow-up to my previous post on Pluggable renderers and scripting languages in Roller. It took me a while, but I finally made JRuby code work inside a Roller page template. Here's an example JRuby page template that displays most recent blog titles and text in HTML format.

    $out.println "<html><head>"
    $out.println "<title>#{$}</title>"
    $out.println "</head><body>"
    $out.println "<h1>#{$}</h1>"
    $model.weblogEntriesPager.entries.keySet().each {|day|
       $model.weblogEntriesPager.entries.get(day).each {|entry|
          $out.println "<h3>#{entry.title}</h3>"
          $out.println "<p>#{entry.text}</p>"
    $out.println "</body></html>"

    Not the most beautiful thing in the world, I must admit. Any JRuby experts reading along? Is there a simple templating solution that will work in JRuby... something like Groovy Templates? And is there a way to map puts output to a that will work via BSF?


    Congrats to Mark Pilgrim on his new job at Google, where he'll be working on the "right" vision for the future of the web. I assume the "wrong" vision, in Mark's mind, comes from the W3C and specifically the W3C's semantic web activities. Mark's comment pointing to his earlier The Overton Window post seems to back that up. I think it's interesting that Mark will be working remotely; that's a rare thing at Google.

    And congrats to Debian Linux co-founder Ian Murdock on his new job at Sun, where he'll be working on all things OpenSolaris and, I hope, helping to make it as easy and fun to use as Debian or even Ubuntu.

    Roller on SJS Web Server 7.0

    Complete instructions for Running Roller Weblogger on Sun Java System Web Server 7.0 by Seema Alevoor and Marina Sum. Via The Aquarium.

    Latest links: SWDP edition

    Newsgator launches Java ME powered feed reader

    Newsgator, makers of FeedDemon and NetNewsWire, have launched a Java ME powered RSS/Atom feed reader. Here are some details from the press release

    NewsGator Go! for BlackBerry and NewsGator Go! for Java were developed in a technology partnership with FreeRange Communications, the leading developers of mobile publishing and mobile RSS solutions, and is available for BlackBerry, Sony Ericsson, Nokia, and most other MID-P 2.0 mobile phones, including Samsung, Sanyo and LG. NewsGator Go! is available for $29.95 or $14.95 if bought with any of NewsGator’s desktop readers, including FeedDemon, NetNewsWire and Inbox.

    Via Randy Morin.

    Meme blowback

    Since I inflicted the 5 things-about-me meme on Linda, she's inflicting the latest 5 things meme on me. This time the meme is this: name 5 songs you like but annoy your significant other. I thought that would be easy as I've got a giant collection of songs that seem to irritate Andi, but she can't seem to identify any specific songs that particularly annoy her. So, you'll have to be satisfied with some broad categories:

    1. Anything by Bob Dylan
    2. Punky stuff like X, Superchunk or Bad Brains
    3. Hard rock stuff like Zeppelin or The Who
    4. Nasty Zoo - me on helium-voice vocals and bass, kids singing backup
    5. Java Posse podcast. OK, it's not song, but it's on my iPod and annoys the hell out of her.

    Here's to my new co-workers: Roberto, Arun, Rajiv and Marc consider yourselves tagged. I guess you've got an "out" if you have (or claim to have) no significant other.

    Raleigh bloggers - tonight

    It's meet-up time and as usual, I'll be there. Details -

    Sun Web Developer Pack R1 with RSS and Atom goodies

    The Sun Web Developer Pack (SWDP) finally uncloaked today, so I can talk a little more openly about what I and my Java EE co-workers have been working on. You can get the full scoop at the SWDP site, but basically SWDP is a bundle of technologies to help developers build "Web 2.0" or next-generation web applications on the Java platform. Ajax, scripting languages, REST and of course RSS/Atom are all part of that. The RSS/Atom bits are ROME 0.9 (Beta), Blogapps 2.0 (Early Access) and a ROME-based Atom Server kit based on code from Roller.  There are also example Atom server implementations in the REST API and Phobos components of the pack.

    I'm pretty excited that we're putting some resources behind ROME and that both ROME and Blogapps are part of SWDP R1, but I'm even more excited about the next release. In R2 we'll drop the Atom Server Kit and Blogapps BlogClient and we'll replace them with ROME Propono a brand new Atom protocol client and server library that we're getting ready to contribute to the ROME project.

    I haven't had a whole lot of time to experiment with the various components in the pack, but I have played with Phobos and I think it's pretty compelling. Phobos is a "lightweight, scripting-friendly, web application environment." It's not just for creating server-side JavaScript applications, but that's the angle the I find interesting. So many developers are creating JavaScript/Ajax applications these days that working in JavaScript on both client and server-sides makes sense -- especially when you can debug into JavaScript code in your IDE as you can with the Netbeans Phobos module. Also note that the jMaki Ajax components work with JSP, PHP and Phobos -- jMaki and Phobos look like a winning combination.

    Pluggable renderers and scripting languages in Roller

    My next ApacheCon talk is about Roller and blogs as a web development platform. One of the things I plan to discuss is using scripting languages within Roller, something that's possible now because Roller versions 3.0 and later supports pluggable renderers. It's undocumented and a little hacky right now, but by plugging in your own custom renderers you can add support for new template and scripting languages as alternatives to Roller's built-in Velocity. Want to know more? [Read More]

    Bone head

    Linus really digs the Bone comics. He's proud to be a Bone-head and recently expressed his great desire for a Bone t-shirt. So this weekend we did a little craft project and made one. We started by creating stencils based on a couple of my sketches. Here are the stencils that we created with a manila folder and an XACTO knife:

    Bone stencil head      Bone stencil logo

    Then we took a trip to the craft store to get some airbrush friendly fabric paint and a couple of t-shirts. It was nice and warm today, so we did some airbrushing out on the porch. This is the end result: 

    Bone t-shirt front     Bone t-shirt back

    « Previous page | Main | Next page »