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.