Thursday, August 25, 2005

Great MS Blog - from a former employee

This post is an especially great one about why a break up of Microsoft would have been a good thing.

Wednesday, August 24, 2005

Where are the MS web startups? How Microsoft is losing innovative developers.

There was a recent post by Joel Knauss' Bnoopy Blog It's a great time to be an entreprenuer about how now is the best time to start up. He cites several key factors


  • Hardware is 100X cheaper
  • Infrastructure software is free
  • Access to Global Labor Markets
  • SEM (Search Engine Marketing)changes everything

What's interesting to me is the infrastructure software component. It's almost uniformly the case that these start ups are running on the LAMP (Linux, Apache, MySQL, PERL,PHP) software stack instead of the Microsoft stack. At first I thought perhaps it was merely my bias that prevented me from finding them. Companies like Flikr, Jotspot, Blogger etc all uniformly have adapted the LAMP stack to launch their new products.

So I went in search of the web start ups that are using the MS stack. I started at Microsoft. It seemed to me that partnering with Microsoft is a good way to get a ton of publicity that a start up so desperately needs. Here's how I approached the problem. I assumed that Google is inifinitely better at searching Microsoft than MS is. Actually they about the same. I used the search term "startups" in a site restricted search. I came across this Business Startups at Microsoft. Since I am looking for startup success stories, I clicked on the Startup success link. Eventually I ended up here I suggest that you spend some time there. I have spent several hours there and it's apparent that Microsoft's venture arm is still quite busy and active, making Microsoft a good partner. It's also apparent that every single one of those start-ups are traditional venture plays (ie see a market, go after it.) Not a single start-up highlighted by Microsoft is truly innovative new service that change the way that people use the web. In part this is because those sorts of start-ups are quite rare, everyone want to make the next Flickr. Most of the start-ups on the Microsoft page are selling software to the Fortune 500, very often to improve some part of their Microsoft architecture.

I suspect that real reason that there is a relationship between the very best developers (those most likely to develop a world beater application) are developing on the LAMP stack. This crucial loss of the far right hand of the Bell curve for MS doesn't bode well for the MS stack. As has often been noted, programmers on the far right hand side of the bell are often 10 to 100 times more productive than programmers in the middle. With the loss of these free range developers, it will only continue to extend the ecosystem of open source software and the LAMP stack.

Technorati Tags:



Best practices for the Linux Home Office

Linux has a great set of articles on the best practices of running a home office on Linux. Find Part One, Choosing an ISP, Part III - Protecting your data.

Technorati Tags:


Monday, August 22, 2005

Beginning of the End For Middleware Companies

"The Apache Software Foundation is expected to launch on Monday an open-source integration server project, part of a bigger effort to create a full suite of Web services infrastructure software."

