Imran on Tech
imranontech.com · Personal blog · on HN since 2008
Imran, a developer and recruiting startup founder, writes about programmer hiring, including the widely cited FizzBuzz interview post and the etymology of "hacker".
What HN saysHN links it mainly for the FizzBuzz screening post, and commenters debate whether many programmer candidates really fail such a simple test.
24HN people shared it
22linked it in comments
5stories submitted
12story points
12 months agolast shared
2008people per year2026
Most-shared posts
- 1Using FizzBuzz to Find Developers Who Grok Coding (2007)18 people · 3 points · first shared 2010 · 2 comments on HN
- 2The Etymology of "Hacker"5 people · 5 points · first shared 2008 · discussion on HN
- 3Why some companies need superstar developers and others don't1 people · 3 points · first shared 2008 · 3 comments on HN
- 4Are algorithms copyrightable? (2006)1 people · 1 points · first shared 2015 · discussion on HN
- 5Studying for job interviews isnt cheating1 people · first shared 2010
- 6Homepage1 people · first shared 2008
What HN people wrote when they linked it
cyphar · 2025-11-22
> For those that don't know, Fizz Buzz is less an aptitude test and more of an attitude test.
The articles which popularised FizzBuzz as an interview question stated as a categorical fact that most computer science graduates or programmer candidates (one article even said 199/200!![2]) cannot do FizzBuzz[1,2,3] and were absolutely recommending it as an aptitude test.
I personally think this whole thing was simply untrue back in 2007 (or at the very least incredibly overstated) and we are paying the price for it with ridiculous 15-stage interviews as a paranoid response to some urban legend from ~20 years ago.
[1]: https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w… [2]: http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz.html [3]: https://blog.codinghorror.com/why-cant-programmers-program/
patio11 · 2015-03-08
This is not a Japanese-only thing. It is a thing so common in America that there is a named test to detect it -- FizzBuzz [+] -- and this test, or one like it, actually catches many people out.
[+] c.f. Any of the following and note that they're from the nation of, ahem, conventional engineering culture:
http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
http://blog.codinghorror.com/why-cant-programmers-program/
http://www.globalnerdy.com/2012/11/15/fizzbuzz-still-works/
I would note that a common theme in these posts is "I thought it was a myth but then I tried hiring and the boogeyman sprung to horrifying life."
unimpressive · 2012-06-17
> I still don't trust the "Most coders can't do FizzBuzz" meme that generally accompanies the flowery you're-a-special-snowflake-talk.
Well of course, such talk misses the point. A "Coder" who can't do Fizzbuzz isn't a coder, or a programmer, or a hacker, or a computer scientist. It's a negative test, if you can't do it, then your not ready for a real programming gig yet.
From http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh… (Which appears to be the source of the infamous fizzbuzz question.)
"This sort of question won’t identify great programmers, but it will identify the weak ones. And that’s definitely a step in the right direction."
ig1 · 2008-10-06
send me a list of questions an I'll write a blog post answering them :-)
(I'm the author of http://imranontech.com/ and am creating a developer recruitment startup)
crystal_revenge · 2025-08-01
> You have to make the question very easy to account for nerves.
What's funny is that this current madness all started with Joel Spolsky [0] complaining that "199 out of 200 programmers can't code", which ultimately lead to the development of the now famous "FizzBuzz" [1] (is it still famous?) which was meant to be exactly what you're describing: Just a simple test that you can write a program from scratch.
It's also worth pointing out that Joel was writing about an entirely different world of software engineering. In the shadow of the dotcom bust their were still loads of mediocre programmers hiding out in corporate dev teams just modifying existing files. But when asked to build something from scratch, they literally didn't know where to start.
0. https://www.joelonsoftware.com/2005/01/27/news-58/
1. https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w…
dalke · 2015-07-02
My experience has been that "grok" as used by coders is synonymous to "understand", with the caveat that it's used to indicate in-group membership in the hacker community.
It is rarely used in the original, Heinlein sense.
For example, http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh… is titled "Using FizzBuzz to Find Developers who Grok Coding", but at best FizzBuzz can tell if someone had a basic understanding of coding.
At https://netbeans.org/bugzilla/show_bug.cgi?id=32241 you can read "Code completion does not grok implicit constructors". Here too it's used synonymously with 'understand'. Ditto with "The one where I grok jQuery" at http://www.chenhuijing.com/blog/the-one-where-i-grok-jquery/ .
I did find an example that is in line with the original Heinlein meaning; "How to Grok Web Standards" at http://alistapart.com/article/grokwebstandards uses it in the Heinlein way. My thesis is that 'grok' is often used to indicate in-group hacker membership. You'll notice that unlike the previous three, this explains the term 'grok'. This means it's not being used to indicate in-group membership.
throwaway09223 · 2022-12-09
No, it's not a US thing. In fact, it's a UK thing -- I believe popularized by Imran Ghory: https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w…
morelisp · 2021-05-27
> The entire point of FizzBuzz, as a programming practice, is to ensure the programmer does not try to write this exact code
No, the point of FizzBuzz, which is an interview practice is to make sure that the candidate has literally the minimum ability to translate a natural-language problem description into code.
There is no point using it for anything else. Not demos of languages or tools, not looking for a particular shape of solution, you don't even really need to let them finish writing a bug-free version of it. It is only to filter out the people who "learned a language" but cannot actually write a program. Which is unfortunately a ton of people.
https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w…
milesvp · 2021-03-13
Historically fizzbuzz was meant as a sanity check. Can this dev code a simple for loop with some conditionals in it? It was made up because some dev realized that too many poor candidates were making it to late stages of his hiring process. It’s not meant to make candidates stand out, it’s meant to be a practical filter. My personal experience as a dev is that my weakest teamates would visibly deflate anytime a work problem came up that required a simple for loop, so it’s not a terrible bar to filter on.
https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w…
Someone · 2021-02-07
Apparently, FizzBuzz (https://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-w… A nice page about it: https://www.tomdalling.com/blog/software-design/fizzbuzz-in-too-much-d… is a useful test to weed out bad programmers.
If so, this can, too.
geofft · 2015-12-29
I'm going off of the standard treatment of the problem, from people who do a ton of interviews:
http://blog.codinghorror.com/why-cant-programmers-program/
http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
My reading is that the scaffolding isn't the problem, writing that loop and conditional, within the margin of error of what compiler errors / an IDE can tell you to fix, is the problem. So essentially yes, they're staring at a blank sheet of paper.
TimSAstro · 2015-05-03
Interesting dilemma. I had assumed that re-writing in another language basically meant you were copyright free (as long as you're not literally transcribing or automatically translating), but it appears it's not that simple: http://imranontech.com/2006/12/04/are-algorithms-copyrightable/
nocman · 2014-12-06
"the common media use is more ancient than ours"
^ That is by no means a settled debate. Even in the comments section of the link you produce as evidence ( http://imranontech.com/2008/04/01/the-origin-of-hacker/ ) there is plenty of debate on the conclusions.
You should have just ended after suggesting that hte debate is pretty much unresolvable. :-D
And just to be up front about the whole thing -- I prefer the non-malicious use of the term. Hollywood has a pernicious tendency to stereotype anything and everything, and the fact that that culture is mostly responsible for promoting the malicious use of the term means that in my book they shouldn't get to determine its meaning.
Again, unresolvable. :D
pierrec · 2014-12-06
Let's agree that this semantic debate (previously on HN [1]) is pretty much unresolvable. A word can have multiple meanings, and the common media use is more ancient than ours. [2]
[1]: https://news.ycombinator.com/item?id=7838663
[2]: http://imranontech.com/2008/04/01/the-origin-of-hacker/
davidgerard · 2014-06-03
It started meaning that. http://imranontech.com/2008/04/01/the-origin-of-hacker/
GFischer · 2013-10-22
It is. There are a lot of really bad programmers out there.
However, you're probably not looking at the places where such programmers would apply... try an entry-level job here in Uruguay (pay: about U$ 800 / month after taxes), you'll get a lot of people that fail fizz-buzz .
The original poster (Imran Ghory) was from the UK, and Reginald is from Canada. Neither are Silicon Valley.
http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
http://weblog.raganwald.com/2007/01/dont-overthink-fizzbuzz.html
ctdonath · 2011-08-18
One comment mentioned "Fizz-Buzz" which I hadn't heard of. Interesting tidbit. http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
viraptor · 2011-07-30
It also says he reads blogs like coding horror. I believe it refers to http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh… (made popular by http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.… )
Fun thing to say on HN... maybe not so good for a conversation with random person trying to hire you ;)
jdietrich · 2011-06-30
Syntax is the easy part. The hard bit is abstraction, as proved by FizzBuzz[1]. The core syntax of a language like Ruby or Python can be learned in a couple of hours. Learning to write useful, maintainable software takes years.
How do you create an intuitive, visual representation of recursion? Iteration over an array? The task isn't creating a visual representation of current programming paradigms, it's creating a whole new conceptual approach. I'm not sure that such a thing is even possible.
[1] http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
mattmanser · 2011-02-03
fizzbuzz is an oft cited example of a simple test:
Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”.
http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-wh…
dang · 2025-05-27
Worry not! Your gravitation is well-founded.
The earliest documented use of 'hack' is from "AN ABRIDGED DICTIONARY of the TMRC LANGUAGE", written in 1959 by Peter Samson. (TMRC was the Tech Model Railroad Club of MIT.) The definition was itself a playful example of what it was defining:
HACK: 1) something done without constructive end; 2) a project undertaken on bad self-advice; 3) an entropy booster; 4) to produce, or attempt to produce, a hack. HACKER: one who hacks, or makes them. Samson (2005): "I saw this as a term for an unconventional or unorthodox application of technology, typically deprecated for engineering reasons. There was no specific suggestion of malicious intent (or of benevolence, either). Indeed, the era of this dictionary saw some 'good hacks': using a room-sized computer to play music, for instance; or, some would say, writing the dictionary itself."
https://www.gricer.com/tmrc/dictionary1959.html
The 'malicious' connotation (e.g. breaking into someone else's system) dates from early 1960s phone phreaking. The claim that the malicious sense came earlier than the creative sense was made in 2003 by a researcher [1] who retracted it when this 1959 usage was pointed out:
"as soon as the 1959 citation was discovered I conceded that I was probably wrong about "hacker" originally having malicious connotations" (https://news.ycombinator.com/item?id=19416623)
I'm not sure Peter Samson would agree that it was "discovered", but never mind.
[1]…
quietbritishjim · 2018-11-19
> ... can't remember a simple trick like that
What "simple trick"? The original point of FizzBuzz is not to check that the interviewee produces hyper-efficient code that avoids repeating the divisibility checks (or, for that matter, to check that they repeat the divisibility checks and are able to defend why that's simpler). It's to check that they can write down any solution at all (within reason [1]). Doing that doesn't require any tricks; you literally just need to write down the requirements in the form of code. Unless you count for loops as tricks! I know the guy who came up with FizzBuzz [2], and he did so to root people who couldn't code at all, not those who weren't good at coming up with (or memorising) coding tricks. Or, if the "trick" you're talking about is memorising, verbatim, a simple for loop solution to FizzBuzz without understanding it, then that can be countered with small variations of the problem.
I agree that some interviewers pose questions that are too hard, which ending up testing ability to perform in an unrealistic situation more than actual programming competence. Of course this happened before FizzBuzz existed. Similarly some probably set a straightforward FizzBuzz and overanalyse details rather than worrying about whether it works (or worry about silly syntax mistakes, which are perfectly reasonable on a whiteboard).
[1] http://joelgrus.com/2016/05/23/fizz-buzz-in-tensorflow/
[2]…