Friday was the seventh IBM Hack Day, and I again got the chance to spend a day playing with some random ideas.
As Hack Days go, I had a surprisingly productive day! I had four ideas on the day:
- two mobile hacks (both of which I wrote a chunk of code for),
- a twitter hack (which never got off the scribbled diagram stage, but it’s an idea I definitely want to come back to), and
- a hack to extend an IBM product (which I created an alpha version of)
In this post, I’ll describe what I did for the last of these ideas: writing a client app for the wiki that comes with IBM’s Lotus Connections.
In the same way that I am writing this post in an offline blogging client, I wanted the same for using wikis: read and make changes to a wiki while offline, with changes uploaded to the online wiki the next time you are online.
This wasn’t a new idea. In fact, I tried it at IBM HackDay 4 back in 2007 but the wiki we used at work at the time had no API access for retrieving or updating wiki pages. So I sort of gave up and forgot about the idea.
But now I use Lotus Connections wikis at work. And Lotus Connections does have an API – an AtomPub API that gives you feeds to know when pages are changed, and a way to publish changes.
So I decided to revisit the idea.
The “finished” (ish) hack
It’s still very rough around the edges (this was a HackDay – I wrote the client code in under a day!) but it already shows the basic idea.
The top left view shows the list of your wikis.
Clicking on this fills the list below – a list of pages in the selected wiki. Clicking on a page in that list opens the contents of the page in the main view on the right.