Archive for the ‘Hiring Programmers’ Category

256X Better than a Resume

Thursday, June 10th, 2010

Why do resumes suck for hiring programmers?

  • They emphasize short, buzzword-filled entries that work well for people full of business-speak (and the other kind of BS).  Is that really the kind of person you want floating to the top of your candidate pool?
  • Hiring managers reject candidates based on resumes, when a resume has absolutely no ability to demonstrate technical skill.
  • It rewards those who are willing to lie, without very little recourse for verification.  This is not something I think about very often as I don’t lie on mine, and when I read resumes, I assume they are not lying either.  However, occasionally I’ll hear a story about someone who did verify and found a blatant lie, and it reminds me that this probably happens more often than I’d like to think.

In a recent Inc magazine article, Jason Fried of 37Signals claims that you should “never read another resume”.  He doesn’t, but then again, his company is in a unique position of having a flood of great candidates after investing a great deal of time building their image.

It should be fairly easy to recognize technical skill, right? Thousands of currently-employed crappy programmers and millions of horrendous LOC are a testament that it doesn’t work that way.

What are alternatives to resumes that would factor in technical skill?

Open Source Contributions

This is the option used by 37Signals, and I have an entire article devoted to why open source is not a good way to evaluate potential programmers.  In short, there are plenty of great developers who don’t spend time on open source, as well as plenty of crappy ones who do.  This complete lack of relevance to technical skill makes it a useless and even harmful barrier to entry.

Certifications

This one is an oldie, but like Monthy Python, it’s not dead yet.  Certifications are granted by some body that claims to have authority, but they actually make money by people taking the tests, so it’s in their best interest to allow a reasonable percentage to pass.  By taking money from test-takers, they have ruined their objectiveness.  Plus, they rate developers in a pass/fail system: you are either a certified developer or not.  This is not a reasonable way to judge developers since their skills range quite widely.  And as soon as you’ve seen a couple of crappy developers who are “certified” their credibility is destroyed also.

Stack Overflow

The Joel on Software/Coding Horror camp described the problem perfectly, but the solution fell short.  Since your Stack Overflow score is based on your activity on their Q&A site, it promotes people who spend a lot of time on their site, instead of the best programmers.  That model certainly serves Stack Overflow well, by providing an incentive to spend time on the site, but doesn’t work so well for busy programmers or the companies that want to hire them.

Coding Tests

This one is really the best option for employers because it is the most accurate, but it’s also extremely time consuming for both parties.  Even if you require a coding test before you’ll interview someone it’s still very time consuming to check all of the submissions.  And many companies don’t want to require this: it turns off a lot of good programmers from bothering to apply (why should I spend an hour of my time just for the chance to speak with you?)

So what’s left … Code Anthem!  Coming soon to a browser near you.  Sign up for the beta now.

How much does it cost to hire a good programmer?

Tuesday, June 8th, 2010

Let’s say your a hiring manager and you need to hire a software developer for your team.

Well, most people start with a job posting:

  • Dice: $459
  • Monster: $395
  • Career Builder: $419
  • Joel on Software: $350
  • Signal vs Noise: $400

You may also want to browse existing resumes:

  • Dice: $895
  • Career Builder: $600 for 2 weeks
  • Stack Overflow: approx $500 per week

And if you’re having trouble you may need to use a recruiter:

  • At about 20% of your new hire’s annual salary, that’s $10,000 – $20,000 per hire

So now you have a giant pile of resumes, time to spend hours and days and weeks on:

  • Reading and sorting through resumes
  • Following up with candidates
  • Doing phone screens
  • Administering coding and technical tests
  • Doing technical interviews
  • Doing behavioral interviews
  • Doing management interviews
  • Considering a hiring manager’s salary, that is some serious $$$

If you don’t find anyone, you have to start over.

  • Losing money in opportunity cost as we wait weeks and months just to find the right person

If you do find someone, you may want to test the waters:

  • Hire them to do a project for you on the side: $5-15K
  • Hire them on contract for 3 or 6 months: $20K-40K

So, how much money does it cost to hire a good programmer?  A lot!

That doesn’t even take into account what happens when you get it wrong and hire a bad programmer.  You waste all that time on training them on your system and incorporating them into your company.  To top it off, crappy programmers actually mess up your system worse than when they started.

Imagine this.

