Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do you decide if you should write your own or off the shelf?
6 points by aprdm on July 21, 2019 | hide | past | favorite | 3 comments
Perhaps in the counter trend of the javascript community I've been seeing more and more value of writing my own software rather than using something that is out there.

That goes from libraries to use in my code to software that theoretically is "off the shelf".

I've found that the cons of using third party solutions include:

For code dependencies - now I have to manage its version, keep it up to date (or not), understand what it is truly doing / security risks, go through Legal, teach my team on how to use it.

Not only that but I find that the API / objects of a dependency not always match the linguo of the business with that my cognitive load of the system just increased.

This is a non trivial amount of work in a large code base.

For off the shelf software - I am at the mercy of someone else, their incentives rarely align with mine, I have to keep in touch with the vendor (or OSS community) plus all of the disadvantages of a library.

I am finding more and more that it is easier to just suck it up and develop what needs to be solved for the business through code without dependencies rather than trying to accommodate a library or an off-the-shelf software in my very large, old and complex code base.

Of course that it doesn't apply for everything, I wouldn't write my own database, TCP/IP stack, crypto and etc. but the closer the software is to my main business the less value I see in adding any dependency.

How do you evaluate what to write vs what to use?




If the software in question is supposed to provide business differentiation, err toward rolling your own. You can’t differentiate yourself by simply gluing together some open source software in a straightforward way.

If you think you can differentiate your business this way, then the software your building isn’t the differentiator, which is OK for many businesses. (Since you are asking about JavaScript, maybe time to market and network effects are more important than it working properly out of the gate, for example.)

On a related note, I’ve found I learn a lot more working at successful businesses that err towards rolling their own software, and that those companies tend to have smaller teams and stronger products. Clearly, there is some survivor bias at play (maybe most places that roll their own fail, and only the spectacularly good ones succeed).


If you're the bank - always hire temp consultants and write your own stuff.

Even if that makes absolutely no sense.

Other then that - decide.


recent previous discussion >> https://news.ycombinator.com/item?id=20419416




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: