Hacker News new | comments | show | ask | jobs | submit login
If you don’t have pet projects, I don’t think I want you (ayende.com)
76 points by wccrawford 2322 days ago | hide | past | web | favorite | 101 comments

If you have a life, I don't want you.

If you have a family, I don't want you.

If you have enough energy to do your work but not enough energy that after work you can work some more, I don't want you.

What is it that makes employers so enamored of people with 'pet projects'? Are they easier to take advantage of? Do they work long hours without expecting compensation? Does not having dependents mean that it's easier to pressure then in to working harder?

Really, having or not having pet projects (and I have plenty, don't worry) shouldn't matter even a little bit a the hiring time. You judge people on their ability as good as you can and what they do in their free time is simply none of your business.

So, if you ask me about my 'pet projects' I don't want you.

The worst side-effect of this is actually "If you were really passionate about your last job, I don't want you."

I have old pet projects from times when my work at previous jobs was interesting but not all-consuming. The work I do for my current employer is so interesting and fun to me in so many ways that when I have spare coding time on non-work-hours, I'm still working on these work projects. My work projects are my pet projects.

Granted, someone like me is less likely to be in the market in the first place because I love my job, but if I suddenly were in the market (there are many very hypothetical reasons this could happen -- company runs out of runway, company is acquired by company that shifts focus in ways I don't care for, etc, etc) a filter like this would cut me out for all the wrong reasons.

Having said all of that, I think people hiring employees do need to employ some arbitrary filters that could potentially filter out stellar employees as a side effect, and I don't think that's a horrible thing.. it probably helps more often than not and is thus worth the rare corner case situations where it ends in a tragic mistake.

If I'm in the market looking for another job I have more than enough contacts with people I've worked with in the past that such arbitrary filters are a non-factor for me, so the take away is that if you're a great developer, develop contacts and then you don't have to worry about things like this.

I'm in the same boat as you, I got assigned to work on a project that keeps me really interested and my side projects right now are basically research and experimentation that might be useful for my main work project.

Looking at projects like Ruby on Rails, Node.js and others like it where the creator created for work reason.

Or look at Linus, his side project was Git. It was something he needed for work.

I agree here. Doing that extra pet project at work is a zero sum game vs. doing your own pet project. I find that it's easier to "find purpose" with a side project at work (whether it's an util, or just fixing a bug) because it directly addresses a pain point for you and the people you see every day.

pet projects answer a thousand questions that a cv and an interview cannot.

What type of work does this person enjoy, are they building libraries for developers or products for end users, A lot of time people will open source their side projects, you get insight into their working practices, how clean their code is, do they test, do they get caught up in details and not the end product.

Sometimes people pets projects are working on a large open source project, for employers I believe that is the jackpot, you have their communication with users and peers, the output of their work and the thought processes that go along with it.

Employing people is not about giving every developer in the world an equal opportunity for a job, its about finding the best people for your team in a minimum amount of effort

> pet projects answer a thousand questions that a cv and an interview cannot.

If the answer is 'no' you'd have to ask a lot of follow up questions, some of those may be illegal, to decide whether or not having pet projects is even a possibility for the applicant.

> What type of work does this person enjoy, are they building libraries for developers or products for end users, A lot of time people will open source their side projects, you get insight into their working practices, how clean their code is, do they test, do they get caught up in details and not the end product.

Yes, that may be true. But having pet projects is not a pre-requisite for employment anywhere.

If you can not assert the ability of your applicants during an interview by asking them job related questions then maybe you should let someone else do the hiring?

> Sometimes people pets projects are working on a large open source project, for employers I believe that is the jackpot, you have their communication with users and peers, the output of their work and the thought processes that go along with it.

That is absolutely the wrong reason to go for this particular applicant because that is simply none of your business. You get what you pay for, the time they spend on the jobsite and the output they generate during that time. You have zero title to 'their communications with users and peers' and so on, and if you lay any claim to those then you're a very bad company to work for (yes, I know there are companies that do just that).

> Employing people is not about giving every developer in the world an equal opportunity for a job, its about finding the best people for your team in a minimum amount of effort

Surprise. Employing people is all about fairness and treating your applicants - and your employers - with dignity. What they do or do not do during their time off is none of your business.

The reason I would not want to work for a company like that is because I would doubt the long term viability of a company that sticks their nose in places where it does not belong.

Typically this is indicative of a 'we hire people like us' mentality. You will likely find that places like that employ just stereotypical copies of the person that runs the place instead of being representative of the workforce in general.

The best way to hire people is and has always been by personal recommendation from somebody you trust.

I guess I could have been clearer,

"Sometimes people pets projects are working on a large open source project, for employers I believe that is the jackpot, you have full insight into how they communicate with users and peers, what work they produce and insight into the thought processes that go along with it."

If you're hiring a software engineer and that person programs in their spare time, it is a pretty clear indication that they not only want to be a software engineer but also enjoys programming.

I used to ask this question, but now I've generalized it to asking if someone has any hobbies. I find passion in any area to a good indicator of the type of people I want to hire.

>I used to ask this question, but now I've generalized it to asking if someone has any hobbies.

I think this is far better than "pet projects". Some people would rather socialize, read literature, play music, play or watch sports, work on cars/home improvement, paint, travel, camp, write, get involved in politics, read the news, or any number of things! Rest and relaxation are particularly helpful to mental health. Even playing video games, watching movies (with a certain amount of moderation), or doing things that are more classically endorphin-releasing "fun" than programming contribute to a well-balanced individual.

I'd rather hire someone with a sense of balance in their life.

I personally enjoy life more when I only work about 40 hours per week at the computer. Also since I have a small daughter I prefer not to spend extra time in meetings. I also like to travel a lot so I need time off. On the plus side (for my clients) I generally feel very productive once these conditions are met.

The problem is that programming in your spare time is not a necessary condition for enjoying or having passion for programming.

Further, its also discriminatory against people with families, or other hobbies, or against people who don't want to do the same thing that they did 40-50 hours during the week on the weekends too.

Let's be clear: it's only discriminatory against people that don't have pet projects. Having a family or other hobbies and having pet projects are not mutually exclusive.

Really? Try having a 18 month old & a 3.5 year old and single parenting.

And yet here you are, demonstrating that you have time to read Hacker News and participate in the discussion.

I'm not saying that parenting isn't time consuming but it's not as good an excuse when it's so obvious that your lack of time for more programming is also caused by much less noble activities than parenting.

That is a terrible argument as downtime is essential for humans to stay productive.

Of course people are going to watch some TV with their families, or play an hour of games to unwind a little, or go watch some sports game with their buddies, or spend god knows how many hours practicing their musical instruments. This is what keeps people sane, productive, balanced, and happy.

Having other hobbies after work is generally a good sign that the person is mature, and has good perspective on life.

Exactly. It's hardly as if there's a lack of time. The average geek, in my experience, seems to waste more than enough time playing computer games, watching movies, or bunkum on the TV. It's not a giant leap to suggest that people actually using their spare time to work on aspects relating to their career are, and should be, doing better than people who treat it as a 9 to 5. (Oh, and posting on HN.. hehe)

So doing things other than thinking about work is "wasting time", huh? I guess as an employer you want to hire people that will grind themselves into dust making you rich, but as an employee I work to live, not the other way around.

Like the person who wrote the article and as someone who has hired for more than a decade for my own businesses, I've noticed my best developers had pet projects. They tend also to be the most passionate about developing. It's not an absolute rule, but I found a good indicator.

As for having a life, let me tell you I have a 6 months old who spent 1.5 months of his life in the hospital, a wife, I'm CTO and co-founder of startup for which I code about 60 hours a week. On top of that, I have time to help my my wife with her business (my previous company), I have fulfilled time with my family, take the weekends off and have time for personal hobbies and pet projects. I sleep enough and sleep well and I'm happy and balanced.

A lot of the most involved and active people in the tech community in Montreal that I know personally have startups, children and time for their family. I'll tell you they're the most awesome, bright, funny and balanced people I ever met.

One thing that makes it possible for me is a 10 minutes walk commute. The other biggest factor is having priorities straight on how I want to balance my life. Is it easy? No. Do I always have the energy and passion to go forward? Yes. Seeing my son smile when I wake him up each morning helps a lot.

You don't have to be young, without a family and responsibilities to have the passion and energy to be able to do things you care about for yourself outside your work. Even if you work more than 40 hours a week...

Another thing: some pet projects or hobbies can take only a few hours a week or a month. So not having enough time is not a valid argument in my opinion.

"A good indicator" - And that's all it should be. This guy uses it as absolute criteria.

I find it extremely hard to believe that you have 6-8 hours of sleep a night.

I would say 6 hours an average during weekdays. Maybe 9 hours of sleep during the weekend days.

I agree that not having side projects shouldn't be a disqualification, but I disagree that it shouldn't be a factor at all. Depending on the project it can show enthusiasm, a desire to learn technologies other than what your job uses, and the ability to carry through from an initial idea to a shipping product.

> If you have a life, I don't want you.

Seriously, there is a lot of judgement in that sentence.

"Having a life", having a family is a matter of choice. I can choose not to have a family and work on my pet projects. I choose how I spend my time. If I sacrifice relationships in favor of pet projects, does that make me a lesser person? could it possibly make me a better software developer?

Is it really unreasonable to imagine that there are many talented software developers in the "lifeless" set of people with pet projects? Perhaps the author is of the opinion that the set of people with pet projects have higher ratio of talent compared to the full set. That is not to say that there are not passionate talented people without pet projects.

You can read a judgement in there if you want to, it is actually the opposite. I think having/not having pet projects or other life choices you make outside of your professional hours should not have such a direct impact on being hired or not.

Of course you are free to make your choices any way you see fit and if you choose work over personal relationships that does not make you a lesser person.

So you can have your pet projects and another person could have their family (or both, or none!) and I think the only thing that should matter during the job interview is what they intend to do during their shifts and whether or not they are capable of doing that to the best of their abilities. Your free time is yours, not your employers and is non of your employers business.

My point is that having pet projects might actually increase software development skills. In the same way that practicing any activity generally makes you better at it. People who're good at socializing, basketball, football or whatever typically invests time in it. The more you do it the better you get at it. Why shouldn't the same apply to software development?

A person who invest their free time in relationships or sports will probably get better at those things than a person who only invests in pet projects, but why shouldn't the person investing in pet projects get better at his/her activity?

I think it's unfair to say that the employer should ignore all skills achieved your in spare time because other people choose to spend their time differently.

If you have a family, I don't want you.

Is that really so unreasonable? I have a 1 year old daughter, and I'll be the first to admit that she'll take priority over any work project at any time. Looking around the office, the people without kids tend to work longer hours, to more unpaid overtime and take less days off. Is it really so unreasonable for an employer to want to those sorts of people.

This is bullshit. I have a full time job, a family and I've written a book in the past two years, and I still have time for side projects. Normally while commuting on the train or in the evenings, but still...

Pet projects are a good proxy for determining whether a developer can actually, you know, develop. Much better than asking trivial algorithm questions or getting someone to figure out a puzzle. They're also good fodder for interviews:

* "Why did you go with this architecture/data structure/library instead of Y?"

* "What's the next step in your roadmap?"

* "Why would I use this?" / "Why did you start it?" / "What's different about this and project Y?".

My fallback is to get them to provide a code sample "that they're proud of", which is not quite as good, but still indicative that they're still thinking about their craft. Hiring based purely on an in-person interview and a CV is incredibly risky - I've seen people who can talk a pretty good line, but write really obnoxious, poorly structured code.

Perhaps think of it this way: A critical part of any developer's job is figuring out what tech is coming in the next couple of years, or which is available now and not being used, pushing the envelope of what's possible. Hence why the OP says "When you tell me that your only projects outside of work are 5+ years old, that is a bad indication..."

Why the downvote? It is bullshit. This is the first stage in making yourself an obsolete COBOL developer - just say "I don't have time to keep up with the latest technologies." and twiddle your thumbs for 5 years.

Lots of knee-jerk defensiveness on this thread.

The downvote because:

- The first thing I think when I read "this is bullshit" is "fuck you, you are bullshit". You start by obliterating any chance for a constructive interaction

- You are not actually engaging the arguments of the person you respond to. It seems you didn't get past his first three lines.

- Not only does it seem like you didn't read the arguments, it also seems you cannot think of valid reasons why a decent programmer would not have pet projects. Otherwise your response would have been less vitriolic.

- You are complaining about being downvoted ... by repeating the offensive assertion that probably got you downvoted in the first place and then poisoning the well by asserting that anyone that disagrees is engaging in 'knee-jerk defensiveness'. That's the second time I thought "fuck you", without even having considered what you actually wrote.

Pot, meet Kettle. You're judging me on the first word of my response, when the rest of it responds to his argument in detail.

Here's another response. This time I've quoted what I'm replying to, to save you any more confusion:

> Really, having or not having pet projects ... shouldn't matter [at] hiring time. You judge people on their ability as good as you can and what they do in their free time is simply none of your business.

So, my choice is between a) someone who likes programming enough to have a personal project - code that you can see and ask questions about - and b) someone who claims to have been too busy raising a family or having a life to have done anything else but work, can't show you any code because it's either "none of your business", or so much of a drag that they can't bring themselves to do it outside of work hours.

