This morning F…book reminded me that seven years ago I pushed my first open source project on Github. It was not a big project and it isn’t even used anymore, nobody contributed to it except a colleague to advertise its deprecation so it won’t last in the history of software but it was a relatevely cool project anyway.
My coworker in charge of the accountability of our self-managed coworking space was spending two hours every months to send an invoice to each coworker using a template and filling the appropriate info. It wasn’t a very interesting task but it has to be done because each coworker need a bill for the rent.
I remind me thinking on how to automate the process by writing a simple document describing the process. I submited it to my coworkers and one of them wondered why I wanted a validation about changing the process: “If you want to change the way we send bill, just do it!”. Since I had some experience on Google Apps Script, I managed to easily parse a spreadsheet containing all my colleague information (name, billing adress, formula, …), fill the invoice template, export it in PDF and send it by email.
The operation wasn’t slow but wasn’t fast also so I decided to add a fancy color feature allowing my friend to visualize which invoice were processed in real time. Some people will tell you that there is no need for fancy thing in software but when humans are involved you need to give feedback, preferably respecting visual standard.
Once finished, I decided to publish my work as an experiment: I had heard about open source software since a few years and I wondered how it worked, why people were doing this, and also why open source software were always so ugly and not user friendly. Were open source software developer bad developer?
I also told myself that I wrote this piece of software so why would I hide it? I wasn’t exposing any personal data since the script had to be triggered from the spreadsheet and it was working so there was no reason. On the oposite I spot the following benefit of sharing my work:
- Having an auditable invoicing system was a great warranty for my coworker
- When scientist want to validate an experiment, they publish their work to be validated by their peers
- If my coworking space advertise the system, we could be add more developer to it from other coworking space and benefit from each other work instead of developing n-times the same thing
In fact this was a little step for our organization but I had the feeling it could be a big step for all coworking spaces in the world: it litterally blew my mind…
Open source mania
I decided to open source everything, then came the shit with Edward Snowden revelation and I had a real crisis with trusting closed source software. I met a lot of people and if some were very interesting (I remember an amazing conference about the Debian governance), I was using these two words several time per conversation which made my friends and family freaked out. I was also slowly digging into another reality full of fake news and conspiracy theory due to my addication to F…book.
I tried then to find an outlet for my speech by joining Radio Canut, an independent local radio in Lyon powered by its radio hosts, paying for broadcasting. My project was to speak about open source and playing vinyls. I managed to make a pilot that was accepted… the day I realized I couldn’t pay my rent anymore, my owner died and his family were suing me because they had to deal between their mourning and the banks.
I had been floating the head in the star and totally forgot about my basis: I fell into a quite deep depression…
Since then I tried to take my distance with what happened but I realised what open source software has brought me:
Basically it has been a source of learning of many learning:
- I learn how to automate almost everything in the validation process of my software, giving me confidence in each modification I made
- I learn new language when for example I was using a tool that wasn’t doing exactly what I wanted to do, I sometimes had to implement it by myselft
- I learn a lot about code quality when trying to make my work accepted by project maintainers
- I learn to communicate with other developer on the internet which as nothing to do with communicating with other kind of human being were you need to add recurring politeness formula (developer hate unnecessary noise that endangers their concentration)
I also earn a lot of control on systems in general.
Seven years after, I still have trouble not starting a war against private software but at least I made some concession: we live in a world were private company owns the means of production and I’m not going to change that. I just keep going publishing my work because I still don’t see no valid reason not doing it.
My dream is intact then, but I know I’ll always be a weirdo to most people because it would need too much time to explain and people just don’t want to suffer even the sumary of seven years of thought about it so I don’t know if I need to close my source but at least I really need to learn how to shut up and this confinment situation is a good time for that.
Would you cross the bridge ?
My last questions I would like to ask to you readers:
- “What are your feeling about publishing its work on the Internet?”
- “What danger do you see in it? Which opportunities ?”
Thanks for reading until there!