Hacker News new | past | comments | ask | show | jobs | submit login
Graying open source community needs fresh blood (theregister.com)
43 points by defrost 3 months ago | hide | past | favorite | 65 comments



Open source with Closed Contribution vs Open Source with Open Contribution.

Feel free to fork. Feel free to read the code. Feel free to use as you like. But don't bug me. Don't demand I add features. Don't complain that something doesn't work (especially if it actually works). Don't feel like I owe you anything, because I don't.

vs.

Feel free to fork. Feel free to read the code. Feel free to use as you like. Let me know how its going. Let me know which features you'd like tosee. Tell me when something doesn't work (even if it actually works). I want to be helpful as possible.

Both are fine. Both are defensible. But projects should state prominently what they prefer.

I have an OSS package on python. Its open source because they can read the code; it's just python, with only third-party package being pillow. But I host the code on a private git instance. I hope people find it useful. If they fork it and make it into something extraordinary, fantastic. But I'm uninterested in exposing myself to time-consuming demands of others.


Only the first is the correct free software way.

The second is misguided and leads to sob stories of burnout. It's also an open invitation for idiots and corporations to walk all over you. And then you accept Jia's offer to be co-maintainer because it's getting to be too much for you. And then you have your software backdoored, ironically burning the demanding leeches that thought they could get a free lunch off of you.


Depends on your motivation and resources. As an individual developer, probably.


When I was a junior engineer, I felt like I wasn't good enough to contribute to anything open-source, and the open source communities around the projects I liked felt quite condescending.

Once I was a senior engineer, every single employment contract specifically had clauses preventing me from contributing to open source projects (except with specific, explicit permission from your manager).


That's really weird. Do those contracts mean that you are prohibited from contributing in your role in the company, or prohibited in your private life?

I've found the former to be reasonably common (and I don't object to that).

I've not encountered the latter at all, but then I also always make sure to negotiate away all the clauses that give my employer any claim over work I do on my own time with my own resources, or the ability to prohibit me from engaging in development on my own.


Not everyone has the negotiating power to negotiate away terms they don't like.


Maybe not, but it's something I've been doing since I was a junior dev. I've rarely had any pushback on it.

Regardless, I suspect that most senior devs have quite a lot of negotiating power.


Good to know. I suspect a lot of people don't even try.


I know I've tried. And every time it was "just a standard part of the contract" and "not up for negotiation".

Yes, they'd rather lose me as a candidate than offer a one-off contract change. A surprising number of places are like this - the perceived cost of maintaining a unique contract over the years is greater than the value provided by any possible engineer.


Every company I've ever worked for was totally unwilling to negotiate on IP assignment, open source work, moonlighting, and similar policy. I even tried the clever thing where you strike out parts you don't like, and it's always met with: "No. Here's the full employment agreement. Sign it unmodified or GTFO."


It's shocking how many people don't even know that this is a thing that can be done in the first place. People often see the terms offered as a "take it or leave it" sort of deal. But it rarely is.

The terms of employment are the opening offer of a contract negotiation. The worst thing making a counteroffer will get you is "no", not "we're withdrawing the employment offer".

As my old business partner taught me, if you don't ask then the answer is automatically "no".


The latter one isn't even legal under reasonable jurisdictions.


First, I don't know if the average age of open-source coders is increasing (in a way you wouldn't expect from general demographic trends). Second, if it is happening, blaming mature coders is probably pretty far down the list. More likely is (in no particular order):

(1) corporate contracts that discourage employees from contributing to OSS