5 programmers who can really write code at the level required.  You can test them all you want, but it’s not necessary, they’re already qualified and capable through and through.  They are all looking for jobs and geographically located near you (assuming you care).

You meet with them to determine mutual culture fit and pick the one that gels with your team.

How much would that be worth?

(Put your answer in the comments)

What is a MS in Computer Science worth?

Monday, May 24th, 2010

It’s graduation time again and that reminds me of a particular experience as a hiring manager for a company that was small and highly technical.  The structure was pretty flat: there were only a few managers in a company of 30-ish developers and they wrote code everyday too.  It was an extremely productive environment.

We were looking for people who were bright and could either write great code, or learn quickly. The pay was good.  We had people with bachelors and advanced degrees, with no experience to 20 years experience+.  Basically, if you could make it past the gauntlet, you were in.  And, like most coding shops, we were constantly hiring.

I found out that the local university was holding a job fair for their computer science department, so the Operations/HR person and I packed up some banners and things from their trade show materials and went over.

We stood at our table along with other companies as the soon-to-be-graduates made their rounds.  The people graduating with their bachelors were as-expected, overall bright and motivated, and we pinpointed a couple to do callbacks.

For some odd reason, there were more people who were graduating with a masters degree than a bachelors there. Not sure if there were more masters graduates than undergraduates (really weird!) or whether the MS people were just having a harder time finding a job (my guess).

I watched one exchange between an MS graduate and our HR person:

MS Grad:“So, do you have any jobs for Masters Degrees?”

HR: “Absolutely!  We hire people with masters degrees or with bachelors degrees – we don’t really care so long as you can write good code.”

MS Grad: “Oh… “ [wanders off]

That disinterested and entitled attitude mirrored my own conversations with the MS grads.

Being the technical of the two, I would talk about how we had a great flat structure, how we were given the freedom to write great software and how gratifying it was to work with other smart people.  They, in turn, would ask about management positions and architect positions.

They expected that since they had a masters degree, they would automatically be put in charge of the lowly bachelors degree people. And from my brief technical discussions with them, they were not nearly up to even working with us, much less managing.  The lowest, most junior developer at our company could out-code and out-design them any day of the week.

Now, if we would have hired a MS grad, they most definitely would have received a higher offer than their bachelors degreed counterpart.  And they would have been thrown onto a moderately complex (read: interesting) task without as much, or any, mentoring as a completely inexperienced junior person.  And honestly, having the advanced degree probably would have allowed them to move up more quickly into management than someone else.  The workplace was progressive in some regards, but old habits die hard.

But based on their general lack of impressiveness, not a single MS grad of the many many that came to our tables got a callback.

When I discussed my experience back at the company, someone mentioned that maybe it was because it was a local university, instead of a top school.  But I don’t think so: the undergraduate students were a reasonable pool of candidates, and we found a few possibilities, and they were better than the MS grads.

I’m sure that there are plenty of very smart and very innovative MS grads out there, but I think it makes sense that they would be snapped up before having to make the rounds at a career fair.

The reality is:

There is no shortcut to being a manager, and definitely not a good manager.

There is definitely no shortcut to being an architect or technical lead.

And there is no shortcut to being a decent programmer.

What is a MS in Computer Science worth? The knowledge you take from it of course, and not a penny more.

Gurus, Rockstars and Ninjas, Oh my!

Tuesday, May 18th, 2010

Iron Man 2

For every job post calling for a “superstar” programmer, there’s a ranting blog post about how ridiculous it is.

Programmers are not like gurus because no one can possibly know that everything.

Programmers are not like rockstars because they don’t get gratuitous sex and drugs.

Programmers are not like ninjas because they don’t have throwing stars.

Supposedly, if you call a programmer any of these things, they will get lazy and arrogant.  I’m pretty sure plenty of programmers were lazy and arrogant well before HR folk came up with those titles.

They became necessary because the system for hiring developers is fundamentally broken.

Those terms are the only existing way to succinctly express that you want a highly skilled, very productive person who is more focused on getting things done than process and more focused on doing quality work than playing politics.

The current hiring system for programmers emphasizes all the wrong things while ignoring all the important things.

  • We emphasize age through years of experience, neither of which have a strong correlation with skill and productivity, and not even much to do with maturity.
  • We emphasize the ability to condense your achievements and work ethic in business-speak riddled resumes, which has nothing to do with technical ability and douse any personality whatsoever.
  • We emphasize the ability to communicate using generic cover letters that spout more business-speak and feel-good messages sprinkled with obligatory specifics grabbed off the company website.  Is this the sort of templated slop you want in your software as well?
  • We emphasize the ability to describe a design over actually implementing one.  We emphasize being able to fit a problem into a neat little pattern over writing an algorithm.
  • We emphasize getting along with QA, management, executives, marketing, etc over being able to get the job done.  As in, don’t rock the boat.

