Thursday, May 12, 2005

BlueRoads

While we are on the subject of Software as a Service (SaaS), I almost forgot to mention that last month the Business Intelligence SIG heard a entrancing presentation from Axel Schultze, CEO of BlueRoads Corporation.

BlueRoads is a software service that does Partner Relationship Management (PRM). Basically they provide a set of applications that allows a company to interact with its channel partners. Unlike CRM which a company usually imposes on their salesforce, the BlueRoads model is that they are an intermediary between the business and the channel partner. To make it work, BlueRoads creates applications that provide value to both the channel partner, so that they use it, and to the company, so that they pay BlueRoads.

If BlueRoads can pull it off, they have something wonderful. While there are other companies in the PRM space, none of them have anything like the BlueRoads SaaS business model. They have both viral marketing and the network effect in their favor. BlueRoads is currently concentrating on high tech where channel sales are growing to be a larger proportion of total sales and the whole market is growing., so they are in a growing segment of a growing market.

And all they have to do is pull it off!

Wednesday, May 11, 2005

Software as a Service

The SDForum has a new SIG called Software as a Service (or SaaS for short) and they had their first meeting tonight. If you did not blink at the height of the boom, you may have seen the shortest lived SDForum SIG, the ASP SIG that had a life of less than a year. Now software as a service is back, and this time it is here to stay.

Tonight's presentation was given by two analysts from IDC, a market research company. I believe that the presentation is their standard presentation that they give when they are touting for business, however it did contain a lot of interesting stuff. As a software developer, a number of things stood out.

Packaged software offers a bad user experience. The software company creates a product which they throw over the wall to the customer. The customer implements it with little or no help and with great difficulty. At the same time the software company has little idea what the customer is doing with the product to help them plan features for the next release. On the other hand, software as a service is implemented by the software company who have a motive for helping the customer make the best use of the software. As the software is run by the software company, it can easily find out how the software is being used to help the customer make the best use of the software and to understand how to enhance it.

Large and medium sized companies tend to use software as a service to enhance existing applications, while smaller companies use it more to replace existing applications. In all sized companies the number of new applications using software as a service is small. In fact the analysts seemed optimistic that software as a service would increase the size of the software market. (On the other hand I have never met an analyst with a pessimistic market projection.)

The most common reason for switching to software as a service is the prospect of having to upgrade an existing software package. I am sure that having to upgrade is a major reason for changing to a new software implementation anyway, however software as a service does not suffer from the upgrade problem in the same was as packaged software does, as the upgrade is done by the software provider.

Monday, May 02, 2005

A Colleague Moves On

It is always sad when someone in your circle moves on, at the same time is always encouraging when someone in your circle moves on to bigger and better things. Alex Chan has done a multitude of things and touched many people since he came to Silicon Valley: co-chaired the Multimodal SIG and done numerous other things for the SDForum, President of the Chinese Software Professionals Association, founder and leader of Silicon Valley HUB, as well as a demanding day job at Cisco Systems. Now he is moving to China to an important research post in Shanghai.

Alex, we are sorry to see you go and happy for your new position. Bon chance!

Sunday, May 01, 2005

Event Driven Mobile Applications

This month the SDForum Software Architecture and Modeling SIG heard about a real application for mobile information technology. The talk was called "Worlds collide: when mobile, real-time requirements meet fragmented legacy systems: Lessons learned in providing real-time patient information to emergency room physicians."

The point of the talk was that with mobile applications (as with most other applications) , the important problems turn out to be different that the problem anticipated by the developers when they start the project. In particular the speakers proposed that an emergency room mobile information system needs to be situationally aware so that it helps the doctor in a high pressure and demanding environment rather then get in the way.

The thing that I took away from the talk is a desire to give the doctor more of an event driven life. When a patient comes to an emergency room, the hospital or medical organization may already have a lot of information about the patient. While there, the doctor may order several tests and the results of these tests is further information about the patient. All of this information can be made available on a portable device.

A problem is that the patient information may not be available immediately and the results of tests dribble back. Thus the doctor is always polling to see whether they have enough information to go back to the patient and make a further assessment or order a treatment. As the doctor is responsible for several patients, the doctor has several queues of events to poll.

When implemented with conventional technology, each patient has a box. Paper with test results arrive and are put in the box. The doctor is constantly looking through boxes to see what new results have arrived since they last looked.

The mobile application uses an iPAQ type PDA with a fingerprint reader for easy authentication. The primary screen shows a list of patients with a simple traffic light scorecard of the types of tests that have been ordered and whether the results are available. The doctor still has to look at the screen and understand what has changed, however they have a single screen with the information about what they can do next.

