Live data from Hacker News

If Carpenters Were Hired Like Programmers

dawood.in

121–130 of 164 posts

Re: If Carpenters Were Hired Like Programmers

#121
post #71

Original discussion to the original article posted by Jason Bock (which was merely copied by Dawood Sangameshwari without proper attribution [1]): https://news.ycombinator.com/item?id=7819413 [1] There is some attribution a the bottom of the page, but it isn't proper. It contains neither the original author's name, nor is it a clickable link. It's just a plain text URL. Better than nothing, but still the most shabby…

At the top of http://www.jasonbock.net/jb/News/Item/7c334037d1a9437d9fa650... Bock says I didn't write this, so I can't take credit for it so I'm not sure failing to include his name or clickable link really qualifies as "shabby" attribution.

At least James Bock added a (clickable) link to the closest source he could find. Dawood Sangameshwari could have taken at least that one.

Re: If Carpenters Were Hired Like Programmers

#122

Man this is the strangest thing to me. I used to be a carpenter. I would show up at your job site with my tools, you might ask me a couple questions, I've had guys ask me to lay out a wall or two off the prints. Call a reference to see if I show up to work. Then I get the job. Usually, doing something myself or my boss never had done before, and we would figure it out off the prints, and build it. I just go turned do…

The page won't load for me so I haven't been able to read the article yet, but I am a construction worker turned programmer as well. I have found myself in the same boat a number of times. I have been turned down for a couple of jobs due to not being enthusiastic enough or because I couldn't come up with a good enough reason for wanting to work at that particular company. Recently I was turned down for a job because I have a side hobby that might distract me from my main job. sux.

Re: If Carpenters Were Hired Like Programmers

#123

Earlier quoted context omitted.

It's a contrived situation that involves significantly more nerves than any real life situation will. I've known more than a few programmers that were perfectly capable of doing their work, but struggled through interviews because they got nervous during the coding phase. The reality of the situation is that contrived problems in stressful situations are going to result in a lot of false negatives. That may be fine f…

But its not contrived -- its like your entire job. You're literally saying "I can't perform my primary job function when there is any pressure whatsoever". That MIGHT be acceptable if you're interviewing for an entry level job. The only other reason I can think for being unwilling to do this is if you're incapable of working with other people - because whiteboarding out solutions with other devs is super common. Even…

For people early in their career, a job interview can be one of the most stressful experiences in their entire life. I still remember every interview I've had. Writing code on a whiteboard with "everyone's eyes on you" can be extremely stressful for some people. I know brilliant coders who get absolutely paralyzed at the thought of having to present to an audience. (which is what whiteboarding during a job interview is, the social dynamics are entirely different when you're working with a co-worker on a problem)

If 99% of a coders job will be sitting at their desk cranking out code, why put some much emphasis in the hiring process on how they perform in extremely high stress social situations? The skills that make someone a great interviewee do not necessarily line up to being a great coder. If someone wants to up open their favorite IDE or VIM and show you how they code, why not let them? Personally, having dysgraphia, I would offer to open a text editor to write psuedocode rather than use a writing utensil.

Of course, every hiring situation is unique. If your developers are regularly required to present to clients, investors, or inside management stakeholders, then whiteboarding could be a valid hiring test.

Re: If Carpenters Were Hired Like Programmers

#124
post #108

Earlier quoted context omitted.

In fairness, the analogy would be: carpentering job = 2 week programming contract job and in that case the expectations in the programming job would be more lax, and few people would care about your "passion for the company." Even controlling for that difference, I still think you make a good point. Though it's probably true for modern corporate business culture in general, and not specific to programming.

No. These are companies that I worked for for years at a time. That is not a correct analogy. I have been hired, and worked for 4 years based on a 10 minute conversation.

Imagine that instead of your competent self, you were an incompetent carpenter. How long would it have taken, on the job, for your boss to figure out you were incompetent? How hard would it have been to fire you?

Because that's the big issue with programming jobs: Many places hate firing, and it sure takes a while before we separate whether someone doesn't understand the tools that are currently being used, and will learn, or he's hapless.

Re: If Carpenters Were Hired Like Programmers

#125

This is so true. I see a lot of job ads that seem to require very specific experience, but where anyone in that field could do the job. If you just make up eg 4 different types of technology, and put a few things in each bracket: [SVN, Git, Mercurial, CVS] [MySQL, PostgreSQL, Oracle, MSSQL] [AMQP, MQTT, STOMP, RabbitMQ] [Java, C#, C++, ObjC] Now if someone came along and said they'd solved a domain problem (eg tradin…

A lot of programming nowadays is not as much about writing primitives, but knowing ins and outs of specific frameworks and libraries. How reasonable would it be to expect an Objective C / Swift guy to write high-quality C++ Boost code and vice versa? In every company there's some amount of code that's written in X but definitely looks like the person writing it was more experienced in Y and just dragged Y idioms into…

If they are a really good programmer, they most probably have touched pretty much every popular language and paradigm. Give them one to two weeks to get used to the language and another couple of weeks to get used to the frameworks.

Re: If Carpenters Were Hired Like Programmers

#126
post #92
post #63

Earlier quoted context omitted.

Here's the thing though: the reason people hiring get so hung up on specifics is because they get burned repeatedly. Coding is just hard. Learning it is hard, doing it is hard, and there aren't enough people who can do it well to go around. So if you're a manager and need to "build a team", you can either play that needle in the haystack game (which you will always lose, because the needles generally don't even show…

Do you think someone who is familiar with git wouldn't be able to be productive with svn in more than one day (while doing other tasks of course)? Getting familiar with the code base takes much longer than picking up C# if you have a Java background.

Why are you arguing with me? I agree with you, and said so. I was trying to explain the thought processes of those who don't.

Basically, managers get burned repeatedly trying to hire people who aren't productive. And the reasons they aren't productive ultimately do end up being "So and so has been here for six months and still doesn't know subversion [or C#, or whatever]". So... the logic goes that if you hired for that skill in the first place you wouldn't have this problem.

Re: If Carpenters Were Hired Like Programmers

#127

It's worse than that. The CHAOS study, among others, shows that 80%+ of all software projects are viewed as failures by the people who pay for them. Meanwhile you come onto boards like HN or reddit and instead of talking about how to establish and keep trust with the folks writing the checks, everybody's talking frameworks and tools. So picture a subdivision where 80% of the houses are broken down, priced too high, i…

Also:

A) Phew, almost done with this roof.

MANAGER) Hey, Mr A! When you're done with the roof, can you build another one on top of it? So we can pick it off and use in our next project?

A) But... is it built using same blueprints as this one?

MANAGER) Of course not. Just make to roof so we can fit it on another building. That way we will save time.

A) But that does not make sense. I can build the other roof much faster than we will spend time transporting and adapting this one -

MANAGER) Of course we will save time. You used nail-o-matic 2000 didn't you?

A) Yes, but that doen't have anything to do with who long...

MANAGER) Good, good, now get going, build me another, reusable roof.

Re: If Carpenters Were Hired Like Programmers

#128
To all my friends here on Hacker News: Over a few years, I prepared a FAQ document on company hiring procedures for questions that come up here on Hacker News all the time about legal and effective hiring procedures. Most companies use lousy procedures for hiring workers, and that throws away competitive advantage. There is an optimal way to hire, and a century of research on what it is. Rather than repeat all my previous keystrokes here, I'll just link[1] to an earlier version of the FAQ. If you don't want even to follow a link to a very popular comment, let me just pass on here the summary of the FAQ:

EXECUTIVE SUMMARY: If you are hiring for any kind of job in the United States, prefer a work-sample test as your hiring procedure. If you are hiring in most other parts of the world, use a work-sample test in combination with a general mental ability test.

[1] https://news.ycombinator.com/item?id=4613543

I'm happy to answer follow-up questions about this. It's better for companies and it's better for capable workers for companies to learn how to hire smarter.

Re: If Carpenters Were Hired Like Programmers

#129

Earlier quoted context omitted.

So is jQuery a library or a framework? I've seen it called, and used, both ways. It's not a hard and fast definition, and that's what I mean by "really understanding" something. I want the things I build to be able to be used in any way that it would be useful. It's the fractal landscape at the boundary between the definitions that I'm interested in. I find myself refactoring code a lot, pulling pieces out and puttin…

I believe that jQuery is neither - it's a collection of tools to assist with programming webpages in whichever paradigm is appropriate for that particular task. This approach gives the advantage of ceding ultimate control back to the programmer, at the cost of some internal inconsistency.

That's an interesting view. I can't think of jQuery as a tool. I have a collection of tools I use, I find a tool to be quite different from an application, a library, or a framework. Sublime Text is one of my tools. So is git. I also consider Ruby a tool. My laptop is a tool. I have some git-x commands that I've been slowly building on that I use collectively as a tool.

To me a tool is an extension of one's mind or body that goes into all projects that you work on. I can give away an application or a library. I can't give away a tool, or at least, it wouldn't really make sense to. I want to use all my tools to build a project, all my projects to use the same tools. That's why I stick to Ruby rather than bouncing around. I use Coffeescript/jQuery on web projects but I consider it a kludge, though not as much of a kludge as using Opal would be. I'd want Ruby integrated tightly into the browser before I'd prefer it over Javascript. I don't mind Coffeescript because I find that if you stick to a certain convention, Coffeescript is as easy to maintain as Javascript and I prefer the terser syntax.

My ultimate goal would be to be able to hack on all my tools like I hack applications. For example, I'd love to be able to replace Sublime Text with redcar, an editor written in Ruby, I've taken baby steps in that direction with my git scripts. I haven't decided if it would be better to write my own editor though. I'm probably at least a few years from that being able to integrate that into my workflow.

Re: If Carpenters Were Hired Like Programmers

#130

Man this is the strangest thing to me. I used to be a carpenter. I would show up at your job site with my tools, you might ask me a couple questions, I've had guys ask me to lay out a wall or two off the prints. Call a reference to see if I show up to work. Then I get the job. Usually, doing something myself or my boss never had done before, and we would figure it out off the prints, and build it. I just go turned do…

The page won't load for me so I haven't been able to read the article yet, but I am a construction worker turned programmer as well. I have found myself in the same boat a number of times. I have been turned down for a couple of jobs due to not being enthusiastic enough or because I couldn't come up with a good enough reason for wanting to work at that particular company. Recently I was turned down for a job because…

Oh yeah, side work. I forgot about that.

To boss: "No we can't come in on Saturday because 4 out of 5 of use will be pouring my neighbors driveway"

Boss: "Oh, Do you guys need to borrow the concrete tools?"

Edit: This was actually a repost without attribution. Here is the real link: http://www.jasonbock.net/jb/News/Item/7c334037d1a9437d9fa650...

Post reply on HN