1. 3

  2. 5

    When it releases an embedded device, a company must comply with the license obligations of all packages – no matter whether a package is under a FOSS or commercial license

    This is actually a point in favour of open source. Generally, a company will approve a smallish set of open-source licenses and have a process in place for complying with those licenses. Each proprietary package comes with a bespoke license that needs a different compliance process. This is much more expensive.

    Schneider argues that fixing bugs in free open-source software (FOSS) has a higher cost than in commercial software – for companies building embedded systems. This is disputable – to say the least. In general, I have found the developers of FOSS incredibly responsive. I have often got bug fixes within hours. Moreover, I have rarely found showstoppers in FOSS – certainly not more than in Qt.

    The key economic selling point for open source is that it automatically gives you a second source. If I want a bug in an open source project fixed, then I can go to a commercial reseller, to the original authors, or any consulting company that has experience in roughly the same field.

    This doesn’t necessarily mean that the company founded by the original authors won’t be the cheapest option. Often it will because they are the most familiar with the codebase and so may be able to fix a bug in a few hours that would take a week for someone else to root cause. Even if they charge 2-3 times as much per hour, they’re still cheaper. It provides an upper bound on how much they can charge you because if they’re too expensive then you can always get someone else to do it. This is also useful if they’re overworked. For some of the open source projects that I’ve worked on, companies have had me spend 10-15 minutes sketching out what probably needs to be done and then paid someone else to go and do it. A win for them and the project, because the work gets done, and a win for me that I’m not feeling bad that I don’t have time to work on a thing that’s a blocker for a company that’s building on top of stuff that I wrote and is being a good open source citizen.