Mobile applications are going to become increasingly important and this presentation convinced me that they are not just desktop or even laptop applications with a small screen. Mobile applications need to be more situationally aware to overcome the constraints of the UI. At the same time done properly they can remove the need to poll and allow us to lead the event driven life.

Tuesday, April 26, 2005

The Event Driven Life

A few years ago the Smithsonian did an exhibition on time. It explored the changing way in which Americans have measured, used and thought about time, with a movement from time marked by the Sun's cycle to time marked by the tolling a clock bell to time marked by a personal watch.

The watch revolutionized our relationship with time. Before the watch everyone got up at sunrise, ate when the Sun was at its highest and retired when the Sun went down. The clock tower with its bell marking out the hours allowed a slightly better control of time. For example, it meant that everyone could arrive for the Church service at the right time.

In the 19th century mass production and improved manufacturing techniques reduced the cost of a watch to the point where everyone could afford to own one (does this sound familiar?). In a world where everyone has their own timepiece, people could schedule their own use of time, and now they are expected to. So instead of the time being broadcast by the clock tower bell with the granularity of an hour, we each keep our own time to the granularity of a few minutes.

With a watch, we have to keep a list of appointments and constantly look at the watch to keep on time. It is well known that polling is an inefficient algorithm, and constantly checking a watch is very distracting for everyone. We all know a type-A person who never seems to relax or even listen to what we are saying because they constantly looking at their watch, indicating with their body language that the next appointment and keeping on schedule is more important than whatever they are doing now.

The next stage in the evolution is to eliminate the distraction of looking at a watch and polling it by giving the job of managing out personal calendar to an information appliance. This is a portable device that knows our calendar and the time and lets know what we are supposed to be doing now. With this device we can lead the event driven life, the machine tells us what to do and when to do it. The evolution is complete when we stop thinking about time because we never have to know the time, only what we are supposed to be doing.

Some of this exists. In my estimation we are about a third of the way there. You can buy a PDA and synchronize it with your corporate calendar. Within the corporation others can see your calendar and organize events with your schedule in mind. However synchronization is weak and the corporate calendar is a closed system that does not interoperate with other calendar system.

Moreover, calendar applications are very primitive, lacking many useful features. For example, if I have to travel to an event and want to ensure that I am not scheduled for something else when I am supposed to be traveling, I have to calculate travel time and add that to the event, so I lose the event starting time. If I create the travel time a separate item it is not associated with the event and does not change when the event changes. Another example is that there is no function to buzz me 5 minutes before the end of a meeting to remind me to wrap up so that I can make the next meeting on time.

Interoperability is another problem. The real problem is that there is tight integration in the closed corporate system and no outside integration. If I arrange a dental appointment, I have to enter the appointment in the calendar by hand. Later on the dental receptionist will call me to remind me of the appointment which I again have to check by hand. What should happen is that the dentist sends me an email confirmation of the appointment and I right click on the email to add it to my calendar. This should just work between all email clients. Again, if I go to a web page that announces an interesting event, or I use the web to register for an event, I should be able to right click on the web page and select "add to calendar" using the browser plug in for my calendar application.

The good news is that there are clever people who realize that there is a problem and are trying to solve it. The bad news is that the solutions are closed systems. What we need are open standards that allow for interoperability. Again, clever people have realized this, but so far the standards have not stuck.

Tuesday, April 19, 2005

Blackjack and Hookers

My culture antennas started to twitch. There was something about what I was reading that touched a chord. I immediatly did a search on the phrase "blackjack and hookers. In fact, forget" and got about 5000 hits! Is this the new "All your base are belong to us"?

Wednesday, April 06, 2005

The Information Appliance

Tools and appliances are best when they are designed for one purpose and only used for that purpose. We buy many tools to help us with our daily tasks. I have 4 hammers in my garage and each is designed for a specific purposes. Likewise, in the kitchen there are 6 or 7 different knives, again each with their own purpose. However there is always someone out there trying to sell you a "bargain", the multi-purpose gadget.

Multi-purpose gadgets always turn out to be useless at doing the many tasks that they are supposed to cover. A long time ago Mad magazine send the concept up by proposing a coffee grinder/pencil sharpener/garbage disposal. (Imagine how your coffee would taste from this machine!) After many experiences with eagerly buying a multi-purpose gadget and then being disappointed I have firmly forsworn the whole concept. Each tool for one purpose and one purpose for each tool. When I was looking for a coffee maker recently, my main selection criteria was to avoid the models with a built in clock radio.

