Buying or creating software
AKA
Use or develop
Where the buying/using is either some product to buy or open source
The problem
When creating a system or service, it is compromised of libraries, technologies or services (http, database etc)
These can be either built by the creators of the systems or service, or bought/rented from a vendor or used from open source
There is a trade off to either buy or creating this component that you need, and needs to be thought about carefully
There are a lot of factors not only the idea of buy/using or creating, but the domain, the business, the current setup (tech/political/economic/deadlines etc) to consider
Software is meant to help you achieve your goals in a more economic and effective way
whether that is building it or creating it, is dependent on research, prediction, expertise etc
An example would be a business owner doing their own accounts or outsourcing it to an accountant
For a small business, then doing it yourself might be the best thing
as it is simple, cost less money, not much time spent
You may need some tools to use like excel or accounting product
For a large business, then hiring an accountant or contracting a accountant for a set time is the best thing
Big business means more stuff to do, and less time to do the accounts, time spent doing it is too much when other areas might need you or other staff, the types of accounting that needs to be done is beyond your scope of expertise, the accounting that needs to be done has to be done by a qualified accountant
Buying a solution/component/service
Benefits
Negatives
functionality is limited, the bought solutions cater for the majority and not all your needs will be met
Probably have to buy into how it is used, which might go against how you use it
Integrating this can be nightmare, takes time and money
Time to go through procurement, security audits etc, time could have been spent creating it
It could have bugs, which do not get fixed (nor fixed in time), and thus workarounds are needed
Any problems with it, can lead to having to rely on the products customer support to find a fix or devs to add a feature, both may take a long time and costs
This can be forced upon you, and is not the correct solution for what you need
This can be bought, cause of features which are not needed or looks cool, but is not needed, thus budget is eaten up
Using open source as a solution/component/service
Benefits
Negatives
Creating a solution/component/service
Benefits
Negatives
It take longer than expected
It will need to be owned, maintained, extended etc
It can cost more than expected
The solution might not be what was required, or used as required
If not careful, if the creation is siloed then when the creator leaves and the component is in use, it could be a problem maintaining it, especially if not created correctly
Half way house
This is to buy customizable software
This is supposed to give you the best of both worlds
But can end up with the worst of both worlds if not careful
Links
https://www.quora.com/Why-would-an-organization-consider-building-its-own-software-application-if-it-is-cheaper-to-buy-one
https://www.quora.com/Should-you-build-or-should-you-buy-software
https://twitter.com/nicolefv/status/1491954969678782465?t=_9M3NVWmQmzfj100f3WMAA&s=19
Last updated
Was this helpful?