(2) green-field effect (there is already a lot of OSS and few obvious opportunities for new OSS, and creating a new open-source project is often easier than it is to gain the trust of developers of an existing project and a lot more exciting,

(3) VC culture: imagine if Facebook had open-sourced their platform from the start; yeah, I can't either, where's the money in that?


(1) Is a problem for sure. Proprietary devs always overestimate the value of their code, and lack of open source scrutiny typically makes code quality worse.

(2) Definitely.

(3) VC culture can be an issue, though Facebook might not be the best example (they gave us React, GraphQL, PyTorch, and more).


Yes, but Facebook, the original platform, not the big corporation it became.


I would add (4) (Related to your 2)

OSS projects are probably getting bigger on average. Corporate-sponsored projects that tackle complex problems, as with a lot of current data science and AI, means that one-man projects are almost impossible to get off the ground. One-man projects have to be very lucky - get the right idea, the right time, and by a person who can do it (capability, time, personality)


How does the average size of OSS projects impact an individual's effort? There is no requirement that a one-man project has to be of any particular size.


I think they mean that some projects (say a competitive Excel alternative) is just too big for a single person to do.


This is certainly true, but my question is why does that matter? It's not like projects of a more manageable scope are any less interesting or useful.


I'm a graybeard, so my opinion may or may not have any resonance with the younger crowd. But I'll say this much:

I largely dropped out of and stopped participating with the OSS community years ago. I haven't stopped producing open source (in the generic sense) software and my belief that it's critically important remains undiminished.

But the community as a whole became rather unpleasant for me and so I disengaged. It internalized too much of the mindset and attitudes that plague SV.


I concur, I've been 'around' the OSS community even before I had skills to be able to give back to it and something after 2010 shifted and it felt like open-source was a way for corporations to exploit free labour of ideologues they could sell a daydream to. The promise of fame or getting hired, etc drove some young people who bought the lie to give up everything. I even knew a guy who only stopped when he was homeless and spending all his time on library computers trying to respond to people.

Open source is a gift given by whoever wants, and it's amazing to be in a place in life when you can give if you want to, but it's all 'bonus'.


I think a major problem is the abundance of entertainment in modern times. Rather than hacking out of curiosity and for fun, there are so many substitutes like games and social media that a high number of young developers simply don’t feel bored enough to do anything.

There are obviously still some pretty prominent young open source devs but they’re quite rare.

I find today’s identity politics in FOSS also slightly problematic but that’s too controversial of a topic to delve into.


This feels like an "old man yells at cloud" take :) Certainly when I was young, I learned programming through recreating video games I liked, and sure enough, tons of young people are working on super impressive, open source projects related to video games. Take a look at the video game reverse-engineering projects, or emulators like Dolphin. There are way more young, open source developers now than ever in history. The default for this entire community is open source software. As they grow into their careers, it's going to feel very weird for them to encounter closed tooling.


I'm not so sure about the availability of entertainment being a significant issue. The sorts of people who are likely to develop on their own are also the sorts of people who consider it entertaining. I know that personally, I've never played a video game or watched a movie that was more entertaining than wrestling with an interesting dev challenge, anyway.


Entertainment was abundant in the '80s and '90s too, including games and in-person socialization.


> I find today’s identity politics in FOSS also slightly problematic but that’s too controversial of a topic to delve into.

Yeah. It looks like various OSS projects are being mobbed / targeted in some kind of co-ordinated fashion, which doesn't bode well. :(


I got involved in open source when I was in my teens, and I'm now pushing 40.

I'm as interested as I ever was in consumer free software, but...

Having worked professionally in the software industry for the majority of my career (most of that time in open source), I just could not care less about what comprises the open source "movement" today. I don't want to rehash the whole free software versus open source discussion here, but suffice it to say, most of the energy being put into open source projects today is completely uninteresting to me. Enabling a developer ecosystem with open source, only to see this technology used to create proprietary and downright Orwellian software that abuses the rights of end users more than any point in history doesn't motivate me to participate in corporate open source.

Wake me up when we start writing software where the beneficiary is the end user.

Do you want to attract young people to open source again? Start actually building software where the story behind why open source matters is actually true again.


Right? I'm not interested in working for tech billionaires for free.

How many posts here on HN are from people that someone forked their project and are now selling it? I always check out the license - oh, MIT or BSD. You opened yourself to that.


This is a huge part of why I stopped engaging with the OSS community myself.


> Wake me up when we start writing software where the beneficiary is the end user.

Too true. And a lot of the chatter I hear about benefiting the user seems like regurgitated marketing copy and euphemism, with AFAICT no awareness of what really developing for the user would be like.

> Do you want to attract young people to open source again? Start actually building software where the story behind why open source matters is actually true again.

Yes, and I have a guess of where the potential likely is (with a little background)...

I wonder whether this is actually harder to appeal to the amenable people than it used to be, because they're surrounded by ubiquitous conflicting messages -- about what computers, software, development, collaboration, design (UX for engagement and manipulation), charity (it's for college applications), etc. are about. And when even the basic tools with which you can build new things are getting twisted, with anti-social intent implicit in their design.

Remember when programmers were nerds -- in the sense of some degree of social outcast, and when looking at the equivalent of a smartphone in public risked getting you physically beaten up, and certainly ridiculed?

