Why do young people pop into a community that has been around for decades and wonder why the old people who built it are still around?
It’s ultimately a question of money. Older guys with software engineering degrees and fancy salaries can spend their weekends doing free community service in the form of open-source development. Younger people have to worry about job and rent and bills, they simply don’t have that kind of free time.
Add to that the growing complexity of the software. Something that could be done by an university student before, like writing an OS from scratch, won’t be nearly as useful as it would in the '90-s, because it was already done before, now you have multiple OSes to choose from. And joining an existing software project is hit-or-miss, some are inclusive and some are an old boy club where you need to know the secret rules.
One aspect of FOSS that most people don’t appreciate is how it’s funded. Like how it’s actually funded.
Once you put a dollar value to the hours put into it, it fairly quickly becomes apparent that most FOSS projects are basically only possible because super rich software engineers (relative to the average person) have the relative luxury to be able to dedicate a ton of free time and effort to building something they think should exist.
It’s why there was a huge FOSS boom after the dot com crash when a ton of software engineers suddenly got laid off but were relatively wealthy enough to not have massive pressure to immediately start grinding a 9-5 again.
A lot of FOSS development isn’t rich developers donating their free time, it’s paid developers who were hired by their company to work on an open source project the company deems crucial to their business.
Yes, but I would point out that:
a) a bunch of those commercially supported Foss projects still started out as a personal project of one of a small handful of programmers that then got popular and exploded.
b) more importantly yes, a lot of commercially useful FOSS is developed by paid developers working at tech companies as part of their line of work, stuff like browsers, languages, frameworks, packages, etc. but a lot of the most iconic and beloved consumer facing FOSS applications are not, as at that point if theyre non exploitative then there’s no reason for a corporation to support or build on them. Corporations prefer to support Foss infrastructure that’s so general they can still use it to build closed exploitative projects.
Yeah. Extremely good software engineers can easy demand $200/hour as a contractor and that’s still considered low. They are essentially doing that much worth of work for free.
Yup. I did a fair amount of FOSS in school to build a resume, then I started a career, got married, and had kids, so now I don’t do much. I plan to do more when the kids get older, but I currently have other priorities.
It can be really hard to get that motivation back. I said the same thing way back. However now I’m a a solid career point, my kids are in college, and I’m divorced. I have to reinvent my life according to only my priorities. This is my opportunity. Yet I’m doom scrolling. Time flies with useless crap and the motivation to create is not as strong
I feel that. I spend a lot of time doing stuff for myself (playing games, watching videos, and some doom scrolling), but I keep telling myself it’s because it’s inconsistent in frequency and duration.
But at the end of the day, it’s largely an excuse. I contributed to Lemmy a bit when I switched, and I could totally find a few hours a week to help with something. I just don’t, because it’s always a tradeoff with other things I’d like to do, some of them also productive.
So I guess we’ll see what I do. In the next 5 years, my kids will be transitioning to being more independent, and I’ll have more and more time available. My current plan is to get more involved in FOSS, but we’ll see if I actually do.
At lot of this strikes me as non-issues, or even bordering on entitlement.
Well, for instance, if you’re contributing your own code, there is a high bar to clear. It often feels as if you need to surpass whatever the existing functionality is. Just to get accepted, you have to offer something better than some existing product that may have been around for decades.
Well, no kidding, that’s how it works in most things. Why would a project accept a contribution that doesn’t add a previously missing feature or improve on the implementation of a current one? I would be pretty suspect of using a program that accepts a random commit so that a college kid can check the “Timmy’s first accepted pull request” box and let them pad their resume.
Some would-be contributors are very familiar with programming, reading, and writing code, but they may never have opened an issue or sent a pull request. This is a scary first step. Others may have the necessary tech skills, but not the creativity. Where should they you begin? Also, if someone is scared, that can result in impostor syndrome. The fear that people all over the world will see your bad code is a powerful factor reducing the urge to share it.
These are all things that the greybeards being maligned had to figure out at some point, I don’t really see the harm in new contributors being expected to do the same, especially when there is an abundance of documentation and tutorials available now, which simply didn’t exist in the past.
For instance, there are a lot of folks doing mods for video games. This can be a very creative activity, there is lots of room for innovation, as well as outlets such as streaming to reach an audience. It applies to all sorts of games, such as Pokémon, Elder Scrolls, and Minecraft. Game modding is a great way in. It could even be a way to set up a company, or to make a living. But it’s not considered as FOSS. For novices getting interested, it could even be attracting people away from getting into FOSS development.
Again, nothing new here. No, game mods weren’t nearly as prevalent in the past, but new devs have had the choice between contributing to FOSS software and contributing to/creating proprietary programs for as long as FOSS has been a thing.
I don’t think the old guard should be dismissive or rude to newcomers when their contributions aren’t up to the standard expected to be accepted, but they also aren’t getting paid to be these peoples’ mentors. It kind of reminds me of posts I see in language learning communities, where people would get all upset, “I completed the Duolingo Spanish tree, but the cashiers at my local Mexican restaurant speak too fast for me to understand and they switch to English when I try to talk to them in Spanish.” Cool that you want to try and use the language, my friend, but these people aren’t being paid to be your tutor, and you may well be making their job more difficult and/or holding up other paying customers by trying to force random people to listen to your extremely basic, and likely incorrect, Spanish. They don’t have an obligation to put everything else in their work or life on hold to try and stroke your ego.
Curiously, I don’t see any mention of what, in my view, is likely a much more serious issue to getting new generations of contributors involved, as well as having a more diverse set of contributors. Access to technology and relevant education is far from uniform. If little Timmy from Greenwich, CT has had a personal computer he was free to mess around with to his heart’s content from the moment he could read and attended a well-funded school with the possibility of studying computers, programming, and early exposure to things like Linux from grade school onwards, it shouldn’t come as any surprise that he’s more comfortable working with these concepts and more likely to wind up contributing successfully to FOSS projects than my friend Lucas, in Brazil, who only got a second-hand computer when he managed to get accepted to university, and had no real concept of Linux/FOSS until I explained to him why I couldn’t just install a random, Windows-only program he thought would be useful to me.
To draw another language learning comparison, it’s like how in the US, most students will only study a second language for a couple of years in high school and two semesters at university, if they attend higher education, and then you periodically have people going, “How come so many Americans fail to speak a second language compared to students in Europe?” Then, you look at the curriculum in countries like Germany, and realize they begin teaching students English as early as grade-school, often adding another foreign language later on. Is it any surprise that, when they have nearly a decade of foreign language instruction, compared to the mere two years many Americans get, alongside a fair bit more exposure to and encouragement of engaging with foreign language media, that they wind up being more proficient at using said language on average?
It’s hardly a perfect solution that will completely mitigate all of the issues with getting younger and more diverse groups of people to contribute to FOSS projects, but I don’t doubt that having access to computers in the home from a young age and access to more extensive education on computers and related fields from a much younger age would go a long way towards getting more people involved. Of course, even then, having the downtime to be able to dedicate to contributing to/maintaining FOSS projects is a factor that will disproportionately favor historically privileged groups. Even if she has the knowledge and ability to do so, a single mother working three jobs in the Bronx in order to keep a roof over her family’s head, food on the table, and the lights and heating on simply might choose not to spend what little free time she has writing a badass new MPD client in Rust that has plugins to integrate with Lidarr and automatically fix metadata with beets based on matching the hashes of files to releases on various trackers in order to scrape the release data from them, no matter how cool the concept might sound to her. And it’s not really something I could blame her for.
I can’t speak to the rest but I started working on Linux and other FOSS in ~1995 as a young man and just never stopped. The same applies to many others I know. We started young and are still here.
It didn’t start grey but then I read the issues tracker.
Nowadays it’s mostly college kids trying to add something to their resume. And it’s all note taking apps
One rather obvious reason is that society has a lot of greybeards in general. The baby boomer generation was named that for a reason, and people have been living longer on average. Lots of countries are struggling with the demographic effects. There’s no reason to expect that tech or something even more specific like FOSS would be exempt.
Another aspect here is that FOSS is still kind of new in society. There’s just more people who have had the chance to age into FOSS greybeards than when those greybeards were young. (And they were thus likely to a lesser degree blocked by entrenched greybeards when they were getting started.)
People born in the 50s have long retired. The grey beards are not baby-boomers. They are people born in the late 60s and 70s. They are people who grew up as computing technology matured. They started coding low level and had careers building the infrastructure of computing which is what a lot of FOSS is.
However the question is not why these people have aged? It’s why hasn’t there been a steady stream of people taking their place from younger generations?
I believe it’s because the generations after them have careers working at higher levels of abstraction. Often going lower level is seen as black magic that is unknown to them.
There may be some truth to that, but seeing Rust take off means there’s still interest in lower level languages. Rust is making its way to the Linux kernel and other established FOSS projects, which improves the chances for people uncomfortable with C-style languages to get involved.
But I think the explanation is simpler: younger people don’t have the time for FOSS, and few companies pay people to work on FOSS. So these graybeards are either grandfathered into the few roles that exist, or have sufficient time (e.g. kids moved out/largely independent).
I’m perfectly comfortable with C, it’s a neat, small, language. I actually understand the whole of the semantics (at least the POSIX ones). I also happen to speak x86 assembly quite fluently (as long as it’s not SIMD noone speaks that fluently, last time I actually wrote assembly in earnest x87 was still relevant). The thing is though I’m more comfortable with Rust, even if I don’t understand absolutely everything: Because it’s less mental load. I don’t need to worry about so many things at once, don’t have to keep a thousand assumptions in mind that that pieces of code I’m not currently working on are making.
No, driving a unicycle instead of the metro doesn’t make you a better commuter. It makes you a better unicycle driver.
Greybeards, like in Skyrim you mean?
I, USE ARCH (btw)
FOSS RO DAH
Hence the power of the shout “sudo rm -rf*”!
I would think it’s a good thing that there are a lot of greybeards in FOSS? If the claim is true, then it should mean that once you get into FOSS you tend to stay there.
The article seems to be referring to FOSS code contribution more than user adoption, but the same idea holds. The more I learn about my distro and its packages, the less scared I get about something going wrong that I can’t fix and the less likely it is I will go back into an OS riddled with ads and spyware.
For code contribution I only ever managed to do a PR for a Kodi plugin, and even then it was only because this amazing guy from their team walked me through the whole thing step by step. It was quite intimidating figuring out how to do that stuff for the first time.
It’s good in some ways, but I read one of the points as a generational turnover. Graybeards are the people who invented a lot of foss and stayed true to the calling. True heroes. But there needs to be a continuation, fresh blood, a bright future, and the graybeards won’t be around forever.
Graybeards are also people who got into foss when it was easy to start. The fear is there are higher expectations now, higher complexity, creating barriers to entry for the next generation
And what is the problem with that?
I mean, it sounds as if that is a bad thing that people are dedicating their free time at the betterment of something that can be used freely by everyone, including you
If you want others (different color, sex, gender, race, abilities, sexual preferences) to have a bigger part of that pie, then have more of them jump in.
I am guessing that most of the greybeards are here doing this because they can, abs like it. Help others to he able to help out
The problem the article highlights is not the considerable amount of “graybeards,” but the lack of everyone else.
to have a bigger part of that pie, then have more of them jump in.
The problem is: how?
I personally enjoy working with open source projects because I like making code to help other people. But, apparently, that’s not enough of an incentive for other people.
Or, of course, they don’t have the time/resources
And what is the problem with that?
You don’t think that’s a problem that most essential open source software is maintained by older people who will retire sooner than later?
So a lot of people have pointed out the obvious factors like experience, time, and money. But I think a another big one is the culture. A lot of FOSS has been impenetrable ime with how many keyboard warriors exist in discord and forum communities. Doesn’t exactly make the newbie experience the best
Greybeards can be found in lots of places, but definitely not on discord.
Because the replacement comes from non-graybeards in FOSS, and their replacement from without-beards in FOSS, and they come from youths in FOSS, and they from teens geeking around with computers, and oops - teens are not geeking around with computers, they are watching reels and scrolling recommendations and doing other bullshit. If they have a PC, it’s an unloved work tool for them, with crappy bloated Windows, crappy bloated software for work and studies, not always crappy, but bloated games, you get the idea.
Because there was a generation very fertile on geeks. It’s going away. There are demographic pits and there are demographic, what they call them, hills? The point is, we are seeing the effects of the latter.
and they from teens geeking around with computers, and oops - teens are not geeking around with computers, they are watching reels and scrolling recommendations and doing other bullshit.
“Youth bad.” Lazy take. As if everyone in the gray beard generation was tinkering around with computers? Plenty of youths still tinker. Posting condescending shit like this is just going to turn them off from pursuing/contributing.
I don’t see anything that could be considered a “Youth bad” statement in that comment. It’s a complex issue, influenced by a myriad of factors.
For example, I could dissasemle and reassemble my first PC without any prior knowledge. I had to learn to use DOS to navigate the OS and get things done. I got a book from the library about it, and spent hours upon hours just learning about how the file structure, commands, programs, external media, etc. worked before I could do anything remotely useful.
Today a PC/tablet/phone is a black box, you have to actively WANT to tinker in order to learn such about how they work. And most big tech companies try to punish you for so much as trying to replace a battery yourself.
I suspect you are projecting some personal feelings onto a stranger’s comment.
They aren’t just a black box, tinkering with them actually has negative consequences. On Android getting root access results in Safetynet attestation failing and on iOS you can’t even get root at all unless you are happy to run some bins from questionable sources. Things are very different for youths. As someone else stated to tinker in the way you mentioned means getting an Arduino or some kind of tinker-friendly SBC.
I’m really confused by your reasoning here. You’re describing how it was extremely difficult to you and you had to go to great lengths to learn technology. Not everyone did this back then nor does everyone do it now.
That was the stuff you needed to do to do things like: play video games on your computer, get online and chat with people, hell even use your PC to write an essay and print it out (or even setup your printer to begin with). You didn’t necessarily have to go as far as they described to do that stuff, but you had to do some of it.
Nowadays there’s no equivalent. You don’t have to at least kinda understand the filesystem to play minecraft on your iPad.
I think you’re missing my point. I’m not saying everyone capable of using a computer today is equivalent to that level of dedication and curiosity. I’m just saying that in the same way only a handful of people do that today only a handful of people pursued it in the past. It’s become easier to use computers, but hat doesn’t mean there still aren’t people who learn the ins and outs of them today like people had to do in the past to use them.
I think you missed my point, which is that everyone who used a computer back then (less of the overall population) had to at least dip their toes in learning how they worked back then. This meant that a lot of people who otherwise wouldn’t have gotten interested in computers found out that they really liked them and started going down the rabbit hole on their own from there.
People would get a computer for school, buy a game for it, and have to learn how to fix the computer when the game didn’t work. Hell, in the 80s (as a 90’s kid I missed the boat on this one) there were magazines that included games where you had to type the code for the game (in BASIC) into the computer yourself for the game to run. Many of those magazine games had bugs so if you wanted to fix it you had to learn some basic coding skills to spot the bug/typo in the magazine.
Nowadays such entryways into the computing hobby are far less ubiquitous, you have to seek them out. I’m not saying people now are less capable or less curious or that the hardcore nerds won’t still get into the hobby, I’m saying it used to be required for playing PC games or social interactions online. There used to be incentives for people who otherwise wouldn’t have tried to figure out how computers worked, and as a result a lot of people who didn’t necessarily think of themselves as would-be computer people ended up getting into computers.
I totally agree, but nobody is saying everyone that uses a computer is a tech wiz. I’m saying there are still plenty of people today interested in digging in deeper just like there were back then. Tech being more accessible today hasn’t led to a decrease in such things, because the people the ease brought in wouldn’t have dug in in the past.
It’s not youth bad. It’s that in the 80s and 90s, computers were fun and required a lot of tinkering. Nowadays they mostly work. They’re boring.
People who tinkered learned stuff. Users just know how to use a couple applications.
No, it’s recognizing that tinkering means different things now.
In the 80s and 90s, if you were learning computers you had no choice but to understand how the physical machine worked and how software interacted with it. Understanding the operating system, and scripting was required for essentially any task that wasn’t in the narrow collection of tasks where there was commercial software. There was essentially one path (or a bunch of paths that were closely related to each other) for people interested in computers.
That just isn’t the case now. There are more options available and many (most?) of them are built on top of software that abstracts away the underlying complexity. Now, a person can use technology and never need to understand how it works. Smartphones are an excellent example of this. People learn to use iOS or Android without ever knowing how it works, they deal with the abstractions instead of the underlying bits that were used to create it.
For example, If you want to play games, you press a button in Steam and it installs. If you want to stream your gaming session to millions of people, you install OBS and enter your Twitch credentials. You don’t need to understand graphical pipelines, codecs, networking, load balancing, or worry about creating client-side applications for your users. Everything is already created for you.
There are more options available in technology and it is completely expected that people distribute themselves amongst those options.
I get that, I’m not saying differently, I’m just saying that it’s not like the only reason people were learning lower level things was only to play games. Some people were just curious about it. Plenty of people are still learning those things because they’re curious. The barrier to entry being lower doesn’t mean there are less people who are curious about learning! If anything, it means that people who are curious but thought the barrier to entry was higher in the past have an easier time getting into the hobby now.
Do you think that the Arduino project has been a net negative for people curious about learning low level microcontroller stuff? It was created out of frustration by people learning it wanting it to be easier to begin to learn. https://spectrum.ieee.org/the-making-of-arduino
That’s a looooot of assumptions and stale assumptions at that.
Sure, sure, old man. Everything was better when you were young.
There never was a majority of people who were into computers. It was always a minority. And I’d argue that nowadays there’s more developers because there’s simply more people with access to computers.
Some of them won’t like them, some will be neutral and some will be “geeking around”.
And having seen some code from people both older and younger, the younger ones are better (note that it’s my anecdotal evidence). And you at least can train the younger ones, while the “experienced” will argue with you and take energy out of your day.
I’m so tired of the stupid “when I was young, everything was better”. You know what else was exactly the same? The previous generation telling you how everything was better when they were young. Congrats, you’re them now.
Normal, mainstream software expected users to run DOS commands and edit autoexec.bat/config.sys files, and installing new hardware often involved configuring motherboard DIP switches and trying to figure out what “IRQ” and “DMA” means. There is no equivalent to that today. Plug it in, turn it on, and you’re done. 9 times out of 10 you don’t even need to install a driver, your OS already has it. Where does the door to learning and discovery present itself? With plug and play systems and walled garden app stores, everywhere a user could possibly come across some more advanced concepts has been muted and decorated over with pretty conveniences. Computers are toasters now.
and installing new hardware often involved configuring motherboard DIP switches and trying to figure out what “IRQ” and “DMA” means.
That part is about IBM PC architecture more than it is about computers in general, including personal computers of that time.
EDIT: I wonder, why all the downvotes, this is just true, look at Macs of that time. I’m not saying interrupts themselves are or a concept of DMA itself is.
Eh, if you’re into computers, you’ll find your way. My first “programming” adventures were writing batch/vb scripts and putting them in the startup folder and watching the teacher lose their shit when when their computer turned off after five seconds. Or watching all of the classroom open and close the CD drives 50 times when we were the first to have an IT class that day.
And you’ll be older tomorrow. There is no escape. Being a dick about it won’t help.
Given the person said they’re 28, I’m actually older. And I decided to not be a dick about it and to not pretend that everything was better when I was young. Everything was different, sure. Some things were better, some were not. But I decided to not do the whole “back in my days” thing because I always found it stupid and luckily that didn’t change with age.
Most old FOSS is written and maintained in programming languages that Kids these days™ don’t think are cool (and were probably never taught about in school either).
Hardware used to come with an extensive manual. Hardware these days is a vendor-locked black-box with built-in obsolescence that might get you in court if you open it.
Kids were more curious and spent more time outside, Kids these days™ spend most of their time under the light of screens, inside their safe spaces and can’t even tie their shoelaces.
Nah, the kids I know learned C just fine. C is simple, C is all you need for writing kernel drivers, pointers are not that hard if you explain them well, it just feels really pedestrian compared to Python or Typescript.
Can the kids even be trusted with shoe laces anymore?