6 ms·
Here's my issue with it. I've taken a few programming classes. I could easily write fizzbuzz as soon as I understood the syntax for loops. So, we're talking day
by phaus 9y ago
Here's my issue with it. I've taken a few programming classes. I could easily write fizzbuzz as soon as I understood the syntax for loops. So, we're talking day 1 of programming class. I could write it in like 4-5 different languages right now. It would take some work, but I might even be able to figure out how to write it in assembly. I still haven't written an actual program beyond the simple exercises where you are trying to run a calculation and get a specific output from the command-line.
I suppose it's good at filtering out people that don't even know the syntax of a programming language, but do such people apply to programming jobs frequently enough for fizzbuzz to be useful?
Edit: Didn't intend to offend people. I just can't comprehend why a person would apply for a job when they don't know how to do it. I now get that it's a bozo-check, I'm just surprised there's s need for it. I hire in a similar industry and while we run into a lot of people that are obviously bad and or inexperienced, they usually at least know the basics.
- jstanley 9y agoPassing fizzbuzz isn't meant to indicate that the person is a good programmer. Failing fizzbuzz is a quick way to indicate that the person is not a good programmer.
- phaus 9y agoDo you really have people apply that don't even know the syntax for a single language?
- jstanley 9y agoI don't work in hiring, but from what I've read online, it is unbelievably common.
- phaus 9y agoThat's interesting. I struggle with imposter syndrome, so I only apply to things I feel pretty confident about. I've also never failed to get an offer though.
- fleg 9y agoIt's more common than you think, I really didn't expect it to happen that often until I've started interviewing people. Of course it's a minority, but a simple test like a fizzbuzz that we can be done with in a matter of minutes can save a lot of time to both parties.
- knodi123 9y agoI interviewed one, and it was a second-round interview! Granted, it only happened the one time, but it's a funny anecdote.
- ioulian 9y agoFailing the test is an indication that the person is 'not' a programmer. You are mostly right, but are there any cases that a programmer wants to join a company and he can't even write a FizzBuzz program? I have asked that question to all the programmers that I've worked with (with various levels of skill) and all of them can write it. Is there any data on that? I would love to know if that test actually have helped recruiters to identify bad programmers. Like if they can explain what Ajax is and how it works, but fail to make a FizzBuzz program... Sorry if it's a bit off topic
- teej 9y ago> You are mostly right, but are there any cases that a programmer wants to join a company and he can't even write a FizzBuzz program? Maybe I'm just being cynical but once you get involved in the process of screening candidates you realize that people will literally apply to any job regardless of their ability to perform it. So yes, there are thousands of cases every day where someone wants a programming job and can't even write FizzBuzz.
- jstanley 9y ago> I have asked that question to all the programmers that I've worked with (with various levels of skill) and all of them can write it. Then you now understand the standard of person that gets filtered out by fizzbuzz.
- douche 9y agoIt happens. Interviewed somebody for my company and asked them to write a little bit of code that would print a Fibonacci sequence, one of the other old chestnuts. It didn't go well, and neither did his employment when my boss hired him anyway...
- cauterized 9y agoYes. I've interviewed "developers" who failed FizzBuzz, and one who took 20 minutes to come up with a solution. I've never even specified a required language for it, and generally accepted pseudo-code.
- DanBC 9y ago
- dcminter 9y agoThe purpose of fizzbuzz is not to select for people with good programming ability; it's to eliminate people with no programming ability or knowledge whatsoever.
- douche 9y agoIt's just a bozo bit check to filter out the bullshitters and the severely incompetent. Doubtless there are better ways to do so, but it's such a pervasive trope among anybody who's paid attention to software engineering culture for more than five minutes that it's a huge red flag if you get blank stares and flailing when it is brought up.
- octo_t 9y ago> do such people apply to programming jobs frequently enough for fizzbuzz to be useful? speaking as someone who does hiring at a large software company: yes, yes they do. In significant numbers.
- danielbarla 9y agoHaving inflicted even easier versions of FizzBuzz on interviewees, I think you'd be highly surprised at the results. About ~30% of developers could not write any form of a loop, in any language, pseudocode or otherwise. This involved a sample size of about 100. My personal theory is that many of these people constantly fail interviews and therefore skew statistics by reapplying, i.e. at any point the active market is filled with them. Nevertheless, I was shocked.
- csense 9y agoThis is a real effect. If you have 100 people, 95 of them are competent and put out 6 resumes every 3 years (on average 2/year), and 5 of them are incompetent and put out 100 resumes every year, then in a typical year the average hiring manager will see 95x2 = 190 resumes from competent applicants and 5x100 = 500 resumes from incompetent applicants. Over 70% of your pile of resumes consists of incompetents even though they're only 5% of the population you're sampling from. (Numbers are all made-up.) Article in a math journal here: http://www.maa.org/sites/default/files/pdf/upload_library/22/Polya/schwenk293.pdf http://www.maa.org/sites/default/files/pdf/upload_library/22...
- danielbarla 9y agoIt's interesting, thanks for the link. Coincidentally, I also experienced a similar effect to the somewhat famous "two humped camel" programming aptitude test [1]. This paper argued that you can split candidates into two normal distributions based on aptitude. In my own tests, what I experienced was more of an extremely long tail on the right side, which is actually somewhat similar to the linked paper. In our own tests, had a bunch of people fall into the 40-60% range, but there was a small bunch of people clustered around 100%, which are just people who could have scored 100%+ being binned down to the max score, and not a second normal distribution. [1] http://www.eis.mdx.ac.uk/research/PhDArea/saeed/paper1.pdf http://www.eis.mdx.ac.uk/research/PhDArea/saeed/paper1.pdf
- tjalfi 9y agoThe author of "The Camel Has Two Humps" later retracted[0] that paper. [0] http://retractionwatch.com/2014/07/18/the-camel-doesnt-have-two-humps-programming-aptitude-test-canned-for-overzealous-conclusion/ http://retractionwatch.com/2014/07/18/the-camel-doesnt-have-...
- mattmanser 9y agoMy problem with this comment is that it really sounds like you haven't even tried to use the fizzbuzz for a hiring process. And if you haven't, what point was there in you commenting? Here's one of the original blog posts that afaik made FizzBuzz famous back in 2007, it deals with your issue: http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz.html http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz....
- phaus 9y agoMy comment ended with a question. The point was to gain an understanding of why this process is common and/or useful. I'm interested because I work in a related field and I may eventually try to become a developer. I was just curious why this is viewed as useful when it seems so easy to me, a person that isn't ready to be a developer. Another reason I'm curious is because it's hard for someone learning to program to determine what the barrier to entry is. As in, how much do I need to know before I apply for a junior role? I don't like wasting people's' time.
- mattmanser 9y agoAh, ok. There are three things you probably don't realize. 1. While you think anyone can learn fizzbuzz on day 1, a significant proportion of the population do not grasp the logic behind variables and loops (40% I seem to remember, don't quote me). AFAIK the argument about why this is still rages, it might be because we're terrible at teaching programming logic, or it might be that they're really not capable. These people can still graduate with a CS degree. 2. There's loads of people who apply for jobs that have absolutely no experience. Lies, half-truths, etc. This happens in all fields. They believe they can learn on the job, not knowing what they don't know. 3. The basic math of bad applicants vs good applicants. Good applicants only apply for a handful jobs (or none at all!). Bad applicants will make hundreds or even thousands of applications trying to get the job they want. See Joel's "Everyone thinks they’re hiring the top 1%": https://www.joelonsoftware.com/2005/01/27/news-58/ https://www.joelonsoftware.com/2005/01/27/news-58/ 1 + 2 + 3 = lots of fizzbuzz failures Making FizzBuzz a great way of weeding them all out.