TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The Taxonomy of Terrible Programmers

166 点作者 allenbina超过 11 年前

36 条评论

was_hellbanned超过 11 年前
It's like an all-inclusive guidebook for how to look down upon others and discredit them internally without any of the messy business of actually communicating with them about "their" issues. Why improve when you can label, isolate, mock, and ostracize?
评论 #6940563 未加载
评论 #6941681 未加载
gfodor超过 11 年前
This is great. I can pretty much put a timestamp on each of these of &quot;when I started acting like this&quot;, &quot;when I <i>realized</i> I was acting like this&quot;, and &quot;when I made a conscious effort to stop acting like this.&quot;
评论 #6940485 未加载
twoodfin超过 11 年前
I&#x27;d add the Doomsayer: The programmer who is constantly pointing out the ways in which any design could fail, no matter how likely or relevant to the task at hand such failure scenarios might be.<p>Healthy skepticism is beneficial, but I&#x27;ve seen teams paralyzed because one member has perfected the technique of raising unanswerable or irrelevant objections, often seemingly to present the appearance of being the smartest guy in the room.
评论 #6939544 未加载
评论 #6940460 未加载
评论 #6941054 未加载
评论 #6940390 未加载
评论 #6940213 未加载
评论 #6939529 未加载
评论 #6940365 未加载
评论 #6939532 未加载
Aldo_MX超过 11 年前
&gt; When a Human Robot is confronted about an issue with his or her work on the product, they will respond with the following sentence every time: “your requirement was not found in the specification for this project. We require additional pylons.”<p>&gt; Human Robots often tend to be conference organizers (see PyCon 2013) and moderators on StackExchange.<p>That literally made my day.
评论 #6939712 未加载
javajosh超过 11 年前
The ability to read other people&#x27;s code and understand the intent behind it is one of the highest attainments for a professional programmer. It requires two difficult, but important and related capabilities: first, that one be dispassionate enough about one&#x27;s own views to even accept that other views exist, and second, that one be capable of understanding how code works from reading it (and perhaps interacting with it with a debugger or logging statements).<p>So, rather than lambast people for not being able to read code, perhaps we&#x27;d do better to praise those who are particularly good at it, and encourage them to share their insights, if they have them.
评论 #6939437 未加载
评论 #6939450 未加载
charlieflowers超过 11 年前
My God that is brilliantly written. Parts of it sting, but I feel better if I focus on the parts that don&#x27;t apply to me.
评论 #6939541 未加载
nasalgoat超过 11 年前
I like how MongoDB has become the go-to joke for using the wrong tool.
评论 #6940690 未加载
shekmalhen超过 11 年前
Reread yourself next time. There&#x27;s many typos and places where you used the wrong h̶o̶m̶o̶n̶y̶m̶s̶ homophones. It&#x27;s hard to take you seriously when you write &quot;left in piece&quot;...
评论 #6938903 未加载
评论 #6939147 未加载
vezzy-fnord超过 11 年前
I&#x27;ve noticed a lot of Python coders to be pet technologists. They simply can&#x27;t let go of their beloved Python, no matter what. It&#x27;s as if to mask their incompetence.<p>I don&#x27;t really see why the &quot;Illiterate&quot; is necessarily a <i>terrible</i> programmer, though. Code is the very opposite of literature: hard to read, easy to write.
评论 #6939222 未加载
评论 #6939186 未加载
评论 #6939263 未加载
joe_the_user超过 11 年前
OK,<p>This is a fine discussion.<p>I would add that I think that, a favorite of this board, the mythical &quot;(top) 10% or (top) 1% programmer&quot; is not so much a real thing as just an average programmer who happens to avoid each of these (and related) pitfalls in the particular job he or she is working on - well, and stays reasonably education in current tech and intermediate to advanced math and cs.<p>And the nice, the reasonable thing, about these description is that they make it clear these people are the product of particular environments.
评论 #6949981 未加载
cupcake-unicorn超过 11 年前
Shoot, too bad non-gendered pronouns in English can be awkward. At about the 5th example, when imagining the roles, I was wishing for some women! Some variety would be appreciated probably :)
pm超过 11 年前
I think I&#x27;ve been almost all of these at some point in my career.
评论 #6939236 未加载
评论 #6939458 未加载
Tloewald超过 11 年前
Seems to me like none of these descriptions is an actual terrible programmer (well maybe the &quot;illiterate&quot; or &quot;stream of consciousness&quot;).<p>Actual terrible programmers write incredibly bad code. Their motivations are generally not the problem. I&#x27;d probably come up with a taxonomy like this:<p>The approximationist -- writes code that kind of does what was intended, and then writes more code to get closer to the intention, and then more code to get closer to the intention, and then more...<p>The design patternist -- writes implementations of design patterns instead of implementations of the specification.<p>The classicist -- related to the overnormalizing database designer, breaks EVERYTHING down into classes.<p>Etc.<p>And that&#x27;s just covering terrible CS graduates.
评论 #6941383 未加载
derefr超过 11 年前
I would note that being &quot;the Island&quot; in combination with &quot;the Hoarder&quot; is probably symptomatic of Social Anxiety. (Speaking from experience.)
评论 #6940127 未加载
wellpast超过 11 年前
Yet ironically, perhaps a great programmer is a hybrid of all of these archetypes?
评论 #6938906 未加载
评论 #6939471 未加载
brudgers超过 11 年前
Reminded me of the classic flame warriors, but lacking the artwork.<p>[NSFHN] <a href="http://www.flamewarriorsguide.com/" rel="nofollow">http:&#x2F;&#x2F;www.flamewarriorsguide.com&#x2F;</a>
评论 #6939985 未加载
th3byrdm4n超过 11 年前
This can be re-written almost as &quot;the development of the young programmer&quot; where the external forces exert themselves and you get forced into some of the roles... - sometimes the pressure is speed of project completion - sometimes the pressure is production quality - sometimes the pressure is code quality &#x2F; reusability - sometimes the pressure is following specs - sometimes the pressure is &quot;looking modern&quot; - sometimes the culture is whack and needs to be changed - sometimes the pressure is team communication - sometimes your tech stack only includes an AS400<p>Whatever the pressure you can seemingly get pidgeon-holed. I think this is where experience comes in and can guide you to the happy medium where external pressures are ignored and you balance the best you can.
banachtarski超过 11 年前
&quot;The Futurist cares not for quaint, passing concerns about stability, maintainability, or teachability – it doesn’t matter to him if it’s impossible to hire Erlang developers. New is everything.&quot;<p>Really? Lol. You chose a language that&#x27;s stable, maintainable, and easily taught. Not only that, it&#x27;s not a new language either. At least go with something that fits the description, like Rust or something (N.B. I like rust, where it&#x27;s going anyways).
评论 #6940737 未加载
bobbles超过 11 年前
I want to know what the category is for someone like me where the process goes:<p>1) Code<p>2) Ask people why their methods are broken<p>3) Code some more<p>4) Realise what they had worked perfectly and I suck<p>5) Repeat
barce超过 11 年前
This blog piece is not a taxonomy. A real taxonomy would provide sample taxa living or stuffed in formaldehyde.<p>At most, this piece is just a literary exercise that provides no solutions for the imaginary problems it suggests.<p>I would definitely change my opinion if facts were pointed to of actual projects and persons.
评论 #6939777 未加载
Edmond超过 11 年前
I can almost hear the battle cry: extremism in the defense of ones work is no vice! Good read :)
IgorPartola超过 11 年前
The Arcanist is probably the closest to what I can see in myself. I tend to be protective over the systems I design in order to preserve them. This comes from years of geeking out about things like memory allocators and networking stacks, so when I catch a whiff of someone talking about introducing a terrible inefficiency or unreliability into the system I helped put together I put up the defenses. This post is a good satirical look at this aspect of my work, and probably a bit of a wake-up call.
robert-wallis超过 11 年前
I was feeling pretty good that I wasn&#x27;t a stereotype, until I got to the Agitator.<p>I&#x27;m just really tired of people putting junior devs as team lead over me. I&#x27;d really like a lead that has tried different tech stacks, project management methods, and programming language paradigms. It&#x27;s hard to respect someone making a novice decision based on their limited experience.<p>I don&#x27;t think I am curable. I don&#x27;t see how telling my manager and team lead why they are wrong, is something I should change.
评论 #6941304 未加载
评论 #6941283 未加载
评论 #6941134 未加载
nilkn超过 11 年前
When I first read this, it stung a bit as I know I&#x27;ve fallen into these roles at some point or another in the past. I came to the comments here expecting to feel even worse about myself, but I was pleasantly surprised to see other people noting that they too have fallen prey to these bad habits. In the end, this has actually made me feel a bit more comfortable with my skillset as a programmer, and I now have some goals to strive towards moving forward with my career.
disputin超过 11 年前
Context plays a part. The last company I worked at was so arcanist that the majority of new developers were relative agitators or futurists. They wouldn&#x27;t have been elsewhere. They never stuck around beyond a year, and as the second longest serving, 2.5 years was all I could stand. Interviewing after working in an arcanist environment is depressing.
ttty超过 11 年前
I wonder what other conclusions I can get from people that are more of a type? For example a Arcanist is probable to also be faithful and a Futurist a cheater. I&#x27;m just giving examples, I don&#x27;t really know anything, that&#x27;s why I&#x27;m asking for someone that knows more than me. (:
sbilstein超过 11 年前
This is great. As I develop as an engineer I feel more and more confident about my abilities; great to read something like this blast away the Dunning-Kruger effect and help me recognize I still have a lot to learn. And not just about particular technologies. Very humbling.
mistermann超过 11 年前
Into which group would the person who is genuinely very technically smart, but thinks they&#x27;re too smart comprehensively to even be bothered checking in with the actual users to see if their vision meshes with the actual requirements fall in this analysis?
priya_sri超过 11 年前
I had penned my thoughts on this a while ago <a href="http://priyankasriraghavan.blogspot.in/2013/10/the-evolution-of-software-programmer.html" rel="nofollow">http:&#x2F;&#x2F;priyankasriraghavan.blogspot.in&#x2F;2013&#x2F;10&#x2F;the-evolution...</a>
qwerta超过 11 年前
&gt; he can find (and patch himself!) the subtle race condition created by minor JVM differences on your particular version of the Linux kernel<p>He can do this, but is terrible programmer?
actsasbuffoon超过 11 年前
&quot;Guy&quot;, &quot;dude&quot;, &quot;him&quot;, &quot;he&quot;...<p>There are many kinds of programmer, but apparently they&#x27;re all men.<p>Edit: upon re-reading the post I see a smattering of &quot;he or she&quot; references at the beginning. They quickly give way to nothing but male nouns and pronouns. I wrote my comment after finishing the article, at which point I&#x27;d forgotten about the brief nod to the existence of female software developers at the beginning of the post.
评论 #6939780 未加载
评论 #6939691 未加载
评论 #6940520 未加载
评论 #6939970 未加载
评论 #6939695 未加载
评论 #6939880 未加载
VladRussian2超过 11 年前
he missed the &quot;righteous thou&quot;, ie. ones who are able to ignore their own shortcomings.<p>By the way, &quot;Software is a team sport and does not suffer those who do not play by its rules.&quot; I hope his team&#x2F;company isn&#x27;t an English speaking one.
评论 #6946936 未加载
malkia超过 11 年前
Wow - I&#x27;m each one of them - on different days, teams, jobs, etc.
ratsimihah超过 11 年前
The Stream of Consciousness made me die. Been there too often.
评论 #6949463 未加载
daraosn超过 11 年前
Mongo.
评论 #6939917 未加载
almosnow超过 11 年前
&gt;The past is the future in the Arcanists’ worldview [...]<p>Hahaha, loved that!