February 10, 2008   Sign In |  About ebizQ |  Contact Us |  Join ebizQ Gold Club
Sandy Kemsley
Column 2
The archive of Sandy Kemsley's blog on business process management, enterprise architecture, business intelligence and technology in business.

« June 2006 | Main | August 2006 »

July 29, 2006
links for 2006-07-29

Posted by Sandy Kemsley at 07:19 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us

July 28, 2006
links for 2006-07-28

Posted by Sandy Kemsley at 07:21 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Paul Harmon speaks at ABPMP San Francisco chapter meeting

Last night I attended the inaugural meeting of the San Francisco chapter of ABPMP, which included a presentation by Paul Harmon of BPTrends (pictured).

Paul had some interesting comments about a past attempt to start an ABPMP: a couple of years ago, he and a few others tried to get one started in San Francisco, and only vendors showed up. The challenge for this new attempt, as well as our starting chapter in Toronto, will be to create a critical mass of enough end-customer practitioner involvement to make it relevant.

Posted by Sandy Kemsley at 01:02 PM in ABPMP | Permalink | TrackBacks (0) | Add to del.icio.us

July 27, 2006
links for 2006-07-27
  • Where to find power outlets in airports. Since it's a wiki, you can add the ones that you find, too.
    (tags: travel)

Posted by Sandy Kemsley at 07:20 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Circuit City's broken sales process

Maybe I'm just ultra-sensitive to particularly stupid business processes that I run across because I spend so much of my time helping customers to fix their processes, but yesterday I ran afoul of a completely inane sales process at Circuit City that probably would have had most people walk away.

I'm in San Francisco for a few days of R&R before BlogHer (although I've had both conference calls and business meetings in the past two days so not sure if this really qualifies as vacation). Tuesday, when I arrvied, was great weather and I toured around town, but yesterday was cool and foggy in the morning, and I decided to do a bit of shopping. Clothes, shoes and other bits and pieces later, I hit a "discount" camera store to look at finally acquiring a digital camera. Although I want to replace my old Canon EOS 35mm film camera with a prosumer digital eventually, I was looking for a pocket-sized camera to just carry around with me and snap all the weird things that I see happening. The camera store was offering refurbished Canon Digital Elphs and I decided to check online to see if the prices were reasonable before buying, when I found that Circuit City had better prices on brand new models and offered a discount for ordering on the web. They also offer order for pickup, meaning that you order online to get the web price but can pick it up in a store in less than 30 minutes -- perfect, since I don't live here, and there was a store within walking distance.

I entered my order on the web, camera plus a bigger memory card, selected the store close to where I'm staying, then went to the checkout page. Uh-oh, only U.S. addresses accepted. Okay, I get that they would only deliver to a U.S. address, but I had already indicated that I was going to pick it up, so this was just the address to validate my credit card. I decided to call the 800 number listed on the page -- the one that says "Order anytime at 1-800-843-2489" -- and had a discussion with a customer service person who told me that it was true, only credit cards with a U.S. address can be used. He suggested that I just go to the store and make the purchase, but said that I wouldn't get the web discount (about $125). I whined, and he suggested the following workaround: go to the store, buy a gift card for the amount of the order, call the 800 number from the store and place the order using the gift card, then hang around in the store and pick up the order. He said that talking to the manager in the store might help, since they would see that the gift card nonsense was just a time-waster, and give me the web price on the spot.

His suggested workaround seemed completely daft, and I was going to just give up on the whole thing, but thought that I'd try the store first. I called the local store and talked to someone in the camera department and explained the problem. He said that they couldn't give me the web price, then amended that to say that a manager would have to approve it. I gently urged him to go get a flipping manager already, and a few minutes later I had a committment that they would honour the web price.

