Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Often times people ding you for doing anything different than they're used to, or what they see as "the standard".

The worst is when they basically ask how you'd build their product. Some people can't handle a different answer, even as they're busy hiring you to improve things.



I do think we have to distinguish two things though.

It's not really bad to ask someone to do a design session with them and "build their product with them from scratch" isn't inherently bad. That's actually pretty neat if you ask me.

What's bad is if there's only a single answer and that's whatever they actually built themselves, which might be a pile of thrown together startup poo that was never cleaned up. But you have the same problem with all sorts of "needless trivia" type questions.

And then do you really want to work at a company, where you can't have a proper "pros and cons of different approaches" type of discussion? If you got hired, you'd have those kinds of discussions with them on an ongoing basis. Bad on the company for letting that person do the hiring but they got what they deserved so to speak.

Just to make an analogy:

If they simply ding you for using 4 spaces coz they use 8, that's bad.

If they ask you why you use 4 spaces, they use 8, give them pros and cons and are there any other approaches and what are the pros and cons of those? That's a good interview so to speak. As an interviewer I would give bonus points if the candidate says something like "I used 4 spaces because I thought that's what you guys were probably using coz everyone's moved away from 8 spaces but secretly I love usings tabs and setting tabwidth to what I want but in reality it really really doesn't matter as long as it's consistent across the codebase as humans can get used to almost everything and this one isn't worth fighting over. Linters and formatters exist for a reason".


2 spaces ftmfw. I want to see as much on the screen as possible. Horizontal scrolling is bad.

Who still uses 8? Isn't that like a COBOL thing?


Linux kernel still uses 8 I believe. IIRC wide indentation+narrow pages were chosen partly to encourage using functions and avoiding deep nested logic.

https://www.kernel.org/doc/html/v4.10/process/coding-style.h...


See that would definitely get you not hired ;)

Not because you use 2 spaces. You can argue 2 spaces and the pros and cons and how horizontal scrolling is an issue. One question back would be for example if that means you have huge run-on files where a single function does everything and that's why you need like 17 levels of indentation and that's why only using 2 spaces for each becomes important to you. And then you'd need to argue how that's better for visibility and what might actually be worse about it. If you can do all that, you're hired (if the rest of the interview goes well :P )

    Who still uses 8? Isn't that like a COBOL thing?
That works as a flippant comment when we're joking about code indentation after working together for a while and we get along great. As the one and only answer in an interview, you're out. That's quite disrespectful and no it's not a COBOL thing, I've seen (and used) 8 spaces and argued for tabs or 4 much later than COBOL days. In fact I've never written a single line of COBOL.


Let's compromise. What do you think of 3?


Just add a few zero width spaces. It'll be FINEEEEE :D

https://en.wikipedia.org/wiki/Zero-width_space

Btw, at an old job, some joker developer added or copied 1, and broke the whole testbed. It was quite funny. I came over to the sourcecode hosted in Gitlab, ran my regexes that look for naughty characters. Found it after it ate the devs for half a day.


More than a decade ago I suggested this as a compromise as a joke, but then decided to try it out - ended up liking it more than any other options and have used it for all my personal stuff ever since.


I just recently read about something that requires - hard requirement - 3 spaces for indentation. Most likely read it here on HN. Makes me sick to even think about.


If I ever NIH a YAML-alike I fully intend to require the mixing of tabs and spaces when indenting.


Authorities have been notified.


This. No hire if, when asked an open-ended question, the candidate does not namedrop unprompted the components of the company's actual production tech stack. Clearly they're not knowledgeable about the engineering aspects of the job and are just bluffing their way through the interview process.


Engineering interviews in tech are arbitrary and biased by design.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: