Show HN: 15-question language identification quiz
quiz.triplebyte.com
quiz.triplebyte.com
> You're in the top 3% of engineers! (We should know, we've interviewed thousands.) We can totally help you get a job if you're interested.
It is worded as if scoring well in this is an accurate predictor of engineering skill.
...or to retarget engineers on FB and other channels :)
Of all the languages on there the only one in that set I had never used / seen at all is Kotin and that's the one I got wrong.
Several of them were mandatory for me to learn in college but I haven't seen since. (looking at you, Prolog and Verilog... Verilog is useful but I don't do hardware dev)
A lot of them could be inferred from what the code is doing. For example, PHP and Perl are sometimes really hard to distinguish, but I was able to get PHP right by deciding that "this ain't what a Perl hacker would write". Same with Ada v. VHDL.
I feel like this quiz was much more about how much you've dabbled at surface level in various languages, enough or not enough to remember specific details to aid in process of elimination. For example, I knew what GLSL stood for, so the picture was most definitely not GLSL. And I had at one point written Scheme and looked into Lisp enough to guess that it was Clojure and not Lisp. And I remembered vaguely enough that Objective-C still uses C-like pointer notation, for example. And I remembered enough of computer engineering class to immediately identify that the VHDL question's code fit the use case despite not having written a line of VHDL (or Verilog) ever.
As an ex-perl dev, (looks at self) shrugs in disbelief!
Which isn't saying much.
I remembered it somehow as "clojure doesn't allow you to define fun"
On second thoughts, though, I guess there is no need for a JVM language's syntax to resemble Java's (much, anyway). E.g. Jython, JRuby, Groovy, etc.
My score: "You got 8 out of 15 right You're in the top 50% of engineers. Can your friends beat you? Share your score and challenge them to do better!"
One was because I got two LISPs mixed up with each other, the other because it was in a language I didn't recognize (Piet) and there were two languages I didn't know anything about as options (GLSL was the other).
Saw this thread yesterday and at first did not feel like taking the quiz (because I thought I would not do well, also because I didn't think it was too interesting).
But today read about half of this thread again. Then felt motivated to take the quiz (just for fun). Was not expecting more than say 8/15. Surprised to see I got 14/15 (but in top 3% of engineers -- definitely not :). It was definitely partly due to reading some of this thread first, else I would never have been able to figure out the Ada/VHDL question (at least just by guessing / logic / prior knowledge), even less the Piet one (since had never heard of it - at least had heard of Ada and VHDL). I guess the result was also partly due to being interested in programming languages right from the start of my career, and having at least read a little about many, and having dabbled in some (apart from the ones I worked in for non-trivial periods).
Anyway - somewhat interesting quiz idea.
I do think it should be harder; like when you get a lesser known language, also add the choice for others; APL + K + J for instance, or worse (for many) K or J showing either.
C vs C++ vs D.
Prolog vs Haskell vs Ocaml. Curveball there could be something like Mercury.
Haskell vs Purescript.
It's like it was created by somebody who either likes German, or Olde-Timey English Writing.
Not a high bar to clear, mind you ;)
When interpreting as PHP however
if(isset($_SESSION['uid']))
header("Location: reg");
}
is either missing an opening bracket or has got one too many closing brackets.Anyway, fun stuff. I laughed when Piet came up.
Would be more fun if they would implement the same code snippet in different (but maybe quite similar) languages and one would have to label the (lets say six for an interesting difficulty level) snippets.
I've sort of followed C# since it was released, and never realized this.
I would occasionally call it Db (D-flat) to be an arse.
I'm not sure if there was a formalized reasoning behind the name or if what I heard was just a rationalisation.