I mean I get the service part, but why can’t somebody not just copy your code and do it better? Or just take your code make it closed source? Thanks
>why can’t somebody not just copy your code and do it better?
The point of open source is that you are making it available to everyone to use, modify, and otherwise bastardize to their hearts content, unless otherwise stated.
People do not tend to desire to profit from open-source software, and typically do it because they believe that everyone should have access to that software regardless of their ability to pay.
You can’t make it “closed source.” That’s like putting toothpaste back in the tube. It’s already out.
You can take the open source code and create your own release of it, that’s called a “fork” and it’s very common. It’s your choice if that fork is also open source or not.
So how can you make money? Realistically, ads… or subscription services… or get creative. But not from selling the software.
“copy your code and do it better” is the point of open source.
If the code is open source people will add and improve it and we will end up with a better version for everyone.
“take your code make it closed source” is against the rules. The various open source license approach this to a different degree, but they al agree that if you take open source code and use it you can’t act as if it was your own. Either the whole thing or just the part with the Open source stuff it will become open source.
The idea is that everyone contributes and everyone can freely use it.
You can add stuff on top of it that is closed source and sell that whole product and your an offer service and hardware around it.
Android is based on OpenSource stuff and Google and Samsung and many others are making money with is just fine.
Apple’s iOS is technically close source but based on Open Source and apple is not hurting for money either.
As far as the “what’s preventing someone from taking the code and making it better”… that is the point of opensourcing software. But assuming you mean “whats to stop them from stealing it, close sourcing their own version of it, and selling it”: it depends entirely on the licensing.
Opensouce =/= free-for-all
When something is Opensource it means that the code is sitting out in public for anyone to use, but there can still be a license associated with it. Licensing gets *really* complicated very quickly, but in general they range from fairly permissive licenses (like the MIT license) where you can basically do whatever you want, to fairly restrictive licenses (like GNU GPL).
Restrictive licenses usually do something where they require you to also opensource any modifications you make under the same license. Or preventing you from close sourcing your own fork of the software. These can be called “copyleft”. Again, it can be complicated but *in general* it means that you’re granting some freedoms over your copyrighted software with the requirement that any derivative works maintain those same freedoms.
This whole area gets fairly complicated. There are probably hundreds of licenses out there, each can have subtle differences.
The red hat model is to release the code to comply with the gpl, but they offer professional services (consultants), they package the code in an easily consumable format (ie rpms) rather than making the user compile the code, and they provide support for their paid-for software.
There are 2 major ways. The 1st is donations. If enough people like your product enough then somebody will give you a little bit of money to keep making more.
The 2nd and more common way is to make some support stuff that is not open source that ties in to your open source product. So you might produce an open source operating system that is someone hard to use, and then produce a for profit visual interface for that operating system.