Hacker News new | ask | show | jobs
by rayiner 4562 days ago
One thing I think is problemetic in the tech community is the failure to separate the profession itself from unrelated cultural aspects of the people in the profession. The industry has trouble conceiving of what makes an excellent programmer except by reference to the characteristics of existing programmers. But there is no objective insight into the probitivity of these characteristics. Nobody really can measure how much programming for fun or by 13 really matters. This leads to a lot of cargo culting ("don't hire anyone without a github!") and deempahsises training people who have aptitude but don't have the same characteristics as other programmers. This is closely related to your point about privilege. Because the industry doesn't have objective ways to evaluate programmers, it over-relies on heuristics and cultural traits that favor people who "fit the mold." The Asian guy who programs for fun gets the opportunity, while the gal who could be an excellent programmer with proper training never gets steered toward the industry.
2 comments

This is a topic that interests me, since I have not typically fallen in line with many of the "nerd/geek" lifestyle stereotypes (I don't game, watch animated movies, collect figurines or collect comic books... that sort of stuff. Instead I like going to sports bars, weightlifting, and reading sci-fi (...whoops, I guess I do conform there)).

Nevertheless, in a way I still find myself subscribing to the idea that people in tech tend to fit these stereotypes. If I imagine a hypothetical group of [company name here] devs, I imagine them as all anime-watching gamer bros. On the other hand, when I actually encounter any particular developer, it would surprise me more to learn that they are an anime-watching gamer than it would to learn that they are not. I somehow picture groups of people to be members of a cultural group that I consider to be a minority.

I think this apparent contradiction might be caused by a discrepancy with how tech professionals are portrayed in media (as anime-watching gamer bros) with how they actually tend to appear when I meet them in person ('normal' yuppies, often young parents or 'DINKs', with a wide variety of hobbies and interests).

This article on the Space Shuttle software team is a wonderful contrast to the stereotypes (often valid) of people who work in Silicon Valley: http://www.fastcompany.com/28121/they-write-right-stuff. I think the contrast between the team described in the article (older, mix gender, often married with kids), and the roomful of young men who coded in high school is extremely relevant to this issue.
> Because the industry doesn't have objective ways to

> evaluate programmers, it over-relies on heuristics and

> cultural traits that favor people who "fit the mold."

I think this is mostly wrong. It's hard to objectively evaluate many professions. How do you evaluate marketing professionals, or lawyers, or graphic designers? It's all fuzzy. And it's especially fuzzy for 22 years olds without a track record of experience to look at. I don't think that software companies do it much differently than anyone else when it comes to hiring. We base decisions on gateways like prestigious degrees. We look at whatever experience we can (even if it's just a github repo). And we conduct interviews where we do our best to ask real world questions.

Is this process perfect? Of course not. But is it pretty good? I think so. It's obvious who the great programmers are. It's obvious which ones are awful. And there's a mushy middle where it's hard to tell who's gonna work out and who isn't. I suspect that most other fields are about the same in this respect.

I don't know anything about graphic design, but the marketing and legal fields approach recruiting differently, at least at the entry level. Companies hire people that they think can be trained, and train them using the extensive institutional knowledge companies hold and pass on internally. There's no belief that say the best marketing folks were the ones doing neighborhood projects as teenagers. Marketing folks usually are subject to very intensive internships or entry level jobs that teach them everything they need to know. The prevailing model in law or banking or consulting or accounting is to take people with aptitude and train them to do things "the firm's way."

There's a lot more similarity at the level of experienced hiring obviously. And this model of hiring is expensive. But it also has benefits. Firms create new professionals from raw materials. They don't have to wait for trained professionals to walk in the door.

Your comment really had two separate points one around training practices and another around hiring standards and occasional cargo culting. It was only the latter that I was objecting to.

It's interesting to think about the first point though. Why are training practices different in software? I can think of a couple of hypotheses:

A) Programming is one of few fields where it's possible to self train. B) Programming is a relatively young field that hasn't matured enough to develop rigorous training practices. C) Software companies aren't profitable enough to support expensive training programs. D) Training of programmers is a relatively futile endeavor as most programming success will come from innate talent that is either present or not in any given individual.

Just off the top of my head I put the most weight on A and C (especially for startups) though I'm fairly uncertain. There might also be other reasons I haven't thought of.