It's a no-brainer who I'm going to pick, and it's nothing to do with exploiting him.

I always suspect these people are actually looking for developers who will work long hours with little pay, because they are so driven. They aren't looking for the best and brightest, just the most driven.

I think it's actually quite easy to 'care' without having a driving passion that forces you to give your life over to programming. In fact, I did it for a number of years. I did all my programming at work, and all my relaxing at home. And I was happy, and loved both.

Testing for 1 thing because you want something related is a big mistake. You can easily have both false positives and false negatives. And since you're testing for the wrong thing, you won't know until it's too late. If you ever do.

"Put simply, we are looking for a .NET developer and one of the most important things that we look for is passion"

How much passion is there in the .NET scene anyway? It's very business oriented, I'd expect developers to be more sort of corporate and better at time reporting. It's not like you have to be a hipster to churn out spreadsheet automation scripts.

It's sad that you associate "passion" with "hipster". I can't think of a more inaccurate characterization of a highly motivated developer. I also didn't get the impression that he was looking for a "hipster".

I am myself a passionate developer, that doesn't mean I have the time to make massive open-source projects just to get a better resume, because I'm neck deep in writing code for the company I have been running for the last 7 years. Not all people have the luxury to figure out something worthwhile do do and put on github.

I hate hiring people and putting a price tag on them, it's a cruel world but not every job interview has to be like American Idol if you know what I mean. Of course he should try to find people that care but that doesn't mean that the people that care has to write excellent code, or that they have to write tons of open source code. They just need to deliver at work.

