03.17.20

Gemini version available ♊︎

A “Homemade” Software Movement

Posted in Free/Libre Software, GNU/Linux at 3:17 am by Guest Editorial Team

Guest article by figosdev

Homemade lemon cut

Summary: We are routinely encouraged to give up our identity — our software and our goals and even our communities get rebranded, as it were

If you are happy with the trajectory of Free software over the past year to 5 years, this article isn’t for you. If you think the Web isn’t bloated, broken and overly corporate — this article probably isn’t for you.

But if you are one of the many people I know who don’t feel great about the route Free software has taken, then here are some things to think about.

“If you think the Web isn’t bloated, broken and overly corporate — this article probably isn’t for you.”This article is inspired by Web browsers; They have a simple task when you think about it — they get files and either download or parse them. The more complex they are to parse, the more complex the browser becomes.

We have all kinds of complex plugins — whether they’re the old sort that stick a corporate blob in the middle of a page, or whether you can simply load a pdf with pdf.js, the functionality of the browser continues to pile on — and if you want to fork it, you have to compile the thing. But more than that, you just have this insanely complex application to fork.

I don’t think its necessary to rid ourselves of corporate software — it’s not at all as simple as that — corporations still control hardware, keeping up with any sort of compatibility will probably rely on working with them. Ridding ourselves of corporate software isn’t the goal here.

“I think we are routinely encouraged to give up our identity — our software and our goals and even our communities get rebranded, as it were.”Over time, we’ve given up too much of our identity, values and goals to someone else. Call it the developer cloud — because it’s just someone else’s company. Cooperation is great, but this is more about giving up the identity or goals of a project to something that has nothing to do with our software, or the reasons some of us create it — or like using it.

I think we are routinely encouraged to give up our identity — our software and our goals and even our communities get rebranded, as it were. We retain the same logos but everything else gets tweaked and fit to a more commercial purpose; sometimes to a purpose more aligned with a single company or organisation. Again, if you’re happy with that happening, you’ve got very little to complain about. But what about the rest of us? We get painted as impossible to please, but we were happy not that long ago.

Maybe 80% of the people using the software built up over the years are happy. 80% is my rough estimate of how much of our software is not now controlled by GitHub. If you can prove that it’s lower, please do! I’ve measured a few important repositories, and the ratio of about 4/5 keeps coming up. I’m pretty sure this article is going to speak to far fewer than 1 in 5 people. But it still matters — just maybe not to you.

When I think of software, I don’t think of the “Steve Jobs” point in its evolution; where some CEO takes it and makes it famous — and different. And shiny. And helicopter-parented by a company. I think of software in the stage where a few people are working together to create it, when its potential is still limitless.

“When I think of software, I don’t think of the “Steve Jobs” point in its evolution; where some CEO takes it and makes it famous — and different.”Some tools do gain sponsors and continue to evolve of the years — curl for example, has a long, interesting story. Given the enormous sponsorship it received recently, it’s probably going to be wrested away eventually. Like so many things, it’s on Microsoft’s GitHub; and has received so much money that the author didn’t know what to do with it.

It’s almost as if someone attached a note that said “Good luck — now you’ll have to make a foundation around this, whether you want one or not”. Will that foundation be like the one built for (then against) Linus Torvalds? Who can say? But if your project gets so much money that you don’t know what to do — pretty soon, you’re likely to meet people who are going to be helping you make decisions. And eventually, the decisions you make together may take you away from your own work, and your own work away from you.

Most of us don’t have to worry about that of course — curl is already famous. I am actually thinking about using it for a project that helped inspire this article. But now that so much of our software is mired within a single, ravenous leviathan, I thought it would be a good idea to make curl optional. My favourite feature (over GNU wget) is that curl can do the Gopher protocol. That used to be a feature of Mozilla too — then they removed it when somebody created a plugin. Then they probably dropped support for the plugin. Its the sort of thing that Mozilla does.

“There was a time when you could write a small Web browser.”And the Web! There was a time when you could write a small Web browser. Why can’t you now? Because so few of its features are really “optional” anymore. Gopher support? Yes. That’s optional. DRM? Aha… The web was vested with a yearning for freedom, but at one point Sir Tim decided that DRM was something we could tolerate. Sure, in the future of the Web, snippets of text could be as locked down as that damned ebook reader from Amazon. That’s not the Web anybody I know wants.

There are people trying to bring back Gopher, because it has less nonsense than the Web. They’re not going to replace the Web of course — but the biggest feature of Gopher (besides how easy it is to write your own client for the protocol) is that there is no DRM in the standard.

I’m aware of how few people are going to fall in love with Gopher. And personally, having given Gopher a good run (I even ran a server for a while) even I want more than that out of my online experience.

“I don’t like how ridiculous NoScript is getting (its design used the be very straightforward and text based) and I want it to be easier to create “plugins.””I know I have to use a Web browser — unfortunately. But what could homemade software do to make me happier? It could give me something that I could use for both Gopher, and other online access, that would make it so I don’t need the Web for as much of what I do online.

Yes, I use JavaScript. I also use NoScript, so for a lot of the stuff I do online, I don’t even want JavaScript. I don’t like how ridiculous NoScript is getting (its design used the be very straightforward and text based) and I want it to be easier to create “plugins.”

It’s not impossible to bolt JavaScript capabilities on to a new browser project. But none of the tools out there interest me really. All of them depend on me taking very complex pieces and trying to put them together in a complex way, only for the authors to abandon them or for them to change in some way that makes them useless to me.

Imagine that you have a glass, and a soft drink. Whatever the soft drink, it’s your favourite one. One day they stop selling bottles of your soft drink — now you still have a glass, but you can’t get the drink in a bottle anymore. You can only get glasses of your drink with ice.

“We aren’t ever going to make a browser “at home” that duplicates the functionality of Mozilla — and we don’t even want to.”You say “no ice” but the person isn’t listening. You bring a bottle but you have to funnel the drink into the bottle, and the ice tries to go everywhere when you do. Sure, you can eventually come up with a perfect solution to this problem — that doesn’t change the fact that last week, you simply bought a bottle. Then you poured it into the glass you wanted. Ice was not a problem.

To have to solve this problem again and again, keeping track of your new invention to deal with ice in a glass seems kind of ridiculous, when you never had to do that before. If you’re really the only person who hated this, that would be one thing. But you keep meeting people who also hate it, and point out that yes, these people are being unreasonable. We all know that they were never obligated to offer their drink in a bottle in the first place — and you have the recipe! You can just make your own.

But the fact that you’re now being called a “whiner” when you bring this up, and “a vocal minority” when one of the original goals of the drink was in fact to be available in a bottle — and none of this changed until the bottlers started receiving large donations from the people making the ice. Man, this just feels rotten.

“They just bundle too many things together — which leaves us relatively helpless.”But getting back to the browser. We aren’t ever going to make a browser “at home” that duplicates the functionality of Mozilla — and we don’t even want to.

But it would be fun to create software again, without a mandatory, top-heavy (and ever increasingly profit-driven, not really community-based but hijacked, co-opted community) process to decide whether you should be able to get a drink without ice, or in a bottle, or whether your browser must actually implement DRM to have that stupid, but coveted logo that says its compliant with whatever Sir Tim thinks is a good idea. Piss off, Sir Tim. Take your damned DRM and shove it.

The Web is far too important to just walk away. But we can make clients that parse the parts of it we want — clients that let us write plugins the way we want to — clients that are fully programmable and let us more easily filter whatever we like (yes, that’s going to turn into a legal problem sometimes, in some countries — as some plugin authors have revealed. But at least we don’t have to rely on some guy from Mozilla to maintain NoScript for this.)

“It’s increasingly impossible to change.”They just bundle too many things together — which leaves us relatively helpless. We have a community, but it’s run by corporate sponsors. We have the source code, we have the four freedoms, but the new design is increasingly difficult to study. It’s increasingly impossible to change. And there’s not much point in sharing software that we suddenly hate to use.