Not the "nerd" that currently means having the latest gadgets for posturing on social media, and being on track for a big-money career that upper-middle families launch their kids into, and which is blessed as fashionable by the cool kids at school?

Maybe the next contributors in the earlier spirit still have to come from people who have an outside perspective, and now who are also strong-minded enough to cut through the deafening noise of commercial greed messages.


"Open source software leads to proprietary Orwellian tech" is quite the take


I'm curious which part of my assertion you disagree with:

1) Consumer software has become Orwellian.

2) The primary usage of open source in the past decade, especially the software represented by OSPOs, has been developing a robust software development and operations ecosystem used to build and host proprietary technologies.

Do you feel that either are inaccurate?


Building proprietary tech is what builds proprietary tech. Facebook developers also use the power grid, but that fact shouldn't divert rage towards solar panels.

And there very much are open source software projects specifically designed to combat "Orwellian" tech. I would not have those be proprietary too.


> Facebook developers also use the power grid, but that fact shouldn't divert rage towards solar panels.

Huh?

In this example, it would be more like I don't really care about commercial solar panel installers supporting Facebook. I do care about solar, and would be excited about more home grown solar solutions, and I think kids seeing people in their community benefit directly from solar is more likely to get them to go into solar technology than seeing it benefit some giant corporation, especially when the giant corporation is just using that solar energy to do shitty things.


AGPL or CC-NC are the only ways to go. Otherwise, you’re working for Facebook for free.


I think putting everything on github might have.


I find open source software to be very intimidating. It feels like the contributors to these projects are experts in whatever language theyve written them in, and any contribution I might submit will get smacked down in PR for some arcane technical reason, likely with a rude comment


That kind of sounds like the OSS projects you've interacted with haven't had friendly people running them.

Maybe that's the key thing? "Look for OSS projects with friendly people" or similar? :)


Have you tried picking a project that might have a lower bar for contributing, or is closer to your skills? Of course, this doesn’t help those projects be more accessible, but it could help develop your confidence until you’re ready to work on those (and hopefully change their culture!)


This seems like kind of a weird approach. I've never thought to myself, Hmm, I need to go out and pick a project to contribute to. If I have a patch to send out it's because I'm already using the project for something and I need to upstream a change.

Think about why you are contributing to a project: Are you adding a feature that it lacks but that you need? Are you fixing a bug that hampering your other work? I wouldn't just pick a random project and file a PR just because I want to contribute something to open source. I'd start with a project I already use, where I have a problem I have to solve, solve it, then contribute the patch.

It seems backwards to start with "I want to write a patch to something" and then go out and find a project to patch.


Do you have trouble contributing to open source projects?


Not in general. I have never in my life experienced the "smacked down in PR for some arcane technical reason, likely with a rude comment" that the O.O.P. wrote. Although I wouldn't let that bother me. If someone doesn't want to merge a patch I send them, that doesn't even remotely hurt my feelings.

You can "Contribute to Open Source" without your contributions being accepted/merged.


> It feels like ... any contribution I might submit will get smacked down in PR for some arcane technical reason, likely with a rude comment

Why do you feel this way? FWIW that has not been my experience at all.


I have not found software engineers to be the most diplomatic people when reviewing other people's work


Okay, but that's a barrier to contributing to any software project regardless of its licensing model, no?


That was a rare experience for me years ago, but I started to see it commonly more recently.


And yet you apparently have learned to walk, despite the ground meeting you quite rudely here and there. Apply the same here.

True, assholes do exist. If they didn't, the modern human world likely wouldn't be a shithole, but yet here we are. But as you demand people to extend their goodwill and charitable assumptions to you, take a moment to do the same to them. It might very well be that your contribution is taking the project in a direction they don't want to pursue. It might be that what you are contributing is the failed idea #420 from a year ago. It might be that what you are contributing is what has caused bug #666 which took many months to debug and fix. It might be more often than not that you blatantly fail to do as Romans do when in Rome.

Maybe young people are exactly the same as they were 20 years ago, but it's my perception that thanks to flashy media abound, attention spans are indeed shortening, and demands for instant gratification are bigger now than they used to be. But this is not how you do anything of value. Maybe spend some time reading the room before rushing in and then complaining about rude comments.


