free software

From Digital Cages to Cooperative Digital Cafes

Published by Anonymous (not verified) on Wed, 13/06/2018 - 12:03am in

Tags 

free software

In the late 90s and early 2000s, there was a wave of radical community servers, many of which fed into (or grew out of), the Indymedia network. Most of those veterans have sadly vanished from the web, and RiseUp, Framasoft, Comunes (OurProject), and CoActivate, are among the few still standing. As awareness grows of tech corporations like Microsoft, Apple, Google, FarceBook, and Amazon, putting their users in a digital cage, it’s great to see a whole new wave of cooperative groups coming together to replace these Web 2.0 prison canteens with ‘digital cafes’, like CommonsCloud, Disroot, and Social.coop, which I’m starting to get involved with.

A digital cafe (or ‘Open App Ecosystem‘) is a community of users and hackers providing themselves and each other with web services like social media (social networking, open publishing, or both), and sharing the costs. Since they’re doing many of the same things, rather than reinventing the wheel by writing all their software from scratch, they use a range of free code software developed by other groups. Sometimes they donate towards the financial costs of the peer production project that develops the software they use, and in other cases they have the skills and the time to contribute back to the project.

Social.coop began as group of members who set up a cooperative to share the costs of a site running Mastodon, a federated microblog server. Social.coop users can interact not only with each other, and with users on other sites running Mastodon (”instances”), but they can also interact with users on any site connected to a larger “fediverse” of federated social apps. The software makes these interactions across the fediverse possible by using common standards for exchanging data between social sites, initially using an older standard called OStatus. More recently a new standard called ActivityPub was published by the W3C (World Wide Web Consortium), the body that maintains the official standards for HTML, and everything else about how the web works under the hood. ActivityPub was the final output of W3C’s Social Working Group, which has now been replaced by the SocialCG (Social Web Incubator Community Group).

Social.coop depends on the work of all these other organizations in different ways, to keep their digital cafe running. But what’s the nature of the relationship between a cooperative running a digital cafe, and the groups maintaining the software they use? Does their sustainability depend more on making sure the project developing Mastodon has good governance? Or working on ensuring the reliability of their own servers, tweaking the software to serve member’s specific needs better, and perhaps adding new services, to help attract more members who can help reduce the costs per member?

You can’t have a cafe without a reliable electric and gas supply to the kitchen (the “back-end” of the server that users don’t see), and good mood lighting so people can feel relaxed but still see what they’re doing (UI or “User Interface“). But you don’t build a successful cooperative cafe by focusing on the internal politics of the energy utility, or the lamp shop. You focus on building your membership / customer base (users), and your collective capacity to provide them with good coffee, good service, and good food (UX or “User eXperience“).

If your energy supply becomes unreliable, you switch providers. If a coop-owned energy supplier emerges, great, switch to that. #ForkOffTogether could be that, and if people want to pitch that to them, go for it. But we can’t say for certain exactly which software they’re going to fork yet. Pleroma and Hubzilla are already options for ActivityPub server. Of these two existing, ready-to-use ActivityPub servers, I would say Hubzilla’s community probably has the closest overlap of values with social.coop. IMHO both their back-ends perform better than Mastodon’s Ruby-on-Rails engine, but other options continue to emerge (like Pylodon).

It’s the same with the lamp shop (UI). At present social.coop happens to be buying energy and lamps as a bundled package from Mastodon. But we’re not stuck with either, and we don’t have to get them from the same supplier at all. There are already a bunch of other lamp shops around, whose lamps can plug into the same power sockets (server-to-client API) that Mastodon uses. These include Pinafore (which I’m using these days and loving), and Halcyon, which is modeled directly on the look and feel of the birdsite, so fediverse sites who use that will have the minimum transition pain for refugees from there. Other lamp shops will emerge, and some of the existing shops whose lamps use different power sockets (eg Qvitter) might become compatible in the future. Hopefully, in a year or two, everyone will be using the same power sockets and plug standard (ActivityPub server-to-client API), so all lamps will work with all electric suppliers.

In a digital cafe, the energy supply is the maintenance crew’s problem (tech working group). As long as the lights stay on, the rest of the members don’t have to care about how they’re powered. The lamp situation, on the other hand, is something the members/ customers have to put up with while they drink their coffee. Decisions about which UI options social.coop offers need to be made by the membership, within the range of options that can technically work right now. Keep in mind that members can also get takeaway coffee (using a portal like pinafore.social to connect to their current instance), so they do have lighting options beyond what the tech group can set up and maintain right now.

The most important thing, the thing that *isn’t* a distraction, ever, is the coffee, the service, and the food. If we don’t get the UX right, it doesn’t matter how health or unhealthy the workplace is down at the energy company or the lamp shop, because we won’t keep the digital doors open long enough for their long term survival to matter. I love to geek out on organizational structures too. I get it. If that’s your thing, by all means go help the #ForkOffTogether folks become a cooperative energy supplier that social.coop can buy from (if they’re reliable suppliers). I totally endorse that.

Clear as mud? I may have over-extended the cafe metaphor somewhat, and as the old saying goes, no metaphor bears close examination. Feel free to hit me up about what I mean by this or that on the fediverse.

