A friend of mine is involved in creating a community website overseas and recounted to me an interesting tail. It seems had a preference to using one of the open source content management systems, and maybe going out to the developer community for any tweaks that were required to make it work to her specification.
The development team she were dealing with decided that in the interests of a "robust and secure" offering, they’d hard code it from scratch in a proprietary development application.
This of course had some unintended (well hopefully unintended consequences) in that it then required a degree in computer science to make even the most basic of changes – thereby tethering her to the development team pretty much for the life of the project.
Now I’m no developer – but I’ve spent a fair amount of time using WordPress, Joomla, Virtuemart and of course the tools we’re using, and helping create, over on CloudAve – and nothing in that experience has proven fragile or insecure. Those systems all have the added advantage of being readily extensible (even by a klutz like me) with a massive community out there building widgets and plugins which, generally, work straight out of the (virtual) box.
Here in New Zealand we have the awesome company SilverStripe doing their own open source CMS, and making revenue from the add on servicing and customisation that invariably goes with a build job.
I was motivated to read this post after seeing a post by Rodrigo – in it he talks about the democratisation of the tools for software creation and congratulates both his own company but the marketplace generally for opening up and making things easier.
Now in the case of my friend, I don’t think it’s a pure and simple case of the development house being "evil" in an effort to guarantee themselves future work. I believe that they’re concerned about doing the job and also about the security of a platform they’ll spend hours creating – however this attitude flies in the face of the realities of the web.
The fact is that things change – and fast. Any platform needs to be ready to be changed, added to, deleted from and generally played around with in a independent, nimble and agile way – nothing that I’ve seen from proprietary systems gives me faith that they enable that.
The “not built here” mentality is a known developers fatigue 🙂