In short, choosing a particular technology allows us to:
-
Make a decision once and leverage the results over and over
-
Increase profitability
-
Increase developer satisfaction
-
Use that technology as marketing to attract technology-focused buyers
-
Develop deep expertise, and become thought leaders in a particular realm
But how to choose? The most obvious things are the technical requirements – what problem are you trying to solve? What are the available options? Less obvious are a whole bunch of hidden requirements, values, and agendas that can make huge differences down the road.
Over the next few blog posts, I’m going to outline 3 different levels of decisions here:
-
Technologies to develop deep expertise – e.g. to use to market the company, to provide as services to clients
-
Technologies to choose for clients – deciding what to use for a particular project
For all of these, it’s important to have some sense of the landscape of technology – it’s constantly changing, new devices and entire systems keep appearing, others fall out of use, some gain tremendous amounts of usage while others never do. For some purposes, using a broadly adopted technology brings a lot of benefits, for other purposes, a lot of exposure to risk.
So when making a technology decision, it’s not about making a permanent decision that must stand until the end of time – it’s about making the best decision you can, with the available technologies, and expertise you have at the time, matched up to the particular needs. A big challenge is the sheer number of choices available. There are hundreds of different CMSs to choose from, hundreds of project management tools, dozens of front-end frameworks. Nobody can possibly have an objective, unbiased view of all the alternatives – but worse than that, making a clear assessment of even just one technology takes developing expertise in that technology to really know what it can and cannot do effectively – there is so much mis-information in the marketplace that reading comparisons on blog posts where the authors’ biases are unclear and level of proficiency with a platform completely unknown, can be entirely misleading, or worse.
Really the only way to know if a particular platform is well suited to a particular problem, is to try to solve the problem with that platform. The next best thing is to talk to someone else who has tried to solve that specific problem. And this is simply not possible to do across all the available platforms – the best thing to do is pick a platform and run with it.
- Picking a technology for a client project
- Picking a technology to develop expertise and sell services
Add new comment