The people who are successful in this environment are rarely the great developers.

So what do you do if you need a good developer?  Maybe you don’t even understand WHY the system is broken.  But you know that the people who are passing through the traditional hiring barriers are just NOT cutting it.

So you slap a “Rails Rockstar” or “Silverlight Guru” title on your job posting.  Most likely the mediocre programmers will be scared off (“that sounds hard!”) and some great programmers will perk up (“that sounds interesting!”).

For those disgruntled among you: yes, it is an HR marketing gimmick.  Because they don’t have any other way to get the good ones.

——————————————————————-

If you think there must be a better way, you’re right. Code Anthem is a way for employers to easily find great developers.  If that sounds interesting, subscribe by RSS or by email, or follow us to stay tuned.

Just 3 Questions to An Awesome Programmer Job

Wednesday, May 5th, 2010

Conventional business wisdom states that every business wants to improve.  They want lower operations costs, higher profits, happy customers and to retain their best employees.  Virtually every business will attest that’s what they want too, albeit in varying orders of priority.  But they don’t.

Fun will now commence – Seven of Nine, Star Trek Voyager

They say they want to make more money, but are content to live with failed software projects, poor programmer productivity and operate on software that isn’t fit to be used.

They say they want happy customers and happy employees, but they plow through both of them with high turnover rates like they’re completely expendable, replaceable and without value.

Great programmers are not made for companies like that.

As a great programmer, how do you spot a great company from the rest of them?  Here are 3 questions to ask the hiring manager or recruiter.

1. What sort of technical exam do you use to screen programmers?

This could be a coding sample, a coding test, a strenuous technical interview or even an aptitude test.  A few rounds of “What is your experience with X technology?” does NOT cut it.  If they’re considering hiring you without  properly testing you, just imagine the low level of talent that has crept through their process over time.

2. What do you do to make your programmers lives easier?

Some crappy managers will actually pause in confusion at this question.  After all, managers are only there to tell the programmers what to do, and then reap the rewards.  Other crappy managers may come up with some lame answers, like from an HR cover sheet. Good answers might be to allow them to work from home occasionally, to give them the freedom to use new technologies, etc.

3. What percentage of the developer’s time is spent in meetings versus uninterrupted coding time?

The ideal answer would probably be something like “a few minutes every day, a planning meeting every two weeks at the start of the iteration.”  A more realistic but possibly acceptable answer would be, “a couple of hour-long meetings with different businesspeople, as needed.”  It’s up to you how much is too much.  Beware an answer like “we try to limit meetings and restrict them to as needed” without specific time durations.

Let’s take it to the masses.  What do you look for in a great company to work for?

What do you look for in a great programming job?

Death By Recruiters

Tuesday, April 20th, 2010

Recruiters are a bane to the software development profession.

Finding good developers is extremely valuable to companies. The problem is that recruiters can’t even get that right. Even if they could, they’re so abominable to deal with that developers are scrambling for any other option.

In my professional career I’ve probably spoken to hundreds of recruiters, not even counting the spammy emails and unsolicited phone calls I ignore.

Pretty much any developer who’s been in this game for any period of time knows what I’m talking about:

  • The job posts look just list technologies, bland requirements and say nothing useful about the position.
  • They usually have no technical background and can barely pronounce the technologies they are looking for.
  • They don’t know anything about the company except some excerpt from the website.  You’re lucky if you’re actually working with a recruiter who’s even met the hiring manager.

All they do is take up posting space on the job boards, alongside real companies postings that are actually interesting.

In the trenches

Take this little gem from a contractor who had promised 4 weeks notice to his current employer:

“Couldn’t you just walk out?”

“Despite the fact I gave my word about a notice period?”

“Yeah, you’re a contractor, you could just walk out.”

“So you’re suggesting that I should start my professional relationship with you by doing something really unprofessional to someone else?”

“Well, yeah.”