I hiked the 10 blocks to the store (the thing that I love about San Francisco is that you can walk from point A to point B and back, and it's uphill both ways), found the manager, and she filled my order at the web price.

So what's broken about this business process?

  • First of all, unnecessary restrictions on the customer-facing portion of the web order entry process, such as requiring a credit card with a U.S. address even if the purchaser has indicated that she will pick up the items at a U.S. store. Not only did this frustrate me, and probably caused some other non-Americans to just walk away from purchasing at Circuit City, but it took up the time of a customer service person who had to deal with me on the phone and couldn't even solve my problem. Cost: some loss of sales with no feedback (i.e., shopping cart abandonment) and/or increased customer service time without added value.
  • Second, a suggested workaround for the process that most potential customers would be unwilling to do, and which causes a significant amount of extra work for the in-store staff. Cost: further loss of sales even after the aforementioned customer service person's time was spent, since most people wouldn't be willing to do the gift card/call to order/wait for pickup dance.
  • Lastly, the fact that the entire situation could have been avoided since the in-store manager had full authority to just give me the web price in the first place. Giving people the authority to create process exceptions is practically useless unless you make that exception path easily available during the process.

Definitely an interesting look at a process that is not resiliant to exceptions. Meanwhile, I'm happy snapping away.

Posted by Sandy Kemsley at 01:33 PM in BPA | Permalink | Comments (2) | TrackBacks (0) | Add to del.icio.us

July 24, 2006
links for 2006-07-24

Posted by Sandy Kemsley at 07:26 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Slow blogging this week

Things will likely be slow around Column 2 this week: I'm headed for San Francisco tomorrow to just kick around the city and meet with a few business contacts, then attend the ABPMP San Francisco chapter inaugural meeting on Thursday night, then down to San Jose for the BlogHer conference on Friday and Saturday.

Posted by Sandy Kemsley at 03:13 PM in Blogging | Permalink | TrackBacks (0) | Add to del.icio.us

July 21, 2006
The Other Four Misperceptions of Outsourcing

Almost six months later, part 2 of this Gartner podcast arrives. Linda Cohen talks about the second four of the eight myths:

  • the myth of sourcing independence;
  • the myth of service autonomy;
  • the myth of economies of scale;
  • the myth of service management as self-management;
  • the myth of the enemy (i.e., setting up the vendor as an adversary);
  • the myth of procurement;
  • the myth of steady state; and
  • the myth of sourcing competency.

Good discussion, especially on how procurement needs to get a better handle on how to negotiate long-running services contracts in a non-adversarial way (myths 5 & 6). As a long-time service provider, I know how important it is that you start a contract with both parties not feeling like they just got screwed, because that can damage the relationship for months or years to come. Organizations that are used to using a heavy-handed approach with product vendors might want to consider that they're now negotiating with another company that is going to become an integral part of their operations for a long time -- the mentality needs to be more like hiring an employee than buying a product.

Myth 7 (steady state) is also interesting, although pretty obvious: business changes, and the relationship between an organization and its outsourcer needs to be able to adjust accordingly on a fairly regular basis.

It's probably worth going back to the podcast covering the first four myths and listening to them together.

Posted by Sandy Kemsley at 12:19 PM in SaaS | Permalink | TrackBacks (0) | Add to del.icio.us

July 20, 2006
links for 2006-07-20

Posted by Sandy Kemsley at 07:21 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Enterprise 2.0 meeting tonight in Toronto

There's an Enterprise 2.0 session tonight at Rowers Pub in Toronto:

Inspired by the success of everything Camp in Toronto comes one more event for your pleasure. Enterprise2.0 is about the business world applications of "Web 2.0" and "Social Media". The idea for Enterprise 2.0 is built on the hypothesis that the real killer app for the next generation of web and collaborative media technologies is in the enterprise. How can we take our learnings from the recent boom in the consumer internet and apply them to boosting employee productivity, enabling new ways of working and doing business.

Free, although you have to buy your own beer. Sign up on the wiki if you plan to attend.

Posted by Sandy Kemsley at 03:23 PM in Enterprise2.0Web2.0 | Permalink | TrackBacks (0) | Add to del.icio.us


Paul Harmon on BPM state and trends

I'm in a webinar (sponsored by Proforma) with BPTrends' Paul Harmon discussing their recent survey of business process trends. I expect to meet Paul face-to-face next week at the ABPMP chapter meeting in San Francisco, where he'll be speaking on "Business Process Today and Tomorrow".

The first part of the webinar is pretty much just a review of the report itself, with a minor degree of added value, although it's good for those who find it hard to plough through a 54-page report and find the high points without nodding off. He highlighted that most people are still doing their process modelling in Visio or PowerPoint (see page 29 of the report), although sees that as an indicator that an organization isn't yet fully serious about their process modelling efforts because of the lack of an enterprise view that you can get with a repository-based tool such as Proforma's. He sees many of the survey results as indicators that the BPM market that is still developing, not yet mature, and calls the market for tools "confusing" as he discusses the diagram on page 45. Considering that analysts tend to redefine "BPM" every couple of years, causing a vendor feature catch-up scramble, neither of these points is surprising and I agree with him. Furthermore, I think that the large percentage of Visio modelling is also an indicator of an immature market as much as it is of immature BPM initiatives within an organization.

He went through some results that I don't recall seeing in the report that summarized what people would be doing less, the same, or more of in 2006 (the survey was taken in February), grouped into enterprise, process level and implementation activities as per their pyramid (page 41-42 in the report). He sees most of these trends as further proof that we're still in a developing market for BPM, such as the large number of companies that are planning more of BPM systems, major process redesign and automation projects, and process analysis and design training in 2006 than they've done previously, as well as developing an enterprise architecture and enterprise performance management. I like the fact that he doesn't show any bogus hockey stick projections for BPM growth; those of us in the BPM business have been seeing those for many years now and are understandably wary.

The webinar will be available for replay at some point; check the original registration link or the Proforma website to find it in a few days.

Slightly off topic, I appreciate the collaborative spirit of many recent webinars that I've attended of opening up the dial-in line so that any of the attendees can speak up with their questions (rather than using a chat window), but it doesn't work so well in practice due to the large number of people who can't find the mute button on their phone or just don't consider the listening experience of others on the call. I can hear background conversations, papers rustling, computer noises of all sorts, and even a dog barking, all in spite of the speaker's repeated request for people to mute their phones. Even on an online demo that I attended the other day with only two other attendees besides myself, one of those two put his phone on hold during half of the demo which treated the rest of us to the periodic "beep-beep" that most phone systems emit to the party on hold (and gave the speaker a pretty good indication of just how unimportant the material was to that attendee, since we could easily identify who had hit the hold button).

Posted by Sandy Kemsley at 03:08 PM in ABPMPBPMEnterpriseArchitecture | Permalink | TrackBacks (0) | Add to del.icio.us

July 19, 2006
ABPMP in San Francisco

A couple of weeks ago, I blogged about our startup meeting of the Toronto chapter of the ABPMP. I checked around for the other North American chapters and have now found myself invited to the inaugural meeting of the San Francisco chapter next Thursday evening. Paul Harmon of BPTrends will be speaking, which should be interesting; I always enjoy his online writing.

Before you surmise that I'm a complete travel junkie (which I am), I had already planned to be in San Jose next weekend for BlogHer and fly in mid-week to spend a couple of extra days in San Francisco (one of my favourite cities), making the timing perfect for the ABPMP meeting. Time and place as provided to me by the chapter organizer are here on Upcoming.org; note that the address on the ABPMP website is incorrect.

If you're in the Bay area and are interested in business process improvement or business process management, you should consider dropping in for the meeting -- it's free and open to all. You can also check out the chapter's Yahoo Group, although it doesn't appear to be very active yet.

Posted by Sandy Kemsley at 10:38 PM in ABPMP | Permalink | TrackBacks (0) | Add to del.icio.us


links for 2006-07-19

Posted by Sandy Kemsley at 07:21 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


RedMonk Radio on SOA and mashups

Catching up on some podcasts today while walking around Toronto, and listened to the June 30th RedMonk Radio that included a section on SOA and mashups. Favourite quotes: "Describing SOA as mashups is insulting to mashups" (Steve O'Grady), plus Coté's analogy "SOA is like religion, and mashups are like science".

As always, worth listening.

Posted by Sandy Kemsley at 02:53 PM in SOA | Permalink | Comments (2) | TrackBacks (0) | Add to del.icio.us


Firefox 2.0 beta

Last month, I tried out the Flock browser beta for a few days, but ended up abandoning it because their "cool" features weren't things that I could use, and it was just too much of a memory hog. This week, I'm trying out the Firefox 2.0 beta. Aside from being able to make it crash within 5 minutes (I have a talent for that, as many developers who have worked with me in the past can attest to) by copying and pasting some HTML around between sites, it seems to be pretty stable. Four things that I've noticed so far:

  • The close buttons for the tabs are situated on the tabs themselves (like Flock), rather than a single close button at the right-hand side. I've had a few mistakes with that by closing the right-most tab rather than the one that I'm viewing, but I can get used to that. The nice thing about it is that you can close a tab without viewing the tab.
  • When the browser crashes, it has the decency to ask on restart if I want to reopen all the same windows, which it does -- including any text that I had keyed into text fields before the crash. Handy, although wouldn't be necessary if it didn't crash. ;)
  • I can subscribe to a site directly in Bloglines and other feed readers by clicking on the feed icon that appears in the right side of the address bar (the feed icon was there before, but wasn't an active control). Sweet.
  • As I type in any text field in the browser, such as the one that I'm typing in now to create this blog entry, it spell-checks my text, underlines unknown words with a dotted red line, and allows me to add them to the dictionary or replace them with a known word from a (right-click) context menu. I'm totally in love, just for this feature alone.

Definitely enough good stuff to make it worth the upgrade, although you may want to wait until the final release if you're not into the occasional crash.

Posted by Sandy Kemsley at 11:18 AM in Blogging | Permalink | Comments (4) | TrackBacks (0) | Add to del.icio.us

July 18, 2006
links for 2006-07-18

Posted by Sandy Kemsley at 07:22 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Bluespring webinar

True to my expectations from our earlier interaction, I received an email today from Bluepring:

As well as reminding me about the webinar today, it gave me a link to the in-flight process, which now showed that the reminder had been sent. Unfortunately, a second (manual ) email was required to send out the Microsoft Live Meeting invitation instead of that being embedded in the email auto-sent by the process, so the process reminder served little actual purpose aside from reminding me how cool it was to see my webinar registration process online.

I've never spent any time with the Bluespring BPM suite before -- it's at the lower end of the range, and most of my clients are financial services and other large organizations that tend to buy big -- so today's webinar was a "first look" for me. The PowerPoint presentation at the beginning was thankfully short, but, predictably, included the same list of key differentiators as every other BPM vendor lists (ease of use, deployment speed, zero-code design, web services enabled), which leads me to think that someone is secretly telling vendors that the word "differentiator" is synonymous with "feature".

The Bluespring product looks a lot like most of the other lower-end BPM products that I've seen, so I'll just touch on the things that I liked and didn't like about it. Keep in mind that I had a 20-minute demo, so this is not a formal review:

The integration with desktop applications, including email and Excel, looked good. For example, emailing to a pre-determined email address could instantiate a process that included the email attachment (an Excel spreadsheet, in the case of the demo) as an attachment to the process. I know that many of the other vendors could do that as well, but many of them would have to write a bit of code to do so. I also liked the Excel integration: an activity in the process could read data directly out of a spreadsheet attachment, then use that as a data parameter in the process. In the demo, which was (of course) an expense report approval, the process sucked the expense report total directly out of a specific cell in the spreadsheet and used it to decide if a second level of approval was required for the expenses. Very clean and easy integration.

In spite of the nice integration of the spreadsheet data, I wasn't really happy with the explanation that I heard for how the attachments are handled. It appears that they are saved to the local drive of the BPM process engine server with no specific security beyond just not creating a drive mapping to that location. Presumably, an admin on that server could browse the disk and open the CEO's expense report, or any other documents that were used as attachments. There should be a way to have the attachments in a secure repository, but still allow the level of integration that truly differentiates Bluespring.

The sales engineer who did the demo didn't know about any plans for BPMN (in fact, it wasn't clear that she even knew what BPMN is), and was totally derailed when I asked if they were using XPDL for moving process maps from Visio to their process designer. They need to not only get on the standards bandwagon, but educate their sales teams about it as well -- there were two customers on the line in addition to me, although most likely the BPMN/XPDL conversation went right by them.

The last issue that I have is that the process designer is a desktop (thick client) application rather than web-based, with no plans to make it web-based. A few of the BPMS vendors have gone to a web process designer already, and I'm convinced that this is the wave of the future.

Posted by Sandy Kemsley at 03:46 PM in BPMBPMN | Permalink | Comments (1) | TrackBacks (0) | Add to del.icio.us


Process Analysis Models

Also from BPTrends, today's Email Advisor has an article on Alternative Process Analysis Models (direct link to PDF):

There are a number of process analysis models that are designed to focus on more complex human interactions. One example is the RAD approach of Oulds and Harrison-Broninski and another is the Closed-Loop Business Interaction Model of Winograd and Flores. Both are useful in special circumstances, but neither replaces a basic workflow diagram.

I definitely agree with their premise that a single, common notation should be used for describing business processes for both business and IT.

Posted by Sandy Kemsley at 10:59 AM in BPABPMN | Permalink | TrackBacks (1) | Add to del.icio.us


State of BPM webinar

As a follow-on to the BPTrends state of BPM survey published a couple of weeks ago, there's a webinar this Thursday (sponsored by Proforma) with Paul Harmon of BPTrends discussing the survey results.

Posted by Sandy Kemsley at 10:49 AM in BPM | Permalink | TrackBacks (0) | Add to del.icio.us

July 13, 2006
Wrapping up Mashup Camp 2

David Berlind is wrapping up the whole conference now, and we're all anxiously awaiting the announcement of the "best mashup" winners. He made a few comments on the wiki and how it will continue to evolve, especially over the next few days while people finish up the last few notes and also continue the discussions in the forums that are linked to each session page. I'll probably link my blog posts about each of the sessions to the specific session page when I get a chance. If you're interested in any of the sessions, check out what's on the wiki pages, including the links to external references and any of the presentation materials (and, in at least one case, an audio recording of the session).

On the first count, there was a tie between WeatherBonk and another mashup that I hadn't even seen with 26 nickels each, followed by a flurry of people rushing forward with their nickels at the last minute resulting in.... a tie with 28 nickels each. David then made us go to each side of the room to indicate our support, resulting in a slight edge for the winner, WeatherBonk. Handing out of prizes ensued, and we finished the day -- and the conference -- on that note.

Next Mashup Camp will be on the east coast, I think later this year.

That's it for Mashup Camp; regular blogging will resume shortly.

Posted by Sandy Kemsley at 07:44 PM in mashupcamp | Permalink | Comments (3) | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 2: Speed geeking

Decision time. I have one wooden nickel to spend, and five mashups that I really like:

  • ChunkLove, a gift registry finder that was created when the author's sister complained that she had a number of friends getting married and no way to track all the different stores where they were registered for gifts. You enter a first/last name and city, and ChunkLove searches a number of pre-set registries (Pottery Barn, Bloomingdales, etc.) to see if that person exists in their registry. Right now, you can then click on each of the stores to link through to the name search results, but the plan for the future is to bring the search results back to the main ChunkLove page so that you can identify which Jane Smith it is whose wedding that you're attending, for example. Only Amazon has APIs to get the search results, so the rest of them are accessed via scraping -- the author was looking for a "more interesting" Ruby project to do, so took on the scraping task as well as all the other mashup essentials. He has other plans to use wedding date to narrow the search further, and aggregate the content (i.e., the actual items listed in the registry) so that you could see, for example, if Jane had asked for the same item on more than one site, and if it were already purchased on one of the sites.
  • TrPPR was whipped up by Cameron Jones in 4-5 hours starting at 11 last night, after he was inspired by all the other speed geekers' offerings yesterday. It's a mashup of NPR data with Microsoft maps that allows you to select a driving route by its endpoints, then see all the NPR radio coverage that you will have along the route. He scrapes the XML data from the NPR site, then uses PHP to calculate coverage radii. He then overlays the tower locations and coverage areas on the map route, and provides links from each tower to the corresponding radio station so that you can make a donation to support public radio.
  • PhoTiger by Chris Radcliff matches your Flickr photos with your Eventful events to automatically add tags, including geolocation tags, to the photos and change their titles based on the event data. Since the photo data uploaded to Flickr includes when the photo was taken, PhoTiger can match that against where you were at that time according to your Eventful calendar. It displays the photos matching each event and allows you to select/deselect appropriate photos, deselect any of the suggested tags, and select whether to override the photo name to match the event name. This mashup has actually evolved since yesterday to add the geolocation tags and photo titles, which says a lot about what Chris does in his spare time.
  • MileGuru, which aggregates all your frequent flyer and frequent stayer (hotel) points and other data into a single place. Since I saw the mashup yesterday, Chad integrated in mapping, so that all of your travel route details show up plotted on a Google map. He's promised to get me on the beta as soon as it opens, in part so that I can beat up the Air Canada section, and I can abandon that Excel spreadsheet that I'm using to track this now. He's currently using Google AdSense on the site to generate some revenue (or at least, it will when he releases this publicly), but he also plans to place targetted ads based on your frequent flyer content, that is, where you've been travelling lately.
  • WeatherBonk is a mashup that I first saw at the first Mashup Camp in February, and I checked out how it has advanced in the last several months. The author spent about four months creating the "Bonk" mashup framework, mostly on top of the Google APIs, and can now create new vertical mashups much more easily, such as GolfBonk and SkiBonk. WeatherBonk shows a map of the San Francisco area with temperature bubbles directly on the map (there's a lot of variation in the Bay area, and you can really see it here), plus a ton of webcams accessible directly from their location on the map. You can overlay live fog layer data, or see traffic speeds and traffic cams instead. For other geographic areas, you can plot a route on the map and see the expected weather conditions along the route in case you want to adjust your departure date. You can also look at historical temperature data for many other international locations.

WeatherBonk is definitely the most sophisticated, but then, he's been working on it since before Mashup Camp 1. From a pure consumer "oh my god, I want to use that" standpoint, my nickel goes to MileGuru.

Posted by Sandy Kemsley at 07:26 PM in mashupcamp | Permalink | Comments (2) | TrackBacks (0) | Add to del.icio.us


links for 2006-07-13

Posted by Sandy Kemsley at 07:24 PM in Links | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 2: Mashups for prototyping

"We can just hack that together" has been the rallying cry for mashups for a long time already, before the word "mashup" ever hit the scene, and Cameron Jones led us in the last breakout session of the conference to look at how mashups can be used for prototyping applications. He's doing Ph.D. research on mashups, so was able to give a bit of a theoretical view on horizontal versus vertical prototyping; it's really interesting to listen to someone who spends many hours each day thinking about this stuff, as opposed to most of us who only think about it occasionally (except here at Mashup Camp). He's looked at mashups as a general design pattern, including non-web mashups, and we discussed how the current range of freely-available and open source APIs and platforms makes mashups incredibly attractive as a way to build stuff fast.

I'm particularly interested in mashups for prototyping in two enterprise contexts: end-user computing, and actual IT prototyping.

In the first intance, I'm seeing that mashups could become the next generation of end-user computing as long as mashup applications can be assembled with a minimum of programming by a fairly non-technical user within an enterprise. In many back-office departments that I work with, there are a couple of people who create local applications like complex reports in Crystal Reports, databases using Microsoft Access, and a host of other mini apps that aren't sanctioned or supported by IT. Think of this in the context of the mashup mentality that Joe Ortega is trying to build inside eBay. When you think about it, aren't DDE/OLE and macros/VBA just the precursors of mashup mentality, although for desktop rather than web applications? If you give the same type of tools to people in an organization, but now web-based, there could be some pretty powerful end-user computing applications created and -- because they're on the web -- easily shared.

In the second instance, actual prototyping that will be turned into a "real" industrial-strength application later, mashups could be used to create rapid iterations of a prototype that allow for user evaluation and feedback. The prototypes might not be high fidelity, but a mashup could actually be a functional prototype rather than one of those non-functional mockups that are too often used by IT now to try to elicit user feedback. The danger, of course, is that since the mashup is functional and it's ready now, the users may want to use it even if IT is planning a fully-architected, hardened version of the application to be rolled out several months hence, and the mashup could become a de facto standard that is difficult to replace later. Depending on your opinion about the current state of IT development, that could be a good or bad thing.

There's a third use case for mashups as prototypes, and that is for external mashup developers to create new functionality on top of an existing web service or application that later causes the web service/API provider to roll that new functionality into their core product. I haven't thought too much about that one, but consider that the mashup developers become both market research and unpaid prototype developers in exchange for their free use of the underlying APIs.

Posted by Sandy Kemsley at 06:29 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 2: Internal mashups

Tom Ortega from eBay led a discussion on internal mashups (mashups within closed corporate walls). Like me, he sees mashups and SOA as two ends of the same spectrum, so there were a lot of things that they're doing internally that are somewhere in between the hair-on-fire mashups that we're seeing here at camp, and the takes-forever-to-over-architect SOA implementations that are happening in corporations everywhere today. Tom wasn't talking about eBay's APIs for mashups that are also being promoted elsewhere at camp; he's an internal guy developing stuff for their own internal use, nothing to do with the eBay developer program.

To be truthful, a lot of what Tom is talking about is way more SOA/web services/composite applications than mashups, using for the front end, and Java for the middle and back tiers, where Flex is making SOAP web services calls. I asked Tom why he called these mashups instead of composite applications, and he said that the intention is to create a library of web services and other tools, then unleash them on the organization at large to create/assemble whatever they want with them. Definitely a mashup mentality, if not fully lightweight mashup integration methods, which is a great first step to bringing mashups to the enterprise.

The wiki page isn't there yet, but will probably be here along with a link to Tom's slides.

Posted by Sandy Kemsley at 02:46 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 2: Google Maps and Google Calendar mashup

I used the "law of two feet" (also known as "quietly slipping out the back door when you're bored") and am now in a session showing a mashup between Google Maps and Google Calendar. I'm probably the only geek on the face of the earth who hasn't tried out Google Calendar, and I'd better try it out if I'm going to do something like this for my own uses, such as scheduling my wine-tasting club's events.

Patrick Chanezon of Google is giving the demo of this mashup that he created, and walking through any parts of the code that people are interested in. He just finished it this morning and it's a bit rough, but pretty cool. You can paste in the URL of your Google calendar, select the number of months out to look, and generate a map of all the events in the calendar for which geocoding was successful. Although it's not baked into this mashup, you could do all the other cool things in the Google Maps popups, such as creating tabs that have links to the event URL, microformatted date/time to add to personal calendars, and other information.

He's editing one of the source files on his Mac right now using vi, which I find hilariously endearing. Reminds me of my TECO days, which are alarming easy to recall with that PDP-11 sitting next door in the Computer History Museum exhibits.

Patrick talks about the mashup on his blog here, and you can try out the mashup here. There's no link to the session on the Mashup Camp page yet, I'll update this entry with it later. He'll also be publishing the code in a couple of weeks, likely linked from his blog or the Mashup Camp wiki page, so check back later if you're interested.

Posted by Sandy Kemsley at 01:51 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 2: Email mashups

Ten minutes into the email mashups session, and there's still an argument going on about whether this is about enterprise or consumer email (the description on the board said enterprise, which is why I'm here). Sigh. Maybe I'll check the notes later to see if there's anything interesting about microformats.

Posted by Sandy Kemsley at 01:11 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


SaaS and doppio macchiatos

I just received the latest copy of Roger Sessions' ObjectWatch newsletter (direct link to PDF), and there's a great article in it explaining SaaS in terms of making your own doppio macchiato instead of going to Starbucks, then later gives an IT cost-avoidance example for SaaS that lines up perfectly with the espresso-making analogy.

He also discusses the two models of SaaS revenue: pay-as-you-go (like Salesforce.com), or watch-as-you-go (ad-supported, like Google, and like most mashups). There are many Web 2.0/SaaS services out there that have a watch-as-you-go free version, and a pay-as-you-go premium version -- Flickr, Mollyguard and Nuvvo all come to mind -- so the two models are definitely not mutually exclusive for one provider.

If you want a quick and easy way to understand SaaS, or to explain and justify it to your organization, some great ideas in this newsletter. Worth reading.

Posted by Sandy Kemsley at 10:41 AM in SaaS | Permalink | TrackBacks (0) | Add to del.icio.us

July 12, 2006
Mashup Camp 2 Day 1: Wrap party

End of the first day of Mashup Camp 2, and boy, is my brain tired! It was a great day of new ideas, debating opinions, seeing new cool stuff, and meeting new and old friends. After some wrapup comments, we moved on to the after-party, and also had a chance to see the exhibits at the Computer History Museum (which I skipped because I had seen them in February, and because the conversations upstairs were too interesting to leave).

I ran into Stephen O'Grady of Redmonk, with whom I've exchanged email and blog comments but didn't realize that he was here until he introduced himself when he stood up to make a comment in the main session. I guess that I wasn't reading his blog at the time of Mashup Camp 1 (which he also attended, but at which I didn't meet him), and I'm so behind in my blog reading now that I didn't see any of his current Mashup Camp posts. I really need to review that Who's Coming list more closely.

I also met Cameron Jones, a Ph.D. student at the University of Illinois at Urbana-Champaign who is studying web mashups as his research. He contacted me and other Mashup Camp attendees a few weeks ago by email to get connected with the idea of interviewing members of the mash-up community for his research. Who knew that you could do a Ph.D. thesis on mashups?

I had a chance to chat with lots of other people who I met at Mashup Camp 1, although my memory for names is shockingly bad so I had to do a lot of discrete reading of name tags. There's a much greater sense of community now than at the first camp, and a continued sense of excitement. Also, as I noticed in the session on "mashdowns", some shifting of focus to business/enterprise mashups, which is really what I'm here for.

Posted by Sandy Kemsley at 11:59 PM in mashupcamp | Permalink | Comments (1) | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 1: Client-side customization

Like the profile data aggregation session, I didn't know what I'd get out of this session on client-side customization, but found it interesting nonetheless.

We had a discussion on the different types of customization:

  • Change the style sheet of a page/site to provide a specific theme or look and feel.
  • Add/remove/rearrange existing content, e.g., via Greasemonkey or Platypus.
  • Bookmarklets to add other functionality through browser bookmarks, like my acronym bookmarklet.
  • Cookies.
  • Create custom aggregation of data from multiple sources, e.g. NetVibes and other portals; most mashups fall into this category.
  • Create new data or services.

This led to a discussion of the spectrum of tailoring activities that could be done: customizing (transformation of existing data), integrating (aggregating data from multiple sources), and developing code (creating new data/services). We also touched on the difficulties caused by tailoring, such as cross-platform incompatibilities, but also the end-user support problem when all end users can potentially have environments that look and act differently from each other and from the people who are supposed to be supporting them.

A key issue raised from this is what the current generation of customizable software (e.g., Firefox) does with respect to raising the expectations of what should be customizable and how difficult should it be. This general expectation-raising of Web 2.0 and related technologies has a big impact on enterprises as their internal users and external customers start to expect that the organization's software will be just as flexible in terms of customizing the user experience.

We finished up by talking about how customizations are shared between people, and potentially become common usage within a larger group. This is less about client-side customization than user experience customization, and the ability to share an experience that you create: the web equivalent of redecorating your apartment, then inviting your friends over to check it out. Like (personal) blogging and sharing playlists on iTunes, it's a way to put a bit of yourself out there for your friends -- or complete strangers -- to experience.

Posted by Sandy Kemsley at 11:58 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 1: Aggregating profile data

Sarah Harmer's done, and I'm on to President Alien. It really is getting late, I swear that this is my last post for the day. Or maybe my second last.

Following the speed geeking, we had the breakout third session, and I attended the one on aggregating profile data. Although this was hijacked slightly at the end by the OpenID attendees, it was an interesting discussion on a number of profile/identity-related subjects:

  • Making yourself available and findable. How do you create an identity that others can easily find on any given social networking system?
  • Finding others. How do you find others on a social networking system? (through a directly tranmitted URL or reference, by email, by common screen name, etc.). How can you create a common identity view of someone that you know? Is the onus on the person being found or the person doing the finding to create that view? Being able to track changes on another person's profile. Being alerted about events in their life, e.g., birthdays.
  • Using different profiles for different purposes, namely the compartmentalization of different parts of life. Choosing what to share (photos, blogs, contact info) with which people (family, friends, work colleagues). Intentionally creating non-correlatable profiles, e.g., Superman/Clark Kent, work/play. The different levels of intimacy, e.g., comparing the Flickr friends and family categories with the concept of an IM buddy, and what information might be shared with acquaintances of different levels of closeness.
  • Exchanging profile data between social networking systems. Open standards for profile data exchange.The concept of a People Service for social networking group/profile management, which also came up in the People Aggregator mashup during speed geeking.

I attended this out of general interest; although I had hopes that it might be useful in enteprise profile management, I'm not so sure but still found it interesting.

Posted by Sandy Kemsley at 11:57 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 1: Speed geeking

We started the afternoon with speed geeking, where each mashup developer set up on a table, and the rest of us circulated around spending 5 minutes at each table for a quick demo. There were 21 tables but only 10 timeslots, which made for a quick triage before I started out. We're having another speed geeking session tomorrow so I'll have time to catch any that I missed before I hand out my wooden nickel -- the token that each of us were given at registration to use for voting for our favourite mashup. First prize is $5000 of geek-ware of some sort, so this is a pretty big deal.

Tons of ideas here: wedding registry finder, cell phone as shopping cart, news aggregator, train schedules to SMS, backend storage, music videos, Bungee Labs mega-mashup, restaurant reviews, auto-tagging Flickr photos by event, Frappr, pricing, travel data....

Because I was moving tables every five minutes, all my notes about the speed geeking are on paper but I'll post more details after tomorrow's speed geeking session. My faves so far:

  • ChunkLove, a gift registry finder
  • TrainCheck, which sends the next three BART times at any stop to your mobile via SMS or email
  • PhoTiger, which matches up your Flickr photos with your Eventful events to help auto-tag (and eventually auto-name and geocode) the photos based on the event data
  • MileGuru, which aggregates all your frequent flyer and frequent stayer (hotel) points and other data into a single place

Posted by Sandy Kemsley at 11:48 PM in mashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 1: AJAX design patterns

Veneer was great, but short, so I'm on to Sarah Harmer's You Were Here. I'm starting to slow down -- it's was a long day of travel yesterday and a long day of idea generation today -- so may not finish up all my posts today.

The next session for me was AJAX design patterns, which was good although focussed a bit too much on security issues for what I was looking for. Some great stuff on UI and performance issues. The wiki page has all the technical details, includes references to further JSON reading, so I'll just touch on some of the things that stuck in my mind during the session about AJAX UI design:

  • Action of the back button: was the last user activity a navigation or an action? Can it be "undone" by navigating back, or is it appropriate to return to a higher level/home page?
  • Action of the refresh button.
  • URL and permalinks: appended # arguments that don't hit the server but are pure client processes to make the AJAX calls. Implications for search engines (agents can't index pages directly and would require an alternative representation to be referenced by robots.txt, but doesn't handle issues of relevancy through links), emailing permalink references.
  • Tradeoffs between user experience and technical issues.
  • Some actions need to be synchronous (e.g., "buy it" and other transactions), requires forcing synchronicity in AJAX or breaking out of AJAX for that part of the transaction.

Posted by Sandy Kemsley at 11:32 PM in SoftwareDesignmashupcamp | Permalink | Comments (1) | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 Day 1: Mashdowns

As I mentioned in my previous post, I had to do all my blogging today offline because of the spotty wifi in the Computer History Museum, and I have to say that Windows Notepad makes a pretty sucky offline blogging tool. However, I'm relaxing back in my room listening to the newly-downloaded and extremely enjoyable Veneer (just available on iTunes, after I couldn't buy the CD after a month of trying on Amazon.ca), cleaning up the blog posts and paper notes from today.

Following the kickoff session, we headed off to breakout sessions proposed by anyone and everyone during the kickoff. Each session was supposed to update the wiki with notes from anyone at the session, and you can find the grid of sessions here with links to the wiki pages with the notes. I'll link to the notes for each of the sessions that I attended.

The first one that I headed to was "Mashdowns: mashing for competitive advantage in rich client/enterprise applications", led by Mike Fisher and Ben Widhelm from ElephantDrive. They see this as a second generation of mashups: more tightly integrated into desktop or enterprise applications, and more focussed on "doing" rather than "consuming" -- which seems pretty much aligned with my ideas about BPM and mashups. I hate their term "mashdown", however, preferring the more-commonly used "enterprise mashup". Really, the distinction between first and second generation mashups is primarily between consumer mashups and business/enterprise mashups.

We gathered a number of ideas about the difference between first and second generation mashups:

  • First generation mashups are about the "what", and are primarily about aggregating/joining/federating data. They're generally seen as useful by users (consumers), and because they're focussed on the consumer market, they tend to be public, and developed rapidly and a bit loosely. The revenue model is usually based on ad revenues, since few end-users pay for the mashups.
  • Second generation mashups are about the "how", and are about aggregating external and internal (enterprise) services. They're useful to business for all the usual business ROI reasons: improving process efficiency, reducing IT costs and increasing business agility; like any other plan that reduces technology capital investment, they also tend to level the playing field for smaller companies since they can use the same technology as the big guys but not have to build it or buy it outright. Unlike the consumer mashups, however, they have to be industrial-strength, private and secure. Equally importantly, they have to be supported by some sort of service level agreement backed by appropriate high availability and disaster recovery scenarios, which most of the current API vendors are not willing to provide.

The key difference for me is that second generation mashups are about integrating into the business processes. This breakout was a significant conversation since it's the first one that I've heard at either Mashup Camp where business processes were a major focus. I'm feeling very positive about BPM and Web 2.0 today.

We had a conversation about one of the main problems of enterprise mashups, which is their current lack of acceptance by IT. Part of this is IT attitudes: not trusting the external APIs, either in terms of data integrity or in terms of reliability, plus the NIH problem. An equally important part is the relatively lack of readiness of the APIs themselves in terms of SLAs, authentication and other indutrial-grade issues that would have external APIs be on equal footing alongside internal ones. Even with internal-only mashups, that use lighter-weight mashup techniques on internal APIs, there's resistance to a new way of doing things. That really comes back to the question of the the difference between a mashup and any other web services orchestration, especially as lightweight (non-WS-*) integration methods are used for faster application assembly internally.

This was a great session for focussing my thoughts on how to talk to my enterprise customers about mashups.

Michael Scherotter was also there from Mindjet, distributing copies of their application on flashdrives. Haven't had a chance to install and try it out yet.

Posted by Sandy Kemsley at 11:17 PM in BPMSOASaaSmashupcamp | Permalink | TrackBacks (0) | Add to del.icio.us


Mashup Camp 2 kickoff

David Berlind started Mashup Camp 2 a bit after 9am (which is great for us east coasters, but probably early for the locals) with the logistics and agenda framework for the day. As with Mashup Camp 1, and any other unconference, there is no real agenda, just time slots and rooms where anyone who has a topic of interest can faciliate a session. Kudos to David for getting this off the ground successfully -- again! -- and attracting almost 400 people here for the two days.

This was followed by all of the API/technology providers giving their 30-second spiel on what they do: EVDB, Yahoo Local (maps), AOL (mashup hosting, OpenAIM API, MapQuest, MusicNow), Microsoft Live, Commendo, Good Storm, Webalo, HotOrNot, Intel, Amazon, Plaxo, StrikeIron, OpenID, IBM, eBay (he introduced his company as "a small internet auction company"), Zazzle, Mindjet, O'Reilly, 411sync, Mobido, and at least one other that I missed. I don't recall anyone from Google up there, but they have a strong enough presence here that that's probably not required.

After that, the interesting part started: anyone interested in leading a session or making a presentation wrote their idea on a page, announced it into the microphone and stuck it on the schedule, with developers having first dibs on the time and space. There are a ton of interesting sessions proposed for the next two days: voting (as in political), data mining, PHP, user retention, music/movies, API versioning/backwards compatibility, using mashups for prototyping, mashups for non-geeks/small businesses, Google Checkout/AdWords mashup, client-side customization, incorporating mashups into desktop/enterprise environments ("mashdowns"), Ruby on Rails hands-on mashup development, wikis as a mashup platform (specifically twiki), social networking, API pricing models and licensing, content taxonomies, microformats and standardization for