free software

Could Web Forums Be Federated With ActivityPub?

Published by Anonymous (not verified) on Sat, 17/03/2018 - 4:12pm in


free software

Mailing lists and web forums are both text media, supporting branching conversations. The only difference is the method of delivery and reply (email vs. web). As mailing list/ forum software continues to be developed, the distinction between the two is breaking down, because it makes sense to use a package that allows people to participate through either email or web interfaces, as they prefer.

Many modern mailing list server packages (like GroupServer) support forum-style subcription management, message searching, and direct replies. Many modern web forum server packages (like Discourse) allow for email delivery and replies. Loomio enables text discussions through both web and email, as well as decision-making using a variety of poll types (so more suited for teams than casual, open-ended discussions).

In response to a proposal on the Trisquel forums, I was thinking it would make sense to have a unified set of software freedom forums, on one website, with a range of topic-based forums, and help forums for specific projects (like libre distros, user applications, server packages, and so on). The question is, how would we assemble a critical mass of people who have time to admin, moderate, and participate? How would we make decisions about where to host? Which software to use? What to call it?

Then I thought, maybe if we want to get really ambitious, we could try to create a federated set of forums. Could ActivityPub, Zot, or another federation standard(s), be used to federate multiple forum packages on multiple hosts so that people can read, join, and post to a Trisquel Users forum from any one of those hosts? Could this help to solve the problems of community fragmentation (different groups silo’d on different hosts), without trying to herd everyone onto one host?

For now, the Trisquel forum admins have solved the problem of general software freedom discussions being held in the forum intended for helping Trisquel users having problems with installing or using the distro, by setting up a new General Free Software Talk forum on their boards. All welcome, don’t feed the trolls (we have the Troll Lounge for that ;)

Ongoing Developments in the P2P Food Commons

Published by Anonymous (not verified) on Wed, 15/11/2017 - 9:28pm in

I was please to see a discussion on ‘P2P food system as a major environmental and social solution?‘ started by Robert LaRocque on the Loomio group of the CommonsTransition group. There are *so* many great resources on the transition back to a decentralized, sustainable food supply, thanks especially to folks like the biodynamics and organics movements, the permaculture and slow food movements that grew out of their compost heaps, and the transition movement that grew out of permaculture.

Firstly, check out the Localizing Food Project, spearheaded by one of my permaculture teachers, Robina McCurdy of Earthcare Education Aotearoa. Robina travelled the length of this country connecting with local food projects, and is producing a series of crowdfunded documentary films covering different aspects of them. The latest one is ‘Edible Paradise - Growing the Food Forest Revolution‘.

Secondly, have a browse through Appropedia, a crowdsourced mediawiki site for appropriate technology, PracticalPlants and Plants for a Future. which are the same thing but for articles about plants. There’s also OpenSourceEcology, a development project for appropriate tech based at FactorE Farms. Also WikiHouse, it’s not about food, but like OpenSourceEcology it does demonstrate the way the crowdsourcing and human-centred design principles behind wikis and free code software can be applied to creating new stuff on the physical layer.

Thirdly, it was great to see from the responses in the comments that there are Open Food Network folk participating in the group too. I had a great conversation about the OFN vision when I met OFN co-founder Serenity Hill at the first Open Source//Open Society. The P2P food network/ app idea is already being tried by folks like OFN, and here in Aotearoa, BuckyBox (now fully free code), and OOOBY (Out of Our Own Backyards), see OOOBY founder Pete Russell’s TEDx talk on ‘Hacking the supply chain‘ (sadly I believe OOOBY’s platform remains proprietary). I’m collecting notes about food coop and box scheme software on the Aotearoa Permaculture Network wiki.

Finally, a bit of shameless self-promotion, I wrote a paper for the FreeCulture2010 conference called ‘Free to Know or Free to Own? Convergence of Free and Slow Culture in Global Relocalisation‘. It looks at the parallels and points of overlap between the original ecology movement and what I sometimes call ‘digital ecology’, the worlds of free code, online commons, and green tech.

Making Community Hosting Reproducible

Published by Anonymous (not verified) on Sun, 08/10/2017 - 3:09pm in


free software

As a street scientist, I think a lot about making things reproducible, and for the same reason, identifying the limits to that. Carefully reproducing a resource model (I prefer this term to “business model”) allows us to distinguish models that work as social design patterns, from what one-offs that depends on unique local/ personal factors. Also, having resource models that are clearly documented and reproducible helps us scale up successful experiments through multiplication, rather than centralized growth.

The Enspiral Handbook is an example of documenting a resource model. Having documents like this available helps people distinguish a commons-based coworking space from a venture capital controlled “startup incubator”. This is particularly important for helping groups of people trying to create commons-based coworking spaces (reproduction through multiplication), giving them tactics and strategy they can use to avoid becoming an outsourced adjunct of the “startup” system. Established coworking projects like Enspiral can also benefit from studying each others’ documentation in the same way.

Another kind of resource model I’d like see become more reproducible is hosting organisations like RiseUp, OpenMailBox, and Disroot, the digital equivalent of the bricks-and-mortar coworking spaces. We need more of these organisations, so viable, community-based replacements for The Stacks can be available to more people who aren’t ready to learn self-hosting (some people may never be ready for UserOps). Documentation of exactly what software they use from kernel up to server applications (and whether that sits on bare metal or a VM or shared hosting) would cut down the testing time required to get a new hosting org up and running. Another way of achieving a similar thing could be distributions of GNU-Linux optimized for community hosting, something like scaled up version of self-hosting distros like FreedomBox, FreedomBone, or YUNOHost.

Encouraging Not-For-Profits Running Web Services to Respect Software Freedom

Published by Anonymous (not verified) on Sat, 17/06/2017 - 5:19pm in


free software

This is a generic version of an email I recently sent to a not-for-profit organisation that runs a web-based platform for community exchange. Feel free to use it as a model for encouraging other not-for-profits to use and promote free code software.



I recently received an email from [insert here the name of a not-for-profit running a gratis, web-based service] asking for a monetary donation. I really value the service, and I’ve [description of how I used the service] through your website on many occasions. However, as a point of principle, when a not-for-profit’s primary activities are software-based, I only donate to them if they respect the software freedom of the people who use their services.

There are two elements to this:

1) using only free code (or “open source”) software to provide the service

2) providing a page linked from the front page of the website, listing the various free code packages used to provide the service, including code developed by other groups, and code developed by the group providing the service.

I’ve looked around a few times, but there’s no indication of what software it uses. Adding such a page (eg as a technical FAQ) would satisfy point 2). I’m guessing that most of the software you use to run the service is free code. In order to satisfy point 1), if you have proprietary dependencies I’d be happy to help you find free code replacements for them, and if you have internally developed code that hasn’t been released as free code under a software freedom license yet, I’d be happy to help you do that.

This guide provides more detailed information about these issues:

In the meantime, keep up the good work.

Warm regards

Danyl Strype

Testing Free Code Applications for RealTime Chat

Published by Anonymous (not verified) on Sun, 04/06/2017 - 12:47pm in

I’ve been collecting information on free code chat software for a while now as part of research for the Core Us project. If anyone is keen to join an organised testing team and have a regular online chat session, using different chat systems, please get in touch. Today I’ve been looking into which chat systems might be the best options for integration with a Loomio, a web-based deliberation and decision-making platform.

My evaluations

 Etherpad: Text chat only. Collapsed until clicked. Once clicked, appears as a smallish GoogleChat-alike box in the bottom right of the screen. Can be expanded into a sidebar, or collapsed back down. Demo of Jitsi Meet/ Videobridge. No login required on the demo site, just create a “room” (eg, and anyone who enters the URL for that room automatically joins the chat. I recently used it for a one-to-one, voice-only chat. Other than a tiny bit of lag, which was only mildly disruptive, the experience was good. Supports text chat, (collapsible sidebar), voice, video, screen-sharing, text editing using an integrated Etherpad. A livestreaming output allows a 2-way chat among a small group over people to be streamed to a larger, listen-only audience (akin to Hangouts on Air), and presumably recorded for later viewing.

 MetaMaps: chat is in the form of a sidebar, collapsed until a button on the side of the screen is clicked, collapse back with a second click. Each map has its own chat ‘room’, and text comments made on a map persist in the chat box for that map between sessions. Supports voice and video, not yet tested. A bit harder to evaluate without setting it up on your own server, because they’re currently in invite-only beta.

Mumble / Murmur: Mumble clients are available for all major platforms, but the default interface is basically like IRC plus voice (no video), and may be confusing for people who aren’t used to IRC. Each Murmur server can host many rooms (rooms within rooms). If you are in the same ‘room’ as another user, you can hear each other, and it easily supports large numbers of users in the same room. Mic can be always-on, but I strongly suggest using push-to-talk, which reduces background noise, feedback, and bandwidth use. Plus, the user’s avatar visibly changes when they push-to-talk, giving some sense of who is waiting to speak. A WebRTC stack like Jitsi Meet, but only supporting the bare bones text/ voice/ video chat. The interface is much less polished than Jitsi. Would be interesting to compare the call quality between the same two people, on the same equipment and network connections. Palava also seems to be a patchwork of code in a bunch of different languages, whereas Jitsi (and Etherpad) are pure Javascript, and might be easier to integrate with a RoR application. A text chat server with multiple ‘rooms’. Basically a prettier, federated, web-based version of an IRC/ Mumble type interface,  but using the Matrix protocol. Also supports file sharing. Has annoying no-reply email notifications turned on by default, but you can unsub from the bottom of each email, and the notification control in the Settings is pretty fine-grained. Overall pretty similar to RockChat (but without the WebRTC voice/ video extensions), and I imagine pretty similar to MatterMost, as they are all basically free code Slack-a-likes.


Process of elimination

Trying to re-engineer a system expressly designed to be P2P chat seems like a fools errand, especially when those P2P tools are the various parts of Tox, an outgrowth of 4Chan with a tumultuous history, and somewhat consistent development progress. Ring is a more promising P2P chat project that recently joined the GNU Project, but it’s still in beta, and voice/ video conference calls are still bleeding edge. It doesn’t seem like there is protocol support for XMPP (plus MUC and Jingle), which may be a smoother way to handle conference calls (although maybe less secure), but adding that would be a huge engineering challenge.

Re-using code that’s designed for the web is probably simplest approach. Of the Slack-a-likes, Riot is probably the most interesting because it can federate with Matrix protocols, but as a consequence, it’s probably also the most bleeding edge. Besides which, federation is fairly low down the priority list for integration with a group-based app like Loomio (or Crabgrass, also RoR), which doesn’t currently support any kind of server federation. The ideal candidate would be a module that’s intended for adding chat features to a web application, written in languages that work in nicely with RoR.


Shortlist for possible Loomio integration

  • Etherpad is pure Javascript, and adapting the chat box modules of their code might be a way to add a collapsible, text-only chat box to Loomio. This might be a good experimental first step, as its likely to introduce fewer bugs than a chat box with voice and video too.
  • MetaMaps is a Ruby on Rails app, like Loomio, so it may be possible to add a similar chat sidebar to Loomio using the same modules MM chat depends on, or if necessary, by modularizing those parts of the MM code. This might be a good experiment #2.
  • ticks a lot of the right boxes. A self-hosted version of their stack could be set up alongside a Loomio server, with rooms sharing the same namespace and access permissions as Loomio groups and subgroups, and the same authentication layer. This would provide a full-featured live collaboration environment, including collaborative text drafting with the Etherpad integration, which is currently a missing feature resulting in a lot of Google Docs. It’s a complicated stack though, with a lot of moving parts, and some careful thought would have to be given to how to integrate the two interfaces smoothly.
  • Mumble: Building a web client for a system server designed to work with desktop clients can work (eg webmail and web-based IRC and XMPP clients), but this would be a major re-engineering job with no certainty of success, and using Mumble for a text only chat feature would certainly be overkill. A minimal web GUI that uses a Murmur server as a back-end for voice conference rooms, obscuring the fiddly business of connecting to a server and navigating through rooms, would make it much easier to use, and would most likely scale better than WebRTC. Underneath the GUI, Mumble rooms could be associated with Loomio groups, and rooms inside each rooms associated with subgroups. This could be a long term solution, but would take a lot of building.

    The Politics of Technology

    Published by Matthew Davidson on Fri, 24/02/2017 - 4:03pm in

    "Technology is anything that doesn't quite work yet." - Danny Hillis, in a frustratingly difficult to source quote. I first heard it from Douglas Adams.

    Here is, at minimum, who and what you need to know:



    • Boing Boing — A blog/zine that posts a lot about technology and society, as well as - distressingly - advertorials aimed at Bay Area hipsters.




    [I'm aware of the hypocrisy in recommending videos of talks about freedom, privacy and security that are hosted on YouTube.]



    Free software for students

    Published by Matthew Davidson on Wed, 16/11/2016 - 12:53pm in

    Pretty much all universities maintain a list of free-as-in-gratis software that they recommend students use. Very little of this is free-as-in-freedom software. There is no technical reason why most computer users should ever have to use proprietary software. Some users simply aren't aware of the drawbacks and dangers of proprietary software, while others are compelled to use proprietary software by institutions (their employer, etc.). It is vitally important that educational institutions do not compel, or even encourage, the use of non-free software, for many reasons.

    The following list was initially based on the list of software Southern Cross University recommends their students use. I've supplemented this with other software I've found useful, and removed some items that solve problems that virtually nobody has these days (such as running Adobe Flash applications). Let me know if you've any suggestions.


    Software most students will find useful.

    Audio players

    • Southern Cross University recommends iTunes, which fundamentally is spyware. However,
    • SCU also recommends VLC media player, and I would as well! According to Wikipedia, it runs on "Windows, macOS, [GNU/]Linux, BSD, Solaris, Android, iOS, Chrome OS, Windows Phone, QNX, Haiku, Syllable, Tizen, OS/2"!
    • I use Totem for playing single audio/video files, and Rhythmbox for organising my music collection. These are only available for GNU/Linux (and other Unix-like OS's).
    • gPodder is a pretty nice podcast downloader/organiser for GNU/Linux, OS X, and Windows.
    • Suggestions, please…

    File archiving/compression

    • Southern Cross University recommends 7-zip, which I've used and recommended in the past. Runs on Windows, OS X, and GNU/Linux (though I use tar and gzip from the command line, or the GNOME front end to these). I don't recommend using 7-zip's own format for any important data you want to preserve for posterity. GZIP (or TAR and GZIP for multiple-file archives) is the most cross-platform and future-proof option, IMHO.


    • Most of Java is free software, though some components are proprietary.
    • I use IcedTea, part of the GNU Classpath fully free software Java reimplementation, to run Blackboard Collaborate, and it works fine (that is to say, any problems can safely be attributed to Blackboard Collaborate). Only available for GNU/Linux.
    • Would like to hear from anybody better informed than I about fully free software Java options for other platforms…

    Office Suite

    • By virtue of its feature-completeness, LibreOffice is pretty much the only game in town. I rarely used this kind of software before attending uni, and that's where 99% of my frustration with it lies. I've not found anything I've been required to do in three years of uni that it cannot accommodate, though I suppose Microsoft Office power users would face considerable migration strain. Runs on GNU/Linux, OS X, Windows, and even has a document viewer for Android.

    PDF readers

    If I had a penny for every time I'd heard PDF referred to as "Adobe Acrobat format"…

    PDF writers/converters

    • Southern Cross University recommends CutePDF Writer, which has been found in the past to install adware/spyware. Don't touch it with a bargepole.
    • Many free software applications, such as LibreOffice and Mozilla Firefox, are able to export to PDF format without requiring additional software.
    • Suggestions, please…


    • KeePassX remembers your passwords so you don't have to. Stores them in an encrypted file. Vastly preferrable to SCU's recommended (indeed practically enforced) solution: synchronising your passwords across multiple remote services! KeePassX runs on GNU/Linux, OS X, and Windows.

    Nice to have

    More specialised or advanced software.

    Audio/video editing

    • Audacity is a multi-track audio editor for GNU/Linux, OS X, Windows. A friend and I had a podcast for a while, so I used this all the time for cleaning up audio, and mixing elaborate sound effects from samples. It's brilliant.


    • Dia is a diagram (flowcharts, etc.) creation program for GNU/Linux, OS X, Windows.
    • The GNU Image Manipulation program (GIMP) is a raster (bitmapped — photos, and so on) graphics editor for (according to Wikipedia) "[GNU/]Linux, OS X, Microsoft Windows, BSD, Solaris, AmigaOS 4". I don't do a lot of image editing, but I've depended on it for about 20 years, and have never once found myself wishing I had Adobe Photoshop.
    • Inkscape is a vector (line art, logos, diagrams, etc.) editor for GNU/Linux, OS X, Windows.
    • Dia, the GIMP, and Inkscape all export to PDF, and the latter two do a pretty good job of importing from PDF.

    Reference management

    • Bibus is a reference manager for GNU/Linux and Windows. It imports metadata in all the usual formats (Bibtex, etc.), though I've found it pretty poor in automatically generating references you can copy and paste into a list without manually tweaking. I find it principally valuable as a simple searchable database of stuff I can vaguely recall reading, but can't remember where. It has some functionality for hooking into LibreOffice and Microsoft Word, but I've not tried that. It's also unusual in that it doesn't try to hook you into using some proprietary web service, as most other reference managers do, so it wins on privacy.
    • Unpaywall is a web browser extension for Firefox and Chrome which locates legal, freely available verions of paywalled journal articles, should they exist. Helps you avoid either your institution's clunky proxy system or [*cough*] informal alternatives.

    Scientific/statistical calculator

    • Speedcrunch is an intuitive scientific calculator for GNU/Linux, OS X, Windows.
    • Qalculate! (you can tell it's fun by the exclamation mark in the name) is a plotting calculator that also has a lot more functions (including statistical functions) than Speedcrunch, though to my mind it's rather clunky to use. Runs on GNU/Linux, and a third party has contributed an OS X port.
    • For statistical functions lacking in LibreOffice, and more heavy-duty number-crunching, GNU PSPP is excellent. It's a free software replacement for SPSS for GNU/Linux, though apparently you can get it to compile and run on OS X, if you're the sort of person who doesn't find that too intimidating.

    Help wanted

    Products that I've never had a reason to find free equivalents for. Suggestions appreciated.

    Adobe AIR

    A web app development environment. Possible alternatives.


    A proprietary online survey platform. I was a web developer in a former life, so I would use (and indeed have used) my own custom-built Drupal site to conduct surveys. I realise this is not a practical option for most students. The best solution for most would probably be a third-party platform licenced under the GNU Affero General Public License.


    If you still need any of these, I'm very very sorry.

    Adobe Flash Player

    There used to be a number of free software alternatives, but as Flash is a dead technology, replaced by superior native web technologies, these projects appear to have died as well. While waiting for the corpse to be formally pronounced dead, install the HTML5 Video Everywhere plugin for your web browser of choice, and you can disable (and preferably uninstall) and forget the blasted thing.

    Adobe Shockwave Player

    Another superceded technology.

    Microsoft Silverlight

    A development/runtime platform for .NET applications. Not strictly obsolete, since .NET developers do perform the useful service of giving PHP developers somebody to look down upon.

    Microsoft Security Essentials

    An oxymoron in more ways than one.


    Ah, memories.

    A Very Brief Introduction to Free Software

    Published by Matthew Davidson on Tue, 13/11/2012 - 4:51pm in


    A lot of software is published under licenses that restrict your freedom to do what you want with it. Unfortunately, the widespread use of these restrictive licensing terms coincided with the widespread adoption of personal computers, so many people don't see the restrictions as anything unusual.


    A program can be considered free software if it is distributed under conditions which guarantee the user:

    • The freedom to run the program, for any purpose
    • The freedom to study how the program works, and adapt it to your needs
    • The freedom to redistribute copies
    • The freedom to improve the program, and release these improvements to the public

    Free as in Freedom

    In general use, the word free has two possible meanings; "free from restrictions", or "free from monetary cost". In the context of "free software", it is the first of these that applies.

    It is possible to sell free software, and it is also possible to acquire software at no cost which does not meet the above criteria for free software (such software is often called "freeware"). As a practical consequence of the four freedoms above, it is generally possible to acquire copies of free software at little or no cost, but low cost is only one of the benefits of freedom.


    "Copyleft" is a technique employed in some free software licenses to ensure continued freedom by the imposition of one restriction. If you redistribute copylefted free software or software derived from existing copylefted free software, you must do so with no additional restrictions.

    That is, you can't take copylefted free software and redistribute it under a non-free license.

    Open Source

    In 1998, a number of prominent members of the free software community began applying the term "open source" to free software, in the belief that it was a less ambiguous term which might encourage wider adoption of free software, particularly in the corporate world.

    While this has undoubtedly been the case, the term "open source" is not without it's own ambiguities. These ambiguities, along with the open source movement's emphasis on the practical benefits of collaborative software development rather than freedom, have allowed some unscrupulous companies to imply that their products are "open source" simply by making the source code of their software available in some way, even if the precise distribution terms of the software do not meet either the Free Software Definition, or the Open Source Definition.

    Because of this, and because we believe that freedom is desirable in itself, we prefer to use the term "free software".

    Further Reading