Archive for the ‘MicroISV’ Category

Although we know have a feel for the structure of the .NET component market but need to add some numbers. This will flesh out the market share of the different players and help use decide where the money is to be made.

Sources of Information

Not being an accountant it took a little while before I worked out how to discover the two key pieces of information I wanted to know per company. Most of the companies are based in America and they are all privately owned. Luckily a little investigation revealed that the cheapest and quickest approach was to use the credit checking service from Dun and Bradstreet.

I used the cheapest option they offer which reveals just the turnover and number of employees for any private company based in America. If you are willing to pay more than you can get a wealth of information about a company including its past financial and credit history.

Component Suite Vendors

Before giving the numbers we have to be careful to note that the numbers are only a snapshot of the last figures released. They are useful for getting an idea of the relative size of turnover and number of employees, but financial numbers tend to vary and these may be a little out of date.

The results for the suite vendors were as follows:-

Employees/Revenue/Company
70 $17.4m Infragistics
35 $_3.0m Developer Express
12 $_0.4m Syncfusion
(unknown) ComponentOne

The Dun and Bradstreet source was unable to give any details for ComponentOne but the other three companies have some interesting results. We can clearly see that Infragistics are the number one in the market and also achieve an execellent level of revenue per employee.

Number 2 in our list is Developer Express, they have a healthy revenue but are making less than half the amount per employee of Infragistics. I would guess that Infragistics are making a nice profit and that Developer Express are making a small profit or breaking even.

If the numbers for Syncfusion are accurate then they are in pretty dire straits. The revenue they are pulling in is about enough to support 3 developers but with 12 they must be losing money hand over fist.

Syncfusion are an interesting case because they only started up 2 or 3 years ago as a set of developers that used to work on the Stingray set of controls aimed at C++ developers. I always thought the advertising they used was very poor and looked unprofessional. Combined with nothing in their set of components that actually stands out from the crowd and you can see why they are struggling to stay alive.

So can we estimate the size of the suite market? I would guess that the revenue for ComponentOne is about the same as Developer Express as they seem to be positioned at the same level on the ‘best sellers’ chart of www.ComponentSource.com. Adding up all the numbers gives us $17.4m + $3m + $3m + 0.4m = $23.4m.

If we add on a little for the smaller players and take into account the released figures are behind the current value we could pick a value of say $25m as a fair guide. We don’t need to be completely accurate, just a rough idea of the scale is enough.

We can conclude that Infragistics has the dominant position with 70% of the market, Developer Express and ComponentOne have 12% each and the rest is split between odds and sods.

Clearly we do not want to be entering this market. A company with the resources of 1 full time developer against a market leader with 70 and the other two players with about 35 each does not represent an oppourtunity.

Specialised Market Vendors

Charting
Employees/Revenue/Company
26 $3.0m SoftwareFX
_4 $0.6m Graphics Server
Dundas (unknown)

Grid
Employees/Revenue/Company
30 $4.4m Data Dynamics
20 $3.0m FarPoint Technologies

Now these results are more interesting. I have not tried to include every single vendor for each of these two categories but instead the bigger well known ones. For the charting area I tried to get the figures for Dundas but was unable to get the cheap report that I was willing to pay for. I would guess they are only slightly behind SoftwareFX in size.

If seems that to be a big player in one of these categories you need to be at a scale of around $3-4m and therefore will have around 20-30 employees. Each category also seems to have room for a couple of big players followed by a few smaller companies.

Conclusions

Stay away from the market for creating a whole suite as it has a dominant player that is making a profit margin way above anyone else. To compete against Infragistics you need not just superior technical components but also deep pockets to try and match the level of marketing and exposure they are currently buying.

Each category seems able to support a couple of leading providers and although the value of these specialised markets is smaller than the suites it is still significant. At least it is compared to being a one man and his dog outfit like myself.

The leaders in the existing categories are well established and have good domain knowledge and so completing head on will be very difficult unless I have something that is obviously a magnitude better.

Instead I conclude the best approach is to not compete head on with any of the existing vendors. Instead we need to either create a completely new category or at least have a significantly different approach to any existing vendor. We need to develop a reputation for excellence in one area and ensure that we have many features that are just not present in any other product. So if you want the cool features then you have to buy ours because you just cannot get it anywhere else.

So that will be our broad approach. a laser like focus in an area for which we will build a reputation as the area leader. Plus ensuring we innovate in that area so that there is no way to substitute another vendor’s product in place of our own. We do not want to compete on price but on capability.

Does that sound reasonable or do you read the market differently? This is your chance to provide feedback and prevent me falling into any obvious traps that you can see ahead!

Before I wrote a single a line of code I did a quick analysis of the market place I want to compete in to decide if I had a realistic chance of some success. The next few entries will relate my thinking.

Market Definition

First off we need to define the market that I will be competing in. A broad definition would be the market for component software. But this is a very broad definition and includes everything from Java to ASP.NET and much more besides.

We can quickly narrow this down this definition as I am only interested in targeting the .NET developer community. Within this market I would define three distinct segments. We have Windows Forms, ASP.NET and other. The ‘other’ covers a mish mash of areas such as communications software, encryption components and the like.

As you will already know from the release of the Krypton Toolkit, I am very much focused in the Windows Forms segment of the broader .NET component market. But this segment can be broken down further.

It is not a clear cut separation but you can split Windows Forms into several categories. You have Charting, Grids, Reporting, Toolbars, Docking and others. In this case the ‘others’ includes a spectrum of varied controls.

