Why the software has been developed?
A typical small business benefits from a CRM system to stay organized. The mainstream offerings in the marketplace are typical sales force automation tools (such as Act and Goldmine), which do a great job of managing contacts, activities and an opportunity pipeline for a sales team. In order to get their invoices out of the door, a typical small business will also have a simple accounting package - here in the UK, it will probably be Sage. In the US many have QuickBooks. MidnightRange Small Business Manager fits exactly between both these products.
Typical CRM products do not do a good job of managing marketing campaigns, quotes and orders; typical accounting packages do not do a good job of quoting, job and product costing. Using two packages makes reporting on how your business is really doing (job profitability by marketing campaign for example) cumbersome, and in some cases impossible.
We have extensive and easy-to-use campaign management, a very flexible quoting system, and products can be priced and costed in many different ways. All this functionality is brought together with management reports which can measure everything from the initial customer contact to the profitability of the job going out of the door; MidnightRange Small Business Manager even includes an easy-to-use report designer at no additional cost.
Technology
The application is a Windows client/server application based on the following platform:
We have C# and MSSQL Server skills, have MSDN subscriptions, but we deliberately chose to develop the product in Delphi . Why?
- Internet Deployment - We have an 11MB download - including a client/server database - impossible with .NET and SQL Server, a 100+MB download is too much - way too much.
- User experience - A Win32 application written in Delphi is FAR more responsive than a .NET application. Although I do agree that this is becoming less of a problem as time passes.
- Speed of development - I have C# experience and Delphi experience, and while it is true I have more Delphi experience than C#, I beleive is it’s still quite a lot quicker to get a Delphi application out of the door than one created in Visual Studio.
As .NET matures, I’ll be keeping an eye on things and future versions of the software could have a .NET client - we’ll have to wait and see. As I add things like Internet services, we’ll have this in mind as we make our technology choices; but for now, we’re sticking with Win32 and Delphi.
Why not a web application?
In my opinion, the web does not yet offer a suitably rich user interface experience to write an application such as this. With technologies such as Adobe Flex and AJAX it’s getting better, but it’s just not there yet. My focus will be to deliver a rich client which over time integrates heavily with Internet services - both ours and from well known third parties.