> It might very well be that your contribution is taking the project in a direction they don't want to pursue. It might be that what you are contributing is the failed idea #420 from a year ago. It might be that what you are contributing is what has caused bug #666 which took many months to debug and fix. It might be more often than not that you blatantly fail to do as Romans do when in Rome.

These are all factors as to why people don't contribute to open source software: the amount of institutional, cultural, and technical knowledge required is a major impediment to onboarding new developers, and the OSS community is memed for its poor interpersonal skills (especially a hostility to those lose skilled). I could spend some time becoming acclimated to a project's human factors with all their outdated forms of communication and idiosyncratic around the build systems and PR procedures, or I could just work on my own greenfield project which is more rewarding and less fraught with interpersonal dynamics


How do you even travel to countries with cultures vastly different from your own? Do you expect them to accommodate you every time at the cost of having to bend their longstanding tradition?


Yes, I travel. No. And I never travel to Dubai.


How is the next generation of non-OSS developers being mentored? Can that work for OSS developers?

Culture, craft and meme reproduction is work that must be staffed, same as parenting for species replenishment.


I'm guessing a project like Linux would be fine, given more companies willingness to invest in kernel development. And kernel / native development being itself a potentially lucrative niche.

I worry more about the tertiary command line tools we all take for granted that have 1 burned out maintainer on the verge of retirement.


A material portion of the blame should be placed squarely at the feet of those attitudes similar to the one expressed in this Mastodon thread which I recently saw resurface and hate just as much as the first time I saw it: https://hachyderm.io/@stargirl/109697057391904145

This “I was allowed to try something, but it’s dumb for anyone else to do so” attitude is one of a collection that quite rightfully turns off, hell, not just newcomers, but anyone apart from the old guard.

Truth be told, enough time has passed for many open source communities to have shaken out such that the last ones standing are just the only people toxic enough to outlast everyone else.

Many jaded socially inept OSS greybeards would do the community a service by not subjecting it to their general…grumpiness. Thank you for your service, but drop the messiah complex. Things have a way of working themselves out.


That girl isn't a greybeard. That's a nobeard. No one takes them seriously.


Granted, pipenv was a dumpster fire and PyPA did make a bunch of bumbling fools of themselves by jumping on it and calling it the tool to manage dependencies.


It's great to consume OSS but there are little to none advantages in contributing.

This privilege is left to FANG developers who need to release some OSS project to build a career and highlight the name of their employer.

OSS was a miracle, it worked out of the sheer will of some amazing and ideologically motivated developers, in defiance of market laws. It's doomed to become smaller and smaller until AGI will revolutionise the field.


Well there’s always the advantage that you can feel good about making something better while improving your skills.


>in defiance of market laws

My understanding of the economics of software is that open source software is inevitable. The marginal cost of producing and distributing software is zero, and so the only real way to make money is to sell access to physical resources as a service and give the software away for free.


I don't see how that is an argument that open source software is inevitable.

If the only way to make money is to sell access to a physical resource as a service and give the software away for free, then yes, I'll have to give my software away for free. But that doesn't mean I have to give the source to my software away for free.

In fact the economic incentive may be to not give away source code, because giving away source code will make it easier for people providing competing resource access services to develop their software.


> It's great to consume OSS but there are little to none advantages in contributing

The advantage is the software I use gets better. OSS works fine with purely selfish motives: implement the fixes & features you want for your needs, contribute them upstream so you don't have to maintain a diff.


True, as long as the selfish one is a fellow craftsman. Once a tech giant comes in with an overwhelming interest of making the substrate (open source software and associated free labor) on which it grows its shit (products which bring in the money and surveil the hell out of you), it all breaks down and we have conundrums on what to do with it pop on HN every couple weeks.

A pet conspiracy theory of mine is that there exists PR professionals who are now retired and ride their lambos into the sunset because they were successful in creating a negative rap for copyleft, promoting permissive licensing and convincing gullible community members and "evangelists" that it's their own idea.


You seem to be deep in a hole based on some high profile, bad experiences. Take a moment to climb out of it and look around at all the cool stuff happening :)


Besides "write code" and "donate money" what are some other ways to help F/OSS?


write documentation, help out new people on forums, translation, demo at tech events, organise said tech events to evangelise.


i hope this isn't to be taken literally

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6764071/

> Looking to Young Blood to Treat the Diseases of Aging

https://www.wired.com/story/startups-flock-to-turn-young-blo...

> Startups Flock to Turn Young Blood Into an Elixir of Youth




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: