The reason I do help Open Source Projects
This is a non-technical post, but I felt inspired to write about it today.
Some days ago a friend of mine asked: “Hey, why do you help Open Source projects? Really, I admire you, but I am not able to waste my time with that”. I almost answered “ORLY YOU FUCKING SELFISH BASTARD”, but instead of that I just said “Oh”, and started to think about a reason for that. Why I do help Open source projects? How did everything start?
A story about my technical career
I went to college to study computer engineering in 2007. Before that, i didn’t know what was a programming language, or what Assembly was, or what was a diode or a capacitor. I was just a stupid, selfish 16-year-old girl. After I got into College, I started to work with software development some time later. Studying (classes were in the morning + afternoon and sometimes in the evening) and working at dawn was really hard. So the only thing I wanted that time was reading my tech books, learning how to use frameworks (OH, FRAMEWORKS LIKE Rails, Spring, Hibernate) and work. Great. There were some events at College about open source, but they were all about Linux Kernel, blah blah, blah, and they never had REAL open source active speakers. So, almost none at College was (and unfortunately almost none is nowadays) an Open source enthusiastic.
Everything was going that way until 2009, when I went to an event called Campus Party. I heard lots of things about ‘open source’ there. And I met lots of Open source enthusiastic people. In other words, for the first time in my life i felt the meaning of… COMMUNITY.
Yet in 2009 I did some extra courses at Caelum, where I could experience another new concept in my life – THE COMMITERS. Yes, people who commit code (and also write tutorials, blog posts and so on) for open source projects. By that time I used to think “Oh, cool, I really would like to help… but hmm, looks too complex. Think I will not be able to write a tutorial for a framework too soon, I am so n00b…. Let me go back to my tech books”.
The truth is… I started to think things like “I really would like to help them…. hmm… looks like a nice idea… But atm I don’t have power to collaborate’.
Some time later I got a big challenge in my professional career – Work with Jboss Seam. I had never seen a piece of code using JBoss Seam. In fact, I had only an unstable idea of what was JBoss Seam. So I got a copy of “Seam in Action” and started reading. I was there, with a framework to learn and put an application up and running with Jboss Seam… Not only with Seam, but also a nice, freaking combo – Seam + Glassfish + Maven + EJBs. Cool. (You guys know that this was a little hard into Seam 2 and Glassfish 2 times). So I started Googling about it, but there were few consistent information about that. “What should I do now? Google can’t help me!! :( ” I started getting depressed about that, so I decided to MAKE IT WORK. With the help of a coworker, we did it. Seam 2 + EJB + Maven running on Glassfish 2. Two interns and a crazy project like that running. (Thank you, Andre, I really learned a lot working with you, man). So I thought “I need to write a fixed tutorial about it. Seriously” – and then I created this blog. Every time I had some time off I tried to write some tech stuff on it. That’s why it is called “TI Stuff”. I just wanted that people had consistent information about Seam and Maven [by that time]. I also started to use Twitter and follow cool people (Like the Seam In Action author, a guy called ‘Dan Allen – @mojavelinux – I found his Twitter at Manning’s website)…. I started following some authors from books that I had read read, and I realized how cool they were. So I created a Twitter List, TIHeroes, and added these people into this list. “I really want to be 1/20 of what these guys are”.
With the blog I got some emails with tech questions, post suggestions, new followers at Twitter…. I started to attend to tech conferences in Brazil, join mail-lists… And then I realized that I was HAPPY. But I felt I could do more. People were asking for new tutorials, and they had questions i didn’t know the answer…
Some months later I got into a project where we got a new technology – early-adopters. It was a Ruby project, and some of the gems were pre-alpha… So I started the project and sure, started to find lots of bugs… “And now? Who is going to fix that? I need this framework to do my job!”… Who… And then I think my life changed after thinking about it. “Wait”, I said to myself. “I’ve been using frameworks for years. OPEN SOURCE FRAMEWORKS. Who’s been keeping them? Who fixes the bugs? Who…. – THE COMMUNITY” Sure, usually there are some companies behind the frameworks, but it is COMMUNITY WORK. COMMUNITY. People like me were RESPONSIBLE for the framework. “You become responsible, forever, for what you have tamed”. I am responsible for these frameworks too. I use them. So, instead of just complain, I can do something to help them get better.
Simple actions – report a bug, write tutorials, write blog posts…. I found out that all those little actions can help the community. Even if you don’t write the framework’s core code…. there’s still a lot of things to be done for the community. I will never be the same person after understanding this :)
I had a friend who used to say something like “There are no good companies, they do open source for marketing… There’s no open source chocolate”. I won’t discuss that here, but I have to say a little comment – “Open Source work is bidirectional – You improve the project, and the project gives you lots of experience”. I don’t do open source work to be famous. I do open source work because I like to help people. I do open source work because I’m proud of those people who built that framework. Does’t matter if they become inactive, I may consider that people as heroes because they donated their times to make community happy. They have donated their times to give us a new tool or make our lives easiest. Have you ever thought about how boring it would be if we had to write our own ORM framework for every project? Think about that. Imagine If we had to pay to hack Rails or to fix a but on it. “Oh, but there are lots f companies making money with that”, some people will think. The only thing I have to say is “FUCK IT. There are lots of companies making money with good employees. Companies want to make money, and it has nothing to do with my open source passion”. I just want to help people to do their jobs. And yes, these people who collaborate with these projects, they DO HELP MY LIFE. THANK YOU ALL.
I started publishing new posts in my blog, and it started to get lots of views/day. It motivated me to keep helping people. In a busy day of visits, I got a 100+ views at the same day. “Weird – I thought. What’s going on? Let me check the analytics” And then I found out a link referring to my blog – it was a IRC chat log. From a IRC channel – #seam-dev. Saved a copy of the chat transcription.
[23:52:47] <mojavelinux> check out this blog on seam 3 [23:52:53] <mojavelinux> http://hannelita.wordpress.com/2011/02/22/seam3/ [23:52:57] <mojavelinux> chrome should translate it for you
“Wait, they are talking about my blog! ZOMG! These guys are the Seam guys! Awesome!” Some time later I joined them at IRC and said that I really would be glad to help.
This long story shows a bit of my feelings about open source works. It helped me to be less selfish than I used to be. My family and friends used to say “Workahoolic! Go get a boyfriend!” or “Go take cool stuff to do!”. But the truth is… I AM HAPPY doing that. Seriously happy! I mean, I can help the guys who created the frameworks I use! I can help people who just started with technology X with some information! I can help people who are learning about framework Y by answering their questions! Guys, it’s so cool! Try it once!
I really think people should care a little more about community. I wish I could do much more things that I don’t do because I’m still newbie. But little actions help a lot. You know how good it is to find a nice tutorial on Google that actually works fine and it’s nice to read. But who wrote that? You could write something to improve it, or just post a comment or email the guy who wrote the tutorial saying “Thank you”. A simple feedback is a simple action that can improve community work! ;)
So, I’d like to say thank you to everyone on this list. Heroes.
Thank you, guys. Open source community is very glad to have you in, be sure :)
p.s. – I am very proud of you, Seam guys. You cannot image how much I admire you and how much I do like JBoss community. Hope I can help you always :)
And sure, I will always admire Ruby community. You guys have some disagreements, but it doesn’t matter to me, I do still admire you the way Ruby community is. Really hope to help you more the next times ;)
Entry filed under: Uncategorized. Tags: .