Essentially, there are two ways of producing software. One is the ”Silicon Valley” way, where you start up as an entrepreneur in your garage, reach out to venture capitalists (VCs) who then invest into your idea, and later scale, if you’re successful - like Facebook. The second is a community way, where numerous members inspect, modify and enhance the applications that have openly available code bases. They gradually improve and add on features as the project goes along, like Linux.