Hi, I’m Philip Chimento! My open source journey started in the early 2000s when I was at university. I wanted to learn how to program games, and I had been told that would require programming in C. Paying money for a compiler seems unbelievable today, but C compilers were quite expensive at the time. A friend told me about DJGPP which is a port of the open-source GCC for the MS-DOS operating system, which I downloaded. I never did learn how to develop games, but it did spark my interest.
Around the same time I read The Cuckoo’s Egg, which showed me the world of possibilities that knowledge of Unix-like systems gives you, and other resources which showed me there was a whole free/open-source “hacker” culture out there to discover. What exactly I wanted to do with this sense of possibility, I’m not sure I knew. You might say I loved the idea of open source before I actually understood how I could participate, or what it meant. The one thing I was sure of was that the next step was probably to remove MS-DOS and Windows from my computer and install Linux instead, so that’s what I did. Over the next several years I forced myself to learn how to configure my Linux system and repair it when it got messed up. I got really good at googling error messages!
By using open source software, I felt connected to open source culture even though I still didn’t know how I could actually participate. I was vaguely aware of IRC but didn’t really understand that it was a thing I could use. There were probably forums where I could have met other open-source enthusiasts, but I didn’t find them. I think getting involved and finding people to collaborate with is much easier today!
After a few years of tinkering with Linux I started once more to try to get into programming, but I still didn’t know what to do to actually participate in open source. I had a feeling that I was not yet good enough to contribute to someone else’s project, so I started a few of my own projects, but lost interest before they went anywhere. I do remember the first open source contribution I ever made! It was a patch that I submitted by email in 2006, to Skippy, a task switcher similar to what is now the Overview in GNOME. I never got a response…
After several false starts like this, in the fall of 2006 I finally started a project that I was motivated to finish. I had always been interested in text adventure games, and in 2006 Inform 7 was published, a design system for writing these games. The core was closed, but the development environments were open source, and they were only available for Mac and Windows. This looked like a good learning project for me! I expected myself to lose interest before I got anywhere, like I had with my other programming projects, but I actually stuck with it until I got something working. I first published it in October 2006 and got some good feedback immediately from the Inform community, which motivated me to keep working on it. Eventually I was invited to join the Inform development team. Because I had somewhat arbitrarily chosen to build the app’s UI using the GTK toolkit, I also learned a great deal about GTK and started getting involved in the GNOME community. Learning many best practices from others led me to refactor almost the entire app around 2008. When I saw how much I’d improved in two years, I started to be able to kick my feeling of inadequacy and consider that I could be a good programmer who had something to offer to open source projects.
Around that time, Stack Overflow was launched, and I started answering questions about GTK on Stack Overflow. I don’t do much of that anymore, but I had lots of free time back then, and I spent lots of it writing little programs to answer Stack Overflow questions about GTK. Helping other people gave me a good feeling, but also gave me a lot of valuable practice in thinking about how to solve problems. To this day, I’ve still got the top number of GTK questions answered on Stack Overflow! Interestingly, I believe that partly enabled my career switch into software engineering in 2013, because I made a connection with my first software job at Endless due to showing up in searches.
My advice for others is a few things: One, don’t get discouraged! You can see that my journey at the beginning consisted of literally years of tinkering without really any plan or goal, and many false starts until something ‘clicked’. I have a feeling that this is not unusual. Two, practice! Although I attribute a lot of my journey to luck, I can’t deny that putting in those hours helped me meet the opportunities when they arose. Three, the single most useful skill I learned is how to approach making sense of an unfamiliar error message.
Let’s connect on twitter.
7 replies on “Philip Chimento’s Open Source Story”
Hi Philip, original author of Skippy here. Just wanted to say sorry for not replying to your contribution! Glad you didn’t let it stop you!
Wow, what a coincidence to find you here! No worries, I’m not sore about it 🙂 I only mentioned it in my answer to one of Nasah’s questions, to show that it happens and is nothing personal.
Wow this is really inspiring. I actually study computer engineering right now but feel like I’m still lost. Hope I get to a destination some day
Hi! It usually looks that way in the beginning. Things become clearer with consistency over time.
Thanks for note Philip I can think it can and should serve as an inspiration to anyone who interested in tech and open source.
You’ve always been an inspiration to me! You’re Awesome! 😀
oh my God!!
very inspiring, reading this, I have learnt that everything is possible when consistency and hard work is involved.
Thanks for sharing Philip.