Microsoft Amalga, why did not anyone notice this?

I was thinking that Microsoft was going to follow a more infrastructure oriented approach like other vendors. Even when I read that they have acquired a healthcare informatics company that has its own hospital information system, I was expecting that system to be transformed into some form of Microsoft Healthcare Framework, but it appears MS is taking a bold step, and entering the hospital information system market directly.

People, this is big news! It is quite interesting that I do not see many news about this, but Microsoft is the only large vendor that I know of, who is providing a HIS directly to the market. So far, MS has been a technology supplier for many healthcare solutions, and they have invested heavily in healthcare. It appears they are using a different strategy here; instead of waiting for the ISVs to build a solution based on their tech, just give them a head start by giving a complete product, and let them work on it.  Not that the ISVs have not been able to do it, but appearantly they have decided to take things under control, and maybe increase the pace adoption of MS technologies in healthcare.

The thing is; this will kind of going to make a large set of functionality “common commodity”, which means it will be quite expensive and unnecassary to build a significant portion of HIS and related products for ISVs, unless they have a really good reason. I really wonder what is going to happen here. If MS keeps investing in this direction, this might give a lot of competitors a hard time, because efficient integration between front end products, and backend products has been the primary advantage of MS in many scenarios. If the same thing happens in healthcare, this might change some existing dynamics between technology vendors, ISVs and users in healthcare informatics.

I should add that I still believe that the feature of healthcare informatics will be in domain specific language oriented tools, highly specialized and supported by vendors. OHF, being supported by IBM, seems to be a step in this direction, and MS can shift gear when they introduce some kind of healthcare framework. I truly believe that at some point, HL7 or OpenEHR oriented development tools with emphasis on domain specific languages will emerge, and they will have a significant effect on healhtcare IT. I guess this is something that I should write about in a post on its own.

Surviving as a project company. Is it possible?

For the last 10 years or so, I’ve been working in the software business. I’ve worked in almost every way from freelancer to R&D Director, and in the process I’ve had the opportunity to work at some quite good companies.

Some of these companies did exceptionally well during the time I worked for them, and some had real problems. Profitability was an issue almost always. In a competitive environment, the pressure comes from both directions; competitor companies bidding for lower prices, and talented developers rising costs, or worse, incapable developers rising costs.

Given all the pressure, I’d choose a product company over a project company any given day, unless some very rare conditions exist. The product company does not have to deal with some of the really nasty problems that the project company always faces.

The project company will usually have wrong specifications, incomplete specifications, learning curves of many sorts, deadlines, shocks, earthquakes and terrorist attacks etc.. I’m sure you get the idea. I project based approach to solving a particular problem is usually hell on earth, due to some difficulties that arise from the very nature of software development. First of all, customers have that genuine feeling that something is being built for them exclusively, and they do not hesitate to demand for more, claiming that it should have been implemented anyway. Too bad it was missed during the initial analysis, but this has to be done!

Needless to say, keeping costs and development under control is a very tough job, and staying profitable in this kind of environment is very hard. Now, there are some cases in which you can stay profitable, and these cases seem to be specific to particular industries. Defense for example, is an industry with very expensive contracts,  and relatively stable requirements management. Even though delays and problems are quite common in defense contracts, the way that these projects are handled seems to cover unexpected issues and costs most of the time.

I guess two important variables for deciding whether or not to go for a project based approach are, the competition in the domain and maturity of software solutions in the domain.  Where you have a fierce competition with many competitors claiming that they can do what you’d do for half the price and half the time, you are in trouble. This has been the state of business application development for quite some time now. On top of that, when you have a set of customers who can not realize that their continuous demand for changes and additions is bringing down the project you are really going to have a hard time staying profitable.

Product based companies on the other hand, give the very important image of “product”. Something that is completed, built and ready to be used for a particular task. If it does not cover what you want, you can wait for the next version. The company won’t say we’d change it for you right now, and more important than that, you do not expect them to! This gives a huge advantage to product based company, and when you get large enough, you are free from the many troubles of project based approach.

In short, focusing on creating a product is a good idea, if you have various pressures due to nature of the domain you are working in. All the project companies I’ve seen have this life cycle, where they first get a lot of projects, and seem to be doing great. Then their rise ends, and their fall begins, as increasing costs, and delays in projects start consuming all the profit, bringing losses.

I guess this is a field where there is much that can be said, and one last comment that I should add is; it is not easy to create a product company from a project company, but this seems to be the holy grail for many companies out there. I’ll hopefully write about why this is harder than it seems.