Live data from Hacker News

I Hate Puzzles: Am I Still a Programmer? (2011)

zef.me

61–70 of 268 posts

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#61
Best stick to the shallow end of the pool if you can't swim.

Do you program? Then you are a programmer. However, in some circles, where extremely complex problems need to be solved, they would say, " No ", because you can't do any of the programming required, and you'd be as useful to them as a rock, only less useful because you take air and food.

I play volleyball occasionally, but if I went to the olympic men's team, they would tell me I don't really play volleyball, I've not yet earned the right to say that I have.

It's a matter of skills and standards. In the right context I can call myself a car mechanic.. like if my car needs air the tires, but beyond that I'm not.

If you can program simple things on the web you can get away with calling yourself a programmer until you run into problems that make you realize you're not, like complex graphics algorithms.

I can cook food at home, but if I walk into a 3 michelin star restaurant and try to get a job, it's not like I'm going to write an article if they don't like my food. Boo hoo, they made me cook for them, how dare they? Whatever they're doing, it's working, so why knock the process that produces success when you can mimic it?

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#62

> I’ve been programming for 18 years now. Then congratulations, you are a programmer! Despite what you'll hear from people peddling various flavors of Kool-Aid, "programmer" isn't a personality type. It's a job description. If you program, you are a programmer, end of line, full stop. Don't let anyone convince you otherwise.

Once upon a time I was a programmer, building CRUD apps for enterprises. I hated puzzles, too.

Then I discovered quicksort, and graph search, and Bayesian inference, and Dijkstra, and Karatsuba.

I'm still a programmer, but now I love puzzles, too.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#63

Interview questions you don't like/fail shouldn't be viewed as reflective of you, but reflective of your fit at that company. They asked a puzzle-y question you couldn't solve? Either their problems are puzzle-y, or they have terrible criteria for evaluating people; either way, do you really want to work there? They asked a hard algorithmic problem, the kind that was someone's PhD thesis 30 years ago, and which you'd…

Agreed on all points.

But how would you interview a candidate? I see what not to do.

Here is what I do:

* Ask about their previous work. Dig into something they are excited or proud of.

* Try to solve a problem together. Usually a simplified version problem I am actually solving at the moment at work.

* If it is a new grad. I will ask them some simple questions about data structures, school projects.

* If there is any sample code, anywhere, I like to see it and it is a big + sometimes.

* See if and what kind of questions they ask.

Does that work? What would you add/remove?

I try not be a "dick" and take the approach of "ok, let's work on this together" approach because that is how things work here.

Another approach (which I don't like as much) is to go by the "we want to hire smart people" mantra. "smart" here is is nebulous of course. So how do you do it? IQ tests. Oh but those are illegal, so just write a tests that looks like one without calling it an "IQ test". That involves puzzles usually too. So I think that is how puzzles became popular.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#64

Best stick to the shallow end of the pool if you can't swim. Do you program? Then you are a programmer. However, in some circles, where extremely complex problems need to be solved, they would say, " No ", because you can't do any of the programming required, and you'd be as useful to them as a rock, only less useful because you take air and food. I play volleyball occasionally, but if I went to the olympic men's tea…

I have to admit, I don't understand what you are trying to say.

Are you saying puzzles are somehow the higher level of programming? You are completely wrong.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#65
I personally dislike puzzles (of the toy/jigsaw variety), riddles, and so on. But I love solving problems when programming. A programming problem abstracted to a word problem is no longer fun - you've taken away half the toolset I have for tackling the problem. It's the synergy between mind and machine that gives me deep joy when programming - the fact that the tedious repetitive parts of mental gymnastics are turned into creative problem solving, which in turn leaves me more time for creative solutions to the problems that weren't repetitive.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#66
post #62

> I’ve been programming for 18 years now. Then congratulations, you are a programmer! Despite what you'll hear from people peddling various flavors of Kool-Aid, "programmer" isn't a personality type. It's a job description. If you program, you are a programmer, end of line, full stop. Don't let anyone convince you otherwise.

Once upon a time I was a programmer, building CRUD apps for enterprises. I hated puzzles, too. Then I discovered quicksort, and graph search, and Bayesian inference, and Dijkstra, and Karatsuba. I'm still a programmer, but now I love puzzles, too.

Algorithms and puzzles are different things.

If I asked someone what is an algorithm and they replied 'it's a puzzle where you solve...", I would laugh my ass off.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#67
post #26

Ok, but a jigsaw puzzle is sooo not the kind of puzzle that programming is at all about, even the explicit "puzzle" questions that companies like Facebook dish out. I can't even think of one similarity between the two activities.

As far as jigsaw puzzles go, it would be interesting to see if there are unique ways to optimize your piece search.

There's the edge pieces and sorting by color. I've found that sub-sorting by pegs/holes can dramatically help - I had a "picture made up of pictures" puzzle which allowed me to correctly orient the pieces. Knowing even just two of the required slots, combined with the color, reduced the search to a reasonable brute-force search. Plus, by sorting the pieces you could actually do a brute-force without feeling like you might have missed a piece.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#68
post #62

> I’ve been programming for 18 years now. Then congratulations, you are a programmer! Despite what you'll hear from people peddling various flavors of Kool-Aid, "programmer" isn't a personality type. It's a job description. If you program, you are a programmer, end of line, full stop. Don't let anyone convince you otherwise.

Once upon a time I was a programmer, building CRUD apps for enterprises. I hated puzzles, too. Then I discovered quicksort, and graph search, and Bayesian inference, and Dijkstra, and Karatsuba. I'm still a programmer, but now I love puzzles, too.

> Then I discovered quicksort, and graph search, and Bayesian inference, and Dijkstra, and Karatsuba.

I would guess most "discovered" those because they had to interview. The % of programmers who need to Karatsuba or Bayesian inference to finish their project is very much smaller than the % of programmers who thought "oh shit, I better learn this because Google and Facebook keep asking about graph theory".

It it is perhaps an interesting secondary effect. CS concepts become useful not just because they are useful (and they are) but also because recruiters at many companies think they are. If tomorrow juggling skills somehow become popular during Google interviews. You'd see a lot of juggling programmers out there.

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#69

This is what really irks me about the industry as a whole. Large companies like Facebook and Google have hiring processes in place that aim to weed out the strong from the weak by making them solve complex algorithmic puzzles and solve them on a whiteboard, and for larger companies like Facebook or Google who have massive troves of data, this kind of makes sense to me, but only if you're hiring a programmer to work w…

[deleted]

Re: I Hate Puzzles: Am I Still a Programmer? (2011)

#70

This is what really irks me about the industry as a whole. Large companies like Facebook and Google have hiring processes in place that aim to weed out the strong from the weak by making them solve complex algorithmic puzzles and solve them on a whiteboard, and for larger companies like Facebook or Google who have massive troves of data, this kind of makes sense to me, but only if you're hiring a programmer to work w…

RegEx is just ludicrous a general requirement to "program" as anything else. I've never particularly wanted it to write the mathematical models I work with. I can think of just a single instance where I've used one in the last year and that was to display integers as ordinal numbers (hardly a sizeable task).

Every job needs a spec. Every spec should inform the interviewer and the interviewee of the skills and competencies expected by the role, and therefore what will be brought up in the interview. Adding "everyone should be able to criteria unrelated to role" is madness

Post reply on HN