Is Open Source Experience Overrated?

I think open source work tends to peak a greater interest for smaller teams of software engineers than larger ones. When you have to maintain, develop, and document something all on your own (or in a small group) it prepares you for doing it in the real world.

Condemning this guy’s humility though over his project leaves a bad taste in my mouth. It actually is a sign that the applicants quality of work has improved over the years and he says areas in his project he can make better.

Last the economy is not exactly the greatest in the world so maybe he is just getting some tough breaks.

Why would I just pick an OS project and contribute to it? I would never do that for a freakin resume! I’d only do that for myself, not to tell others and toot my own horn.

@John (3rd comment) puts it nicely…

You’re solving your own problems, and making that solution available for free in case anybody else wants it. What’s wrong with that?

@Alex

I assume you wanted to say The Daily WTF, not The Real WTF.

In any case, coders are coders not mather whether the source is open or not.

To be honest, I never worked on open-source project and probably never will (unless I retire and have nothing to do with my life).

Yes, I get in at 9, punch in, work, punch out at 5. Go home, spend time with family or friends. Read, do anything that isn’t related to coding.

Why? Because I like having a life and having one makes me a good coder between 9 and 5. It amuses me that everyone seems to advise people to contribute to open source, or for some magical reason, they have to get out of work, and keep programming in their spare time like they have OCD. A plumber doesn’t finish his job and goes home and takes out/puts in all his pipes in his spare time. I don’t see requirements for doctors going home after 8-10 hours work and do free consults. What for some reason a good programming has to have some OCD is beyond me. I produce good code. Have the references to prove. Usually find a job in days (just quit my job a month ago, after 2 days already had another one) and I go home and do nothing, but what I do at my job I do well.

Stop with the ‘Contribute to Open Source’ recommendations to people. It is bull. I rather have someone work for me that goes home, rests, and come back at 9 fresh and ready to work, than someone than goes home, has dinner and spend 4-5 hours coding whatever OS he does and comes the next day with his brain fried.

I would hesitate to measure the value of an experience in terms of how impressed other people are when you tell them about it.

Things an OSS project reveal about the candidate.

  1. Can the candidate meet deadlines? Because real programmers ship, preferably on-time and under-budget.

  2. Can the candidate prioritize effectively in order to meet deadlines? Because real programmers don’t always have time fix what they want, only what they’re told needs fixing.

  3. How long did it take the candidate to produce the working OSS, in terms of dedicated man-hours? Because real programmers have deadlines and know how to estimate production time.

  4. What percentage of the production time was spent fixing bugs? Because real programmers have a solid regimen for ensuring quality, and one of the worst ways to fix design flaws is with a debugger.

  5. How much other existing OSS software already solves the same or similar problems? Because real programmers can use existing libraries in order to ship sooner, and can evaluate the utility of such libraries, even when it’s not the prettiest code ever.

  6. Is there an overview document, a design document, or another way to understand the OSS product in 10 second, 1 minute, 10 minute, etc. intervals of attention and detail? Because in the long run, if you cannot explain what you have been doing, at different levels of detail, then your doing has been worthless.

  1. Can the candidate proofread adequately before committing? Apparently not, because:

Things an OSS project reveal about the candidate.

shoud have been:

Things an OSS project DOESN’T reveal about the candidate.

Open source can help land a job, but it certainly can’t be your only experience, only relevant experience, or only recent experience, if you’re looking for anything other than entry- or junior-level. Personally, if people write worthwhile whitepapers, do UG presentations for their development communities, or found/contribute to viable open source projects, yes, they get bonus points with me when I interview them. However, I’m still going to grill them, and I still want to see and hear answers that are relevant to MY company and the role we’re looking to hire the candidate for.

This story represents my exact experience with recruiters.

Jeff, I would love to read up on your experience with less conventional job hunting channels that respect academic and other non-commercial experience.

You know, having been frequently on both sides of interviews for programming positions, I can tell you that there’s a big difference between hey! I work on open source projects (which tends to brand you as a fruitcake - it’s not deserved, but there it is) and I’ve contributed to x, y, and z.

The problem is that there are a lot of people out there that only have open-source projects as programming experience - and there’s a lot of bias around that. OSS projects are seen as hobbyist pastimes; and for the most part, they are. There’s nothing wrong with that, but many, many hobbyist programmers fail miserably in a structured commercial environment.

Like most things in interviews, it’s a matter of presentation. If you say I have experience developing package ‘x’, which is in use by Fortune-50 companies and the US government, then it doesn’t matter much whether it’s open-source. If they ask to see examples of your code, you can reply well, package ‘x’ is open-source, so I can give you my work on that if you’d like.

The fact that your projects are open-source needs to be a footnote, not the thing you feature in the interview.

Putting open source credits on my CV has helped immensely.
Reasons for this I think are:

  1. I am not afraid to show my code, thus implying some competency
  2. I display interest in creating logic
  3. I display ability to work with others
  4. I recognize the advantage of the open source development model

Note one may not have attributes 1 3, but at least a potential employer can get this information from your contributions.

