Open Source
All about open source! Feel free to ask questions, and share news, and interesting stuff!
Useful Links
- Open Source Initiative
- Free Software Foundation
- Electronic Frontier Foundation
- Software Freedom Conservancy
- It's FOSS
- Android FOSS Apps Megathread
Rules
- Posts must be relevant to the open source ideology
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
- !libre_culture@lemmy.ml
- !libre_software@lemmy.ml
- !libre_hardware@lemmy.ml
- !linux@lemmy.ml
- !technology@lemmy.ml
Community icon from opensource.org, but we are not affiliated with them.
expired
Okay, here are a few thoughts:
- Companies like blame someone when things go wrong, if they chose open-source there's isn't someone to sue then;
- Buying proprietary stuff means you're outsourcing the risks of such product;
- Corruption pushes for proprietary: they might be buying software that is made by someone that is close to the CTO, CEO or other decision marker in the company, an old friend, family or straight under the table corruption;
- Most non-tech companies use services from consulting companies in order to get their software developed / running. Consulting companies often fall under the last point that besides that they have have large incentives from companies like Microsoft to push their proprietary services. For eg. Microsoft will easily provide all of a consulting companies employees with free Azure services, Office and other discounts if they enter in an exclusivity agreement to sell their tech stack. To make things worse consulting companies live of cheap developers (like interns) and Microsoft and their platform makes things easier for anyone to code and deploy;
- Microsoft provider a cohesive ecosystem of products that integrate really well with each other and usually don't require much effort to get things going - open-source however, usually requires custom development and a ton of work to work out the "sharp angles" between multiple solutions that aren't related and might not be easily compatible with each other;
- Open-source requires a level of expertise that more than half of the developers and IT professionals simply don't have. This aspect reinforces the last point even more. Senior open-source experts are more expensive than simply buying proprietary solutions;
- If we consider the price of a senior open-source expert + software costs (usually free) the cost of open-source is considerable lower than the cost of cheap developers + proprietary solutions, however consider we are talking about companies. Companies will always prefer to hire more less expensive and less proficient people because that means they're easier to replace and you'll pay less taxes;
- Companies will prefer to hire services from other companies instead of employees thus making proprietary vendors more compelling. This happens because from an accounting / investors perspective employees are bad and subscriptions are cool (less taxes, no responsibilities etc);
- The companies who build proprietary solutions work really hard to get vendors to sell their software, they provide commissions, support and the promises that if anything goes wrong they'll be there. This increases the number of proprietary-only vendors which reinforces everything above. If you're starting to sell software or networking services there's little incentive for you to go pure "open-source". With less companies, less visibility, less professionals (and more expensive), less margins and less positive market image, less customers and lesser profits.
Unfortunately things are really poised and rigged against open-source solutions and anyone who tries to push for them. The "experts" who work in consulting companies are part of this as they usually don't even know how to do things without the property solutions. Let me give you an example, once I had to work with E&Y, one of those big consulting companies, and I realized some awkward things while having conversations with both low level employees and partners / middle management, they weren't aware that there are alternatives most of the time. A manager of a digital transformation and cloud solutions team that started his career E&Y, wasn't aware that there was open-source alternatives to Google Workplace and Microsoft 365 for e-mail. I probed a TON around that and the guy, a software engineer with an university degree, didn't even know that was Postfix was and the history of email.
My work for example, is pretty all-in on the MS ecosystem and it's a little annoying sometimes.
MS's proprietary alternatives to established FOSS counterparts, while well documented, are needlessly complicated and only really viable in Azure for the most part. They are also very good at not exposing the underlying tech to managers, preferring use of buzzwords.
MS then provides an educational portal to learn about all this stuff, which then creates further managerial lock-in...
Because that's not how professional software development works. You don't actually get free programmers because most of the time your customers are not techy people.
E.g. if I develop some special software for dentists or whatever, and I open source it, all I get is that someone else builds the code and distributes it for free so I can't easily sell it anymore.
expired
if I develop some special software for dentists or whatever, and I open source it, all I get is that someone else builds the code and distributes it for free so I can’t easily sell it anymore.
Are there a lot of industries that would accept a piece of software that comes without techical support and/or liability?
What would happen is not dentists installing your software themselves, without support.
What would happen, and already happened countless times is that you see companies appearing that will sell services to install and maintain your open source software. It will be done by software developers just like you, except they can spend their whole time working for their customer instead of working on improving the software itself.
You will soon realize that you make money from the same activity as them, except you also have to maintain the software (and spent time to build it in the first place).
Of course you can use shady techniques to make it harder for others to understand your code, or release the open source version with a delay, but if you play by the usual rules of open source, with open development, third party developers will be able to acquire as much knowledge as you about the product.
Acquiring knowledge about the product takes time. Upstream has a better position just by being the one to create it and having all the knowledge about the product immediately, not after some time. Someone who decides to rebuild that would either have to fully maintain their own fork (and open source their work as well if the upstream has copyleft license), or upstream their changes, since reapplying bug fixes and new features requested by clients on top of the original codebase will take more and more time with each upstream change. Upstream can also restrict the use of their trademark, which would add a burden of marketing to downstreams as well.
Can someone rip your work? Yes. Is that really an issue? No. Just stealing the code changes nothing, the person needs to invest money to continue build it themselves. The original developers will always be at an advantage since they know the code base. The fork (the new version) also won’t benefit from any of the changes by the original developers, or they need to carefully copy them over. If the hostile fork is also open source then it doesn’t matter since you can just take their changes if they are good. Making it mutual.
You can also use licenses that forbid the closing of the source. Doesn’t stop real thief’s, but it gives you a tool to stop it and also anyone who ignores a license like that is also generally not very competent.
Not necessarily. The original developer might know the code base better, but the hostile fork needs no development cost.
The 3D printing industry is a really good example of something like that. Take for example Marlin. That's the firmware that runs on the vast majority of 3D printers. It is open source and thus freely available.
Many 3D printer manufacturers just download a copy of Marlin, change the logos and slap it onto their printer. They are never going to update it, because Marlin is great as is and most customers won't ever update it anyway. So the 3D printer manufacturer has a development cost of maybe 1-2h to dial in the config and replace the logos. Compared to the developers of Marlin, who spent whatever the time equivalent to 19691 commits is. Also, the 3D printer manufacturer earns money from the sale, the Marlin devs don't.
Or take a look at e3d, who recently stopped open sourcing their hardware. They created the E3D v6 hotend, which is by far the most common hotend to this day. The issue is, most people don't buy an original E3D v6, which costs ~€50-70 (the more common 1.75mm version), but instead they buy the cheap €15 copy from Amazon or the €5 version from Aliexpress.
Again, the copyists might not have the expertise that e3d put into their work, but they know the exact dimensions and the material that needs to be used, and they just make a perfect replica. No research costs, only manufacturing, and be done with it.
Open source is only sustainable if you get your money for developing, not for selling the product. So for open source to work, you need e.g. a Patreon or cooperate sponsorships to fund the development, so that after development is done (before any product is sold) you got your money.
expired
Sorry, but your arguments are seriously flawed, and you calling everyone uneducated who doesn't follow your flawed argumentation is honestly insulting.
Many intellectual properties are hard to create but easy to copy, and the whole point of an open source project is to make it easy to replicate. If you want to stop others from building your project, open sourcing the design files, manuals, source code and project documentation is not the right way to go.
I actually would not buy a 3D printer hotend from Amazon or Aliexpress. Not only because that would be utterly irresponsible to buy manufactured e-waste when our landfills are already overflowing; but because that’s actually how you stay poor: investing into a high quality product will relatively yield better results for a much longer time, and will end up costing you dramatically less in the long run.
This is just an utter misunderstanding of the whole situation.
Designing and making a 3D printer or parts of one are two very different things. Designing means you need to have a good hardware designer that spends a lot of time trying to find the best geometry and materials for the job. Making the parts means you need to have a good machinist and good tools for that.
Most of these cheap clones are made by really good hardware manufacturers. For example, Trianglelabs hotends are on the exact same level of quality as an original e3d part.
So buying clones is not e-waste at all (at least not more than the original parts) and the original parts are (to the consumer) mostly just really expensive versions of the same thing. Which anyone educated in that field would know.
High price doesn't equate quality at all. Just ask the guys who are currently floating around the Titanic.
I actually would not buy a 3D printer hotend from Amazon or Aliexpress.
Btw, e3d does sell on Amazon and Aliexpress as well. So that point is totally moot.
Imitation is the sincerest form of flattery.
Finally, companies don't care about flattery. Flattery doesn't pay bills or earn profit.
Makes a lot of sense, but I was thinking more of a tech oriented stuff
The issue is there are a few ways of doing open source wrong.
The biggest way to do it wrong is to try to sell the open source product while giving the source away for free. Because that means, there will be someone else who just takes the source and copies it with no or only minor changes (e.g. replacing logos and names).
The copyists always have an huge competitive advantage, since they don't have to pay for development. Especially for software, development makes up almost all of the cost, so that essentially means they can give away the product for almost free and still make a profit. Or they are open source spirited themselves and give it away completely for free, like CentOS.
Sure, Red Hat can actually develop features that customers are asking for, which CentOS can't really do, since they can't influence Red Hat's roadmap, but considering that Red Hat is asking for $350 for a server license, a free-and-good-enough alternative seems to be the better option for many.
According to Wikipedia, CentOS is much more popular (or at least was in 2021) than Red Hat Enterprise Linux.
So to do Open Source right, you need to make money from developing it. This is e.g. how the Linux kernel works. They don't sell the kernel, but instead many companies fund kernel development either financially or through dedicating developers to that project. There are e.g. a lot of devs employed by Microsoft who are working on the Linux kernel.
This gives these companies the ability to prioritize what features/bugs should be worked on.
But this model doesn't fit every product and thus not every product can be financially viably done in Open Source.
expired
I personally think the best way to do open source is to do it as a hobby, and not hope for profits off of it. Open source is fundamentally programmers taking control of their field's means of production, and the last thing I want to see is corporations co-opting that moreso than they have.
This is the main reason everything I release is AGPL unless there is a strong reason against it: Corporations won't use it.
expired
Microsoft is afraid of OSS because it would literally kill them if people knew just how much better it actually was. They admitted as much in the halloween documents.
They did a long campaign in the 90's and 00's of convincing businesses that OSS was illegal, too. And it worked pretty well.
I love OSS and I am not a fan of security by obscurity, but Windows has so much legacy garbage in it, that if it was open sourced it would be a malware engineers best Christmas ever.
Then add a chormium based browser to that mess
I'm not sure they are. I bet lots of them use Linux servers, Solr, several open source databases and so on. I think it's mostly the small and medium companies who are afraid of missing support and stuff.
The big companies just don't like selling open source to their customers. Or getting them too close to the concept of it.
I mean, sure they are running for backend/infra, but its Ubuntu or RHEL with an enterprise subscription. Not RockyLinux or any community driven distro
I work in open source one of my products is. The benefit of open source is apparent when we talk about core technology and standardization. It’s not very helpful when it comes to specific implementations or customization.
Open Source requires sponsors, sponsors need to build on something to create capital to pay the developers behind the open source. I.e. Blender is open source, because people use it to make 3d models that they sell or get paid to build. So companies that use these models to make products like games and movies, pay Blender so that they can continue making it better and give them support. Also individuals and companies can add stuff to it. But really that’s neglect able. Open source is a promise.
In other words, Open Source is good for stuff you wouldn't be able to sell anyway. Nobody pays more for the OS that's running on their fridge. And hardly anyone cares about the software that's running on anything beside maybe their PC or their phone.
So for all of these things, Open Source is great.
But the actual product that they are trying to sell, that's not an open-source matter, otherwise you'll have cloners in no time.
Big companies make their money selling things that they exclusively have the ability to sell.
The whole concept of open source flies in the face of that mindset.
Plenty of big companies make money on commodities; its entire sectors of the economy. Would it be that big of a shift in thinking to consider software as a commodity good?
Open source software doesn't generally have a company behind it that you can obtain support from via a contract. Some do, but a small, but dedicated library that your entire company relies on? Probably not.
Additionally, there's some perception that paying for software results in a better product than paying zero, which is an intuition from the adage "you pay for what you get". Programmers and users of open source software generally believe the opposite, but executives and middle managers are in a completely different headspace from the workers that produce and use these products.
There is one aspect of that which is true: If upstream breaks your product, you have to figure it out. You can't (or at least shouldn't) just yell at some company upstream and hope they unbreak things. So, the support costs become the company's costs, and who knows how much those costs actually are if you aren't ready to track such thing?
-
False, many open source projects have companies behind them that provide enterprise hosting amd support. MongoDB, Android, Chromium, Hashicorp, GraphQL, Kubernetes and many many more.
-
I think that the above companies/projects speak for themselves on this point.
-
A lot of the time, if companies are to rely on upstream code, they contribute to the upstream. None of the companies that I have ever worked for do major upgrades before stable candidates are out. My company presently doesn't move to a new release until SemVer x.2 (at a minimum, unless there is a critical vulerability that has been patched).
Take a survey of all open source projects. Then find the proportion that have a company behind them trying to sell an enterprise solution. To make this easier, only look on something like the npm repository.
You'll find "generally" is accurate.
Nobody has mentioned one of the top purely technical reasons companies are reluctant to open source things: support.
I worked for a company that opened a UI design framework and people loved it, but the moment you have an outside audience, you can't just make breaking changes or pivot the direction. You have to be sure your thing is completely stable before you open it up.
They felt they couldn't move fast enough while supporting the open one, so they forked it and just maintained the public one so the private one could change faster.
There are costs to support. I'm not saying companies shouldn't do it (Google does, all the time), bit smaller companies may not be able to afford it.
I'm just here to marvel at how effective the corporate world has been at steering the conversation toward Open Source, and away from Free Software
Because it's a lot of work to check that repos contain no confidential information, and to sync internal and external repos if there is a need for some internal-specific stuff. Especially when most software is very specific - e.g. I work in data pipelines for accounting and our logic is specific to our accounting processes.
I think some industries like video games should absolutely do it though, where the turn-around time on products is much faster. The main objection is that it just helps competition (and asset-swap scammers, etc.) but I think that's missing the bigger picture of more tooling and assets helping to grow the industry and labour pool as a whole.
I don’t get why big companys are afraid of open source software
Maybe they think that their business would not be as profitable when using open source business models.
I would be willing to pay to have the license to modify my own software even if I couldn’t redistribute it afterwards.
That's source-available software. An example license that you would probably like: The GitLab Enterprise Edition (EE) license.
Their workflow would be open to the public. The organizational structure doesn't want things like this out in the open.
It's happening. We're seeing lots of new open source software with a corporate shine to it coming out. I just think that it's not going to do anything good for open source.