Technology doesn’t matter – solving problems does
5 December 2007 in General, Mindscape | Comments enabled
Perhaps a funny thing for a geek to say but hear me out. We, geeks, surround ourselves with many other geeks and we all get our jollies discussing the latest and greatest technology. We have to build this website in Ruby on Rails! This application must be written in .NET 3.5! We must use SQL Server 2008 RC9! We need to change back end to use framework XYZ!
If geeks were to be believed, often you would think they completely couldn’t function without the latest alpha bits of technology xyz.
The thing that geeks often ignore is what is best for the end user. If you’re building a website, for example, and you elect to build it in fancy technology xyz but it delays your delivery by 3 months is that a benefit to the end user? If you elect to build it in technology xyz but, because you had no idea how it really worked beforehand, needed to stop and start all over again in the middle, is that a benefit to the end customer?
Customers just want the work done so that it works, is delivered on time and helps solve the problems it was designed to solve. That is about where their interest ends usually. Your mission to to ensure you meet those goals effectively and in a manner that won’t turn into a maintenance nightmare when it needs to be supported later.
But I am a geek!
I want to stop short of saying that technology platform NEVER matters because, to geeks, it does. And keeping geeks happy, in fact any employee, is important to moving forward efficiently. No geek wants to still be coding in VB 3 (and those that still want to code in Access… well… that’s a seperate blog post!). We do get job satisfaction from playing with cool stuff. If you were a pilot you’d probably love to fly some kick ass new fighter jet rather than than what you currently fly.
There are also additional benefits to developers from new technology – some things do become easier, some things do require less code and perform faster. However the decision to use the latest and greatest needs to be considered carefully – I know many software houses that use the latest stuff only because it is the latest stuff and this about the worst reason to move up.
Some of you might be asking this question – how can I be saying this when we at Mindscape were pumping out solutions based on LINQ to SQL 9 months before it even RTMs? We all speak about upcoming changes in the new releases of SQL 2008, Windows Server 2008. Heck, Jeremy has even been training folks on how to use Windows Server 2008 a year before it comes out. So what’s the story?
I believe strongly that it is beneficial to play with these technologies before you put them into production. We are geeks, we do grab alpha bits, we do explore but that is so that we can make judgment calls about when it’s appropriate to use in products. What is LightSpeed written in and targeting? .NET 2.0. That’s it. We know a lot of our customers can’t move up to .NET 3.5 right away and, while we could have targeted 3.5, we knew it was better for our customers and therefore better for us to use .NET 2.0.
If code is performing its function correctly and is performing well then you do not have a major reason to upgrade. For example – TradeMe used to be all ASP code and it took them a while to jump on the .NET bandwagon. I’m not sure the specific reasons that dictated it was time to move up but my guess is that it’s a combination of reasons:
- It was getting harder to find developers wanting to code in ASP
- ASP code can be a wee bit harder to maintain due to it only providing an inline code experience
- .NET code could be run faster than the older ASP code (that’s a guess on my behalf)
As I say, these are just a guess from my part. I’m pretty sure it wasn’t from a lot of people posting in the forums saying “ASP sucks – you should use .NET. I’m not going to use TradeMe anymore unless you move up”. Customers don’t care unless the technology starts surfacing in terms of performance slow downs etc which is often more of a design issue that being explicitly because of the technology choice.
What are your thoughts? Have you fallen victim to upgrading for the sake of it? Am I completely off the mark or have I missed something out?