On the other hand, information is different. We have entered a new era, the digital age where all information is represented digitally: sound, pictures, video, text, diagrams, charts. We create, massage and consume all information in digital form. In the digital age we do not have, need or want separate appliances for each form of information. One type of appliance, the information appliance is sufficient to handle all our information needs. Here are some of the information tasks that I do at home:
  • Personal communication by email and instant messaging.
  • Track home finances and do taxes.
  • Edit pictures and video, create slide shows and home videos.
  • Consume media, magazines, music, video.
  • Play games.
  • Shopping and research for shopping/living.
  • Research for hobbies.
  • Create presentations and writing for non-work activities.
  • Analytic research of stocks.
  • Write blog.
This does not include work activities, and all these activities are done with the same information appliance. Now I know that there are a different definitions of what an information appliance is. There are also people out there who want to sell us a different appliance for every purpose. We will get to all that, but for now I want you to contemplate the fact that one suitably specified information appliance is sufficient for all your information processing needs.

Tuesday, March 22, 2005

A Place for the PC?

While it is not exactly news, today Bill Gates responded to a Nicholas Carr article on the "Requiem for the Corporate PC". Carr has a good point. A large proportion of the employees with PCs do not need a high powered general purpose computer with a very hackable operating system on their desk. In large corporations the majority of the workers could be better served by a relatively thin client that gives them access to many of the services that they need on well protected corporate servers.

The problem is that the best general office productivity suite comes from Microsoft, so corporations do need to buy the highly hackable operating system with its attendant support costs to run the standard desktop. The funny thing is that while Microsoft did an extraordinary job with Office their Outlook is not so stellar.

Unfortunately, while Carr may have a good point, he tends to sex up his argument by personalizing it and that drag us down the wrong path. So rather than discuss whether the corporate lacky is best served by a thick or thin client, Carr gets in a fight with Gates. In his response, Gates is more abstract and less compelling than usual.

I think that there are interesting and compelling arguments on both sides, I would just like to see them being made.

Sunday, March 13, 2005

The ASP Model

The PC revolution was about everyone getting their own computer and running their own applications. The Application Service Provider (ASP) model is about bringing all this under control, by using the universal connectivity of the internet to run applications professionally and centrally, often outsourced to a third party.

The ASP concept has had a rollercoaster ride. At the hight of the boom 5 years ago, ASPs were going to be the next big thing. Then the boom deflated and most ASPs disappeared. A couple survived, most notably Salesforce.com, and suddenly the ASP model has become so fashionable that now I hear you cannot get funding for a new software venture unless your proposal has a service delivery component.

I am starting to appreciate the ASP model. Last week the disk on my work laptop started to die. At first the symptom was that a couple of applications did not work. Unfortunately the applications were email with calendering and IM, so I was lost, not knowing what I was supposed to be doing and unable to communicate with anyone. It took a day and a half to identify that the problem was the disk and not the applications, another day to identify that the disk was beyond repair so I needed to get a new one, a day to get the new disk and another day to get it installed and set up. So I was without my computer for a week.

The good news was that we use Lotus Notes at work which is run on the ASP model from centralized servers configured for high availability and reliability. As soon as we figured out that it was a hardware problem, I got a loaner laptop, connected it to the Notes server and was back in business with email, calendar and IM.

I was secptical of ASPs at first, but seeing how well it worked for my recent problem, I am starting to see the point of having professionally managed services delivered from centralized servers over the internet.

Monday, March 07, 2005

More Windows Fuglies

There are those times when I feel the jaw muscles tighten and my teeth start to grind. Recently Windows is has been causing my fillings to crack. At home, I have discovered that I can render the movie by switching off DMA mode on my disk drive. The movie renders with the disk in PIO mode, it just takes 10 times as long. So I find myself doing the rendering overnight just as I used to do when I had a 150 MHz processor.

The thing is that I rendered movies in January without a problem, and the only change to the system since then has been Microsoft's persistent security updates. The patches have been coming so fast and furious recently that I have not even been looking to see what they are. Anyway, given the way they are delivered, Microsoft seems to encourage the ignorance is bliss approach to patches. In this case ignorance has lead to anything but bliss.

The "funny" thing is that the hint to switch off disk DMA came from a NT bug workaround from years ago. Has the bug been reintroduced, or more likely the original source of the problem was never properly fixed and a change to another module has uncovered it again. I suppose that I should uninstall the patches one by one to find the one that is the cause of my problem, however that would mean doing the absolutely ridiculous act of writing down bug numbers on a piece of paper because sure as hell you cannot use the computers cut and paste to copy them (subject for another rant that has been brewing for a long time and seems close to erupting).

I will not go into the anguish at work where my computer has switched off DMA mode on the disk drive and cannot be persuaded to switch it back on again.