Also I would include another category called Suites. These are the bundles you get that include all the controls you should ever need. Each suite is different and so direct comparison between them is not always easy. In addition some of the individual components in the suite can be purchased on their own.

The Players

To get a feel for the market we need to look at each significant category and find out who the major players are. I am only going to include the bigger players in the larger categories.

Remember we are only trying to get a feel for it and making exhaustive lists of everything will not, in my opinion, add to the overall feel for the market. We don’t want to hide the forest for the trees!

Grids
Janus Systems
FarPoint Technologies

Charting
Dundas
Software FX
Graphics Server

Reporting
Business Objects
Data Dynamics

Suites
Infragistics
Developer Express
ComponentOne
Syncfusion

Each of the entries in the Suites category could also be included in the individual categories such as Charting as well but for the sake of brevity I have only placed the cross-category entries in Suites category.
Menus/Toolbars

Initial Observations

I have not used all the different products by all the component vendors listed above but I have enough knowledge and feel for the market to make one interesting observation. The companies that specialise in just a single category have superior products to that comparable ones offered by the suite vendors.

The Dundas, SoftwareFX chart controls are better than the charts offered by any of the suites. This is not entirely surprising as a company focused purely on the one area is likely to attain a greater depth of knowledge and feature set than a suite that has a comparatively wide focus.

So if you want the best reporting control you might well go for the popular Crystal Reports from Business Objects. If you need a top notch charting ability you might buy ChartFX from SoftwareFX. If you need a grid that can do just about anything that Excel can then you pick up Spread from FarPoint technologies.

But if you do not need the best of breed then you might well go for the a suite that costs the same as a single component from one of the other specialised categories. By far the most popular suite is from Infragistics and it covers just about every sort of control you could need in an application.

First Conclusion

We need to decide the ground we are going to occupy as a company. There available options would seem to be something like:-

1) Create a broad spectrum suite
2) Specialise in an existing category
3) Specialise and create a new category

Within each of these options we also have to decide if we are going to attempt to be a leader and sell based on having the superior functionality. Or just become generic and sell based on price and so just match the same broad functionality available in most of the rivals.

I would be interested in hearing your thoughts on the choices you think I should make. I already have a pretty firm idea of what I will be doing but if everyone else comes up with a different answer then I will have to re-evaluate.

I handed in my notice at work 3 months ago and it seems to have taken forever for them to pass. But now we are in the final stretch with just 4 weeks to go until the shackles come off.

To anybody else the end of January is just another month passing. To me it is a complete change in my life. From wage slave to free man. From security and steady hours to a life of adrenaline filled adventure. Well maybe that is a slight exaggeration but you know what I mean.

Once I am working for myself full time I will be able to blog more regularly. The primary purpose of the blog is to provide detailed and regular information on the technical work going on with occasional updates about the microISV itself.

So users of the free Krypton Toolkit will be able to see the new features being added and bugs being fixed in almost real time. They can then provide feedback via comments or direct email to suggest additions in the area I am working on that will help them in their projects. They will be able to plan ahead knowing what additions are coming up in the next release.

But until the end of the month you will have to manage on a meagre diet of general blog entries. Thin gruel for you hardcore techies but I will try to spice it up with a couple of interesting observations about the component library market and software management.

I have never been superstiitous. If I see a ladder I will sometimes walk under it to prove just how much I laugh in the face of those that believe in back luck. I laugh no more.

Now if you’re expecting a story about how someone dropped a paint pot on my head like a scene from a Laurel and Hardy movie, then you’re wrong. Nothing has ever hit me from walking under a ladder. But maybe the bad karma is catching up with me.

Last year was a bad one. I had chicken pox, food poisoning and the flu when normally I am unlucky if I catch a mild cold in the winter. One of the budgies died and then my xmas holiday was cancelled by the boss at work, because of the need to make an important end of year deadline on a project.

Just to top it off I was burgled just two weeks before xmas. Luckily they only took items that were easy to carry away, 3 laptops, 2 mobile phones, a heap of DVD’s and a few other odds and sods. I say lucky because none of the laptops had data on that I needed and nothing had any sentimental value.

So all in all I glad to see the back of 2005. I do not normally believe in luck, karma or any kind of superstition. But if there is such a thing then I’m expecting to get some payback this year.

Developing as a lone wolf has some great advantages. Writing all the code yourself ensures that everything is written in a consistent manner and towards your own vision. No more compromises to fit in with a team leader or technical architect’s idea of how things should work.

My experience so far also indicates that you tend to write a higher quality of code. When you know that your income will depend on the quality of what you create it concentrates the mind wonderfully. Instead of being happy to produce good code, now the only benchmark that makes me happy is great code. It has to be just right.

Of course, what is considered good or great is subjective. My great code might be only average from your point of view and visa versa. But the important point is that you are writing code at the limit of your ability and would be happy to be judged by it.

The down side to being a lone developer is that you have no one to turn to when you get stuck. If you have a tricky decision to make there is no one to bounce ideas off, no alternative point of view to attack a problem with. But there is a solution of sorts.

I have just enrolled on the Microsoft ISV Buddy program. This is a scheme from Microsoft that pairs you up with a developer inside Microsoft, giving you a direct line to an internal developer. Even if they cannot answer the problem themselves, they probably know someone else who can.

If your developing for .NET and working either on your own or in an ISV then I recommend you give it a try. Here is the link…

http://msdn.microsoft.com/isv/isvbuddy/default.aspx