Martyn Welch
October 10, 2018
Reading time:
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
15/08/2024
After rigorous debugging, a new unit testing framework was added to the backend compiler for NVK. This is a walkthrough of the steps taken…
01/08/2024
We're reflecting on the steps taken as we continually seek to improve Linux kernel integration. This will include more detail about the…
27/06/2024
With each board running a mainline-first Linux software stack and tested in a CI loop with the LAVA test framework, the Farm showcased Collabora's…
26/06/2024
WirePlumber 0.5 arrived recently with many new and essential features including the Smart Filter Policy, enabling audio filters to automatically…
12/06/2024
Part 3 of the cmtp-responder series with a focus on USB gadgets explores several new elements including a unified build environment with…
06/06/2024
The final installment of a series explaining how Collabora is helping shape the video virtualization story for Chromebooks with a focus…
Comments (0)
Add a Comment