A couple of years back I came accross a blog article that listed acouple of Sout African web-startups to watch.
As you can imagine, the article generated a lot of comments. Some good, some nasty, and some just plain spaced out. One particular comment caught my attention and has been troubling me ever since.
The fellow wrote something to this effect: “I notice that most of these hotshot startups you mention have based their systems on web application frameworks like Joomla! and Drupal. Where are the real programmers, who would use something like Perl or Python to build their web applications from the ground up?”
For a long time I could not decide which was the best route to take. After all application frameworks each have their own niggles and idiosyncrasies and you rarely find the perfect extension to fully address your business challenge. On the other hand, coding from scratch can be a very expensive excercise (sure, you don’t have worry about those pesky GNU/GPL licensing rules afterwards, but you will have paid though the nose for that priviledge).
There is also the issue of addressing security vulnerabilities as they occur with your custom applications. Just ask Microsoft how challenging that task can be! You don’t have to look far to grasp the magnitude of work involved in addressing exploits. If you are sitting at a Windows machine or a Mac, just think back to how many software updates you have had to install from these manufactures. Oh! The Megabytes!
We can argue that with Open source application frameworks the security exploit vulnerabilities are minimised. There’s a whole army of people from all walks of life behind these frameworks who address security exploits quickly. Imagine how much time, money and effort it would cost a one-man show or one company to keep hackers at bay.
For the real programmers, I agree that if you want something done right you better do it yourself because now off-the shelf generalised package will ever fit your unique needs 100%.
Personally, I use both approaches when appropriate and I don’t think this is a matter of choosing one strategy over another. They both have their merrits and flaws. I think this is a matter of choosing the right tool for the job at hand.
What do you think?
Leave a reply