Removed by mod
In the end people/companies will pick the proprietary / closed option just because “it’s easier to use” or some other specific thing that will be good on the short term and very bad on the long term.
I agree with most of the above, just wanted to relay an explanation given to me years ago by my then eng director in an argument about this. He said the reasons we tend to use proprietary / closed platforms and deps in business settings is not necessarily because the software was better or easier to work with. Clearly it often isn’t.
It’s because of (1) built-in factoring and infrastructure, (2) built-in domain expertise that would otherwise require hiring or training, and (3) contractual guarantees that can be invoked when things go wrong. All of which attenuate risk and make development timelines and outcomes more predictable.
His line was “OSS is free like a puppy is free.” That is, most businesses aren’t old enough to handle the responsibility, and that’s why we still sometimes use shitty proprietary software.
Removed by mod
Also, once they are old enough, change is harder. It’s why all the software these days is freemium. Small companies use it as its free. Medium companies pay for it as it’s easier than using something else.
How do we break out of this path of trying to get big enough to break custom, and once you’re big enough not having the guts to test wide sweeping changes?
Speaking about VSCode it is also open-source until you realize that 1) the language plugins that you require can only compiled and run in official builds of VSCode and 2) Microsoft took over a lot of the popular 3rd party language plugins, repackage them with a different license… making it so if you try to create a fork of VSCode you can’t have any support for any programming language because it won’t be an official VSCode build. MS be like :).
I’m opposed to having repositories for plugins. I don’t want my code editor to connect to the internet at all. If I need some popular plugin, it should already be available in the repository of the distro that I’m using. Some distributions of VIM and Emacs download a bunch of plugins on launch from who knows where. I don’t get why people are fine with that.
It’s similar with Flatpak and Snap. Oh and each programming language has its own package manager too, of course (NPM belongs to Microsoft too, btw). Everyone and everything wants its own package manager or a separate distribution system.
For now I use VSCodium in firejail to prevent it from accessing the network and I don’t install new plugins. I haven’t heard of any better editor, unfortunately.
Removed by mod
I’ve read it, but I don’t really understand the legal issue. I’m also not sure what could be illegal about VSCodium. It uses the Open VSX store for downloading extensions (but not every extension is on there).
It would certainly be better if VSCode was under a Copyleft license, so that it couldn’t be turned into proprietary software and maybe that way addons would also have to be Free Software, like in Blender. But Microsoft clearly doesn’t want that.
I’m not much against having repositories with plugins, extensions or whatever BUT they should be like Debian, you can just pack everything into images / a folder and use offline for ever when required.
Yeah, that’s a good idea. They could also just be added to Debian, which would solve this problem, but there also would be another benefit for me. Most people don’t care about that, but I want to only use Free Software. When I install something from Debian’s free repository, I don’t have to worry that it might be proprietary, because they only allow Free Software there. I don’t have this certainty when installing software from most other places.
Same goes for modern Docker powered solutions and JavaScript frameworks.
Some JavaScript frameworks and libraries seem to be packaged in Debian. But most people use NPM, of course.
Bravo for the great summary and expanding on the article. I’d like to subscribe to everything you write.
Agree on the VScode comments. Some of the scummiest business maneuvering from Microsoft. The terrifying part is its slowly becoming so ingrained that its going to take a long time and a lot of directed effort to undo the damage.
Agree on the consultancy angle - this is woefully becoming more and more commonplace as true from-scratch engineering dies on the wayside. Do you think this can be mitigated by, say, college courses that concentrate on the base form of the programming domain? Maybe web development with backend hosted on a machine in the classroom, with a registered domain on an external registrar instead of the usual localhost bullshit, and students responsible for routing etc? Like an emulation of the old days when you started learning web dev on your home computer and stayed with it until you were pretty much a journeyman engineer?
Removed by mod
awkward moment when privacy software has some of their docs on google slides.
Forgejo (gitea) seem to be implementing federation into git
I have no idea how this wasn’t a lower hanging fruit. If theres one social service I want federated, its a git server.
These are large existing code-bases that where developed without federation in mind. Gitlab also started working on AP federation, but like with Forgejo it looks like a multi-year project that it involves a lot of refactoring of the code.
I suppose I meant so far as priorities, I wasn’t clear. Hosting OSS seems like it would be one of the first things to federate imo.
What even is federation in the context of a distributed vcs like Git? Does it mean federation of the typical dev ops tools (issues, PRs, etc.)?
Exactly that!
A central search engine would be a great start. Search across gitlab, github, codeberg etc.
Well, I mean, it’s been like that from the beginning. You don’t open a pull request to the Linux kernel through a web UI, you tell git to send Linus an email with your changes.
Then you log into GitHub to work with almost any other open source project. Issues, PRs, blah blah blah.
But, to be clear, I am not asking you to use inferior platforms for philosophical or altruistic reasons.
Except you just called people selfish for it a paragraph up. A platform that depends on human interaction without humans to interact with is an inferior platform regardless of technical merit.
Going where people are isn’t selfish. It’s rational.
One of the projects I like is on codeberg. I wasn’t on it before, but I am now. You just sign up?!
But 99% of people won’t. Choosing that platform massively shrinks your community.
I’m not saying don’t do it and try to grow that ecosystem if you want to. I’m all for federated becoming the standard going forward. But don’t judge people not wanting to massively compromise their project with a platform that actually is massively worse because it doesn’t have people there.
I would hope that programmers and people inclined to do so much as submit bug reports can sign up for an account.
User count doesn’t really matter for code hosting platforms. It’s not a social network.
User count absolutely matters for code hosting platforms, and it absolutely is a social network. Network effect is critical and the entire premise of this article.
The network effect in this article is seen as important for the adoption of free forges when projects choose them. But I don’t see anything about the importance of how many people use them for contributors to, well, contribute. I might have missed it though.
They’re the exact same thing. There is no distinction that can theoretically be made.
The reason projects are choosing GitHub over alternatives is because they know, with certainty, that they will get far less interaction with their project anywhere else.
If typing in your email to sign up is too much effort, then free software is truly doomed
That’s not the point. The biggest project that currently is on codeberg is forgejo with about 1000 stars. The biggest project that currently is on github is freeCodeCamp with 383000 stars.
You see the difference? If a dev only pushes to codeberg, they have basically no way of being discovered, because there is no one to discover them.I think I should add that I am a supporting member of Codeberg e.V.
I dont think that the stars comparison is very fair. One is a complex version control and product infrastructure system that intermediate users or experts in the domain get familiar with. The other is a coding tutorial series that literally everyone and their dog forks or saves when they start out on learning programming - every college student, every high schooler that has a CS 100, etc. etc.
Also, is there any point to being discovered by the legion of new users and learners on github? What about discovery by people that actually have the inclination and expertise, and have shown the willingness to commit to a smaller user-base because it’s FOSS?
Not trying to disprove or devalue your perspective, just trying to point out that the masses might be wrong to choose the popular option to help get “discovered”.
Maintaining another account is maintaining another account.
It absolutely is meaningful friction, and it absolutely is a perfectly valid reason not to engage.
This is why we don’t use snap.
choosing non-free platforms is an individualist, short-term investment which prioritizes your project’s apparent access to popularity over the success of the FOSS ecosystem as a whole
Nah, I don’t give a shit about stars or followers. Had the argument been the endowment effect, I probably wouldn’t have commented at all. I have very limited free time and choose to spend it on things I enjoy. Migrating every single one of my hundreds of repos from more than a decade of collection is not something I’m interested in. I know this because I started the migration to GitLab when MS bought GitHub and it was a huge time suck that brought me no joy. Realistically no one is going to use my code after I die so who the fuck cares.
On the other hand, choosing FOSS platforms is a collectivist investment in the long-term success of the FOSS ecosystem as a whole, driving its overall growth.
I don’t think the FOSS ecosystem could scale quickly enough to handle mass exodus. If all the MIT and Apache 2 code left GitHub for Codeberg, I think Codeberg would die. But what do I know? If Drew DeVault wants to use their free time to migrate my code to the open ecosystem and put their money where their mouth is, I’d be happy to move. I just need all of the servers and random computers that I do dev on to have the remotes updated too.
If Drew DeVault wants to put their money where their mouth is
He literally develops and runs sourcehut 🙄
Cool! Does he migrate all the code and update references or does he just make sweeping generalizations without understanding common user personas for the experiences he claims to own?
Edit: read about this outage then refer to my previous comment
Going after the wrong dude my friend, this guy is a friend of the FOSS movement.
As for you, its alright to keep all your project codebases on github or gitlab etc. I think the article is majorly talking about large scale codebases that aim to replace existing closed source functionalities. Either way, if you plan and wish to implement a large project that you think will have many contributors, perhaps you could consider codeberg and similar open source devops projects to host and run your new project on, from the start. That way you won’t have any migration pains. If it doesn’t end up working out, hey, thats also a useful report for others who might be thinking about doing the same.
I’m going after the right paradigm. There’s an attitude in FOSS that if you don’t blindly follow everything someone from FSF says (or someone who looks up to Stallman), you’re a bad person. See my first pull quote from above. If you’re going to say something like that and not offer solutions to the pain points of your customer journey, you deserve ridicule (“you” being the author and the slrpnk user who dropped the important first part from their pull quote). The only reason I commented was because of the complete mischaracterization of people like myself, who I know many of, where the endowment effect is a more realistic description than this narcissistic spin.
Your argument is also very tenuous given the outage I called out. I code every day. Literally not figuratively. I code on at least two different devices work days and sometimes mobile (not laptops) weekends. I require a stable remote. An outage of 170hr is not something I care to handle. That’s just me solo. If I wanted to coordinate more than me, it would be a complete dealbreaker.
One reason people stick on Lemmy and other fediverse communities, is the choice of quality over quantity (in this case - wrt comments). So quality over quantity could also apply to platforms like Codeberg. Github has so many abandoned student projects or forks going nowhere - maybe making the effort to look beyond the obvious is an indicator of serious (new) projects and contributors ?
Quantity becomes a problem only if its hard to find things you’re looking for. It’s not like you have to sift through hundreds of projects to find what you need, you just search for it and it pops up. I don’t think quantity is a big deal here.
Copilot was trained on FOSS software, so maybe it’s already too late.
I don’t think that’s the point that the article was trying to make.