Free Code OS Notes Updated - Trisquel 8 Coming Soon

Published by Anonymous (not verified) on Mon, 09/04/2018 - 7:59pm in

Today I spent a bit of time updating the Disintermedia page on free code OS for desktop use. I reorganised the content a bit so it’s easier to browse, and moved a few discontinued distros into the appropriate box in the summary table. There are a few distros I’ve tried since I last updated that page, like LMDE and PureOS, and a few more I’d like to test drive, like the new version of Heads (Dyne’s answer to Tails). So keep an eye out for more updates, hopefully soon.

Trisquel 8 is nearly ready for release, so I’ll be testing that this week. Watch this space for the cliff notes. For now, my everyday OS is still Trisquel 7 (based on Ubuntu 14.04), running on Bishop, a small laptop that’s almost a decade old. It’s working fine, now that I’ve maxed out the RAM (now 2GB, wow!), and replaced the internal disc with an SSD (Solid State Drive). To be honest, the SSD made much more difference to the performance, and it doesn’t hurt that I’ve almost doubled the storage space too (from 140GB to 240GB), even though I bought a smaller, cheaper SSD. If you are trying to keep an old laptop in use, I highly recommend getting yourself an SSD over buying more RAM.

Why Software Freedom Matters to Web Users Too

Published by Anonymous (not verified) on Thu, 05/04/2018 - 3:20am in

Every now and then, I contact the developers of an interactive website I’ve stumbled across to ask them where I can find their source code, and under what free code license(s). I’m usually asking because their software is clearly using some free code components imported from other projects, so I believe they have a moral obligation to return the favour, even if they’re not legally obliged to.

Their reply emails often focus on how likely it is that anyone would want to re-use their source code, and how that might affect their project. That’s understandable, but I’m asking for reasons I consider to be much more important. Here’s how I responded to one such email, doing my best to explain my concerns clearly, but also to write in a way that wouldn’t come across as pushy or unfriendly.

Whether or not anyone would want to re-use your code is an interesting question, but it’s not my primary concern here. What programs you choose to run on your computing set-up, and whether they respect your freedoms, is none of my business. But when I allow programs to run on my system, I want to know that those programs respect my freedoms.

Since I can’t even log into your site without allowing it to run JavaScript programs on my system, I want to know that the source code of those programs is publicly available, under a free code license. If that’s not the case, for all I know I could be exposing myself to the next FarceBook, and I’m not willing to do that, nor to recommend a site to others if that’s the case. This situation is discussed in more detail in as essay called ‘The JavaScript Trap‘.

As a bonus, when source code is publicly available, it can be audited for security flaws and other bugs by the tech community (many eyes make bugs shallow and all that), patches submitted to improve it, and so on. And yes, it’s possible that someone else might benefit from not reinventing the wheel, by re-using some of your code, just as you’ve done with other people’s code. But that just means helpful bug reports and patches are more likely, which saves you work, and improves your software. It’s a win-win.

If you decide that you’re up for this, I highly recommend joining the Open App Ecosystem group on Loomio. There are people involved from a number of different free code web apps, and it’s good place to chat about how to make inter-operation work smoothly (common protocols, standards etc). For example, Loomio itself is a decision-making app, and I can definitely see some potential benefits in being able to embed [name of project] elements in Loomio discussion threads.

As you can see, I don’t shy away from making a case for software freedom as a principle. But I also make sure I talk about the potential benefits for them, and invite them to become involved in the open source community, within which free code is nurtured. When we share, we create abundance, and being welcomed into communities that enact that principle is one of the best ways to encourage people to start doing the same.

Could Web Forums Be Federated With ActivityPub?

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

Tags 

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 ;)

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:

Organisations

Sites

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

People

Reading

Viewing

[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.

Essentials

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.

Java

  • 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…

Mobile

  • Mobile hardware and software is a privacy/security nightmare. You can at least not make the situation any worse than when the device came out of the box. F-Droid is a huge collection of free software for Android devices. Install the F-Droid app, and from there you can browse/search the collection and install the apps you need, knowing that there is complete and corresponding source code available for each, so the developers can't hide anything nasty behind a wall of copyright.

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…

Utilities

  • 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.

Web

  • Most websites send executable code (rather than just the document you asked for) to your browser. That can provide useful functionality, which is fine (with qualifications) if you trust the source, but many sites also send programs from third parties whom they trust (or just don't much care about), while you are unaware of this. At SCU, your activities on the university-mandated ed-tech shambles that is Blackboard are shared not only with Blackboard Inc., but also with another half a dozen companies that provide services to the university and/or Blackboard Inc. (user statistics, caching or load balancing, and so on). These services are provided at a free or heavily subsidised cost, on the business model of surveillance capitalism. It is morally outrageous to require that students submit to this, but hey, every university does it (except maybe the good ones). The Electronic Frontier Foundation's Privacy Badger web browser extension is a reasonably user-friendly way to control which of these programs get downloaded and executed on your computer, and consequently whether a third party is able to track your use of any particular web site.

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.

Graphics

  • 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.

Qualtrics

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.

Deprecated

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.

QuickTime

Ah, memories.

A Very Brief Introduction to Free Software

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

Introduction

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.

Definition

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

"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