Software licenses of your killer-app’s components
by a reluctant coder:
First, choose open source software licenses. Many reasons are altruistic or based on collective self interest. This isn’t a question so much as an answer to many questions and about avoiding potential issues, and minimizing the amount of coding you will need to do for your killer-app. Here’s a personal reason to choose open source:
Over a couple of years, I wrote thousands of lines of code in a macro language for a project. Macros are a kind of quasi language that has limited utility. The code simplified extra long spreadsheet equations. A few automated functions that integrated tables into a dynamic publishing system. The process simplified the flow of technical data from spreadsheets to printed technical manuals. The process was like how database backed websites work. Then the spreadsheet vendor dropped support of the macro language for another one. Later they added support for the macro language back in, but by then, the project had lost its steam.
Vendor lock-in is one of the risks of not using open source technology. A software vendor’s motives are not aligned with yours. A vendor can make arbitrary changes that affect your project. Changes can be as simple as unexpected increased pricing. If your project relies on it, it might not recover. With open source software, you don’t have to concern yourself with the whims of others. Yeah, developers on occasion abandon open source software projects. Some projects grow in a completely different direction. If this happens, you still have the source code and can fork the project. You then can continue on the same path or consider alternatives at some point. Much of web technology thrives on software with open source licenses.
If you will be distributing code, be sure to comply with distribution requirements of the licenses.
Next post is about choosing a solution stack