We're hiring!
*

The beauty of Open Source

Martyn Welch avatar

Martyn Welch
October 10, 2018

Share this post:

It's no secret that I've long advocated open source software. It's something that I've been quite passionate about for something like 18 years now. So much so that I have literally made working with open source software and helping others benefit from using it my job, thanks to my employer Collabora.

Like all software, open source software isn't without its bugs and issues. If someone tells you that there are no bugs in their software, they are either clueless, dishonest or disingenuously talking about some very, very trivial application (and even then possibly still fall into one of the previous 2 categories). With this in mind, the important part is not whether bugs exist, but how empowered you are to resolve or mitigate the issue you are having. Admittedly I generally have an advantage here over someone less technically inclined, however I'd maintain that open source still provides more avenues for someone without coding skills than may be present with closed source, proprietary software.

Case in point was a bug that I discovered whilst working on a script yesterday. An application, chdist, wasn't working as suggested by the documentation and it was stopping me from doing what I needed to do. It turned out that it was written in a scripting language, which made life easier as I was able to directly look at the code rather than digging it out to begin with. Looking at the code I was able to fairly quickly determine a work around (setting APT_CONFIG in the environment before calling chdist if anyone is interested). As a result I was able to work around the issue quite quickly and continue.

But the story doesn't end there, I was also able to quickly come up a suitable fix (shown in the link below) and was able to submit the fix "upstream" to be included in future versions of the tool. As a result in the future neither I nor anyone else will face this issue with this tool. This was my first time submitting such a change back to the Debian project. Admittedly I was able to seek advice and help about the process from my wonderful colleagues and proposing some changes can be a long and drawn out process (and can require changes to be made to the approach to get the modification accepted). Fortunately in this case the fix was quite trivial and was very quickly accepted. Geek level +1.

Whilst I'm sure there are very responsive companies selling closed source software, my experience and anecdotal evidence suggests that this is generally not the case. Access to the source code, allowed me to quickly work around the issue, something I could not have done if this wasn't available and would have required me to contact the company providing the application (which may or may not have resulted in any positive outcome, in any meaningful time frame) or find an alternative approach. Either of these would have resulted in longer delays and/or effort spent doing what I needed to do. In addition, in this instance, I was very quickly able to utilise the knowledge I had gained debugging the issue to contribute a fix, further improving the quality of a resource available freely to all. I'm not going to lie, it also provided me with quite a bit of satisfaction.

Link: https://salsa.debian.org/debian/devscripts/merge_requests/52

 

Comments (0)


Add a Comment






Allowed tags: <b><i><br>Add a new comment:


Search the newsroom

Latest Blog Posts

Using regmaps to make Linux drivers more generic

27/05/2020

Device drivers can support more revisions and SoC platforms by abstracting away specific hardware interface layouts. Let's examine a specific…

Cross-compiling with gst-build and GStreamer

15/05/2020

gst-build is one of the main build systems used by the community to develop the GStreamer platform. In my last blog post, I presented gst-build…

Using syzkaller, part 3: Fuzzing your changes

12/05/2020

In part 2 of this series on syzkaller, we looked at how to install the tool and use it to improve our code base. Now, how does syzkaller…

WirePlumber, the PipeWire session manager

07/05/2020

An in-depth look at WirePlumber, the modular and extensible session manager for PipeWire that brings advanced device management, policy…

Reducing the size of a Rust GStreamer plugin

28/04/2020

With Rust gaining traction among the GStreamer community as an alternative to C to write applications and plugins, we began wondering, could…

From Bifrost to Panfrost - deep dive into the first render

23/04/2020

The Panfrost project building a free, Open Source graphics driver for modern Mali GPUs has reached a new milestone: the first 3D render,…

Open Since 2005 logo

We use cookies on this website to ensure that you get the best experience. By continuing to use this website you are consenting to the use of these cookies. To find out more please follow this link.

Collabora Ltd © 2005-2020. All rights reserved. Website sitemap.