Running a company for seven years would exempt you from any questions I could have about your passion.

You're absolutely right: they just need to deliver at work.

At the same time let's assume, for the sake of the argument, that having side coding project is the best predictor whether someone can "deliver at work". If that's the case then it's perfectly rational for an employer to look for people who do that.

Is it the case? I certainly think that when I look at someone's non trivial code, I can better tell whether he's a competent programmer than from reading a one page resume or even an hour long interview.

Important note: it's not the existence of the code that is important but an existence of good code.

At risk of inspiring ire...

I'd have certain doubts of someone who does produce lots of open-source code, insofar as that could be construed as they don't think highly enough of their own code to sell it.

(As I write I'm waiting for GCC to rebuild due to the need to fix a bug therein. That such a bug exists at this late date in a product so widely used as a foundational tool does not inspire confidence in OSS. I find such flaws tend not to occur in "closed" software, where someone is paid to polish the corners that nobody wants to.)

I'd have certain doubts of someone who does produce lots of open-source code, insofar as that could be construed as they don't think highly enough of their own code to sell it.

Also, people who do volunteer work are obviously unqualified.

I find such flaws tend not to occur in "closed" software, where someone is paid to polish the corners that nobody wants to.

"A" bug in gcc proves that open source stinks? Have you used IE6?

Out of curiosity, what bug did you encounter?

It's not like you have to be a hipster to churn out spreadsheet automation scripts.

You also don't have to be a hipster to contribute to open source or be passionate about your craft. What makes you think he's looking for a hipster?

I was just making a point. The quote sounds like something from Office Space.

Stackoverflow is written in .NET. It certainly has a more "corporate" focus than node or something - but that's not to say there aren't people building cool applications with it.

Yep, .NET has lots of things going for it.

I'd expect that the average .NET developer is a lot less likely to be sharing code on github than the average rails developer though.

Again, we see here the tension between the needs of the employers and those of the applicants.

An applicant needs to be judged "fairly". More precisely, a false negative is unacceptable. This is especially critical when he's just above the "hiring bar".

An employer crumbles over CVs, and needs to judge fast. False positives are unacceptable. False negatives are no big deal. This is especially not critical when the applicant is just above the "hiring bar". There are others.

Hiring processes aren't designed to be fair to the applicants. They are designed to work for the employers. It's like a spam filter, except with tolerance reversed: no spam in, some ham out is cool. My gut tell me that it definitely sucks, but my brain fails to come up with a solution.

I have found that I usually start working on pet projects when I am dissatisfied with my job.

At my last job, I found myself working on several different extracurricular projects at once. I kind of realized that this meant it was time to leave (and do my own startup).

If I found someone who was supremely happy with his job, I would expect that any extra time would be spent at work, either making the product better or developing something else related to that company's business.

With that said, there is nothing wrong with working on a pet project, just that it can indicate something bad rather than something good.

I'd expect someone supremely happy with their standard salaried job wouldn't be first out of the office every night, but I'd be alarmed if they were expected to dedicate their evenings and weekends to making their employers richer.

I used to think this too, but now my position is more nuanced. Certainly you need to have shown you have a passion for technology that goes beyond the norm, but there are other reasons you might not have lots of recent code outside of work. Maybe you have a family. Or maybe you have such a fulfilling current job that you don't feel the need to supplement it with extracurricular activities. Maybe you are interested in developing non-technical skills that would make you more useful in the future. Etc.

But some positions do require that Olympic athlete mindset. For other positions it's a detriment.

Maybe your employment contract states that anything you create is owned by your company so there is no code "outside of work." The question then becomes whether that is a contingency that has affected your passion or not.

As would be the case if you worked for some of the Bay Areas biggest names in tech.

I thought those contracts were not enforceable in CA? I'm most definitely not a lawyer tho, so I have little to back that up, but it's what I read in Joel Spolsky's answer here:


Generally they are not enforcable, but it doesn't stop folks like Google and Cisco from having them. And they are written with big letters in the front "THIS IS AN AT WILL ARRANGEMENT ..." which basically says they can fire you at any time for any reason and later "We own everything you do while you work for us."

Basically the message is "Sure work on your own projects and we will decide it's no longer in our best interest in employing you." and "If you do a side project and publish it or let it out in any way, we may decide its no longer in our best interest to employ you." I have heard stories of course but only have first hand knowledge of one person with whom Google decided to fire because they did some open source work they didn't like.

When I asked an employment attorney about these sorts of things his advice was that I could probably sue them and win but it was simpler and less expensive to just quit if I really wanted to work on other stuff.

> I have heard stories of course but only have first hand knowledge of one person with whom Google decided to fire because they did some open source work they didn't like.

Wow. That's quite a statement, I'm pretty sure there would be quite a few people that would like to see a bit more on that. Both from the perspective of having google as a future employer as well as to make sure you didn't make it up, it's quite a statement.

> just quit if I really wanted to work on other stuff

That, or publish the code under a pseudonym.

Maybe I'm misinterpreting. Are there really contracts that say that any code you write, even if it is unrelated to your work and off-hours is the property of the company you work for? If so, that sounds like a horrible arrangement. That would be like a chef making a sandwich for himself at lunch and having to give it to the restaurant where he works instead.

Yes there are. Big companies mainly, eg the News Corp contracts say that.


This is often referenced when a question like this comes up.

Or if you have a standard contract in Sweden

HP used to have that clause in '06 or so. I read through their agreement around that time.

I agree completely - also, in some jobs (yes, even in software) it's as important that you're well-spoken, out-going and social as you are a passionate developer.

In my hiring I'd have more alarm bells ringing for someone who spends the majority of their awake time coding vs someone who loves it but also loves doing other things.

I make good money from job ads so this does me a disservice but.. stop discriminating against people by getting them to send in their CVs. Headhunt!

I'm selfishly in support of preferring to hire people who show a strong out-of-hours dedication and passion for their work but it's not a realistic expectation for a regular job ad. Instead, hit GitHub, hit mailing lists, find the top blogs on the topics you're hiring for, and approach the people who pop up and seem to know what they're talking about.

You might have to let people work remotely, pay them more, or come up with other ways to pique their interest, but if you really want 24/7 passionate programmers, you can get them, with enough resources.

It's amazing how few employers do this, even those who do have the resources. Grab the top talent in your areas and find them by their byproducts. Why Google/MSFT/etc aren't trying to scrape up every seriously prolific developer on GitHub at $250k+ a year or whatever is beyond me.

I think you need to be sued for anti-family discrimination.

If you have young children, your chance of being able to do this sort of after hours programming can be near zero if you're doing all the parenting you should if you and your spouse both work.

Especially if you get in trouble for it at work (I know I've been places where you had to do 4-10 hours of paperwork to do it even).

sorry, but I think this is an arrogant and insulting attitude. I get the value of side projects, but assuming that someone who doesn't have any is an inferior candidate is bullshit. I know the blog post says "Not having pet projects doesn’t mean that you are a bad developer" but dismissing such people out of hand says otherwise.

you don't care about experience? so someone who writes ultra-high-performance code for a trading firm is worth less to you than someone who writes a 50-line rails app that lets you use the fabled "pomodoro technique"? good luck finding great developers with that attitude. but hey, at least they'll have "passion", right? because all salaried coding is generic and mindless, and anybody doing it is a drone with no skills or ambition.

In my experience, candidates with major pet projects, especially ones that aren't related to their current job, fall into one or more of the following categories:

* They don't have life, and are usually not the most pleasant people to work with, let alone communicate with non-programmers.

* For some reason cannot find a job that involves the passion/knowledge/skill they put into their pet project. The job market for programmers being what it is, that's a major red flag.

* They have a passion for programming, but aren't good enough to hack it in a professional environment. Often not so much a skills but discipline or team player issue, but yes, you can have a passion for something you are not particularly good at! Millions of amateur-[enter activity here] do it every day!

Having or not having a pet project is an good angle for an interview, but not a meaningful qualification in itself.

Hmm, seems I don't fall into any of these categories.

I design and build web software during the day, then at night and on the weekends I work on my own iOS and Mac apps. I've been offered full-time iOS & Mac design/development jobs but I don't take them for a few reasons, most importantly that I really like my current "real" job and the hardcore web work keeps my skills sharp.

So I'm not the first category because I'm married and do have a life outside work, I'm not the second one because I can easily find a different full-time job but choose to stay in the position I have, and the third just isn't applicable.

I don't really have a position on the pet-projects-as-interview-question topic, but just thought I'd put in my two cents.

I have pet projects. I also have a life. I have a job that involves putting my knowledge/skill/passion to work to a degree. Even if my employer would allow me to write each project in whatever programming language I was obsessed with that week, I wouldn't, because I don't want to maintain all my whims. Personal projects can be thrown away easily or restarted. All that work can be done without _any_ business concerns. That's just not reasonable for a paying job.

I have a lot of passion for programming and I hack it quite well in a professional environment, thank you very much. My passion requires that I fiddle about with personal projects so I can test out new languages, frameworks, styles, libraries, paradigms, etc. without any business concerns in the least. If there is a place where I could get paid well to just hack on whatever the hell seems fun at the moment, I'd definitely make a concerted effort to work there--I don't think it exists.

I do think that people can have a real passion for programming, have a life, and be able to work in a professional environment. They probably already have a job, or will get one very soon. All the points you listed are totally valid though, and I totally agree with your last point.

I think when you're young with free time AND passionate about something, you should dive into it and learn as much as possible.

When you're older and if you have children, PLEASE PLEASE spend the appropriate time being a GOOD parent. It seems like the world is more work focused than ever and parents are not spending as much time with their kids as they should. We want good programmers, but we NEED good parents even more. Our future will eventually rely on the next generation of adults and not just good software..

The obvious question: if I take a job with you, will you guarantee that work will not take up too much of my time, nor demand too much of my creative energy, so that I can continue to have my pet projects?

He can't. But I can guarantee this: an employer can't force you to work more than you're willing to work. They can try but you're not their slave.

Employment is a two-way street.

If the employer isn't happy with your work, for whatever reason, they can fire you.

If you're not happy with your employer, for whatever reason, you can quit.

If an employer is making unreasonable demands on your time, you quit. And to be clear: there is no universal of what's reasonable, so I'm talking about your personal standard.

Employment is a risk for both parties. You risk that the job will be boring, or demanding more time than you're willing to give but you're not the only one taking the risk. Employer risks that you'll be unable to do the work or slack off etc.

What you say is true, but it's important to realize that the nature of the risk is disproportionate. The programmer quitting his job has a lot more at stake than the company firing the programmer. For the programmer, it means a stressful job search, likely financial stress (even if s/he saved up a lot of money, it's not fun to be living on a finite supply), and all the feelings that go along with losing a job (wounded pride, fear of judgement from others, etc.)

For the employer, it means what? They now have payroll that's significantly lighter, and true, they're down a person, but realistically that just means they have to pressure their other employees to pick up the slack while they find someone new, and those programmers, not wanting to lose their jobs, probably do it.

Now, of course the important thing as a programmer is to have an attitude like yours, which mitigates the downsides of leaving a job. But not everyone has that attitude.

I find its a scale, from people who would rather do nothing when not at work to people where their work suffers from all the other stuff they are doing. My ideal candidates are somewhere in the middle of that scale.

There are two interesting things you can learn about people this way, one is where their passions lay and the other is what their time management skills are like. Someone who works feverishly on 20 things and gets nothing done, or folks who consistently pop out one or two things a month, month after month, in their 'spare' time.

Interestingly a bias that perhaps the OP recognizes shows up in this blarticle (what do you call one entry in a blog anyway). What if the candidate sent a picture of a 6 piece mahogany dining room set (because they spent all their spare time wood working) or an MP3 of their latest composition ? Its not OSS, its not 'tech' per se, but its an outlet for their creative drive.

Additionally, the author of the article is potentially weeding out the exact people his company is looking for. Some (myself, as an example) are passionate about what they do for their job, to the point where they do development on work projects in their spare time. Presumably that person is better than the aspiring OSS developer who grinds their job for 8 hours only to go home and work on their pet project.

I consider myself very passionate about programming. I do a lot of research and learn about programming in my spare time, but have hardly any personal programming projects to show. After work, instead of grinding away coding like I do every day, I'm learning how to draw, and paint, and play music. Does this mean I'm not qualified for this .NET position?

> I do a lot of research and learn about programming in my spare time, but have hardly any personal programming projects to show.

I think this point is not stressed enough whenever this subject comes up. A person who spends all his free time reading CS research papers and experimenting with different solutions to problems he encounters in his field is not passionate by this standard if he doesn't have a pet _project_ to show at the interview.

In that case, you could probably knock together a quick page or two summary of what you've been reading and playing about with. It might take a little time, but it's easily transferable to any other job applications, and you might even find something interesting to add to your cover letter.

I'd treat that at least as well as a pet project, and possibly more so.

I actually reject people without pet projects for an entirely different reason. I can find out much more about how you behave as a developer and whether or not you'd fit in with our company by reading your code than I can from any kind of interview or whiteboard challenge. Ideally you'd actually hire the prospective developer for a short contract project before hiring, but that has significant challenges and costs as well.

Think of a carpenter that claimed to be amazing at producing furniture, but had none to show you. Would you trust them on how well he could BS you in an interview? It's not about passion or dedication. If you, producer of code, can show me code you've produce, I'm taking a much lower risk on hiring you. And fortunately, there are enough people around with code to show that rejecting others is a pretty easy filtering decision to make.

Then give them a coding problem that takes a short amount of time but allows you to evaluate their skills. I relish these opportunities and respect the companies that ask me to do them.

To keep with your metaphor, ask the carpenter to make you a cabinet door.

Again, I agree with others here... if you're passionate about the startup you're working at (and you should be), that is your side project. I distrust people who work at startups that have side projects.

Any coding problem that could feasibly be completed in an acceptable amount of time would be too small to actually tell me what I want to know. I mostly don't want to know what algorithms you're aware of or how quickly you can type. I want to know how you structure and modularize code. I want to know how you debug things. I want to know if you can refactor well. In short, I want to know about how you handle building and maintaining real software. If I hired people to do coding problems all day, that would be another thing, but I don't.

A coding problem is less illustrative than a decent--LOC is always suspect, but let's say 10,000 LOC--corpus of work. Something to show much more than a toy problem.

Better still, however, is collaboration with open source projects--you can see individual communication between people as well as the developer's ability to enter a foreign codebase and be productive, (hopefully) without introducing bugs due to ill-advised changes without understanding what's being changed.

(We don't look at side projects or open source at my current employer. I wish we did.)

Free time is not equivalent to passion. Basing relationships on the internal emotional state of other people is pretty risky The passionately wrong are usually harder to deal with.

It's hit or miss, but a Great Deal of Robin Hanson's blog is about social signalling and the biases inherent thereof. Worthwhile effort, that.

The assumption that pet projects cannot be related to our work is weird to me. My full-time job title right now is "Newspaper Editor" — so you know the programming I do is not "work assignments" — but I have a whole host of tools I've written to automate the less-interesting parts of the job (from simple things like "calculate how many inches this will take" to more complicated things like "generate the files needed for this week's paper with these parameters and the ads placed in a configuration that will be both cost-effective and pleasing to our advertisers"). These are unquestionably work-related, but they're also unquestionably things I wrote just because I had an itch to scratch. I wanted them, so I made them. Why would my pet projects not be related to what I do?

This is the first thing I thought as well. Good programmers can have a wide selection of choice when it comes to their work, so I think they will often choose work they enjoy and can even get paid to work on 'pet projects'

At the moment the stuff I enjoyed writing the most I also got paid for. Does that indicate a lack of 'passion'?

Meh, he probably needs to de-generalize this thought and take it case-by-case. I didn't work on side projects for two years because I was obsessed with the project at the startup I worked at. He would've heard an earful from me if he said I wasn't "passionate"

I've said this before on related submissions: I enjoy my work, and it consumes all of my cycles allocated towards programming.

The HN response here is crazy.

Obviously 40 year olds are going to have less side projects, and obviously there are devs out there that treat development as a job, not a passion. I know a very good python dev that fits that description.

But seriously, no free time for side projects? Really? Absolutely no time?

It takes 30 mins to whip up something sorta kinda neat. That's an episode of Entourage. Give me a break with all this kids talk, eight year olds go to bed early, and teenagers don't need all that much attention every single day. Sure, help 'em with homework, etc. But lets face some facts, there are plenty of unpaid OSS developers that happen to be parents and they don't whine about not having enough time.

Travel 50-100% for current job. Having a kid with special needs. Having multiple children. Owning a home. Aging parents with disabilities. Outdoors/Travel nut (you or spouse). Civic/political/community involvement.

Any of these personal situations can eat into your "personal" time considerably. Add up 2 or more, and your remaining personal time is what you carve out of your sleep hours.

I'm lucky that I don't have to work two jobs like of the less fortunate, and I don't fall into all (or even most) of the categories above, but I don't watch TV and I don't have a github page.

I used to have pet projects, until one of them became my full time job.

First off, some of us have lives and families. Some of us work more than just 9-5 and commute for more than one hour each way.

Secondly, none of my pet projects are OSS. I have a lot of pet projects, some in their infant stages, some pretty far along. And they are not for public viewing, but for my pleasure, which is why they are not OSS. [edit: and some are a collaboration with other people who would prefer that code stays closed]

Thirdly, is there such a thing as a passionate .NET programmer!? (half-joking)

> Thirdly, is there such a thing as a passionate .NET programmer!? (half-joking)

Blog author is definitely the one. He is one of the core NHibernate committers, prolific blogger with a lot of very interesting posts, developed Rhino Mocks mocking library, created RavenDB http://www.ravendb.net/ and did a lot of other neat things. So yes, there is such a thing.

See also "I don't program in my spare time. Does that make me a bad developer?" http://news.ycombinator.com/item?id=2664243

My thoughts on spare-time projects in relation to other professions: http://news.ycombinator.com/item?id=2664358

haha, I'm the opposite. I will only hire someone who has NO time to implement their awesome personal projects. I ask them about their personal projects, and this stuff is awesome. Too bad that they're spending all their passion on their current employer.... that's okay, I don't mind, if you would just scootch over here into our office instead :)

"... we are looking for a .NET developer ..."

can't think of a better reason for having pet projects.

All I got from this was that the interviewer had no idea how to judge the interviewee and needed someone to blame it on. I wish there was a part of career development that dealt with dealing with the idiots we want to hire us.

Also consider that you are looking for a .NET developer. While I guess it is a technically completely respectable language and stack it is not the OSS hotbed.

If you don't eat breakfast, I don't want you.

this is completely silly. what about all the developers that devote all of their time on the product at hand...? i guess... your heuristic says that you dont want them? and you'd rather take the guy that goes home at 5 and gets distracted with pet projects that sap engineering time and focus?

simply put, you are thinking it wrong.

I keep a portfolio of minor source code for these questions.

Other than that, I'm finishing my Master's in my 'free time'.

the author is just trying to build a company culture reflective of himself. simple as that...

More voodoo, selection bias, hiring B.S. Why hire on the basis of ability, when you can make up arbitrary criteria? Everyone is exactly like me, right?

And if that causes you not to want someone, then I don't want you!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact