At the beginning, IT code was king. Every application was carefully hand crafted from scratch by developers who knew the black art of writing code.
As with any industry things have moved on rapidly and now we have an array of application development languages, applications, platforms, tools, cloud services and a whole host of other choices when it comes to delivering software applications to users.
An interesting article spiked my attention the other day that discussed intelligent platforms where business users write their own applications using ‘drag and drop’ controls. It gleefully proclaimed the demise of traditional development approach and presumably the redundancy of leagues of developers.
We all know the march of technology invention is relentless. There may come a day when developing complex applications is as simple as clicking a few buttons. However, I wonder if we will ever eliminate the need for bespoke coding completely?
Sure you can buy an off the shelf apps that delivers most of your requirements but there is always something specific that the application can’t do. These bespoke elements can be straight-forward user interface bells and whistles.
At the other end of the spectrum bespoke code can be used to write entirely new modules or interfaces between systems. You can take data from your internal customer databases and put them into you cloud application. Or write a helpdesk application that allows analysts to update hosted services at the click of a few buttons.
The other main reason for bespoke coding is ownership of the IPR and the application. Developing in the cloud or on application platforms is great until you want to licence and resell your masterpiece. If you don’t own all of the code that runs your application then licensing will be a complicated legal problem. Depending on the other vendors it might be completely impossible or at least result in lengthy negotiations and cost.
One key consideration with writing bespoke applications is to ensure that the development is supported by a robust development process. If it is, then the end result will be a quality application that is tailored to the needs of your users.