3 ms·
> Sometimes it feels like it makes sense to keep some software proprietary (e.g. the algorithms running in a Garmin watch have a lot of value, customers don't j
by AnthonyMouse 2y ago
> Sometimes it feels like it makes sense to keep some software proprietary (e.g. the algorithms running in a Garmin watch have a lot of value, customers don't just buy the hardware).
The trouble with this is that it doesn't really work. A normal user of the watch is probably not going to reverse engineer the binary but a competitor will, so concealing the source code is hurting the customers more than the competition.
Not only that, it hurts you more than it hurts competitors. If you publish the source code then customers make improvements to it and fix bugs. But it's still firmware, i.e. specific to the device, so you get the benefit of that rather than competitors. Customers contribute fixes so you need fewer developers yourself or your developers can spend more time adding features that make sales.
- necovek 2y agoAny larger competitor would surely discourage disassembling a competitor's code because mere exposure to it might make you liable to lawsuits if you develop similar features (and you can't trust that the fact you did it won't leak out).
- AnthonyMouse 2y agoIsn't this the argument for releasing the source code? Looking at the code would be as bad as disassembling it. You can release source code under a license that gives customers the right to modify it and distribute patches to your other customers who have the license that came with their hardware without giving competitors the right to ship it on their own hardware without paying you.
- necovek 2y agoSure, and some companies strongly discourage looking over other open source code for exactly that reason. But companies don't release their source code mostly for a different reason: they honestly believe that this is where their value is, or they believe support costs would outweight any benefits. For some, it's true, but for most, it's utterly false (or there is a tiny little bit of code somewhere that is valuable, with all the rest being boring code that nobody else could put to use).
- AnthonyMouse 2y ago"Some companies do this because they're dumb and wrong" is a plausible explanation for why they aren't doing it, but then they should just release it. The future can be better than the past.