RSS and Atom Reference Card

RSS and Atom reference card

I wrote and illustrated a detailed reference card covering RSS 2.0, Atom, AtomPub and the MetaWeblog API for the DZone RefCardz project. The six page "card" includes diagrams of the elements in the feeds, a synopsis of AtomPub protocol and coverage of ROME -- the same stuff you'll find in my book RSS and Atom in Action.

It's a free download, but you have to register with to get it. While you're there check out the other reference cards they have. They've got some great ones, including great one for Glassfish.

Here's the link:

Test post from iPhone

Via Roller web UI. It's not the most pleasant experience, pinching and scrolling around to move from title to content and then down the page to find the post button, but you can post to Roller from an iPhone. Seems like you could throw together a pretty nice iPhone interface for Roller using iUI. Who needs Android, J2ME, etc. when you can just use the web?

Sixteen days until BarCamp RDU 2008

BarCamp RDU logo

Just a gentle reminder that BarCamp RDU 2008 is coming soon. And one request. We've got 209 people registered and 31 on the waiting list so please help us out and if you registered but cannot make it, please remove your name from the list.

If you are interested in helping out with preparations or on the day of the event, then please let us know (dave.johnson at or wayne at

My personal iPhone 3G debacle

I'm sorry to say that I participated in the iPhone launch debacle yesterday. I wrote up the frustrating and somewhat embarrassing timeline for a buddy of mine. You might find it interesting, so here it is:

Friday, July 11, 2008

6:45AM I arrive at AT&T store at Triangle Town Center mall (Raleigh, NC)
7:50AM 33 people ahead of me, ~150 people behind me in line
7:55AM AT&T rep tells us that they have 15 iPhones, but they'll take orders
8:00AM I leave for Apple store at Crabtee Valley Mall
8:20AM I arrive at said store, line looks to be greater than 200 people
9:00AM The line moves and is making slow progress
10:00AM line stops moving for over an hour because "activation servers are down"
10:05AM I've got my laptop, so I sit down and start coding (w/free Apple WIFI)
11:30AM The line starts moving again. scoot, code, scoot, code...
12:50PM I stop coding because laptop battery power is dead
1:00PM I attend a half-hour meeting via telecon
1:40PM I finally get into store, Apple rep helps me
1:50PM Apple rep helps me, gets "IRU account not supported error message"

I call AT&T, they tell me that I have a special "flag" on my line and they are not allowed to remove it via phone, and I MUST to upgrade my iPhone at the AT&T store -- i.e. wait 5-7 days for delivery from AT&T.

So, I call AT&T again and get another rep who tells me that they CAN remove the flag over the phone, mumble, mumble and then my cell phone connection drops.

2:20PM Apple puts me in a special AT&T problem line
2:40PM Apple rep calls AT&T, gets them to remove flag
2:50PM Apple rep will hold my iPhone until AT&T calls me to confirm flag removal
2:55PM Cheers erupt as the customer who was 1st in line at 8AM finally gets activated
3:00PM I leave empty handed but with a promise that AT&T will call within 24 hours

I'm not going to try to analyze this; I'll leave that up to you, dear reader.

Update: Saturday, July 12, 2008

10:00AM Call AT&T to ask about status, they blame Apple for problem saying only Apple stores had problems yesterday.
10:25AM AT&T tells me they are now issuing a "billing ticket" to ensure that all flags were dropped from my account. They say I'll have to wait up to 4 hours before it has taken effect.
2:25PM Apple store won't test the activation process over the phone so I make the half-hour drive to store only to get the same "IRU account" error.
2:45PM Call AT&T from parking lot, they tell me sorry things are taking longer than expected, we'll call you ASAP. I drive home empty handed again.
5:00PM Call AT&T to complain to a manager about the broken 24 and 4 hour promises. He tells me problem is on Apple side and if I ordered a phone at the AT&T store everything would be fine (in 5-7 days). He says there is no telling when they'll finally clear the flag on my account, so just keep on waiting.

Update: Sunday, July 13, 2008

11:30AM Still no word from AT&T so I called them and they said the flag problem had been resolved. I asked how I could be compensated for all the wasted time they caused me, misdirection and multiple broken commitments they said "we're not offering any compensation for iPhone problems." The AT&T rep also blamed Apple for all problems and said I should have bought from the AT&T store
12:20PM Arrived at Apple store, got my phones

Updating RSS and Atom in Action?

Check out Tim Bray's Atomic Monday post for a summary of recent developments in the world of AtomPub protocol and Atom format. With the uptick in interest in Atom and especially AtomPub protocol's usage in mainstream APIs from Google and Microsoft, I wonder if if would make sense to update RSS and Atom in Action.

Cover of RSS and Atom in Action

The bulk of the book is up-to-date, for what it covers. RSS and Atom haven't really changed and, though the book came out before the spec was finalized, the AtomPub material is basically sound. The ROME material is still current too.

What's missing are all of the new developments: a dozen or more new AtomPub based APIs from Google (GData and OpenSocial) and Microsoft (Live and Astoria) and new tools like Apache Abdera (incubating). Not to mention Windows RSS Platform 2.0 and ROME 1.0 (which is coming soon). Updating the book to cover all of those topics would be quite an endeavor and I'm not sure it's the right approach to covering AtomPub. What do you think?

Latest Links

JSPWiki vs. XWiki

via Jim Grisanzio: Chris Phelan has done evaluations of JSPWiki and XWiki for use on the site. Based on his 32 requirements, XWiki came out on top.

On balance, XWiki wins by virtue of having better support for management, searching, page taxonomies, virtual servers, content export and language translation/localization support.

JSPWiki has slightly better support for identifying orphaned pages and accesskey support (XWiki 1.4 will have support for access keys).

Confluence was not considered because requirement #0 is "the software must be free and open source," which seems like a reasonable request when selecting software for an open source community site.

Latest Links - OpenSocial and FriendConnect

I'm still working through my backlog of Latest Links posts. First up, the OpenSocial links. I'm following OpenSocial closely because OpenSocial support is one of the key features of the new project I'm working on (Project SocialSite).

There were a bunch of OpenSocial related sessions at Google's I/O conference and they're all online. I especially like this one, OpenSocial: A Standard for the Social Web, which includes Google's Pat Chanezon discussing Project SocialSite, starting at 43:07 and on slides 70 and 71:

Here are the links:

I'm also following Google's FriendConnect pretty closely, which is a model similar to Project SocialSite -- but, and this is my opinion, for smaller sites that do not want to build and manage their own social graph. It's conceivable that Project SocialSite could one day implement FriendConnect, thereby allowing folks from a Project SocialSite-backed site to join into FriendConnect based sites. At any rate, here's what I've read about Friend Connect so far:

Links - AFK edition

Here's another link blog post. In this one I'll explain why my feed is full of guitar tabs. I've been spending some time Away From Keyboard and near to fretboard. Since my 11 year old son Alex is learning guitar I've been doing the same and making some good progress. I've noodled around on bass for years, but never spent much time with guitar. I've always known the basic chords, but that's about it. Now I've finally learned how to string and "sing" at the same time and so I've been looking for good, fun and easy songs to play. Here are the ones I've found so far, straight from my bookmarks feed:

You can probably guess my age now ;-)

Here are a couple more kinda sorta related links from the feed.

I bookmarked that REM review because we attended that show last week. We took a bunch of kids and had a blast. REM played a bunch of their very early songs like 7 Chinese Brothers and Pretty Persuasion. The kids (from 5 to 11 years old) danced like fools on pogo-sticks the whole time.

And finally, here's something here's something not in my bookmarks feed; the Epiphone G-310 I bought for about $230 last weekend.

Epiphone G-310 guitar

Latest Links - misc

It's time to catch up on blogging and I'm going to start by going through my backlog of links and adding some commentary, but not in this post; these are miscellaneous links that don't fit nicely into my other posts.

LinkedIn: 99% Pure Java

Nick Lothian tweeted about this JavaOne presentation on LinkedIn because it mentions the ROME RSS/Atom feed parser. I'm really sorry I missed it at JavaOne. What's particularly interesting to me are the diagrams that explain how the LinkedIn architecture has evolved to scale up to 22 million users. Here's an example:

LinkedIn architecture diagram

Help sponsor BarCamp RDU 2008

BarCamp RDU logo

After attending two great BarCamps here in Raleigh, I'm just as pleased as punch to be helping out on the BarCamp RDU organizing committee this year.

We put out the call for sponsors a couple of weeks ago and thanks to some generous sponsors including iContact, Canonical, rPath, Brian Russell, OpenNMS and Montie Design we quickly met 65% of our small budget. Now we need to wrap things up, money-wise. If you'd like to get some great positive exposure among the best and brightest in the local tech community by sponsoring, here's your chance.

If you're interested in sponsoring or helping out as a volunteer, contact me via email for more info (dave.johnson at If you're interested in attending, you'll have to add your name to the waiting list -- at this point we're sold out.

Project SocialSite @ Enterprise 2.0

Image from screencast

Looks like we made it to the final round of the Enterprise 2.0 LaunchPad competition and so Project SocialSite will be one of the five projects that will "present their ideas in front of an audience of creators, evangelists and adopters of cutting edge technologies who will provide feedback in real-time and decide the winner." Thanks to all who voted for SocialSite.

And in other news, Arun Gupta has put together a very nice ten minute screencast that shows Project SocialSite in action.

Project SocialSite on the launchpad round #2

Enterprise 2.0 conference logo

As Arun notes in his post, Project SocialSite made it to round #2 of the Enterprise 2.0 conference Lauchpad and so we made another short video. This time we got some help from Sun internal TV studio folks and added a little extra polish. Check it out and rate it up ;-)

OpenSocial summit next week

There will be a OpenSocial Summit: May 14th, at the Googleplex covering the new v0.8 spec changes and all sorts of other interesting things. Wish I could make it, but I'll be happily back home in the old north state. Hopefully, somebody from the SocialSite team will be able to attend.

Struts 2 in Action

stack of struts 2 books at the JavaOne bookstore

Struts 2 is my favorite Java web framework these days; it's REST-friendly, simple, easy to use, very flexible and the only thing it has with its creaky old Struts 1.x parent is the fact that it's an action framework rather than a component framework like JSF. As most of my readers probably already know, Struts 2 is based on WebWork/XWork the framework that powers JIRA and Confluence, two of the coolest Java webapps around.

Apparently, I'm not alone in this thinking -- I keep on running into folks at JavaOne who feel the same way. But unfortunately, Struts 2 docs are lacking, so I was very happy to see two new books on Struts 2 at the JavaOne bookstore. There's Struts 2 in Action, a rewrite of the classic Manning book, and Practical Apache Struts 2 Web 2.0 Projects from Apress.

I picked up a copy of Struts 2 in Action on Monday and it looks great so far, but I've only skimmed it. I'll let you know what I think once I dig-in on the flight home.

If you're at JavaOne, check out TS-5739 - Hands-on Struts2 by Ian Roughley (author of the Apress book) today at 10:50 AM in Esplanade 307/310.

SocialSite on the LaunchPad

One more thing to mention before I hit the JavaOne opening reception: Bobby Bissett submitted a short and to-the-point video on Project SocialSite to the Enterprise 2.0 LaunchPad. Please check it out and help us vote it up ;-)

Getting the word out

Jamey Wood and I presented our Introduction to Project SocialSite yesterday. We had a much larger crowd than I expected, given the number of concurrent talks -- I'm guessing there were close to 300 people in the room. I hope to be able to post a link to the slides at some point in the near future because right now we've got almost no information on Project SocialSite on the web. Now that we've got permission to talk about the project, I'm going to try to change that.

I spent most of the day in the Sun booth answering questions about SocialSite and demonstrating our widgets and web services in Roller and MediaWiki and talking through some key slides in our deck. At this point, we only have a handful of our widgets implemented and they're pretty bare bones, but folks seemed to "get it" and liked the idea of adding social networking features to existing web applications.

If you're at JavaOne, then please stop by the Sun both and say hi. Look for us under the banner Social Networking for Glassfish. And if you want the full scoop then check out our Birds of a Feather (BOF) session:

BOF-5857: Turn your website into an OpenSocial container with Project SocialSite
6:30 PM on Thursday
Esplanade 307/310

Jamey and I will be ready with slides and demos and answers to (almost) all of your questions and you'll have plenty of time to make it to the After Dark shindig.

Introducing Project SocialSite

As promised, here's some more information about the talk I and my co-speaker Jamey Wood are giving tomorrow at CommunityOne (2:35 PM in Moscone Hall E 135).

Below is the official title and blurb.

Turn your Web Application into an OpenSocial container (link)

Wouldn't it be nice if developers around the world could add new features to your web site for you? The OpenSocial API makes it possible. This session demonstrates how you can make your existing web site capable of hosting OpenSocial applications. To illustrate the process, it shows an example application and how it benefits from becoming an OpenSocial container. Attendees should be familiar with HTML, JavaScript™ technology, and XML.

Perhaps a better title would have been, "make your webapps social with Project SocialSite" but we didn't have permission to talk about our project until very recently. Now, we're ready to talk about the Project SocialSite widgets and web services and how you can use them to add Social Networking features to your existing Java, PHP and Ruby webapps. We're not ready to talk about product plans, features or schedules but we are ready to demonstrate our work in Netbeans, MediaWiki, Portal, Roller and possibly some other apps as the JavaOne week progresses.

Here are the slides: socialsite-j1-2008.pdf (1MB PDF file)

And here's an outline of the talk:

  • Goals
    • Understand the importance of Social Networking features in Web applications.
    • Learn about the new OpenSocial standard for plugging into Social Networks.
    • See how Project SocialSite's Web Services and Widgets make it easy to make your Web Applications social.
  • Agenda
    • Social Software / Web history lesson
    • Introducing OpenSocial
    • Apache Shindig: the OpenSocial RI
    • Options for making your sites social
    • Introducing Project SocialSite
    • Conclusion and Q&A
  • Web history lesson
    • The static Web
    • Blogs, wikis and feeds
    • The social Web
    • Facebook changes the game
    • OpenSocial arrives
    • Social Network as platform
    • Social networking goes to work
  • What is OpenSocial?
    • OpenSocial architecture example
    • The OpenSocial JavaScript API
    • The OpenSocial REST API
    • Status of OpenSocial
    • OpenSocial not the Silver Bullet
    • OpenSocial vs. Data Portability
    • OpenSocial vs. Web as Social Network
    • Is OpenSocial really “open”
  • Apache Shindig (incubating): the OpenSocial RI
    • What is Shindig
    • Apache Shindig features
    • What's missing from Apache Shindig?
  • How do you make your sites social?
    • Plugin to an existing Social Network?
    • Use a hosted or “white-label” solution?
    • Use Apache Shindig?
  • Introducing Project SocialSite
    • Project SocialSite features
    • SocialSite Architecture
    • Project SocialSite widgets
    • Project SocialSite's value adds?
    • DEMO: Using the SocialSite widgets
  • Summary
    • For more information: upcoming sessions
    • For More Information: helpful links
  • That's all folks... Q&A

Look for Project SocialSite in the CommunityOne demo area and at the Sun booth in the JavaOne pavillion all week.

Social Software at JavaOne 2008

There are quite a number of Social Software related talks at JavaOne and CommunityOne this year. You can learn about everything from building Social Networks with the Liferay portal and federated relationships with OpenSSO to creating 3D virtual works and implementing OpenSocial with Java. And, I'll finally be able to talk about what I've been working on for the past couple of months -- more about that later. [Read More]

« Previous page | Main | Next page »