Posted by magoghm 13 hours ago
All of the other bullet points there are pretty reasonable, but, having worked in OSS professionally, I genuinely hope none of my GH projects take off in the OSS world.
I have a few projects that are in the >50 stars range, and am both grateful for other people's interests and very glad that none of them crossed the threshold to becoming real OSS projects. I like sharing my interesting experiments, but I absolutely do not want to be stuck with the nightmare of maintaining OSS software for years.
Even on these small projects, I've had times when I'm pressured to do a bug fix on a 5 year old project where I don't even remember how it works or review and merge an enthusiastic PR solving a problem I don't actually care about. It has eaten up a few weekends, and was a relatively minor annoyance, but it gave me the taste for what OSS work involved. Working professionally for an OSS company gave me even more insight.
Maintaining OSS is a royal pain in the butt and I am forever grateful for the people who choose to do this. Running a popular OSS library is not a prize. It's at least a part time job you aren't paid for. The benefits are slim; even the "fame" part (name your top 10 favorite OSS tools, now name the maintainers of those), and has really limited rewards outside of that. I've know plenty of brilliant creators of OSS libraries who struggle to find jobs in industry that are appropriate to their skill level.
In fact, it's really hard to both run a successful OSS project and have a full time job (especially a high paying one that wants a lot of your brain and time) if you can't some how manage to make that OSS project your full time job... and even then you will be under constant pressure to find a way to monetize your OSS project (which inevitably leads to either losing that job or making decisions not in the interest of your community of OSS users).
OSS maintainers are saints as far as I'm concerned. So much of the world's software depends on them (even moreso in the age of LLMs) and the vast majority are compensated way less than your average FAANG engineer.
Also having spent years working in the OSS space, I wish it was normalized to have more nuance between "totally unmaintained" and "maintainer will literally miss their child's birthday to review your PR".
There's already all kinds of badges on GH readmes, couldn't we have a few more signifying "actively maintained, PRs welcome" or "security & critical bug fixes only" or "looking for new maintainers", etc.?
"I don't own it, I didn't write it, and I don't understand it even slightly. I just made a one-line bug fix for one function in it a year ago and nobody has touched it since, so my name is on top of the git history."
"Cool, so as the owner could you tell me..."
If they're so keen on helping people publish more stuff and showing how awesome AI is, perhaps they can pre-screen the entitled comments and just not let them get posted? Perhaps they could see that you've not touched a repo in 5 years and when that PR comes in, they could help bootstrap you back in with a code review summary? Perhaps they could stop the idiots pressuring you by explaining to them all the reasons why their PR might not get looked at any time soon?
Perhaps, just perhaps, Github could take some ownership of the problems they have created, and do some work to fix them?
Lot's of entitled "I want to speak to the manager" types ruined it for me.
Scale has changed everything. There are orders of magnitudes more users than contributors compared to some of the early OSS and the balance between grateful and entitled end-users has skewed expectations much more towards maintainers as a support role with similar responsibilities to a product engineer in the commercial world. Why would you want to enter into that social contract now? Why would you want to risk your library taking off and the associated costs that would bring (as well as benefits)?
An alternative evolutionary pathway for OSS is for developers and communities to self-host their own git projects. Projects get to define their own ethos and workflow. Discovery remains high-friction which prevents the commodification of maintainer effort. The bar for writing custom tools to support things like this got a whole lot lower so it might start to make sense more than it did in the past (there are both push and pull forces at work here). It might even make OSS fun again.
However, this is a really sad state of affairs, and I'm wondering if we can't have scale _with_ friction to counter some of these pain points?
And for little benefits to myself. Hitting HN front page or r/programming was nice for my ego. But that’s about it.
It's an article about how some of the best people do work that engages with public view and discussion either very trivially or not at all (or both).
Hard to describe more clearly but it has been a huge influence on me.
1. Work two jobs until you burn out.
2. Quit your paying job and hope you have you don't go broke.
3. Scale back or quit maintaining OSS projects.
I think companies, governments, and societies could do a better job funding this work. But since this is a "tragedy of the commons" problem, I'm not holding my breath that this will happen before the public experiences a lot more pain from failures.
Someone else being usually some corp that is happy to pay with exposure instead of money.
This is of course a rather cynical read, but the first instance of luck being "Having your OSS library take off" kinda paints this picture for me.
Which does make sense I guess, given that it's a piece of writing by the great free labor extraction machine GitHub, which was bought by Microsoft not because they had suddenly gotten altruistic at heart.
Which isn't to say that it's all bad, but there obviously is a clear conflict of interest here that doesn't get explored at all.
There is a point to be made for not publishing your work in ways that makes it trivial for others to benefit from it. A more balanced piece of writing would've warned about this instead of purely providing encouragement.
1. Personally identify a pain in your own work, and it most likely will be a pain for many others.
2. Build a solution to solve for it.
3. Organically talk about it in forums — for me this is Reddit, HN lately and to some extent Bluesky.
When people ask why I build open source, I say it’s about signaling. As other comments have mentioned, if you’re fortunate enough that it gains traction, it becomes your calling card and can lead to consulting and jobs. It’s analogous to academic publishing (used to do more of that) but with different dynamics.
My personal examples of solving for a pain are:
[A] I started building the Langroid LLM agent framework after having a look at LangChain in Apr 2023, at a time when there was hardly any talk of LLM-agents. The aim was to create a principled, hackable, lightweight library for building LLM applications, and agents happened to be a good abstraction: https://github.com/langroid/langroid
[B] With the explosion of Claude Code and similar CLI coding agents, there were several interesting problems to solve for myself, and I started collecting them here: https://github.com/pchalasani/claude-code-tools One such tool is a lossless alternative to compaction, and a Tmux-CLI tool/skill for CLI agents to interact with others.
Because of OSS, I’ve never actually applied for a job or done a Leetcode interview. I’ve gotten multiple direct offers through Twitter DMs (I don’t post) and multiple referrals through random encounters that I never used.
E.g. Debugging an interesting issue with GitHub customer support eventually led to a referral for Microsoft by an MD. Similar stories with Cloudflare and more.
It’s not limited to OSS, but just having any sort of backing credibility to your name without going through the whole CV/CL process unlocks a whole slew of opportunities since people can “pre-screen” you from the start.
It is not straightforward, however. One guy did only product-led marketing and it took him 3 years for his SaaS to make good numbers. And he's probably an outlier, since he's featured on the show.
And then you have another guy, who blogged for 5 years about Ruby and only after those 5 years using the audience from that, he built an OSS project with monetisation on top of that. But he could do that because he talked to his audience about ideas.
Listening to those interviews, I get the impression that if you know what you're doing, you can make a profitable SaaS in 2 or 3 years. But to get to a state, where you know what you're doing, you need at least another 3 years or more of actually putting in the reps in an honest way.
And I think that's where the "increase your luck" comes in. I think it's kind of shallow non-sense in the vein of motivational speaking but lots of people like this kind of content and like to be aspirational. Lots of the books sold by internet hustlers, like Rob Walling or Aaron Francis, don't get read, only bought.
The exceptions to this are closed (or semi-closed) communities and forums where you directly interact with humans, either by inertia due to a large established human user base or (for newer, smaller communities) via personal vetting of participants.
Not looking for you to answer these questions for me here, but ask yourself, what are those dreams specifically? What are the concrete steps you've taken to get there, and how are you going to accomplish them? How long is it going to take you? What are success criteria? What are the risks? What are the failure modes?
> greetings peasants! er, sorry, valued open source contributors!
> remember, without you feeding us training data, we won't be able to train our AI to replace you at your dayjob!
> now, get back to work
I’m not a language purist, but are we really calling people who work in marketing „marketing _enginners_“ nowadays?
That seems like going a bit too far with the meaning of engineering…
Want to do something with motors, but don’t know how to calculate the right combination of motor, gearbox, brake, encoder and controller? Maxon’s sales engineers will happily walk you through the calculations.
Nor would you want someone who built most of their career as an actual engineer to suddenly drop that term and become a generic someone in “marketing”. They’re more than that for sure.
I quite like the terminology the more I think about it.
But that wasn't enough. Someone else wrote that my article was useless and I write at a 7th grade level. I turned off the monitor, went for a walk. I decided that blogging wasn't for me. It was time to delete my blog. I was so embarrassed.
When I came back, there was a reply to that comment. It said something like "that's a good thing, 7th grade level writing means we can all understand it easily". And that was enough to keep me going. 13 years so far.
The problem with environments designed to make interaction low-energy and gamified like Reddit, is that it gathers just the worst people. I've got ~63k karma there, and disengaged some years ago and I can't tell you how much ditching that, twitter and Facebook improved my mental health. There's some great fun to be had there, but it's often the same thing over and over again and increasingly drowned out by utter crap. They've taken multiple actions that have destroyed the sense of community and have become a poster child for ens*tification, unfortunately.
On YouTube, I also sometimes get mean comments, though at least there the automatic moderation catches them so they don't show up publicly and I can shadowban the offenders off the channel easily. None of the content is even controversial, YouTube just attracts a lot of angry people that feel entitled to speak what's on their mind.
I wouldn't publish in an environment where blocking or banning people is difficult. They're not entitled for me to engage with their hateful drivel. My blog also doesn't have comments. At the end of the day, I will say what I want to say.
One of my projects for the next few weeks is to get my blogging stuff up and running again but with a couple of tweaks:
1. I'll never allow on-blog comments again, ever. The signal/noise was always so poor. I'm sorry that you had a similar experience and the unpleasant odour of drive-by sniping got to you. For what it's worth, I'm always interested in finding new writing on tech topics, and I try to never be mean: I am not unique in this, so consider if there's another way.
2. If I ever publish code, it'll not be on a SaaS platform like GitHub, I'll manage the release through tar.gz/zip files, and if people don't like that, fine. I'm not after pull requests or starting a "real" OSS project. If somebody wants to take that OSS license code and host/manage it, godspeed to them.
3. I will write some code that looks for links back to my blogs, so if something I write is referenced by another blog, I'll learn about it at some point and I can go take a look, and that would be interesting. A long, long time ago there was some automation around this using web hooks that almost became a standard, so I'll look into whether that is a thing or not any more.
In my experience if somebody is writing a blog about something they are normally more constructive and thoughtful than if they are just writing something in a text box while "driving by". I'm OK with those articles normally even if they're critical or in disagreement with me about something.