Contribute or fork?

Would you fix or fork an open source project? What gets you to contribute back to someone else’s project? Why should you? Why shouldn’t you?

A huge fork statue that's stabbing a lake with mountains in the background.
Photo by Olesia Libra on Unsplash

I was watching a video by Theo about two tools he built for himself because he was dissatisfied with the ones available at the time, so he fixed that. Here’s the link to that by the way (goes to YouTube): This tool annoyed me (so I built a free version).

At the same time I got access to GitHub Spark, and I’ve been playing around with it. Turns out it’s not bad when it comes to doing front end work. I haven’t read the full documentation (or really, any documentation, or even the announcement talk either), but it looks like it only works for front end things. I couldn’t coax it into giving me anything in PHP for example. On top of that I’m struggling to export a spark so I can throw it up onto a static hosting place because I don’t have react build package.json or access to the @github/spark module.

The short of it is that it suddenly became super easy to create tiny little apps.

And then there’s the whole drama around WordPress where a lot of people suddenly realised that they weren’t contributing to a community project, they were contributing to a software owned by a single guy and uploaded a bunch of plugins and themes to a website also owned by the same single guy. So the whole “let’s give back to the community” argument just absolutely flew out the window, never to be seen again.

Given these, why would you want to put time and effort back to making someone else’s code, intellectual property, software better when you have a permissive licence to just fork it, copy it, make adjustments and fixes, rebrand it (because branding isn’t covered by the software licences), and then either not release it, or release it as your own.

Conversely any software you put out where your expectation is that folks will contribute fixes or documentation, they might just copy it and fix it for themselves.

There’s the whole “but we live in a society and if you make something better for everyone, you also end up making it better for yourself” argument, which I totally understand, though I also need to ask: if your contribution is stripped of the kudos of authorship where you can point to the code / documentation / whatever and say “look, I did that! (plz hire me!),” would you still do it? Would you put your own time and expertise and energy into someone else’s project who will absolutely no doubt use it to prop themselves up in some way, even if it’s just a testament of how smart they are, if you’re not getting anything at all in return? Not even the benefit of the thing not being broken?

I do have to admit, Matt Mullenweg’s actions have probably pissed me off more than I admit, and it definitely shattered some form of illusion in me.

I am curious to hear your perspectives on this. This will be shared on LinkedIn (yay business!), and BlueSky, plus the usual emails if you 7 read it, so yeah, respond if you wish.