Posted by Martin on March 4, 2009
Over a cup of tea this morning I revisited wordle.net which an online resource for making tag clouds. One thing I noticed is you can supply a feed URL so in the interests of science, I pointed it at my current blog homepage. I was interested to compare the tag cloud created by tags with that generated from the free text itself.
You can find the full version on the wordle.net page, here’s the thumbnail:

Posted in Uncategorized | Tagged: tag, tag cloud, wordle | Leave a Comment »
Posted by Martin on March 3, 2009
In an earlier entry, I talked through a simple example of how to construct an iWidget for IBM Mashup Center. This afternoon I presented at the WebSphere User Group meeting at IBM Bedfont and was asked about the persistence of state in iWidgets, saving and loading and so on and so it seemed a sensible next step to augment the earlier sample to show how this is done.
ItemSets and attributes
As well as local instance variables inside the Dojo class, the iContext instance provides us with hooks into a standardised structure of instance-specific attributes. These attributes can be defined and set declaratively using the XML descriptor for the iWidget. To extend the earlier example, first modify the XML to contain the following element structure inside the <iw:iwidget> tag:
<iw:itemSet id="attributes" private="false" onItemSetChanged="itemSetChanged">
<iw:item id="pollInterval" value="5" readOnly="false"/>
</iw:itemSet>
This will make the pollInterval property we coded earlier as an instance variable into a managed attribute inside an ItemSet. The iWidget specification defines the ItemSet data type (and ManagedItemSet sub-type) to describe a generic key-value pair data store for iWidgets. The iContext exposes to us the attributes as an ItemSet instance, with accompanying accessors to get, set and save changes to the values contained within it.
The next step, therefore, is to wire this logic into our existing Dojo class to exploit this feature. At the top of the onLoad method, add the following line:
this.pollInterval = this.iContext.getiWidgetAttributes().getItemValue("pollInterval");
This reads the currently saved (or indeed default) value for the given attribute, and populates our instance variable with the value.
Similarly, our routine to save changes to the iWidget now needs to update the attributes and save the changes so they can be persisted with this instance on the page. Add the following lines after the call to set the pollInterval instance variable in the saveParams method:
this.iContext.getiWidgetAttributes().setItemValue("pollInterval", this.pollInterval);
this.iContext.getiWidgetAttributes().save();
What you will now discover is when you modify the setting and save the page, when the page is reloaded, you will see the attribute load with the modified value.
Posted in Uncategorized | Tagged: dojo, ibm mashup center lotus mashups iwidget web2.0, imc, iwidget, lotus mashups, mashups, persistence, web2.0 | Leave a Comment »
Posted by Martin on December 19, 2008
A couple of weeks ago I was fortunate enough to attend a roundtable with Jerry Cuomo during which he talked about his blog and most importantly why he has one.
Now if anyone has ever read my attempts at blogging before you will notice that I’m not very good at it and this is largely because I’ve not really felt a good reason to do it so far. I can see how folks doing an assignment abroad, undertaking an important project or attending a conference (I did once blog at IMPACT 2007 in fact) would benefit from documenting what they are doing and in that sense all the blog is is a convenient tool for the job. My thinking has hitherto been all a bit pragmatic really. Jerry gave a reason for keeping a blog that I’d not thought of before, and that is simply to make your mark — if you vanished off the face of the earth tomorrow, what trace would you leave behind?
I do have opinions on things, and occasionally during my day I reach moments of clarity that often get lost in the everyday noise and I have trouble remembering them. So, for no other reason than having somewhere to keep them, I am just going to try and write what I think on the various things that cross my mind and see where it goes. In a similar vain, I’ll seek to include, where I can, useful snippets and hints that arise in the course of my day. If anybody reads it then fine, if they don’t that is fine too. One of breakthroughs I found with Twitter was 1) finding an easy tool for the job (Twhirl) and 2) that it made it good way of retracing your steps. So, I’ve installed Live Writer (seems nice and easy so far) and hopefully the retracing bit will follow. I have to say doing this out in the open adds an interesting dynamic compared to keeping an internal blog behind the IBM firewall.
So here goes once again. If nothing else, at least I’ll have made a mark, if only on myself.
Posted in Uncategorized | Tagged: blogging, blogs, cuomo, ibm, web2.0 | Leave a Comment »