Wednesday, November 14, 2007

smells like teen spirit

I googled "kolba mashup" to see if my blog would come up.

It didn't.

But I got this gem as a consolation prize. Wow. We didn't have pep rallies like this in my high school.


http://www.tubarati.com/video/uvYl7-aR3Kw/Mini-playback-show-in-Kolba-City-CZARNO-CZARNI--NOGI-:PP

I think my next vacation has to be to "kolba city".

Monday, November 12, 2007

end of mashup camp

Today was the last day of Mashup Camp in Dublin. Here is a quick summary of days 2 & 3 (from my perspective):

Day 2
The first half of the day was given to more presentations as part of "Mashup University". Although, many of the presentations are interesting (and some are very interesting) they start to drag a bit after a full day of presentations yesterday.

Mashup, SOA or RIA?
Martha Rotter from Microsoft kicked off the day with another go at some of her material that had been a casualty of the wireless network the previous day. We saw some more demos of mashups using Silverlight with more of an emphasis on social networking functionality. Martha also touched on codeplex.com: "Microsoft's open source project hosting web site".

As usual, everything coming out of Silverlight looked very slick and pretty, yet I found myself often wondering "is this really a mashup?". This would become a reoccurring theme for the rest of the conference.

AOL & LOL
Next, there were two presentations on APIs from AOL. The first was a very funny one, by John Herren, on AOLs XDrive storage API. (John isn't with AOL, he was just filling in). The presentation is available here.

After John, Stephen Benedict (who really is from AOL) talked about Open AIM. The goals are to allow users to build their own custom AIM clients as well as allow users to take bits of functionality from the AOL messenger and plug it into their web apps. Developers can also write their own bots and and plugins for the client and contribute them. This is cool stuff, an intd Stephen made the very good point that it allows start-up sites to automatically tap into the AOL community.

Also, Stephen demoed what AOL is calling WIMZI. Which is an embeddable IM window that the owner of a site can put on a page using a small amount of HTML. The IM window lets end users of the site message the owner directly, anonymously, and also while protecting the owner's identity. This is very similar to what Meebo has done.

The Mashups are coming...
The first day, I had noticed a number of large poster displays (like the kind you'd see in an actual conference) featuring close up shots of people who are half modern primitive / half corporate suits. The most prominent image was of some tough looking guy with full body tattoos and big honking posts in his ears wearing a button down shirt and tie (and cuff links!). On the top of the poster it reads: "The Mashups are coming. Unleash your inner developer." The whole display seemed incongruous with the spirit of Mashup Camp, and when Serena did their presentation it became clear that the guy in the suit had gone and gotten the tats to mix with the young crowd. Serena is a 20 something old mainframe company that has taken their workflow application and hooked into SOA on the backend and onto HTML on the frontend. Not that there is anything wrong with any of this. I proudly work for a company that goes all the way back to the 1800's and that is in the middle of reinventing itself right now. I just didn't see how this was a mashup. To quote Fight Club: "sticking feathers up your ass does not make you a chicken", and I would say that calling Salesforce.com, while very nice, does not make you a mashup.

Kegerator
The last talk (that I can remember at least) was by Chad Dickerson, who is the director of the Yahoo Developer Network. He of course talked about the developer network and the great work they have been doing. Not just with APIs, Pipes, and YUI (as if that weren't enough), but with design patterns documentation and performance tunning recommendations and the YSlow plugin. If you are a web developer and haven't looked at Yahoo's Design Patterns and rules for Exception Performance, I strongly recommend you do. However, the biggest highlight of Chad's talk was his revelation that he is best known on the internet as a kegerator construction expert.

Geeking Out, Pubbing Out, and Install Hell
In the afternoon, we broke into discussion groups. The discussions and groups were participant lead and moderated, and are one of the hallmarks of the unconference. Unfortunately, at this point, I became caught in one of those installation/configuration hell's of a very deep level as the IBM team labored ceaselessly to determine what was wrong with my QEDWiki setup. About 36 hours and the tremendous help of Will, Flavio, and Dan (thanks again!) I now have QEDWiki running on my local machine -- just a little too late to enter the Mashup challenge.

The discussion I did get to participate in a bit was primarily around widget and service discoverability. The general consensus was that standards should adopted for metadata around widgets and services. While you can't really argue that this is a good idea, I do wonder what can really be implemented that will be practical, work for a wide enough range of situations, and that people will really use.

I am also not so sure that there is that much of a problem with discoverability to begin with. Or at least, a problem that wont be fixed with defacto standards coming out of particular business needs. Also, discovery is where the real value is in mashups, and where some of the key differentiation happens. If discovery were easy, we would have to come up with something else just as hard in order to compete. In other words, easily discovered data has little or no value. So, its nice to play around with, but nobody's going to build a business off of it.

The evening last night ended up in a couple of different pubs, in what was probably a relatively calm Sunday night out for many Dubliners. This morning, things got started a little late...

The Competition
The Competition was definitely one of the most exciting parts of Mashup Camp. After people had put together the mashups, speed geeking began, each mashup creator had 5 minutes to present their mashup to each observer. There was some interesting work done with QEDWiki (there was a QEDWiki mashup challenge as well as the Mashupcamp best mashup award being given - I helped judge for the QEDWiki challenge), and there were a number of mashups being done using mobile phones. The amount of mashup in the mashup varied from one (3rd prize) that very entertainingly made a game out of yahoo news headlines by substituting the terms in the headline with a result from a Yahoo image keyword search, (For example, "Bush Fires Staff" might show a picture of a shrub, a fire, and a big wooden stick, you then try to case what the actual headline is then click through to see the real headline and article.) to many that I would consider to be primarily standard web applications calling free services on the web rather then ones built from scratch. All in all, it was really impressive to see what people had done with very little time and (in some cases) very much beer.

Leaving Camp...
There was definitely a "leaving camp" feeling to leaving mashup camp that distinguishes it from other conferences. It's a nice feeling, and one that makes me reflect on how we can build a stronger development community where I work. I hope I can take some of these lessons back to Reuters.

Finally, as the mashup ecosystem develops I think its important that mashup doesn't become just another check mark to put on software and that it doesn't the term become become diluted to mean just calling a 3rd party service on the web. In my opinion, mashup implies some novelty of use where two (or more) incongruous objects are brought together in a way that creates a third. Or, it could be said this way: Mashups should be easy to build, but hard to conceive.

Saturday, November 10, 2007

mashup camp Dublin: Day 1

Winding down from my first day of mashup camp with some takeout chinese stirfry and a cup of tea. Here are my reflections on the day:

After an unsolicited and random tour of Dublin by my cab driver (Brahm Stocker's house, school where the guy who wrote the screenplay for the Commitments taught, etc) I arrived at mashup camp held in the Guinness Storehouse, fresh from an early morning flight out of London. Amazingly enough, mashup camp is held in the very place they brew Guinness beer. This will be a very interesting few days.

The first day and half of camp is dedicated to what is called "Mashup University". These are presentations by various contributors to the mashup ecosystem. Today they included several presentations from IBM on QEDWiki and the Mashup Hub, which together make their Mashup Starter Kit, Microsoft on their Popfly site showcasing mashups with Silverlight, John Musser from Programmable Web, and presentations from Kapow, AOL and others. (sorry if I missed anybody, I was a little late).

QEDWiki from IBM
I have had some experience with QEDWiki already. I saw a demo of it at AjaxWorld in SantaClara last year and later had the opportunity to work with Dan Gisolfi, who presented today, with doing a proof of concept with it around a project at Reuters. QED has come a long way in the past year, and I think that packaging it with MashupHub was a good idea. MashupHub is feed aggregator much along the lines of Yahoo Pipes (even with a similar slick GUI for linking feeds together). One major difference that is beneficial to potential enterprise users, is that the MashupHub can run on a private server, unlike Pipes which is all in the public domain. The combined kit from IBM attempts to enable the assembly of Mashups by non-technical domain experts who would work with widgets and feeds already built by the mashup enabler. This is an ambitious and important goal, since so many situational applications are never built for the simple reason that the domain expert who conceptualized the app is not able to create it directly. And engaging IT to build something from scratch is too expensive and/or too slow. QED covers a lot of ground, but we are not out of the woods yet. While it is true that you can build an application in QED without doing any coding, the assembling itself requires quite a bit of expertise of a technical sort, especially when it comes to resolving aggregation and filtering of disparate data feeds. These are problems that no one has the solution for yet, but IBM has done a lot of heavy lifting with QED and MashupHub.

Dan touched on many of the partnerships IBM is forming around the project: wiith Dapper, StrikeIron, SMILE and OpenSearch. He also summarized the Enterprise Mashup Challenge that IBM is hosting here for the best Enterprise Mashup built on QED.

One of the big problems with QED is aesthetics. Its clunky look detracts from its real utility, and risks undermining the confidence non-technical people will have in using it to build mashup applications. It’s a shame because if it just got polished, it would really shine. Ironically, the mashup hub looks far more finished, and this is the backend tool that feeds QED.


Hi Ho Silverlight and away

An interesting contrast to IBM's demo was the demo by Microsoft of the the Popfly community for Silverlight mashups. Here it was all style with a shortage of substance. The widgets in Silverlight looked awesome, zooming around the page in 3D and Martha (Rotter?), who was doing the demo was able to easily link the widgets to feeds, visualizing data in different formats effortlessly (barring network problems). However, most of the lush graphics have no meaning for me and in fact are a negative. What use could I have for the whack-a-mole visualization of data when I am trying to solve the workflow problems of high volume financial traders? Microsoft seems to be preoccupied with out-flashing flash here, in a bid which I don't think plays to Microsoft's strengths.


social networking

John Musser delivered what was an excellent summary of the evolution of web mashups he has been tracking with Programmable Web in the past 2 1/2 years. He focused largely (for good reason) on the rise of Social Networking platforms and discussed Google's OpenSocial project. John also gave some entertaining examples of mashups. My favorite was a mashup that actually used the Amazon.com wish list service to identify political subversives and locate them on a Google map. Oddly enough, they are mostly on the east and west costs. Check it out here.


Gregory Cypes' summary of AOL's AIM API project tied into John's presentation very well. Gregory also talked about AOL's use of the OpenID standard.


The day was wrapped up perfectly with the freshest pint of Guinness possible from the bar at the top of the storehouse. Tomorrow should be even more exciting as the gloves come off and the geekiness is unleashed.

Thursday, November 8, 2007

Enterprise Mashups?

It's the day before I go to Mashup Camp in Dublin. One of the focal points of this "unconference" will be "the enterprise mashup", which has become kind of a holy grail of web 2.0.

For some time now, I have been trying to resolve for myself how collaboration, mashups, and other web 2.0 buzzologies can really be relevant to my end users who are time-poor, technologically conservative, and only concerned with the bottom line. On top of this, technology in my enterprise world is wrapped in a tight web of permissions, corporate IP, and government regulation.

However, I am still optimistic that many of the technologies and models from the web 2.0 world have a great deal of value for the enterprise world. One of the problems seems to be that many of the guiding principals in the web 2.0 consumer world are incompatible with the enterprise world and need to be transformed. Here are a few:

Consumer Web 2.0 principals
  1. Information should be free
  2. Users want to interact with the system and use it for expression
  3. Build first, monetize later. For example: build up a community of people and then generate revenue through ads.
Enterprise Web 2.0 principals
  1. Information needs to be monetized
  2. Users want to use the system to do their jobs. They don't want to put anymore information into the system then their current work flow requires (and less would be even better).
  3. Everything must begin and end with a business case. Advertising is not a relevant business model for premium enterprise applications, which must demonstrably cut costs, generate more revenue, or both.