As IT decision makers one of the most common and contentious questions we are faced with is the selection of technology and the technology partners from whom we choose to procure technology. Unsurprisingly there are dozens of clearly defined approaches for evaluating technology for all sorts of different software products, and no shortage of consultancies and research providers to help draft and execute a Request for Proposal (RFP) from software vendors. However, despite the wealth of accumulated wisdom and advice available to decision makers, software selection remains a risky and costly business for many enterprises with the downside often being catastrophic, both on a personal level and for the enterprise.
Ultimately there is no silver bullet, as with any decisions we can never be 100% sure of the outcome. All we can do is to ensure the decisions we make are informed to the best of our ability. In my book “NoDev NoOps NoIT” one the assertions made by the NoDev principle aims to raise awareness of the high level factors that IT decision makers must take into consideration when selecting new software technology. Specifically the assertion states:
It is not a matter of “Build vs Buy,” it’s political, technical and economical
The technical and economic factors are relatively easy to understand, and it is no coincidence that these factors are the ones that technology teams and their consultants focus on when evaluating different software solutions. For small organisations focusing on these two factors is often enough, not because they ignore the politics of the decision, but rather the political factor is more naturally expressed during the course of the decision making, be it implicitly.
In larger enterprises the politics are ignored at the peril of the decision makers. Anyone who has worked in IT for more than a few years will be able to recount stories of failed software selection with millions being wasted and good people leaving the organisation. We must ask ourselves what are the political considerations that we must be aware of when selecting and introducing new software?
Who stands to lose?
Even if you believe everyone will benefit from the introduction of new technology the chances are that there will be groups of individuals that will perceive the change as a threat and will organise to oppose the decision. From my experience the most common sources of descent comes from Enterprise IT and IT teams representing different business units or departments. These groups have very different perceptions of the threat, but the source of the anxiety almost always stems from lack of engagement in the decision making process.
For Enterprise IT, technology that increases productivity for business units and which reduces costs for the enterprise spells a whole lot of work, reskilling, hiring and job losses. Such impositions will not be opposed openly; instead a series of lengthy delays accompanied by a background chorus of general negativity will endeavour to kill the project through attrition. For IT teams supporting business units the opposition is generally vocal and aggressive. They will rightly demand to know why they were not properly consulted and their requirements included in the evaluation and selection process. These demands will force senior management to restart the process from scratch with the added bonus of hostile business units “contributing” to the process. From my own experience such projects result in those responsible for the new technology leaving the organisation.
How to make sure everybody wins?
Obviously including these stakeholders in the decision making process is of critical importance but this is not simply a matter of sending out a bunch of invitations to 10 weeks of meetings in order to review software products. On a very serious note the fastest way to alienate your stakeholders is to throw around your corporate hierarchy rank in this fashion. There is plenty of literature available on how best to draw stakeholders into the decision making process, however a simple and effective approach I have utilised in the past is to identify a small representative team of likeminded individuals and start the selection process with them.
Where does Community Software come into this?
Let’s assume that we have the necessary buy-in for the introduction of new software on technical and economic grounds, and that we have managed to shortlist two vendors. At this stage our focus should be on gaining adoption for the software once we have introduced it and this is where Community Software has an overwhelming advantage over other software.
We define Community Software as:
General Availability, Free and Open Source Software (FOSS) which is actively maintained by one or more commercial or non-profit entities that also offer professional services that appertain to the software.
All Community Software is FOSS but not all FOSS is Community Software. Our definition has been chosen to help us decide between different types of FOSS when making an IT decision for the business.
When evaluating software for use in the enterprise, one of the key criteria is to ensure that we can sustainably support software liabilities in the most cost effective manner for the business. Remember, if you are not in the business of IT, every line of code, whether you wrote it yourself or not, is a liability. Thus having a vibrant and active community to support the software is of vital importance.
By support I don’t simply mean help desk or professional services to resolve technical problems. I use the term support in a far broader sense for example; I would expect the software vendor to assist with the adoption of the software internally within the enterprise. Such assistance can take many forms including:
- Organising or participating in workshops and Hackathons.
- Actively advocating our programmes strategic objectives to everyone they engage with in our enterprise.
- Working onsite with our teams to help them migrate and on-board to the new software.
- Collaborate with our thought leaders to produce content (blogs, article, whitepapers, videos and webinars) to raises awareness of the technology, the benefits it affords and the use cases we have identified that are pertinent to our organisation and strategic objectives.
If one accepts the Free Software Foundation’s claim that they are the representatives of the ethical software development, and the Open Source Initiative’s emphasis on creating technically superior software then Community Software represents the buy-side, business interests of the software market.