Usually I don’t allot much time to recruiters, but in one instance I met one for coffee based on the recommendation of a friend.  After discussing my work with C#, ASP .NET (along with a myriad of other Microsoft technologies), she checked her handwritten list and asked “So, have you worked with Visual Studio before?”.  I replied “Um, yes.  Well, usually when you use C#, it’s with Visual Studio…”  She said, “Ok great,” and checked it off the list before offering, “You know, you should really put ‘Visual Studio’ on your resume.  You know, just to highlight all of the different technologies you’ve worked with.”  I could only nod along quietly, “Sure, right…”

Then she suggested that I take the job she was working on that would be a 20% pay cut AND be contract instead of full-time with benefits.  She said, “Well, you know, sometimes it’s worthwhile to take a job for less money at a good company working for a good manager – someone you could learn a lot from.”  I said “Oh, so what do you know about this company?”  She then told me that she did not actually know anything about this company or manager since it was not her account, but maybe she could find out, if I was interested.

Wait, so I should consider a huge pay cut and loss of benefits because of a great manager, which you have no idea if you even have?

Something smells fishy

In their defense, some of them seem to have noticed a problem.  Here, one recruiter claims that the profession was originally “to both find and court the ideal candidates for our clients.” but admits that they’ve wallowed into a position where “sourcing” (ie. finding) a candidate is their bread and butter.  He goes on to say:

“Gone will be the days when finding the candidate somehow filled a gap in the recruiter job description – technology will take care of that.”

Indeed.

Says another recruiter:

Recruiters need to become experts in selecting candidates, they need to be better than the client at predicting which candidate will succeed in each role in each company.

Except how could they be?  When the biggest problem companies face is finding skilled developers, how could a non-technical person ever tell whether someone was qualified?

No really, I’m asking.

I understand why candidates continue to talk to recruiters.  As painful as it is, sometimes a position is only open through them.  But why would a company want to pay exorbitant amounts of money (something like 10-30% of the annual salary) just to be put in contact with someone they got off Craigslist?  Whose naked pictures do they have?

What is the MOST important factor when deciding which developer to hire?

Thursday, April 8th, 2010

You may know that Code Anthem is a startup currently in stealth mode.  However, we are doing some market research using the totally awesome Ask Your Target Market survey site.  Overall my experience with them has been great.

Without exposing too much, I thought you all might find this tidbit interesting.  The title of the survey was “Assume that you are a manager who is hiring programmers for his/her software team:”"


These results make me happy. Overwhelmingly most people thought that a programmer’s technical skill was the MOST important factor when deciding which one to hire.

While it might seem obvious to some that this should be so, I think we all know that’s not how it works most of the time.  People want a meritocracy, but we’re left a bureaucracy instead.

So what is the disparity?  Is it just wishful thinking on the part of the hiring managers?  Or is it that they just lack the right tools to actually make that happen?

How to Find Crappy Programmers

Tuesday, April 6th, 2010

I read plenty of articles about how to recruit great developers, but what if you are only interested in the crappy ones – what then?  Perhaps you aren’t willing to spend good money to make money, or you just think getting work done is overrated.  Whatever the reason, this series of articles on Crappy Programmers will do the trick.  Welcome to the first installment: ‘How to Find Crappy Programmers’.

The job post is your potential programmer’s first impression of your company, so make it count with these offputting features:

1. List a String of Acronyms for Technologies

No matter if the person writing the post or doing the interviewing has any idea what they mean.  All that’s important is that they were used in your code base at some point in time.  There’s nothing developers love more than playing buzzword bingo in job posts. 

JMS, XML, J2ME, AJAX, SSRS, SSIS, JSB, WCS, JSTL, HTML, DHTML, XHTML, MOSS, SOAP, BO, WPF. 

You get bonus points if the technology is over ten years old.  Don’t worry if it seems like you’re filling positions with checklists, developers like having years of their work marginalized into a neat little box.

2. Put an Arbitrary Number Next to Each Skill

It’s important to pay people based on the years of experience they have, not their talent, proficiency or overall competency.  To that end, be sure to put a number next to each skill that represents some number of years.  A job posting for a Technical Lead might then look like this:

10+ years total in the IT field
8+ years with Microsoft technologies
5+ years with relational databases, like SQL Server
3+ years with C#
1+ years with WEB technologies

Then you don’t have to consider anyone with less years of experience, even if their skill level is higher.  After all, since the person is older, they will fit in better with the other old managers.  Don’t actually mention age though (that’s illegal) – the proper career terminology is “culture fit”. 

