Software development has more commercial dangers attached to it now than it did ten years ago.

Hardly a week goes by where I do not see or read some horror story. A quick Internet search for "software project failure" will be enough to scare any company looking at spending a small fortune on a system that will revolutionise business practices.

Can I Help?

Probably! I hate to see money wasted on systems that are over specified and under delivered. If you are a small company of thirty or less employees and you have bottlenecks in your business processes than let me have a look at them and propose a fix.

Data handling a headache, inaccuracies or just don't know what back-end to adopt, should it be zero administration, should you employ a DBA? If you don't have the in-house skill set to make an informed decision then I can certainly help and provide or just manage your IT needs.

Any IT roll-out must be evolutionary rather than revolutionary. You have in-house skills, it is important that any IT system does not erode the very skills that makes your company special. IT should complete the repetitive tasks within an organisation releasing staff to get on with why they took the job in the first place. If you are at the early stages of project development get your staff involved, they do the job, ask them what would make their day more productive.

I used to write software (before becoming freelance) for the legal sector, I witnessed (more than once) systems being specified by partners in the firms without regard to the fee earners that would use any such system. Needless to say the end result fell well below expectation requiring remedial development at further cost and, at one firm, a totally demoralised workforce.

Take the inventory into account, imagine the following situation, a company takes delivery of a large CRM system written as a web application. One problem that has become apparent is that of printing. Silverlight, yet another technology from Microsoft (now being dropped), has the ability to print browser screens. It is clever, it asks the printer what printing language it supports and sends the data to that printer in its native language, fast and efficient. The problem is that this particular company has a lot of old, perfectly serviceable, printers that Silverlight does not support. In these circumstances Silverlight will convert its fast and efficient data stream into a bitmap (lots of data) and sends in to the printer. Problem, the old printers do not have sufficient on board memory to load the bitmap before printing, everything comes to a grinding halt. Company, not happy and expects the supplier to fix it. Supplier says no, you need to update your printers - checkmate!

Hindsight is indeed a wonderful gift but it is possible to see how such things can happen. The programmers are not to know that the company has a stack of old printers and as the development of the system has not shown up this particular issue until post installation it has become a real problem for both sides.

The web (I'm sorry to say) is a backward step for such systems. Windows came into existence for exactly this type of problem, the applications written for Windows do not need to know anything about the printers, the printers are bought as Windows 7 compatible, if my software runs on Windows 7 then the printer will work, the same cannot be said of something that runs under IE, Chrome, Firefox or Safari, they are all different browsers and all support different functions.

The web is brilliant at what is was designed for, searching for and assembling data from different sources and viewing it elsewhere! Everything on top of that is a bolt-on and likely to cause problems somewhere down the line. Programmers should be concerned with the development and improvement of functionality within a product and not spending hours (of your money) developing work-a rounds for the latest bit of incompatibility.

Having said all of the above there are some excellent tools available for little or no money but this isn't to say they are free, they need to be understood as products and that has a cost. One that I have a particular liking of in the web arena is WordPress. This is a framework that allows the user to develop a web site without knowledge of HTML but this should not be read as "without knowledge". There are several good books on WordPress and a lot of online tutorials but like many things web wise there is also a lot of misinformation and bad tutorials, so please be careful! Two site developed in WordPress are and Both sites achieve their requirements in as simple a manner as possible although very complex functions, including online shops, can be developed but not necessarily recommended.