Latest Links: August 11, 2009
- Your blog still loves you
"it's time to use the web again to store our ideas, and instead of relying on Silicon Valley companies to link our stuff together, let's just use the Internet." - ZDNet Asia: 'Ferociously loyal' users to stand by Sun
"47,000 enterprise customers and a ferociously loyal customer base" - The Connections Blog: Full house! Lotus Connections 2.5 video demos
screen-casts for 8 of the Lotus Connections components - Chromium Blog: Google Chrome Developer Tools for Eclipse Users
"Set breakpoints, inspect variables and evaluate expressions from within Eclipse" - First impressions of Google Wave | Enterprise Web 2.0 | ZDNet.com
"won't be ejecting existing enterprise collab tools from the workplace any time soon" - Shindig-based OpenSocial Container from Lockheed Martin
"written in Java and is based on open source projects such as GWT, Hibernate..."
ApacheConUS 2009 registration open, sign up now!
The early-bird special ends on August 14, so you'd better get moving.
Sign up for ApacheCon US by 14 August and save up to $500!
This year's ApacheCon US promises to deliver our most extensive program to date, and largest anticipated gathering of the global Apache community to celebrate the ASF's milestone 10th Anniversary. The San Francisco Bay Area is where the very first ASF official user conference was held, and we hope that you will join us in celebrating the ASF's success!
Apache members, code contributors, users, developers, system administrators, business managers, service providers, and vendors will convene 2-6 November in Oakland, California, for a week of training, presentations, sharing and hacking. ApacheCon US 2009 features new content tracks, MeetUps, and GetTogethers, as well as a number of events open to the public free of charge, such as the Hackathon and 2-day BarCampApache, in appreciation of their support over the past decade.
Be sure to register by 14 August to save up to $500! To sign up, visit http://www.us.apachecon.com
I'll be there and speaking on the topic of What's New in Roller 5.0. I also plan to attend the Social and Widgets Meetup with folks from Shindig, SocialSite and Wookie. I hope to see you there.
Social data flow
BarCampRDU
As you might know, I'm involved with organizing BarCampRDU again this year, doing the sponsor-wrangling and attendee registration duties. It's been a lot easier and stress-free than last year because I've been through it once before and so has most of the committee. No matter the stress-level, the end-result is well worth the effort.
Wrangling sponsors was surprisingly easy, even with a bad economy. Basically, all I have to do is chase 'em down, convince them to sponsor, make sure they pay and then ensure that they're recognized on the blog, t-shirt, signage and during the event. Event registration was easy too as we used Eventbrite, which is free for free events like BarCampRDU. My only complaint is there's no automated way for an attendee to cancel a ticket and no automated way to do a waiting-list.
Most of the remaining work was done by my wife Andi and our friend Alicia Weller. Andi took care of vendor selection and coordination and Alicia took up volunteer coordination and t-shirts. I think you're going to like what Alicia did with the t-shorts; very nice colors this time.
What's a little nerve-wracking about running a BarCamp is the estimations you have to make. Once it's time to order t-shirts, food and drink we have a fixed budget but the number of attendees can vary wildly. Last year, we had 250 registered attendees and only 140 showed up. We can't assume we'll have the same registered/attended ratio this year because we've been sending out a lot more email reminders. Anyhow, long story short: we did our best but if everybody currently registered shows up, some folks are not going to get a t-shirt and a lunch.
At this point, all we can really do is enjoy the show and I'm really looking forward to it. This year, I'm going to pitch a session on OpenSocial. Here's the write-up from the proposed session page:
A quick intro to OpenSocial explaining what it is, how it works and why it matters using these What's up with OpenSocial slides. Then a group discussion.on.
It's just about time to head down to the pre-party at Flying Saucer. I hope to see you there.
Month of blogging
Crammed into one post...
After a month of blog neglect, my automatic Latest Links from my Delicious.com account started to pile up. Back in the glory days of this blog, I blogged about things instead just saving links or tweeting about them. I realized that, by adding some commentary/opinion for each, I could turn a month's worth of links into a month's worth of blog posts and thus gain total absolution for my sin of going a full month without a post. So that's what I did. [Read More]SLA
I think can stand behind a Service Level Agreement (SLA) of one blog post per month. Oh look, it's August 1st. I'm done for the month.
Scaling Agile with C/ALM
IBM Rational has just released a 64-page book on Collaborative Application Life-cycle Management (C/ALM) that explains in detail how Rational's Jazz-based tools fit together to support the full software development and delivery life-cycle.
You can get the book at InfoQ. Registration is required (and free):
Scaling Agile with C/ALM
by Carolyn Pampino, Erich Gamma and John Wiegand
I'm finding this book very useful because I'm still coming up to speed with Jazz and Jazz's notion of "Data integration via linked artifacts across repositories using RESTful interfaces." The book shows how Jazz works in practice with examples that illustrate how a requirement can be linked to work-items, source code change-sets and tests. Products covered are: Team Concert, Requirements Composer and Quality Manager.
Scaling Agile with C/ALM also explains how Open Services for Life-cycle Collaboration (OSLC) fits into the picture. The OSLC project is working to standardize the RESTful interfaces needed to integrate development tools. Once vendors adopt these interfaces, it will be much easier to mix and match For example, if Atlassian JIRA supported OSLC, you could use it instead of Team Concert's built-in issue tracking.
See also: Ask Jazz Technical Lead Erich Gamma.
BarCampRDU coming up soon, still needs sponsors
BarCampRDU 2009 is rapidly approaching (August 8, 2009) and the event is sold out with 250 registered attendees. Problem is, we're only about halfway to our funding goal. I guess it could be the economy or maybe it's event overload; doesn't it seem like we had a heckuva lot of tweetup-camp-athons around here lately?
Either way, we're not ready to give up yet. We're doing another call for sponsors and trying to open up as many sponsor opportunities as possible. Check out the BarCampRDU blog for more information.
re: Science for the Curious Photographer
To follow-up on my previous post on the topic: my father is starting to publish excerpts from his book Science for the Curious Photographer on Luminous Landscape.
His first piece is titled The Quest for Good Photographs and How the Brain Perceives Images and it's one of my favorite parts.
By the way, he's still trying to figure out the best way to publish the book.
Latest Links: OpenSocial and OSLC
- Stutzman on WUNC's the State of Things
Stutzman and others on the etiquette, the addiction and the future of Facebook - Is Twitter Really That Big?
40% of Twitter users haven't tweeted since 1st day, 25% not following anybody - YouTube - Towards Privacy-aware OpenSocial Applications
Talk by Kun Liu of IBM Research on privacy scoring and applications
- Google I/O video - Atlassian and OpenSocial
using OpenSocial to connect enterprise apps and power developer dashboards. - Atlassian - OpenSocial Videos
Atlassian has gone ga ga for Gadgets
- YouTube - What is New in Rational Team Concert 2.0 Web UI
from Dejan Glozic, Team Concert Web UI and Dashboards Lead - Mainsoft Document Collaboration for Rational Jazz
connects Rational Team Concert to your corporate collaboration infrastructure.
- The Open Services for Lifecycle Collaboration (OSLC) initiative
creating open interfaces for software development services: requirements, change requests, user stores, test cases and more. - dW podcasts: Abrams, Zetie and Kerston on OSLC
Interview with some of the folks behind OSLC.
Wisdom of Twitter: Wave's impact on enterprise collab
Wondering how Google Wave will impact the enterprise collaboration market? Look no further than the great collected wisdom of Twitter. Given that X equals Lotus Notes, Microsoft Sharepoint or Microsoft Exchange we have:
- #googlewave will be major competition for X
- #googlewave will drive positive change in X
- #googlewave is X 2.0
- #googlewave is X done right
- #googlewave is X for 2009
- #googlewave is X for 2010
- #googlewave looks like X on the web
- #googlewave is what X never became
- #googlewave is the final nail in the coffin of X
- #googlewave will destroy X
- #googlewave will kill X, death to X!
- #googlewave flatters X by imitation
- #googlewave is just hosted version of X
- #googlewave is a custom version of X, good for SEO
How can industry analysts survive with people giving away this stuff for free?
RSC 2009: connecting developers and community
I've attended every JavaOne since 2004, but this year I've got new job and a new conference to attend. This year I'll be traveling to Orlando, FL and attending the Rational Software Conference also known as #rsc2000 in the twit'o'sphere.
I'm not going to be giving a talk, but I will be manning a demo pedestal and showing some of what I've been working on in my first couple of months at IBM: working on getting Rational Team Concert and other Jazz-based products to work well with Lotus Connections, IBM's social software suite which includes communities, forums, blogs, bookmarking, social networking and wikis (coming soon in Connections 2.5).
Why would you want to use Team Concert with Connections? It's all about connecting developers to community, helping developers use social software tools to inform, share and collaborate with the wider community of people that support, manage, sell and use the software.
The tentative plan that we've outlined for all (registered users) to see on the Jazz.net is all about making it easy to setup and integrate community infrastructure for a new software project.
For example, wouldn't it be nice if, when you setup a new project in Team Concert you'd have the option of setting up an integrated Lotus Connections community complete with a project blog, discussion forum, wiki space and shared bookmarks? Shouldn't those blogs, forums and wikis be searched when you do a project search and shouldn't it be dead-simple to fire-off a blog entry or forum post to start a community conversation about a work-item or any other Team Concert artifact? We think so and we think that's just a start; there's lots more we can do.
If you're going to be at RSC 2009, please stop by and say hi. I'll be on duty from 5-8PM on Monday and most of the day Tuesday. Whether you're there or not, if you've got ideas about developer tool and social software integration, I'd love to hear from you.
First impressions
BarCamp RDU registration open and tickets going fast
Word went out this morning via Twitter and other places but I'm just now getting to it here on my blog. Sorry folks, but you're the last to know. Like I said, they're going fast. At this point there are about 50 spots left. More than enough for all of my readers! Here's the registration link:
SocialSite@Apache
I took a break from blogging during my first couple of weeks at IBM. My blog broke and it took me a while to find the time and motivation to fix it, but now it's time to return. I think. I have been doing some internal blogging at IBM, but so far it's been mostly boring stuff: status reports and the like.
What I want to talk about today is Project SocialSite. Since my last post, where I mentioned that Sun is willing to contribute SocialSite to Apache, I did some work to move things along. I wrote an Apache Incubator proposal, started a discussion and this week calling for a vote on the proposal. Here are the relevant links:
Discussion and vote thread on the Incubator General mailing list
Subscripton info for the Incubator mailing lists
If you want to support the project, and especially if you're on the Incubator's Project Management Committee, now's the time to do so.
The future of Project SocialSite: Apache?
Since January, the future of Project SocialSite has been in the hands of the SocialSite community. During that time, I continued working on the project almost because I think it's got great potential and I would really like to see it live on in some form. That's also why I continued to talk to Sun about the project.
Today, I'm very happy to announce that Sun Microsystems is willing to contribute Project SocialSite to the Apache Software Foundation. It's not clear whether SocialSite should be contributed into Shindig or as a new incubator project, but either way I think this is the best thing for the project and will give it the best possible chances for building a thriving community. I've started some discussions about this on Apache-private mailing lists and I'll let you know what happens next.
This post brings to an end my series of posts about Shindig for blogs and wikis. Here are links to the earlier posts:
- Upcoming: Shindig for Blogs and Wikis, ApacheCon EU
- Preparing for my Shindig talk next month
- OAuth everywhere!
- What is OAuth and why whould you care
- OAuth for AtomPub in Roller
- OAuth for ROME Propono
- SocialSite on rollerweblogger.org
- OAuth everywhere (continued)
By the way, I delivered my Shindig talk just a couple of minutes ago. It was well-attended and I think it went pretty well. You can find the slides online at the ApacheCon EU 2009 site here: Shindig for Blogs and Wikis. Now back to your regularly scheduled programming...
OAuth everywhere (continued)
In my earlier OAuth everywhere post I explained at a high level "how I got a Roller Gadget working, one that uses OAuth to call Roller and enables Roller to use OAuth to call back to the social network." I ended with some unanswered questions. In those post I'll answer those questions with source code, screenshots and more.
[Read More]Socialsite on rollerweblogger.org
The value of Project SocialSite is that it allows you to add social networking features, including the ability to run OpenSocial gadgets, to existing web sites and have those sites all using the same "social graph" of data about people and relationships. To demonstrate this, I've deployed SocialSite to my site, http://rollerweblogger.org, and finally implemented those things I described in my August 2008 Social Roller post.
My site includes a blog and a wiki, Roller and JSPWiki, so it's a pretty good candidate for demonstrating how SocialSite. It's not perfect because it's got only a very small number of users, less than a dozen and because it's private; you have to login to see the social features. It'll have to do.
In this post, I'll explain the steps you have to take to add SocialSite to a multi-application web site and I'll illustrate the steps with examples and screenshots from my work on this site.
[Read More]OAuth for ROME Propono
Yesterday I wrote about OAuth support in the upcoming Roller 5.0 release. Today I'm following up with a post about OAuth support in ROME Propono.
As you may remember, ROME Propono is a subproject of ROME, the Java-based RSS/Atom feed library. ROME Propono includes an AtomPub server library and an AtomPub client. I added OAuth support to the AtomPub client and in this post, I'll show how you can use it to post to the Roller 5.0-dev (i.e. the snapshot build that I made available yesterday).
ROME 1.0 and coming soon: ROME Propono 1.0
In case you haven't already heard, thanks to the recent hard work of Nick Lothian, ROME 1.0 is now available. You can find downloads at rome.dev.java.net and a list of changes in the Change Log there. To celebrate this momentous event, I'm planning on releasing ROME Propono 1.0 as well, and in preparation, I've made a release candidate available. The new Propono includes ROME 1.0 and support for OAuth. You can get it via the links below:
rome-propono-1.0RC1.tar.gz (2.0 mb)
rome-propono-1.0RC1.zip (3 mb)
Posting to Roller via AtomPub and OAuth
To use the Propono AtomPub client, you place the Propono jars in your Java VM classpath and then call the AtomClientFactory to get started, as described in the ROME Propono 1.0 Javadocs.
Below is a Groovy example that shows how to post a blog entry to Roller via AtomPub and OAuth. You can get the consumer key, secret and URLs you need to call your instance of Roller from the OAuth Credentials page in the Roller admin interface.
import com.sun.syndication.propono.atom.client.*
import com.sun.syndication.feed.atom.*
def authStrategy = new OAuthStrategy(
"roller", // username
"55132608a2fb68816bcd3d1caeafc933", // consumer key
"bb420783-fdea-4270-ab83-36445c18c307", // consumer secret
"HMAC-SHA1", // key type
"http://blogs.example.com/roller-services/oauth/requestToken",
"http://blogs.example.com/roller-services/oauth/authorize",
"http://blogs.example.com/roller-services/oauth/accessToken")
// get the AtomPub service
def appService = AtomClientFactory.getAtomService(
"http://blogs.example.com/roller-services/app", authStrategy)
// find workspace of my blog
def blog = appService.findWorkspace("Blogging Roller")
// find collecton that will accept entries
def entries = blog.findCollection(null, "application/atom+xml;type=entry")
// create and post an entry
def entry = entries.createEntry()
entry.title = "TestPost"
def content = new Content()
content.setValue("This is a test post. w00t!")
entry.setContent([content])
entries.addEntry(entry)
If you have questions or feedback about ROME Propono 1.0 RC1, please post them to the ROME dev mail list and I'll do my best to respond there.
OAuth for AtomPub in Roller
Over the past month or so I've been adding OAuth support to just about every open source project that I can commit to. I added OAuth support to Roller so that you can now use OAuth to protect Roller's AtomPub server and other things. I also added OAuth support to ROME Propono's AtomPub client so you can now use Propono to post to Roller (more about that later). Here's a quick overview of how OAuth in Roller works.
NOTE that this post applies to Roller 5.0, which has not yet been officially released.
Setting up OAuth for AtomPub in Roller
If you want to use OAuth with AtomPub on your Roller site, go to the Server Admin page and find the Web Services section, enable AtomPub and specify 'oauth' as the authentication mechanism, like so:
<img src="http://rollerweblogger.org/roller/resource/rol_oauthconfig.jpg" alt="OAuth config in Roller 5.0-dev" />Getting your OAuth key, secret and URLs
Once you've done the setup, you'll find an OAuth Credentials link on the Roller Main Menu page, which will lead you a page like the one below showing your OAuth consumer key & secret and, if you are a site admin user, the site-wide key & secret. Currently, there's only one set of site-wide credentials; I plan to fix that.
Of course, those aren't my real keys. You'll want to keep your OAuth keys secret as they can enable anybody to access your Roller account via AtomPub.
Want to try it yourself?
I mentioned that Roller 5.0 has not yet been released and that's true. There's still a lot of work to be done on 5.0, but that doesn't mean you can't get your hands on the code and binaries now. To make it easy, I've made an unofficial snapshot version of Roller 5.0-dev available for testing purposes only. It's what I'm running on my site. You can get it here in two flavors:
apache-roller-5.0-dev-20090321-SNAPSHPOT.tar.gz (31 mb)
apache-roller-5.0-dev-20090321-SNAPSHPOT.zip (31 mb)
The instructions in the old Roller 4.0 installation guide should work fine, so follow them to install and configure the 5.0-dev SNAPSHOT. Please send questions and feedback to either the Roller dev mail list and I'll do my best to respond there.
You'll also need an OAuth capable AtomPub client. More on that topic tomorrow...
« Previous page | Main | Next page »