Freedombone Blog

Freedom in the Cloud

Improving Notifications

The notifications system within Freedombone has been updated and can now send alerts for Epicyon DMs or replies and also will work with the Matrix app.

If you have Matrix installed then notifications will appear under a section called System Alerts within Riot. There is also a bug within Synapse such that if you close the Server Notices room then it won't be re-generated when a new notification happens and the only current way to fix it is to restart the matrix daemon or reboot the Freedombone server. So if you are using the Riot (web or Android) app remember not to close that room.

Progress on Epicyon

There have been a lot of bug fixes and features added since 1.0. Now there is support for:

  • Audio and video attachments
  • Multiple languages
  • Themes
  • Timeline showing all replies to your posts
  • Better display on mobile screens
  • Avoiding repeated follow requests from the same person
  • Automatic tagging of music posts

There is also now a dedicated website, although there's not very much on it other than basic instructions.

Epicyon screenshot with the hacker theme

The previous meta refresh on the web interface has been removed and update of the timeline is now a manual button press. This makes the system a lot more suitable for mobile since it doesn't drain the battery. Having a moving timeline was also annoying.

Now only posts by clearly identifiable users appear. That is, URLs with paths that include /users/username or /profile/username. This helps to avoid situations where previously the posts of blocked users could sometimes appear.

There is experimental support for authenticated fetch, which will be in Mastodon version 3. It's off by default, but even if turned on it doesn't make a large difference to the security because if you're not authenticated and not an approved follower then you already only get a limited preview of public posts and follows, and not the entire social graph. This kind of arrangement should limit the usefulness of the data to marketers and surveillance capitalists.

I notice that Mastodon is adding hashtag trends in version 3, but I have no plans to implement that in Epicyon. In my opinion trending or going viral are antithetical to the kinds of communities we ought to be trying to encourage. They're artificial incentives which tend to result in dysfunctional behavior and dubious economies, as seen on Twitter.

Deeds not Words

I've just returned from giving a talk about the Freedombone home server system at Manchester central library. Slides can be found here.

Before the event I was eating a sandwich in one of the parks and listening to nearby Hare Krishna buskers playing bongos, which was quite fun. Not many lyrics, but easy to learn.

Turnout this time was smaller than the previous year, but the venue was nice. It was also fitting to be giving a talk about public software in a place dedicated to keeping information accessible to the public.

Outside the library there is bronze statue of Emily Pankhurst amusingly standing on a chair giving a speech. The motto carved in the stone behind her says "deeds not words". I know what she means by that. You can engage in all manner of eloquent verbosity, but if it's not matched by corresponding actions then it doesn't amount to much. In earlier times there used to be a hacker motto of "show me the code". I don't see that written much anymore - even in the danker recesses of the interwebs - but it's the same kind of ethos.

There was an interesting talk about CSS which was quite relevant to my interests because the recent project which I've worked on called Epicyon makes extensive use of that for themes.

It's also a curious time to be someone doing Free Software. Reports from the Manchester group are that interest in "freedom related issues" such as software freedom, Open Rights Group and freedom of information has been in severe decline for some time. Perhaps there is a chilling effect from the ambient politics of reactionary populism and maybe the passing of the Snoopers Charter in 2016 was a devastating defeat for ORG.

And yet it seems like Free Software is more relevant now than it was decades ago. The problems around who has access to software and who controls it are a lot more tangible and the stakes are much higher. To paraphrase earlier sayings, either the public controls the software or the software controls the public. If the latter is true - and increasingly it appears to be - then we're really in a time of technology-enabled tyranny. Only deeds can even begin to do something about that.

Computing during Climate Crisis

Mastodon elephant holding a banner saying 'climate strike'

On a day of large protests about climate change around the world I'll add an update about my attempts to reduce electricity consumption.

At the beginning of 2019 I replaced my desktop machine with its 300W power supply and giant heatsinks with a Rock64 running Armbian (a variant of Debian). This reduced the overall electricity consumption from about 200W to 40W including the monitor, and when I turn the monitor off that goes down further to 10W. In tests my laptop also has a similar electricity consumption, although I typically use one or the other at any point in time (not both).

The desktop is still working well. I updated the Armbian version to one based on Debian 10 but apart from that the amount of maintenance needed has been small. There was a lightning strike which fried the USB3 to SATA converter cable which attaches to the SSD, and I then switched over to running on a surge protected plug. Fortunately those cables are cheap to replace and I probably got off lightly in terms of the potential damage.

Currently I don't do a lot of high intensity computing. Creating Freedombone disk images is about the most compute heavy task I do, and both the laptop and Rock64 can handle that. If I were a gamer playing graphics intensive games or training big machine learning models then I'd be in trouble, but fortunately I'm not. If I play any games at all it's very computationally undemanding and anachronistic MUD games in the style of GET LAMP.

So in terms of electricity use I now spend more on lighting or cooking or boiling a kettle than on computing. I think this is the way that things need to go if catastrophic climate change is to be avoided. My own efforts in the scheme of things are tiny and a consumerist type of approach can only have limited effects. To really seriously begin to reverse the damage the way that the economy works needs to change. Whenever I go for a job interview and ask if I can work 100% remotely - which is totally feasible for things like kernel or embedded systems development on small boards - they always refuse. That kind of attitude needs to change too. Less commuting means less pollution, and videoconferencing is also totally possible.

Thoughts on the Free Software movement

In the 2000s the challenges were mostly about the battle against Microsoft and its proxies. So there was a lot of emphasis on the details of lawyering work. Plus there was the crowdsourcing of the GPL version 3 license.

In the 2010s there has been less focus on lawyering and more on diversification to include people who are not bearded 20-something male computer science graduates from ivy league universities. Obviously more needs to be done, but watching the recent NextCloud conference I think we're mostly on the right trajectory.

Where do I think the Free Software movement should go in the 2020s?

What I'd like to see would be a campaign to create a worldwide guild of public coders. Maybe it could be called the Software Commons Guild or something like that. As an umbrella crafting organization the guild could have significant leverage against the Surveillance Capital companies who currently dominate the internet. Companies like Google, Facebook and increasingly also Microsoft rely on a lot of Free Software, and the withdrawal of support by a large public coding guild would impact their operations at a fundamental level.

Existing mentoring would be replaced by apprenticeships, and there could be new licenses which are granted once a company meets the guild's standards. So for example, companies might only be granted a license to use certain public code if they pass technical production process and ethical criteria for use of technology defined by the guild.

This of course would create yet another power structure, but at this point I think that's what's needed. Individual software engineers, no matter how clever or how ethical, simply don't have leverage against the megacorps - as evidenced by the recent Google walkout and its subsequent consequences, or attempts to unionize in other companies such as Kickstarter. Collectively as a guild perhaps they might be more successful and begin to turn around the numerous problems of the industry.

Going Audiovisual in ActivityPub

With some amount of wrangling, video and audio attachments now work in Epicyon.

screenshot showing embedded video clip

I've set the upper limit to 30M, which should be enough for short videos and podcasts. Supported formats are mp4,webm,ogv,mp3 and ogg.

One thing to keep in mind is that metadata isn't removed from these uploads, so if they contain any geolocation you might want to remove that manually beforehand. Whether metadata should be removed from media such as mp3 is debatable, since it might also be significantly useful. Perhaps that could be a configurable option.