As computer hardware and software evolve, consumers have to decide whether to solve a problem with hardware or software. It is important to analyze the problem that you are trying to solve and carefully compare the performance of a hardware solution with the flexibility of a software solution.
A hardware solution can cost less in the short term and may do the job considerably faster. Hardware tends to be designed to specifically solve the problem for which it was designed. If we think back over the past 30 years we have seen the evolution of the personal computer from the first IBM PC powered by an 8088 to the third generation core I7 technology. Intel can now build three-dimensional transistors on 22nm wafers and hardware is still evolving.
What does this mean for the consumer? We replace our cell phones every two to three years because the technology has moved so far that the old devices just don’t do what we need them to. It could be that we all just like new toys or it could be that we need tools to be competitive. When people buy technology, they buy the salesman first and technology second. If the salesman is using a 1997 flip phone, you are probably not going to buy state of the art visual communication from him.
Customers want to feel confident that their sales person knows not only his/her product, but also the competition. I digress, but the important part to note is that we will not be able to escape hardware evolution.
As a software designer I know that every time Apple releases a new version of iOS, there are a bunch of new features that I want to take advantage of. Apple is not alone in this space as Android, Windows, Linux and OSX are all doing the same thing.
In many cases I have to force the user to upgrade their hardware or OS in order to run my new release.
So we have evolving hardware, evolving operating systems and evolving software. How is a consumer supposed to get a decent return on an investment and where should we spend the majority of our money?
There is no silver bullet but there are a few ways that you can stretch your dollar.
Hardware seems to be trending away from upgrade options. Early PCs had expansion slots and there were a large number of hardware peripheral design companies. The personal computer has become an appliance and the number of expansion peripherals has decreased significantly. This tends to imply that money spent here will have an ROI tied to the life expectancy of the platform.
If we consider software we have more options for upgrades and if the software is designed properly it will work on more than one OS and run on newer hardware platforms. Software is trending in the opposite direction with more flexibility and a longer ROI. You generally don’t have to upgrade as often and software versions are not as obvious to consumers. In many cases I use an older copy of MS-Office because that’s the one I know how to use.
It would seem that a software solution that is independent of the host OS or hardware platform holds the most promise for a decent ROI.
Many vendors will provide a yearly software maintenance fee that is somewhat like insurance. Buying maintenance gets the consumer free upgrades for all new versions and features and usually includes some level of support from the vendor.
Having spent the early part of my career designing hardware and the later part designing software, I am in a unique position to see both sides. As 2012 comes to a close (and we wait for the end of the world), I would have to advise consumers to spend the lion’s share of their hard earned money on software.
Flexibility tends to increase ROI, allowing solutions to be redeployed in ways that designers could never imagine. Ask vendors about APIs, buy software maintenance on new products and verify that licenses can be transferred as hardware evolves. Look for the use of standard “off-the-shelf” hardware and avoid custom hardware solutions.