Plus, since they were already well into the workforce while most of the current technologies were created, they have a firm grasp of the fundamentals, like PowerBuilder.

3. Say Nothing Positive About the Position

We’re all very desperate for a job “in this economy” and you did say that the multiple positions would be “filled soon”.  Don’t waste space talking about what sort of projects you might work on, what the team environment is like, how the developers work together or anything technically appealing whatsoever. 

By completely ignoring what a developer looks for in a job, you’re letting us know up-front the sort of don’t-care attitude at the company.  This sets the stage and limits developers asking for things when they come on-board, like non-broken chairs or licensed software.

Agile is for hippies.

4. Use Euphemisms for the Negative Aspects of the Job

Obviously, if anyone knew what it was really like to work here, no one would take the job.  After all, that’s why our other developers have all left and we’re constantly hiring.  Clearly we will need to lie, so here’s an easy translation matrix:

What the Job Post Says What it Really Means
Standard work hours are 40-50 hours a week We expect developers to live in their tiny tiny cubes 24-7
This is a support position We don’t allow our developers to have a life outside of work
You will work closely with the PM, DBA and QA Our environment is highly political, riddled with ridiculous rules made by people who don’t understand software, and we get very little done
This position involves working with our real-time application I don’t know what real-time means but it sounds good
Great opportunity for growth Only a desperate person would deal with this shit
Job candidate must be resourceful, responsible and able to work well under pressure. Our corporate culture is basically the ‘Lord of the Flies’

5. Require Resume to be in Word doc Format

Requiring resumes to be in the proprietary and platform-specific Word .doc format, instead of .pdf, .html, or .txt formats, is a nifty little test early on in the hiring process.  You want to make sure that your developers are adept at jumping through HR hoops, even on technical matters. 

We do not want our developers to have any basic principles in their work, or to have a keen understanding of interoperability or usability.  We also like it when recruiting firms paste their logo at the top of our resumes and add lame summaries – our resumes were too much about us that.

This is a special treat for Java/UNIX developers.

So there you have it, folks. By following these simple steps, you are well on your way to hiring crappy developers. 

But wait, some good developers might still slip through this cover, so stay tuned for our next installment of the Crappy Programmers series by subscribing here.

Atlas Developers

Friday, April 2nd, 2010

There is a stigma surrounding “Rockstar” or “Superstar” developers.   Sure, they are “nice to have”, but they are also selfish, egotistical and a complete pain in the butt.  They would definitely hire them if they ran into one (and of course, they don’t) but they’d do it begrudgingly.

These are the same people who struggle with messy codebases, delayed (indefinitely, often) schedules and overrun budgets.  Of course, they don’t notice the relationship between the two…

Fact is, superstar developers are aboslutely positively necessary.

Rockstar developers are more productive, but that’s not what makes them necessary.  What makes them necessary is that they have passion.  They care enough to:

  • Go out and speak to users (even when it’s uncomfortable) and find out what their problem spots are and then motivated enough to fix those problems (even if it means pushing past stodly upper management).
  • Implement source control, a continuous build system, automated testing, high test coverage,  a good production release process and so many other things that make good quality code.
  • Dig in deep into a technical problem, even if it means learning new things, reading books, tracking down experts online for advice, wading through forums, messing around with prototypes for days and even staying late to do it.
  • Learn about all aspects of software even when not specifically asked to by managers, like security, encryption, redundancy.

Not only can they take on the tough technical tasks and the overhead of the items described above, but they can also inspire other team members, train them and even compensate for their slowness.

What a rockstar developer is NOT

  • Someone who prefers to hear the sound of his own voice, rather than learn something new.
  • Someone who prefers to insist that he was right, rather than figure out what’s actually right.
  • Someone who prefers to have people think of him highly, rather than produce great things.

I think you might have confused the term “rockstar developer” with the term “douche bag”:

An individual who has an over-inflated sense of self worth, compounded by a low level of intellegence, behaving ridiculously in front of colleagues with no sense of how moronic he appears.

from Urban Dictionary

Note: just because a douche bag thinks he is a rockstar developer, that doesn’t make him one.  Please don’t pollute the whole rockstar pool on their behalf.  Now, back to real rockstar developers…

One or more rockstar developers can hold up an entire development team. 

Ideally the most awesome developer will have some sort of technical lead role, sometimes official, sometimes not.  If not, particularly if the lead is sub-par, the rockstar will likely leave.