I think Tom Clarkson had it right when he called it a presentation issue. The simple fact that a project is open source, and that you worked on it, actually means nothing. The potential employer needs to understand that you went through a commercial process, and it just so happens the process was for an application that is open source. The application needs to either be a part of an SaaS model, or there needs to be an enterprise support option. It has to have some commercial viability, and you should present it that way. Forget all the community aspects, or your passion for open source – if you want to get past the recruiter, then it should be presented as having commercial appeal.

If a company’s interviewer does not take time (or lack skills to) read the code of an important position like a programmer, or worse, thinks programmers are not so important, or thinks to be able to judge the cleverness, consistency, experience, focus, passion etc etc (add all the qualities needed to be a good programmer here) with a single test…

…probably that company doesn’t need a PROGRAMMER, needs an INTERVIEWER!

My contributions to opensource were rare, sparse, and generally minimal, with two major exceptions which ended as epic failures.

Is OSS experience overrated? I don’t know, but ofter my experience with it, I’ve committed myself to not contribute anymore. Never. I’m having no trouble in enforcing this self-imposed rule.

So OSS experience turns out to be not so useful?
Thank you for sharing the experience. It helps knowing that I probably went for the right choice.

I’m with you Bruno. When you get home, do something else. Variety is the spice of life. On the other hand, if you are unemployed, an OS project will show a good employer that you continue to be serious about programming.

I have to wonder though, if all the good (as opposed to purely academic) OS projects are already taken. That is, can a person jump into a good OS project and make meaningful contributions?

I’m doing some personal projects of my own. I figure they’ll do me some good if and when I go looking for another job. It certainly can’t hurt.

And maybe, just maybe, what I’m doing will one day make a big impact. But probably not. In any event, I’m having fun, and I’m checking whether some approaches I’ve come up with will actually lead to more stable, maintainable, and performant software.

But I don’t expect everyone to just go wow… you created your own project! Let’s just skip the rest of the interview and bring you right on board!

The problems this guy ran into:

  1. He’s not talking to the right people. Some interviewers want to see your portfolio. Others don’t.
  2. Anytime someone asks you to write code, especially if they’ve made it pretty clear that they’re going to be judging you on it, write the best damn code you know how. Don’t phone it in and then expect to bring in other code that they didn’t ask you for to make up for it.
  3. The economy sucks. People can afford to be picky. And they’re sometimes full of crap when they explain why you didn’t make the cut. Sometimes they don’t quite know themselves… they feel one guy is better than another, but can’t put into words what exactly makes them feel that way. That’s just life.
  4. If the main reason for the OS code’s existence is to impress potential employers rather than to solve a problem or to practice or experiment… it’s not going to work. The good employers are looking for a passion towards programming, not a passion towards doing whatever you think will impress them. It’s the same in other areas of your life… if you try to impress people, you won’t. If you strive toward excellence in whatever you love, you can’t help but impress people.

Agreed Bruno.

There is something patently wrong with this profession when the practitioners themselves are the primary source of this ridiculous expectation. I can only imagine it’s a self defense mechanism for their own insecurities. My chemist friends don’t go home and practice their chemistry (at least to my knowledge :D), my statistician friends don’t go home and work on some personal statistics and my doctor friend does everything he can to get away from medical questions. Why do we need to be any different?

I really enjoy writing code but at the end of the 8 hour day I’ve had enough. The last thing I want to do is sit in front of a computer for another 3 hours of my life. Life is far too short to spend all of your spare time working in one way or another. I’ll stick with my downtime being for friends and family and pursuing my other interests.

About niche open source projects: most OSS projects are made to scratch your own itches, as the saying goes. That’s something I would add to the first part: pick one, but one which is useful for you, for which you have a real need. Related to another saying, eating your own dog food.
I contributed a lot to a text editor, because the topic was interesting me, and because I wanted a good editor: I still code with it.
Same for my work on a PHP framework, etc.
I wouldn’t help on an accounting software, even for improving my skills on a given language or what’s not: the topic is too boring for me, and I have not interested nor love for that.

I mention my OSS work on my resume, but I never counted on it to win an interview: I doubt employers will have the time to check the site, even less the architecture or the sources. Supposing you are the main, or only responsible for that project.
On the above OSS projects, I am just a contributor among others, so even if some parts I gave are significant, they are more or less diluted in the overall code, altered by others, etc.
Listing the contributions, as Nick shows, is more useful: the proverbial executive summary (but that rely on good faith, of course).

I’ve had two interviews for coding positions, and in both my experience with OSS was valued. In both, I was also asked to point to things I had contributed to the OSS projects - the interviewers were well aware that OSS projects can be large and have lots of contributors.
In the end, that’s what it comes down to: are you facing an intelligent and capable interviewer or not. If you’re not, forget about anything but blind luck - you’re not getting the job based on anything else. If you ARE facing an intelligent and capable interviewer, that person will know what the position to fill requires and will also know whether any given OSS experience is relevant.

As for the whole don’t do OSS, go for other aspects of life - that’s a load rubbish. After hours, do whatever gets your boat floating/rocking. If that’s coding a huge OS on your own, go for it. Just don’t listen to meaningless generalisations about what makes the better employee.

Regards
Fake

Good, thanks for the information.