Young people today are struggling to make ends meet - they don’t have enough comfort and free time to be able to donate their labor.
I wish I had one manday a week to contribute to the libraries my company uses. I usually do it in my work hours when I find a serious bug or need a new feature.
I fixed a bug in an open source project we use and got into trouble for it :|
Ditch the company and set their offices ablaze!
Don’t use company resources (like your laptop) to do it.
steal from work
God it’s not even that, the general tech knowledge has just plowed into the ground
That’s true, but that’s also just the general populous, who weren’t ever contributing to open source anyways.
I don’t think the quality of coders (professional or hobby) has really declined that much.oh it definitely has. I’ve been in the industry since last century, the actual poke everything, do this for fun, invest yourself, wild jockey type…well we’re a dying breed.
I don’t see a reduced number of CS students that enjoy poking around. I see an increase in the number of students that are there only for the good salary. Making the poking type into a smaller percentage.
I think it mostly explained by that in earlier days most people who dived into programming did it because it interested them. Then it became one of most lucrative career path, and naturally it saw surge of people, who do not share same interests. Relative amount of people invested in dive bombing into meaty details dropped, but it quite possible that absolute amount have not declined by much.
Yeah, it’s pretty difficult to find energy for personal programming stuff when your dayjob is programming stuff.
Gotta get up from the PC for a bit.
And life is more enjoyable, for me at least, being able to branch out into multiple interests even if only one of them is the money earner. My hobbies all revolve around nature and art/creativity.
My type is a dying breed too, the guys who do their best to write robust code and actually trying to consider edge cases, race conditions, properly sized variables and efficient use of cycles, all the things that embedded guys have done as “embedded” evolved from 6800 to Pic, Atmel and then ESP platforms.
Now people seem to have embraced “move fast and break things” but that’s the exact opposite to how embedded is supposed to be done. Don’t get me wrong there is some great ESP code out there but there’s also a shitload of buggy and poorly documented libraries and devices that require far too many power cycles to keep functioning.
In my opinion one power cycle is too many in the embedded world. Your code should not leak memory. We grew up with BYTES of RAM to use, memory leaks were unthinkable!
And don’t get me started on the appalling mess that modern engineers can make with functional block inside a PLC, or their seeming lack of knowledge of industrial control standards that have existed since before the PLC.
IMO I think that’s more a reflection of business decisions rather than innate programmer skill.
Programmers used to do that because they had to do that, so the businesses valued it. Now they don’t have to do that, so businesses don’t allow them room to develop those skills.
I think that rate that people actually developed unnecessary skills outside of work likely remains the same, just the skills that people desire are different to the ones from back then.
That’s a valid point, the dev cycle is compressed now and customer expectations are low.
So instead of putting in the long term effort to deliver and support a quality product, something that should have been considered a beta is just shipped and called “good enough”.
A good example I guess would be a long term embedded OSS project like Tasmota, compared to the barely functional firmware that comes stock on the devices that people buy to reflash to Tasmota.
Still there are few things that frustrate me like some Bluetooth device that really shouldn’t have been a Bluetooth device, and has non-deterministic behaviour due to lack of initialization or some other trivial fault. Why did the tractor work lights turn on as purple today? Nobody knows!
I’ve not been a dev for that long, but I’ve been a dev for 15y or so. For the most part it seems to me like that is an effect of business decisions; workers will learn the skills that get recognized. Which skills those are has changed over time.
I don’t see older devs have that quality particularly more then younger devs, what I see is businesses that don’t value that type of behavior. And having worked with “wild West cowboy” coders before, the businesses may be right; they often make a real mess things and just rely on other people to clean up after them.
From what I’ve seen, there are lots of young people who invest in themselves and have passion for the craft, when the business allows them room to grow and doesn’t treat them like a code-producing machine.
That’s like saying they don’t have enough comfort and free time to do art. Actually, the statements are identical. We create not because we can but because we must.
I think you’ll find loads of young people without time for art, too.
Every artist sacrifices other things so that they can do art. I get that we have less to sacrifice than we used to but in objective, absolute, historical terms, we are still sooooo fucking wealthy and have so many opportunities and resources at our disposal. And I say this as someone with a 13k annual income who contributes to FOSS projects.
Oh man you’re so close to getting the point…
We don’t have enough comfort and free time to do art! That’s an actual legitimate thing that’s going on right now
Were I to reply I would merely be repeating what I said to @ava@beehaw.org
The sad thing is that the last few years was the PERFECT time for open source to see a youth resurgence.
Almost two years ago we saw widespread layoffs across the tech industry, and tens of thousands of young people found themselves without work for long periods of time. Many of them would have killed for an opportunity to spend that time “working” for major open source projects with a small stipend for services provided. Young people can say “I was laid off at Viacom, but worked for the Linux Foundation for 6 months before finding my next role at …”
Hell, you want some hungry talent that would love to work on open source? Target those that are laid off or PIP’d while on visas, and put some legal resources behind supporting their stay in the country while they work on open source, until they find their feet again. Most of them will either go back home or will end up working at predatory consultancy firms that hire L1 or H1 workers that need to stay for their families sake, so take that conveyor belt of talent and put them to work on something useful.
Multiple things:
- get rid of mandatory mailinglists
- use a modern git flow without emails
- get the hell off of discord
- don’t make me a “maintainer”. I write code, I love it. Don’t Peter Principle me
- pay me if I’m supposed to care
The goddamn Linux Foundation is investing more into AI than friggin Linux. They could be hiring hundreds of staff to work on Linux with the billions they shove unto AI. What the fuck are they doing? Mozilla is another offender.
Open source foundations with money should be using it to develop open source.
Also, on greybeard conferences: allow virtual participation please? My company isn’t going to give me 4 days off to travel somewhere for one day, have a 2 day conference, then take another day to get back. Nor am I going to pay 200+€ or something as an entrance fee on top of my ticket halfway around the world.
Ironically, I think it’s the younger ones the ones pushing for discord the most. Some projects opened a discord because it actually made it more attractive to young people.
The question is how to make an open source alternative more attractive.
You can make a Discord server in like 1 second for free. It’s got mostly good enough tools for managing the community. I get the appeal. If you already use it then it’s super easy to just use it for that too. (Except on Android, where you can’t easily switch accounts. Maybe iPhone has the same problem though.)
Jesus I guess I’m the outlier. I hate discord so much it’s unreal.
right there with you. when a project/repo advertises discord as it’s primary/sole means of communication between and with developers I let out a big sigh and move on to something else.
Are there particular mediums of conversation that get you excited though?
Honestly, I’ve noticed an uptick in the number of discourse forums for tech related things and I’m all for that. Discourse is documented well and maintained openly, it’s indexable by search engines and you can visit and use discourse-based web forums using browsers that aren’t capable of js rendering (think lynx). The last bit is a nice-to-have for me, but just being indexable is huge.
In 10 years, I would hate it if every answer I gave or got from a developer is lost to an endless abyss of messages buried deep in an obscure discord guild that a user would have to sift through only after making an account with and installing specific chat software. I hate there being so many hurdles in front of just getting answers. That’s a good tl;dr as to why discord is on my shitlist for support/development discussion platforms.
The cheapest tier for Discourse is $50 a month for up to 100 users. https://www.discourse.org/pricing# With self hosting you can probably get that lower at the cost of your time getting it set up and making sure it’s cheaper than the options they provide.
As much as we all collectively roll our eyes when we see Discord being used for community discussion, it makes sense from a maintainer’s point of view.
Edit: Discourse has free options for creators
Eligibility Criteria
We know creators are not created equally, so we split the criteria or requirements to apply across the different creator groups.
- Software creators (GitHub, GitLab): 10+ contributors
Yeah see that’s the sort of conclusive mindset that’s got us here. I don’t mean to insinuate you’re wrong for coming to that conclusion, but “It costs money or effort so let’s use a worse option because it’s convenient” is part of the reason we don’t have a lot of good solutions in this domain.
I’ll also admit the options these days are limited depending on your goals for a project. If you want to reach the most eyes and have the highest draw of potential contributors, having a discord server makes sense. My gripe is when technical discussion or support take place there.
What makes you hate it?
Jesus what’s to like? It’s proprietary software, it has privacy abuses, terrible UI, hate the “servers” thing, consolidated and centralized, no index for search engines, make an account or you’re shit out of luck. It plain fucking sucks.
Matrix has the most potential. It was the most admired communication tool in the stackoverflow survey last year.
Mailing lists are pretty awesome. They’re like a decentralized forum. There are even good web UIs!
That said, submitting and reviewing patches over email suuucks.
And they’re easy to archive. Not super easy to parse, usually, but at least the data is there.
mailing lists
So so true. Mailing lists suck. I’d rather use Discord. (As in I hate mailing lists that much.) Bring back forums!
In 2023 the organization reported significant revenues, totaling approximately $262.6 million.
They are spending BILLIONS on AI!!!
They are doing what they intended to do. It’s just not in line with your agenda.
OK, I was wrong about the billions.
They are doing what they intended to do. It’s just not in line with your agenda.
The Linux Foundation spent 2% on linux kernel support in 2023.
Linux is “my agenda”. It was me who put Linux in the name “Linux Foundation”. Me and me alone. 😂
What does “project support” even stand for?
Edit: ok, apparently it’s helping a bunch of foss projects that are listed in the pdf. I suppose that’s fine.
You just misinterpret their agenda. They were never in line with you
I figure business makes quite enough money off my efforts during the day without me also generating value for them for free in the evening.
Our civilization demands that I be profitable to a parasite who leeches a majority of my labour’s value in order to accumulate obscene levels of wealth.
Without exorbitant amounts of time spent maintaining that profitability, I will end up poor, homeless, and eventually dead from exposure. This leaves vanishingly little time to spend on open source work, regardless of how intellectually and ethically attractive it may be.
But open-source doesn’t always mean working for free, nor does it mean people do it for purely ethical (or socialist?) reason.
There are lots of reason why open-source is attractive after discounting ethics and money. I imagine being credited for being a major contributor to a popular open-source project would mean better job opportunity in the competitive tech job market. The gig doesn’t directly offer you money, but it does gravitate the right company that has the money to fund your work they find very valuable. In a sense, this isn’t that far from how capitalism work – credits are due to the people who brings most value to the society, whether the source of the software are open to all or not.
This is of course a very superficial statement to make, but I remember Eric Raymond wrote about this in more a detailed (and more convincing!) manner in The Cathedral and the Bazaar.
So… it pays in exposure?
big flashback to my freelance days.
fuck working for free in the hopes the project magically becomes super relevant overnight, and all the people who defend this.
if you want me to take on more responsability than i want to, you better be paying me.
open-source doesn’t always mean working for free,
Sponsorship brings goal conflicts, and locks both sponsor and sponsee into a death spiral of software like a dog with one true master and a master who can never get a new dog until this one is dead.
So what? The point of open source is that you get the source to do with what you want, not “give me shit for free”.
I vote we sacrifice a virgin CS student.
If you look at projects in more popular languages like JS, Rust, Python. There is plenty of new blood in the contributors list. I won’t speculate as to why, but it looks like the new generation doesn’t like c and c++.
I think this is also backed up by the Linux kernel and thunderbird projects. Both are old c/c++ codebases and both have stated they are adopting rust in hopes of drawing interest (and contributors) from the rust community.
I won’t speculate as to why, but it looks like the new generation doesn’t like c and c++.
It’s not that hard to know why - these languages have footguns literally everywhere. They seem simple and powerful at first, but they turn into a monster soon enough. There are simply objectively better alternatives today, like Rust. It shouldn’t be surprising, it’s been so many decades after all.
I’ll also throw out: aging infrastructure, build systems, coding practices, etc.
I looked into contributing to the kernel - it’s already an uphill battle to understand such a large, complex piece of software written almost entirely in C - but then you also need to subscribe to busy mailing lists and contribute code via email, something I’ve never done at 30 and I’m betting most of the younger generation doesn’t even know is possible. I know it “works” but I’m really doubting it’s the most efficient way to be doing things in 2024 - there’s a reason so many infrastructure tools have been developed over the years.
The barriers to entry for a lot of projects is way too high, and IMO a lot of existing “grey” maintainers, somewhat understandably, have no interest in changing their processes after so much time. But if you make it too hard to contribute, no one will bother.
How do you contribute code through a mailing list? Like I don’t understand…
ELI5: Git has tools built-in to put your changes into emails and send them. People can either bring them in or see the diff in the emails.
Reading and interactive tutorials:
Found a blog post that gives a quick overview of how to do git via email in general: https://peter.eisentraut.org/blog/2023/05/09/how-to-submit-a-patch-by-email-2023-edition
So at least from my understanding you’d make your changes, email the contents of the patch to the maintainer, and then they’d apply it on their side, do code review, email you comments, etc. until it was in an acceptable state.
There’s also the full kernel development wiki that goes into all the specifics: https://www.kernel.org/doc/html/v4.16/process/howto.html
(I never got through the whole thing)
Awkwardly. Pretty much generate a patch and email it as an attachment.
by writing your diffs with red and black ink, like the Aztecs did
All the old people have learned the old systems (C, Perl, etc) and don’t want to have to learn something new, whereas young people are happy to use something newer and better (Rust, Typescript, etc.) because they don’t mind learning and don’t have a ton of old knowledge to throw away.
Yes that’s a big generalisation and there are plenty of exceptions, but in my experience it’s broadly true.
I work on an open source project which has a C component. I offered them our closed source C++ version which is way better and fixes a load of issues… Not interested. They learnt C in the 70s and don’t see why they should have to change.
Actually that project is a mix of old curmudgeons and young PhD students so there is a bit of a mismatch, but I didn’t feel like fighting the naysaying so…
I’ve heard a lot about Rust. I’ll have to look into it. I hate myself so my preferred language is PowerShell.
I’ve written a million lines of powershell in the past few years for stupid business reasons. I fucking hate the language and I don’t see why anyone would write anything serious in it
I might have missed if it was in the article. Sorry in advance for that.
Do we have any idea regarding the top 3 or top 5 reasons that drove potential contributors away? Not in terms of hypotheses, asking about actual studies, interviews, surveys, etc
No time, no money, no house.
I feel like there’s maybe also a bit of disappointment in open-source going around? The last few years have shown that it’s not the silver bullet, it was thought to be.
Companies will find ways to relicense contributions via CLAs, or to just straight up violate your copyright with GenAI. And even projects that technically tick all the open-source boxes, like Chromium and parts of Android, can and do exert plenty control over users, because no one has the manpower to fork them.
Then there’s plenty unethical companies making use of open-source, and they rarely contribute back to make up for it.
Nevermind that the open-source infrastructure is owned by corporations (GitHub, Discord etc.).And it feels ever more present to me that publishing things as open-source means maintenance work, which can quickly lead to burnout. People just expect you to provide updates, no matter what your license text says.
Like, I certainly don’t either think that not doing open-source is any closer to a solution. But I’m finally at a point where I feel like my code is useful and good enough to publish, and it just feels like either my only ‘users’ are corporations scraping my code, or if I promote it, then it’s just a ton of maintenance work waiting for me.
I don’t know, maybe that’s also just a me-problem…And it feels ever more present to me that publishing things as open-source means maintenance work, which can quickly lead to burnout. People just expect you to provide updates, no matter what your license text says.
David Beazley, big in the python world and one of the OGs of the python ecosystem from back in the 90s, kinda had a moment about this a couple of years ago.
He has or had a few somewhat popular libraries and liked to write things and put them out there. But, IIRC, got fed up of the consumeristic culture that had taken over open source.
I think he put it along the lines of “The kind of open source I’m into is the ‘here’s a cool thing I made, feel free to use it however you want’ kind” … and didn’t have positive things to say about the whole “every open source author is now a brand and vendor” thing.
The result of which, IIRC, was him archiving all of his libraries on GitHub. From a distance, it also seemed like he felt burnt out from a hacking culture in which he no longer felt like he belonged.
Nobody has been able to adequately explain how ai is violating any oss licenses.
You are explicitly allowed to read the source code.
When I read code under GPL source and write something like that under a different license, I’m legally liable for copyright infringement. Of course the original owners need to prove it first, but still there’s problems from that.
Some open source projects outright disallow you from contribution if you tell them you’re working on a closed source competitor.
When I read code under GPL source and write something like that under a different license, I’m legally liable for copyright infringement. Of course the original owners need to prove it first, but still there’s problems from that.
Neat. But if you create your own version based off what you read that’s fine. You can’t copy it, but you can learn from it.
I can read the Linux source code and use it to create my own compatible kernel.
Some open source projects outright disallow you from contribution if you tell them you’re working on a closed source competitor.
So? They can refuse submissions to their code but they couldn’t stop you from using what you see to create your own product.
What’s needed is renewed ethos, not just fresh blood.
What’s needed is people who actually like the projects, on the technical level, and use them daily. Not people who are just trying to maintain an open-source “portfolio” they can showcase in pursuit of landing big corpo job.
A “portfolio” which also needs to, in their mind, project certain culture war prioritizations and positionings that are fully inline with the ones corpos are projecting.
It will be interesting to see how much of the facade of morality will remain if these corpo projections change, or when the corpo priorities and positionings, by design, don’t care, at best, about little unimportant stuff like American-uniparty-assisted genocide! We got to see murmurs of that in the last few months.
Will the facade be exposed, or will it simply change face? What if a job was on the line?
I’m reminded of a certain person with the initials S.K, who was a Rust official, and a pretend Windows-user in hopes of landing a Microsoft job (he pretty much said as much). He was also a big culture-war-style moral posturer. And a post-open-source world hypothesiser.
Was it weird for such a supposed moral “progressive” to be a big nu-Microsoft admirer? and one who used his position to push for the idea that anyone who maintained a classical open-source/free-software position towards Microsoft is a fanatic? No, it wasn’t. He was one of many after all.
All these things go hand in hand. And if you think this is a derailing comment that went way off the rails, then I hope you maintain the same position about the effects of all this on the open-source and free-software world itself.
Okay I am not going to lie I am pretty lost as to what you are saying here. I read this twice and I am still confused.
What does working on open source projects have to do with the culture war? Also what do you mean by culture war? Do you believe like some leftists do that it’s all a distraction? Or do you think like the right wing do that it’s a leftist conspiracy to changes some countries values? Or another third thing I don’t know about?
Who is an American uniparty?
By new Microsoft do you mean how they have changed with regards to Open Source? I mean they actually release open source software now, and don’t fight as much against Linux and other communities. Presumably because they realised they can’t fight Linux. Do you think this is a bad thing? They obviously aren’t a benevolent force for good, but I personally prefer the new attitude to the old one at least.
In 2002 we were firing all our mentors.
The greybeards now burned out from maintaining our foundational stuff have no one who’s learned the 'why’s of best practice under a good mentor, nor have time to donate to open source - and ‘fuck you pay me’ is cute for all the strings it has, btw, but your mentor would have taught you that.
Some of us, worried at distros drinking IBMs (then redhat) kool-aid of badly built shit who raised concerns were labeled ‘just old’; so, like a COVID nurse we said ‘no u’ and focused on other tools and projects.
Things are gonna die. Somewhere in there things will become poorly-maintained. After a dark time of shit massively sucking - and probably another init daemon because blobs are sexy? - it will get better.
But by then apophis will drag our moon into a declining orbit and make us focus on nuking the moon to push it back up.
what do you mean by the Fuck you pay me thing?
You can kinda see this in things like modding communities or anything piracy related too. Users just want easy solutions even if it’s at the expense of creators, and creators are doing it more and more for money rather than any personal drive or satisfaction. I can’t believe we’ve reached a point where even mods are being locked behind paywalls, need to be commissioned or sometimes have entire teams funded by patreon to work on them, it’s just another business nowadays.
I was tempted to disagree, but the Patreon subscription paywalls is a very good point. Are we doing less free work for the public good (or at least accessible to the public), or is it a prevalent niche that’s very visible, without influence on those that volunteer work like before?
The thought I had before that was that maybe the creative output changed. People build in Minecraft and VRChat, in hosted platforms. This may be different to before, where mods were separate things and communities.
I still see a lot of voluntary open work. But I’m not confident in assessing it’s prevalence or shift.
Blood for the blood god?
I’d be glad to help but I have no spare time, and practically just a degree in game programming. I dont really know how to get into open source.
a degree in game programming
That’s a thing?