They won, but we can’t prove they won.

But it’s also a trick, an illusion of a sort. Because we rely on so much of what they now control, we can’t just walk away from what they have rebranded and reconfigured to make it increasingly not ours — and increasingly theirs instead.

Instead of forking our software, they’ve forked the user — and the user is us.

If we want control of our computing back, we will have to take it back piece by piece. Install their stupid client that uses more resources than the rest of our operating system (and application software) combined — but use it only for that JavaScript-only webmail, or even for that horrid video streaming platform. Maybe you can find or create a different client for that federated social network you use that doesn’t require a Web browser.

And instead of doing everything with a browser, maybe you can have a client that only loads what you want — that filters everything you want to filter — and that separates stuff to plugins when you want it to.

“All homemade software should be Free software, but not all Free software needs to be homemade software.”If it’s homemade, it’s going to have fewer features. But if it’s made for a small community — and the next time some corporation stops by and starts to take over your software, you can just pick it up — just like the Document Foundation did — and say “alright people, there are a few of us that aren’t going to let this happen. We’re leaving — feel free to join us.”

And that’s that. At least it means that your version of the software will stay true to its goals. And not the goals of some company you want nothing to do with, who would successfully hijack your project (like so many others) if you stayed. Only for the new version to drop features you love, add features you hate that aren’t trivial to remove — and for your project to move to Microsoft GitHub.

No, it’s better that those of us who want to — do something, even if it’s just a little bit. Even if it’s just a few of us.

Alexandre Oliva did this article very recently and I think it stands alright on its own. For some people, maybe this article adds to it.

“Not every bicycle needs to become a thorium-reactor-powered, 18-wheeler ice cream van. Most of the web didn’t need to become that either.”All homemade software should be Free software, but not all Free software needs to be homemade software. With that said, a Free software ecosystem where all software is as corporate as it is these days — sucks, frankly. Its more difficult to love than what we had a few years ago. Part of that is because we are sentimental and don’t want to change. But its also because the way we got here is largely dishonest, narcissistic and very, very corporate.

We should implement some of these features in smaller, simpler software. Let’s have some easy-to-maintain, easier-to-fork software tools again. Not every bicycle needs to become a thorium-reactor-powered, 18-wheeler ice cream van. Most of the web didn’t need to become that either. And hi to John Goerzen — forg is still nifty. Debian was nifty for many years as well.

Licence: Creative Commons CC0 1.0 (public domain)

Share in other sites/networks: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Reddit
  • email

Decor ᶃ Gemini Space

Below is a Web proxy. We recommend getting a Gemini client/browser.

Black/white/grey bullet button This post is also available in Gemini over at this address (requires a Gemini client/browser to open).

Decor ✐ Cross-references

Black/white/grey bullet button Pages that cross-reference this one, if any exist, are listed below or will be listed below over time.

Decor ▢ Respond and Discuss

Black/white/grey bullet button If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

