I’m a Free Software vegetarian, meaning I don’t use proprietary software. In the same way a vegetarian won’t eat meat, even when it is really good. My day job is to further forge federation, to allow forges to communicate with each other. To enable a developer to file a bug from the comfort of their forge even when the software project is located in another forge. I write software daily, run online services, fix problems sent my way by the monitoring service watching over services running in production, answer support requests, take an active role in the well being team and try my best to create an inclusive environment where diversity is cherished.
As can be expected, I’m often in a difficult position when trying to communicate or work with other developers because the easiest path requires the use of proprietary software. For instance I may have to send a patch via email to contribute to a project hosted on GitHub, and it will take a lot longer to be merged.
I’m however very happy to live in a universe where only Free Software exists. I can do things that would not be possible if proprietary software was around and I think every Free Software project deserves the same amicable environment. A universe made of a constellation of Free Software forges, each populated by hundreds of projects where thousands of developers work together. Everything there is grown locally and organically, in a way that would not be possible in a gigantic forge populated by millions of projects and tenths of millions of people.
Continue reading “Hostea: a seed to create a constellation of Free Software forges”
In the world of Free Software some of the most treasured values are sharing and cooperation. When an idea emerges it is not uncommon to share it publicly and that’s what Aravinth and myself did a few weeks ago. Our primary motivation was to create a sustainable online service based on Free Software. Although there are not many examples to follow the technical and ethical part of the problem only took us a few hours to crack: this is what we do. But the marketing part of the equation turned out to be well above our paygrade.
Continue reading “The inconclusive story of four failed project offers”
When an organization asks me about Gitea, I would like to direct them to a provider where they can rent an instance and just use it, in the same way they can go to https://discourse.org for a forum, or https://nextcloud.com for storage. Instead of waiting for that to happen, Aravinth and myself decided to do something about it, in a way that is in line with our shared values: transparency and Free Software.
After doing some research we found counter examples that showed the pitfalls to avoid. GitLab because its business model heavily relies on selling proprietary licenses. CiviCRM because setting it up is complex and requires training: users can’t figure it out on their own. Gitea images provided by Digital Ocean because they do not include security upgrades. MySQL configured and run by AWS because of the vendor lock-in that makes it impossible to self-host.
Continue reading “Project plans for a hosted Gitea online service”
During the year 2021 I worked on grant applications to fund my work on Free Software and published everything in public, down to the last detail. All the drafts and discussions that led to the document submitted to the organization managing the grant, the contract that was signed after the grant was accepted, the reports submitted for milestones etc. It turns out to be unusual: one can hardly find any organization with such a radical transparency.
Continue reading “Radical transparency and funding”
Earlier this year I applied for funding: a call was opened by the European Union and someone told me it was worth a shot for a project related to software forges. My lack of experience writing grant applications was a handicap but I went ahead anyway. I asked a friend if he would agree to apply with me because I felt it would increase the chances of success. I soon discovered that there was no example of grant applications to get inspiration from. Although people and organizations share such documents in private, within their own network, they are shy about publishing them for everyone to see. This was a handicap to get started. In the spirit of sharing, I then decided to be 100% transparent about my own work: not only by publishing the drafts of the grant application but also the discussions with everyone involved.
Continue reading “On transparency, funding and efficiency”
In march 2021 the libreboot project was taken over by one of the core developers and went from a democratic governance to being controlled by a single person. In July 2021 the same happend to the misskey project. Such a “coup” is a bug in how a democratic project is setup: it should not be possible for a single person to take control of the entire project. But it is possible, by design, in horizontal communities such as Enough or fedeproxy.
Continue reading “How do horizontal Free Software communities respond to a takeover?”
When a command requires a tty although it should not (some OpenStack client subcommands do), it will fail when included in a crontab. Unfortunately there is no packaged utility such as ptyget to allocate a pty. Fortunately ssh -tt can be used instead:
-t‘ Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g. when implementing menu services. Multiple -t options force tty allocation, even if ssh has no local tty.
$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys
$ ssh -tt $USER@127.0.0.1 tty < /dev/null
$ ssh -t $USER@127.0.0.1 tty < /dev/null
Pseudo-terminal will not be allocated because stdin is not a terminal.
I’m very new federation. Over the years I heard rumors that it was good without understanding why and how. I ran a mastodon instance for a few years but did not use it much: I’m a developer and not much of a microblogger (reading or writing). Beginning of last year I started using https://peer.tube/ and was happy to see it work for real but did not use any of its federated features. But when https://joinmobilizon.org/ was announced I thought it made a lot of sense to organize events in a federated way: smart move. And all along I thought I should read about fediverse but I still have no idea what it means (really).
Continue reading “Federated development and federated forges”
Even when nonprofit organizations publish their financial records (such as the mediawiki foundation), the work done by volunteers has an estimated financial value of zero. These organizations will however unanimously claim that volunteers are an essential part of society and have a very special place in their heart. While most of them are sincere, observation tells us a different story:
- In the context of fundraising, volunteers are second class citizens compared to organizations who donate money
- A lack of transparency excludes volunteers from decisions and day to day work
How is it that one year of a volunteer who is worth $60,000 on the market is considered less valuable than a $60,000 grant used to pay the salary of the same person?
Continue reading “Volunteer work is not worth a dime”
Enough is a software released as a pypi package and a docker image to maintain an infrastructure composed of multiple machines, physical or virtual. In other words, it is an infrastructure as code based on Ansible and OpenStack. In addition it is built exclusively on Free Software, primarily because it helps with backdoors and viruses. These two properties combined create a unique opportunity to onboard volunteers devops willing to help nonprofit organizations defending whistleblowers.
Continue reading “Onboarding devops with infrastructure as code”