Developers and FOSS

With the exceptions that I have noted in previous posts, I
endeavor to use only software that is free as in freedom. Even in
the course of my day job as a web developer, I use an entirely
FOSS software stack for development. When it comes time to test
what I have written, I break out non-free web browsers, but only
to ensure that the end users don’t suffer. While this assuredly
enables the continued propagation of non-free software, it is a
decision that is made by my employer and thus out of my control.

The office in which I work is an “open floor plan” – such a layout
has many advantages. In my opinion, the greatest advantage is the
ability to very easily collaborate with my fellow developers. This
collaboration is also the cause of almost all of my workplace
consternation; Invariably, when I start “talking shop” with one of
my fellow developers, or having them look at some code on my
machine, the questions about my web browser choice, editor choice,
and choices of other programs start. The editor question is
generally the easiest to field, but as soon as I mention why I use
Icecat as my primary browser, my fellow developers’ brains turn
off and their mocking ensues. I am not trying to show that I am a
victim here. I am just astounded that people who make their living
coding cannot see the value of free software. One of my co-workers
in particular seems oblivious to the fact that the code he works
with everyday in only possible because the authors of the
underlaying libraries saw the value in free software and released
their libraries as such.

It is the developers who have the skill-set to appreciate the
technical merits of free software. A developer can look at the
code and recognize the beauty of the collective thought that went
into the codebase. A developer can look at the code and recognize
ugly parts and make those parts beautiful. A developer has the
power to ensure that the code he creates in free as in freedom and
respects the rights of his users and his fellow developers. And
yet, it is developers who hold back the growth of free
software. We do this by agreeing to make non-free software (this
is something that I have done, and continue to do in my day
job). We do this by using free software and not helping to fix
bugs that we find in it. We do this by questioning other’s use of
free software. We do this by allowing ourselves to use non-free
software and implicitly give our consent for the continued
development of non-free software.

In an effort to make sure that I am no longer a developer who is
holding back the growth of free software, I have resolved to help
fix bugs that I find in the free software that I use. To that end,
I have become a contributor the Icecat[0] and LibreJS[1] projects. I
have also resolved to make sure that I do not question others’ choices
of which free software programs they use; I will make sure that I only
question their use of non-free software and take steps to ensure that
the resulting conversation is a positive learning experience for
them. I have also resolved to be even more harsh in removing the use
of non-free software from my use. The other step that I have resolved
to take is to actively work to make as much of the code that I produce
for my day job free software and work in enact a philosophical change
in my team’s view of free software. Without a doubt, this last
resolution will be the hardest.

I ask other developers to critically examine the software that
they use and create, and resolve to work for the growth of free
software instead of against it.

[0] https://www.gnu.org/software/gnuzilla/
[1] https://www.gnu.org/software/librejs/

Leave a Reply