Boris Mann’s Personal Blog

Aug 2021

Feeling locked in by open source

Ton wrote a post about his usage of the Post Kinds plugin for WordPress and used the word “lock in”.

I understand what he is trying to reference by using the phrase “lock in” but I think it’s problematic. It’s open source software (as is WordPress itself) — you are not locked in, you just have to decide where to invest resources of time, money, and energy.

A user has (at least) two options that work with the plugin:

1) Fork it

Find likeminded users and support a fork that does what you want.

Maintain it over time, either as a full fork or cherry picking updates from upstream.

2) Add features to the current plugin

Suggest the feature. Find like minded users. Find a developer to make a PR or compensate David to do it.

And of course for plugins like this, compatibility with the “host” system means keeping up with major architectural changes over time, too.

I don’t mean to suggest that Ton should do either of these two things, just that lock in is not the right phrase at all.

His plan is to store the Post Kinds data directly in the “main” WordPress content:

Over time I can replace the existing Post Kinds dependent postings (about 900 in this blog) in the same way, clearing the way for switching it off entirely. This should increase the autonomy of keeping this blog, and decrease dependencies.

And so the dependency is just on (open source) WordPress, which has a very large user and developer base and is likely to be maintained for a long time.

Also via Ton is a good read on Permacomputing, which has themes I’m thinking about with respect to user agency and maintenance of software over time.

Currently, I think we are entering into a post-open-source world. Large corporates are behind a vast majority of maintained software that happens to be licensed as open source. Software is built dependent on proprietary cloud platforms in such a way that being open source doesn’t make it portable.

I am interested in non-commercial open licensing as a new default I want to encourage for software developers, such as the Prosperity Public License or IndieCC.

And on the user agency side, I want to encourage collectivism: pool your time, energy, and resources to #BuildSoftwareTogether. Not as a “user”, but as an owner or member that wants to see a piece of software thrive.

For this collectivism, new tools like Open Collective exist. I have a handful of projects there running to bootstrap a few pieces of collective software myself.

Anyway, thanks Ton for the writing prompt. Don’t feel locked in!