The Significance of Open Source: Insights from Experience
February 2024 marks Free Open Source Software Month, and naturally, we are wholeheartedly celebrating in line with our firm belief in the open source community! Across our social media platforms, including LinkedIn and Instagram, you'll discover inspiring stories from several of our employees, highlighting their valuable contributions to the community. Below, we present Tobias Brox's open-source narratives and his profound insights on the significance of open source.
What open source projects have you been involved in?
At the end of the nineties, I was a major contributor to Request Tracker (RT), the system we use today for ticket handling. A couple of decades ago, I saw over a colleague's shoulder who preferred to look up things in books instead of using --help. Suddenly I could point to a section in the book and say, "I made that functionality!" It was quite exciting.
My most significant contribution is probably the CalDAV library in Python. It started as simply wanting access to my calendar from the command line and initially wanting to use existing tools and libraries for this.
Working at a low level against the CalDAV protocol and ICalendar protocol was completely uninteresting to me. Unfortunately, I didn't find it very usable; I tried to build something around the CalDAV library in Python, but unfortunately, there were many bugs and little functionality there. I fell into a deep rabbit hole, and suddenly I had inherited the responsibility for maintaining the library.
According to https://github.com/python-caldav/caldav, we now have 56 contributors, of which I have contributed by far the most. About 950 other GitHub projects have an explicit dependency on the CalDAV library. So, overall, there are probably many using this library. It is used, among other places, in HomeAssistant, which has contributed to a tremendous expansion of the user database in recent years.
Why is open source important to you?
There are many reasons why free and open code is important. The foundation for my obsession with free software was laid while I was a child, but it came gradually - my previous "self" was a satisfied Microsoft user and argued, among other things, that Fidonet should switch from using ISO-646 (7-bit character set with Norwegian characters) to CP-850 (current de-facto standard in MS-Dos for 8-bit with Western European characters) - fortunately, I didn't get through with this.
Price
As a child, of course, I used software. Although, I couldn't afford to buy it. The concept of not using software just because I couldn't afford to pay for it was quite foreign to me - so I did what everyone else did, copied what I needed - I wasn't bothered much by the fact that it might not be entirely legal, but eventually, I got it in my head that it was better to legally use "free" software instead of engaging in so-called "piracy."
Freedom to Fix Things
As a child, I was often frustrated that the software I used couldn't be used the way I wanted to use it, that simple operations required a lot of repetitive keystrokes or mouse movements, bugs, etc., etc. With proprietary code, there isn't much else you can do about these problems than to be annoyed by them. My mother recommended that I write down the annoyances and send improvement suggestions to the manufacturer ... without me entirely believing that it would help.
With free and open code, you have the opportunity to fix annoyances yourself. Admittedly, this freedom is often of a somewhat theoretical nature, as it requires a lot of time and expertise to make changes, but it still has value.
Windows 3.0
As a child, I was eager to test "new things," including early versions of Windows. Windows 2 was fancy but strictly speaking useless; after a few days, I put it away. Windows 3.0 was considerably more usable; I loved it for several days - but after two weeks, the experiment was over. My conclusion was simply: "Windows is not made to be used by people like me," end of story. In the years that followed, I became more and more annoyed by Microsoft's bully behavior to maintain its hegemonic de-facto monopolistic supplier role.
Politics
I sometimes still create programs and scripts that are only meant for my own personal use - but if you've made something good, why not share it with the world and let others use it? "Most people" don't create software, art, music, etc., hoping to be able to live off licensing. Even when publishing software, music, or similar freely and for free, it can be difficult to reach an audience. There are very few who earn "an ordinary salary" by selling licenses. Being able to extract significant gains from selling licenses is mostly reserved for people and companies with a well-known name and/or a solid dose of market power. Those who succeed well with this again earn a lot.We have hundreds of municipalities in Norway - admittedly, there is some cooperation between the municipalities, but each municipality is responsible for ordering what they need not only of software but also textbooks for the schools. Sometimes teachers develop their teaching materials, but it usually remains a personal initiative; it is rarely shared with other schools or teachers. The textbooks annoyed me a lot as a child; it was rarely difficult to find pure factual errors. Instead of publishing improved versions of the textbooks, they were often completely replaced, perhaps primarily for the purpose that someone would make money on it? The exemplar payment model meant that we often received old, well-used, tattered books in primary school as the school couldn't afford to buy new books. My irritation grew as the financial burden of buying textbooks was passed on to the students - that is, me. I refused to spend money on the most useless textbooks. Imagine if the textbooks could have been free?
Teachers who thought the books were too bad could have gone in and improved them themselves. Instead of schools (and students) spending a lot of money on useless textbooks, they could set aside some of the teachers' time to improve the teaching materials. It is also true that it is the teachers and students who are closest to the textbooks and see where there is the greatest need for improvements or changes. So at a young age, I developed a political "culture of sharing" that encompasses not only software.
There is a huge public spending on buying expensive software licenses - while often ending up with poorly adapted software and without the freedom to change the software - it would have been much better to choose free software and then use the money saved directly on developing improvements that would benefit the entire population.
The software license flow is money that primarily flows out of the country. In addition to the public wasting money on software licenses, there is also a very large form of hidden subsidy here by teaching schools to train students to be "good Microsoft users." When, after completing their studies, they come out to an employer and can only use Microsoft products, it is clear that the employer is more or less forced to buy Microsoft licenses. Market power is deliberately used to acquire more market power. For most people - "the sheeple" - the only rational choice is to deal with this.
Free software contributes to free competition
In the procurement process, software is often equated with hardware. The acquisition of hardware is relatively problem-free - you need a machine that has an expected lifespan of perhaps ten years - then you make a list of requirements for the machine, put it out to tender, and choose the machine that is cheapest in relation to the specifications. After procurement, you may eventually need to change some oil and wear parts. After ten years, you repeat the process. Software is something completely different. The software can be further developed while in use - software errors are fixed, the software can be adapted to new needs, or needs that you didn't know you had during the ordering process. Software doesn't wear out - and the costs of switching to something else are high. Users have become accustomed to the software and don't want it to be changed. The software has been specially adapted to the needs that exist, and users and third parties have adapted their routines and systems to fit the software. With proprietary software, the supplier has a de jure monopoly on further developing the software. The only alternative you have is to replace the entire system with a competing system, but as mentioned, it is costly - and doesn't solve the root problem. If the supplier goes bankrupt, you have no opportunity to improve the system.
It is quite strange that the public sector is allowed to put itself in such a situation. If free and open-source code had been a legally required requirement for all public software initiatives, theoretically, we would have had a situation where all improvements and adjustments could have been put out on the open market.