If a development team has not a single rockstar, not a single person willing to put in the leg-work to really figure things out, then the project is doomed.   

The real trouble with using a lot of mediocre programmers instead of a couple of good ones is that no matter how long they work, they never produce something as good as what the great programmers can produce.

from Hitting the High Notes

Non-technical people will ask for features, bottom-line.  It’s up to the developers to figure out how to make the code extensible, maintanable, modular, service oriented, well formatted, regression tested and just overall quality code.  If the developers don’t care enough (or don’t know enough, same thing perhaps) then no one will do it.

New terminology, perhaps…

Some people fuss over the term “rockstar” developers because:

Rock stars get sex, drugs, parties, limousines, fame, glory, dates with supermodels, and Rolling Stone covers. Good programmers get . . . uh . . . fewer compiler errors.

from The One Tip to Rule Them All

I actually like the term Rockstar because it’s fun and because it accurately mirrors their role with the music industry from where it came.  The music industry is supported by rockstars.  A label with a rockstar is huge and grows exponentially by how many rockstars they have.  A label with no rockstars, but a small army of no-name-ers, is still small and there’s no amount of no-names they can add that will fix that problem.

Of course, music rockstars do also have a bad rep so maybe that contributes to rockstar developers bad rep.  Let’s try something else…

Atlas Developers

Borrowed from the title of Atlas Shrugged, of course.  And that title borrowed from the Titan in Greek mythology, Atlas, who held up the weight of the world on his shoulders.

Atlas Developers are developers who support the whole team.  They are highly productive, highly skilled and absolutely, positively necessary to any successful software project.

So tell me, who is the Atlas Developer in your team and what have you done for them lately?

Don't Judge a Developer by Open Source

Wednesday, March 24th, 2010

At Code Anthem, we’re big fans of the Signal vs Noise crew. In their book/manifesto Getting Real, they advise to hire developers based on “Actions, Not Words“:

When it comes to programmers, we only hire people we know through open source. We think doing anything else is irresponsible.

Strong words and a compelling argument. There’s only one problem. I am a damn good developer, and I have no open source contributions.  And I know plenty more where I came from, comparable and sometimes superior to our open-source-contributing contemporaries in technical skill and communication savvy.

Supposedly, any smart and passionate developer would contribute to open source. 

That is crap.  Here’s why:

1. It’s an arbitrary distinction.

Open source is a culture. There are plenty of smart and passionate developers out there who are not part of that culture.  And certainly there are plenty of dumb and curmudgeonly developers out there participating in open source.

You might as well not hire developers who don’t drink Mountain Dew or play World of Warcraft, just because there is a large subset of smart, passionate developers who do these things. 

It’s like golf of the executive business world.  Since the people at the top played golf/contributed to open source, then everyone they want to hire would do so also.  There’s a fundamental logic flaw.

2. There are there smarter ways to spend your time.

The stereotypical open source developer works for a bumbling corporate during the day, doing dull work (but necessary to make money) and then comes home to work on his passion, OpenOKHRWUJ Framework.  This is romanticized as being the high point of any developer, but how about a few (smarter) alternatives:

  • A developer has found a job that is challenging and fullfilling with plenty of technical freedom, leaving no need to express his/her passion in another outlet
  • Instead of doing a free project, the developer may spend his evening doing extra work for his employer, doing side contract work to make some extra money or working on a side business (still writing tons of top-notch code, except for money)
  • Instead of working at nights, the developer decides to spend time with his family (work-life balance anyone?) or actually get some sleep (god forbid my developer actually be alert and healthy)

While I wouldn’t fault an open source developer for spending his time that way, it’s a hobby.  Having other hobbies or spending time with your family or getting enough sleep does not make you a worse developer, it just makes you well-rounded.

3. Requiring open source contributions is sexist.

Open source is dominated by men even more so than the programming community as a whole.

prop-softfree-soft
from Women in Free/Open Source Software Development

It’s not because women developers are not as passionate or smart as men developers. It’s because women value work/life balance more than men, because the open source environment is sometimes (read:often) hostile towards women or for a myriad of other reasons. 

Actually, it’s irresponsible to require your new hire developers to come from a male-oriented pool. Alas… “Underrepresentation breeds underrepresentation”.

 

In conclusion, the goal to judge a developer by their “actions, not words” is a worthy one. But the means of using open source as the one-stop-shop to do so is incredibly flawed.