Building upon the Apache project is a natural extension of web services. As Apache is the market leader on the web (63% of the total market, this will drive further adaption of Apache in the enterprise by moving up the value chain by commoditizing previously valuable parts of the software spectrum.

"Chappell said that the Web services "intermediation" capabilities of Synapse are not directly competitive with commercial integration products, which offer more features.

"This will provide the architectural components that could be used in the broader scope of an ESB or be used in Web services management products," Chappell said. "

This is the beginning of the end for typical middleware companies. These are companies like Tibco, SeeBeyond etc. Why? While the commercial products offer "more features" those features are largely unused. CIOs want a unified look on their data across disparate systems. By offering that functionality at a significantly lower price point (free beer, free speech), they will lose the lower end of the market first. Eventually the feature set of Synapse will be sufficient to allow them to be used where a typical Application Integration software package maybe used.

For more information on Apache web services
Synapse

Technorati Tags:


Sunday, August 21, 2005

Blinding of the Giant

I was reading an article about Bill Hilf, Microsoft's Linux Lab manager, when several things struck me as strange. First off Bill Hilf was hired in January 2004 from IBM. Before that Microsoft had no Linux lab. I find this remarkably telling. For years MS has been waging a FUD war on Linux yet apparently had blinded itself in the process. They assumed their initial FUD would be stop Linux in it's tracks and a deeper understanding of linux and open source wouldn't be necessary. So they didn't even bother setting up a lab to see why their customers were using Linux.

Another telling quote from the CIO of Microsoft,

"As a policy, I don't run anything that competes with Microsoft," Microsoft CIO Ron Markezich said in a December interview with CNET News.com. "My goal is to make sure Microsoft products are the best products in the world. It's an easy choice for me, in that sense, to run Microsoft technology. We don't run Unix. We don't run Linux. We don't run Oracle. We're 100 percent Windows, SQL Server."

No offense but if you don't run your competing products, how on earth are you going to make your products the best in the world? If you don't know what your competition is doing, how can you make a strong case that your product is better. The Oracle example is quite telling. Oracle is the leader in databases. If I were a CIO thinking about moving my mission critical application to SQL Server, I would want more confidence that Microsoft is a superior product (just a equal product means why would you switch?)

It seems to me that INTENTIONALLY blinding yourself because it wasn't built here is a particularly poor strategy, especially in an environment where you are selling the superiority of your products over the competition.

Part of the problem is the MS philosophy of eating your own dog food. Through the use of the product internally, you can drive improvement of that product. There is however downside to that approach, namely you blind yourself to the potential advantages that your competitors may have.

Technorati Tags:


Friday, August 19, 2005

Fewer Defects Found in Latest Linux Kernel

"An analysis of the latest Linux kernel has found that it contains fewer critical defects than the previous version, despite an increase in the amount of code, a source-code analysis firm said Wednesday."

Coverity noted that there were six major potential critical defects six months ago. In this latest kernel release,2.6.12, those critical defects were cleared up. Score one for the open source methodology.


Technorati Tags:


Thursday, August 18, 2005

Lloyds - Insuring Open Source

In a move that removes yet another barrier and FUD point from Microsoft, noted insurer Lloyds of London has moved to offer indemnification for open source software for IP claims.

"A Lloyd's spokeswoman was unable to confirm details, but St. Clair said the insurance would initially cover the open-source LAMP stack, which consists of the Linux operating system, the Apache Web server, the MySQL database and the Perl, PHP and Python scripting languages. Other open-source products may be added in future depending on market demand."

This is important on several fronts. First off it indemnifies one of the most critical components in the growth of Linux, the LAMP stack. We are seeing adaption of Linux largely because of this stack. New web services company are constantly built on this stack all the time. By offering indemnification Lloyds believes the IP stack of Linux is relatively clean. This is another vote of confidence for the transparency of Linux and the open source development process.

Much has been made the role of patents, OSRM commissioned a study that Linux infringes on potentially 283 patents. Here's the dirty little secret in software development today. Since they have allowed software patents nearly everyone's software violates someone else's patent. That's the truth. The fact that Linux potentially violates only 283 patents should be a good sign.

Right now everyone with a significant patent portfolio usually signs a cross licensing agreement with each other. The real question is what is going to happen once one of these large patent holders decided that they need to more effectively monetize their patent portfolio? It's hard to say. However attempts by relatively small patent holders (15-20 patents) to monetize somewhat dubious patents have not been hugely effective. While they do generate some revenue, no one has become a billionaire doing it. Indeed certain groups have banded together to fight patents, pooling their resources.

Getting this sort of indemnification for Linux and the entire LAMP stack is a great sign. Getting closed software indemnified at all is next to impossible. Most software companies like MS self under-write their indemnification policies. The last time I tried to get a closed source software solution indemnified, I was unable to do so. This is one of the most critical developments for Linux for continued acceptance in middle level companies and the Fortune 500.

Technorati Tags:




Tuesday, August 16, 2005

Firefox Adaption Stalls

The early adaptors have all moved to Firefox apparently. It looks as though 8% is Firefox's natural open source market share. I wonder if the new Mozilla corporation will help drive adaption by giving corporations someone to talk to. That's a pretty common request among CIOs. Trying to gain market share against a product that ships with every single machine in the world is fairly hard. I use it and I find it a pretty good product. Of course now that the IE team is re-constituted and working away, MS will ship a product that's just good enough.
Technorati Tags:


License Issue & Success of an Open Source project

One of the things recently discussed at OSCon was the proliferation of open source licenses. As more companies begin to open source some of their applications, their corporate attorneys often feel the need to re-write and redo licenses that have effectively been done.

"Referring to 63 approved OSI licenses and another 100-200 "floating around," Levin echoed others from the FSF and elsewhere in calling for a reduction in licenses. "We want to reduce any possible objection, concern, or friction point with using open source licenses," he said. "There are truly an unnecessary group of licenses which have been created because of lawyers' needs to justify their existence or because companies have a narcissistic need for differentiation. The slight variations are more often than not an overreaction by zealous lawyers."

I knew the moment that OSI started accepting licenses to approve that this problem was going to happen. Everyone wants their own licenses, even if it's just their own spin on the BSD license. We licensed under the Sleepycat for Xao and it seemed to work fine.

The problem that the proliferation of licenses creates confusion over the usage of the particular program especially in a situation where you want to build a new set of services on top of an existing set of open source programs. The confusion of parentage of such a chimera makes it impossible to decide which license to use and for developer to understand what rights they retain to the code. That's why it's pretty clear that the open source projects that succeed have clear relatively easy to follow licenses.

When I say success, I mean successful at attracting outside developers to the project . By using one of the traditional open source licenses that is well understood by the developer community, allowing them to understand exactly which rights they are giving up and which they are retaining. While your corporate counsel may want to write their own, I can assure you that someone else has covered all the issues you are facing.

One way to determine your license is to take a look at the business purpose for open sourcing your software. If your intent is to develop a community around your software, chose a well known license. (Sleepycat, BSD, GPL, Mozilla)

If your purpose is to have an "open source" product and most of the developers are going to work internally on your project, feel free to write your own. Just don't expect a whole lot of outside developers to contribute. Without a clear delination of rights, developers are much less likely to work on a project. Why waste the time?

Technorati Tags:


Saturday, August 13, 2005

37 Signals - An example of the future of software

Salon recently had a great article about small start up in Chicago called 37 Signals. The name is derived from the Seti project of the number of signals received that could be from intelligent life.

This is a small company with exactly five employees, all programmers. When the dot com work began to dry up they started looking around for another revenue source. They found one in the web based project management tools they had built to manage projects internally.

They took their project management software and began offering it as web service that anyone could use. Their software is intentionally limited in feature set to minimize the learning curve. As anyone who has used, MS Project knows, the learning curve on modern project management software is HUGE. MS Project is the market leader in this market but 37 Signals has a great shot at achieving significant market share. There are several reasons for this.


  • The old WordPerfect study. It's pretty simple. Word Perfect found 90% of the users use roughly 10% of the features. That means that for most people, Textpad is more than sufficient for their needs. Without the huge investment of learning the program, most users can be more productive more quickly. Spend more time working and less time working with management tools. Here's their philosophy,

    "We believe software is too complex. Too many features, too many buttons, too much to learn. We build products that do less, work smarter, feel better, let you do things your way, and are easier to use."

    You know what, they are right too.

  • It works simply with a browser. 37 Signals is a big advocate of Ruby On Rails and with AJAX are able to provide a solid user experience. As it's browser based it's platform independent so it works pretty much the same for everyone.
  • MS Project is built on the MS stack. In other words to use the full features of Microsoft Project you need Microsoft Office Project Server. In short, you really need to be a Microsoft shop. 37 Signals can work on any modern browser. These means no license management and no head ache. Project is still far to desktop-centric to be thinking this way. Furthermore a radical change like this would require MS to knife the baby and think outside the box. MS is too busy thinking how can we lock them in. This lockin requires that companies work around Microsoft instead of the other way around.



Projects and companies like this won't appear on the radar of Microsoft. Since they don't ship software, they don't really appear on the Project's product manager's radar. When they do appear, MS will undoubtedly put out a product spec sheet touting the number of features that Microsoft Project has. This is missing the point entirely. MS Project has too many features to be used effectively now. The learning curve is far too steep and it's far to MS centric to effectively compete.

Companies like 37 Signals are going to continue to flourish. It's a great time to be an entrepreneur. That's the subject of my next post.

Technorati Tags:


Monday, August 08, 2005

Why HP is doomed

I rarely forecast doom for a company. However if my recent experience with HP is any example, the company is doomed. I was looking for 2 laptops to be used in my web mail station project (anyone wanting information on that project should look at Thalasar Ventures I will post updates there). As these are going in a web mail station, they are certainly going to be beat to death. So I considered Dell (the old standby). They were offering a great deal on the 1200s. But I got suckered by the great ads HP is now running. When I added in the price of wireless and support, HP turned out on top at least in price. HP has always stood out in my mind as a high quality provider. So away I went to HP TV. After placing my order, I wondered why I didn't recieve an email confirmation of the order. So I quickly called HP to find out. After speaking with a customer service representative, it became apparent that when I input my email address for confirmation and login, I typed .con instead of .com. The customer service rep of course said it was my fault for making a typo. I then thought back to my team's own software development work in open source ecommerce in 1995/1996. Email address verification (that the email address added followed the form of a valid email address) was added in our SECOND alpha release in 1996. Later we added functionality which checked that the email address actually routed and was deliverable. HP doesn't have the first basic functionality nine years later. They don't bother to check to see if an email address is valid with the order!


The funny thing is this email login is how you are identified as a customer at HP. So when I requested they change it (ie correct it so I can actually communicate with them, I was told this was impossible. Why is email address verification such an impossibility for HP? Could Broadvision (there ecommerce software provider recently taken private) be so inflexible? Is their It infrastructure so brittle?

It doesn't bode well for a company. I had a similar problem at Dell. They were able to quickly consolidate accounts under a single login. If HP's IT infrastructure is so brittle how can they expect to compete?

What struck me as even stranger is that the HP rep didn't think it strange that their ecommerce application doesn't validate email addresses and thus account signons. I guess Carly really did kill the culture of innovation at HP.

Monday, August 01, 2005

Art of The Demo.

One of the projects I had introduced to the guys at Highlands University was nearing completion. Anthony the project lead called me into their office to go over the project and make sure we hit it with the work order. So with work order in hand we started. Unfourtunately the programmer had been working on the site that day so it kept breaking. I recoginized the error was a simple one and told them I wasn't in rush for the project and I could come back tomorrow. I also realized that me sitting there put enough pressure on the programmer so he was unlikely to find the error. Just better to come back when he had time to find the missing bracket (which indeed was the error). So the next day I returned and with work order in hand we go through the site. I thought about the demonstration I saw, which was pretty straightforward, and how many times I had to give a similar demonstration for clients when we completed a project. So I though perhaps I could distill some rough guidelines for a demonstration. Now most of my demonstrations were done for a web site but with a little imagination you can expand them to include product demonstrations as well. Here's Brian's Rough rules for demonstration.

1. Control the demonstration. This means that you shouldn't allow the client to side track the demonstration with questions. This means simply saying,"That's a great question. I would like to handle questions when we get to the end." Make sure though that you write down the clients' question or note it. I suggest writing it down as your mind will be focused on the demonstration. Keeping a question notepad is one way to do it. It is also useful for writing down short notes when the application doesn't quite work as expected. Also don't let the customers randomly monkey around with either the equipment or the site. If you want the customer to try a feature, show the customer the feature you want to demonstrate, show them how to do it and then let them do jsut that feature. It's a product ask for it back so that you "may continue the demonstration".

2. Know your click path. For this latest demonstration we used the work order to drive the feature demonstration. This can sometimes cause problems as certain features are related to each other. It's often more natural to demonstrate certain capabilities when they are clustered together. Find out what will naturally go together when you practice the demonstration. If you are not the developer, then have a developer in the room when you do your first practice session. Some of this advice will actually be helpful as they point out how features may be clustered together.

3. Declare the system "Gold." This is a hard one for developers to resist. Quite often they think they can stuff a feature or finish in time for the demonstration. If developers are working on features before the demonstration you can expect that demonstration to go poorly. If all the promised features are not in this demonstration, let the customer know early so as to minimize the expectations.At some point declare that all work must stop so that you can prepare for the demonstration.

4. Set the expectations. This is an important part of any demonstration. As a demonstration can happen at any point in the development process especially in the XP, you should set the expectation on what the customer is going to see. If demonstrating a specific module, state it at the beginning of the demonstration, "This demonstration will only be covering the customer profile and profile management features." Customers are always going to want to see more so remember point #1.

5. Practice the demosntration. A demonstration is a form of public speaking and you would never think of giving a speech without practicing it once. By practicing the demonstration in front a single person (preferably a developer familar with it) you will certainly feel more comfortable with the system.

6. Developers often do not make the best demonstrators. Why? Because they are extremely familar with the internals of the system they are demonstrating. So they may make leaps or even be tempted to make changes during the demonstration. Remember point #3. No more features.

7. The missing feature. Sometimes you just don't have everything you need for this demonstration. If you forget to mention this during the expectation setting phase of the demonstration, you might be able to get away with dreaded,"In the final version of the system, feature X will happen this way. I am sorry we weren't able to get ready for this demonstration." Of course that feature might not be in the work order, but you can bet the customer will certainly want it. At the final demonstration, the customer will certainly the feature as you mentioned it rather than how the contract reads.

That's all for now. I will update this from time to time. It will be nice to re-visit it now and again.