DecorWhat Else is New


  1. Links 02/06/2023: Arti 1.1.5 and SQL:2023

    Links for the day



  2. Gemini Links 02/06/2023: Vimwiki Revisited, SGGS Revisited

    Links for the day



  3. Geminispace/GemText/Gemini Protocol Turn 4 on June 20th

    Gemini is turning 4 this month (on the 20th, according to the founder) and I thought I’d do a spontaneous video about how I use Gemini, why it's so good, and why it’s still growing (Stéphane Bortzmeyer fixed the broken cron job — or equivalent of it — a day or two after I had mentioned the issue)



  4. HMRC Does Not Care About Tax Fraud Committed by UK Government Contractor, Sirius 'Open Source'

    The tax crimes of Sirius ‘Open Source’ were reported to HMRC two weeks ago; HMRC did not bother getting back to the reporters (victims of the crime) and it’s worth noting that the reporters worked on UK government systems for many years, so maybe there’s a hidden incentive to bury this under the rug



  5. Our IRC at 15th Anniversary

    So our IRC community turns 15 today (sort of) and I’ve decided to do a video reflecting on the fact that some of the same people are still there after 15 years



  6. IRC Proceedings: Thursday, June 01, 2023

    IRC logs for Thursday, June 01, 2023



  7. Links 02/06/2023: NixOS 23.05 and Rust 1.70.0

    Links for the day



  8. Gemini Links 02/06/2023: Flying High With Gemini and Gogios Released

    Links for the day



  9. Links 01/06/2023: KStars 3.6.5 and VEGA ET1031 RISC-V Microprocessor in Use

    Links for the day



  10. Gemini Links 01/06/2023: Scam Call and Flying High With Gemini

    Links for the day



  11. Links 01/06/2023: Spleen 2.0.0 Released and Team UPC Celebrates Its Own Corruption

    Links for the day



  12. IRC Proceedings: Wednesday, May 31, 2023

    IRC logs for Wednesday, May 31, 2023



  13. Tux Machines Closing the Door on Twitter Because Twitter is Dead (for a Lot of People)

    Tux Machines recently joined millions of others who had already quit Twitter, including passive posting (fully or partly automated)



  14. Links 31/05/2023: Inkscape’s 1.3 Plans and New ARM Cortex-A55-Based Linux Chip

    Links for the day



  15. Gemini Links 31/05/2023: Personality of Software Engineers

    Links for the day



  16. Links 31/05/2023: Armbian 23.05 Release and Illegal UPC

    Links for the day



  17. IRC Proceedings: Tuesday, May 30, 2023

    IRC logs for Tuesday, May 30, 2023



  18. Gemini Protocol About to Turn 4 and It's Still Growing

    In the month of May we had zero downtime (no updates to the system or outages in the network), which means Lupa did not detect any errors such as timeouts and we’re on top of the list (the page was fixed a day or so after we wrote about it); Gemini continues to grow (chart by Botond) as we’re approaching the 4th anniversary of the protocol



  19. Links 31/05/2023: Librem Server v2, curl 8.1.2, and Kali Linux 2023.2 Release

    Links for the day



  20. Gemini Links 31/05/2023: Bayes Filter and Programming Wordle

    Links for the day



  21. [Meme] Makes No Sense for EPO (Now Connected to the EU) and Staff Pensions to be Tied to the UK After Brexit

    It seems like EPO staff is starting to have doubts about the safety of EPO pensions after Benoît Battistelli sent money to reckless gambling (EPOTIF) — a plot that’s 100% supported by António Campinos and his enablers in the Council, not to mention the European Union



  22. Working Conditions at EPO Deteriorate and Staff Inquires About Pension Rights

    Work is becoming a lot worse (not even compliant with the law!) and promises are constantly being broken, so staff is starting to chase management for answers and assurances pertaining to finances



  23. Links 30/05/2023: Orc 0.4.34 and Another Rust Crisis

    Links for the day



  24. Links 30/05/2023: Nitrux 2.8.1 and HypoPG 1.4.0

    Links for the day



  25. Gemini Links 30/05/2023: Bubble Version 3.0

    Links for the day



  26. Links 30/05/2023: LibreOffice 7.6 in Review and More Digital Restrictions (DRM) From HP

    Links for the day



  27. Gemini Links 30/05/2023: Curl Still Missing the Point?

    Links for the day



  28. IRC Proceedings: Monday, May 29, 2023

    IRC logs for Monday, May 29, 2023



  29. MS (Mark Shuttleworth) as a Microsoft Salesperson

    Canonical isn’t working for GNU/Linux or for Ubuntu; it’s working for “business partners” (WSL was all along about promoting Windows)



  30. First Speaker in Event for GNU at 40 Called for Resignation/Removal of GNU's Founder

    It’s good that the FSF prepares an event to celebrate GNU’s 40th anniversary, but readers told us that the speakers list is unsavoury, especially the first one (a key participant in the relentless campaign of defamation against the person who started both GNU and the FSF; the "FSFE" isn't even permitted to use that name)


RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

Recent Posts