Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
3 Types of Programmers: Zerg, Terran, Protoss (mathgladiator.com)
47 points by mathgladiator on Dec 27, 2010 | hide | past | favorite | 25 comments



A facile and shallow analogy. Not very illuminating.


I think it's purpose was entertainment rather than illumination.


It's probably harmful to pigeon-hole people like that, It would be better (though probably just as predictable) to discuss how people fall into those categories, what these people have to teach each other, and what their next steps are to break out of their respective ruts.


And here we see an excellent specimine of a Protoss in the wild.


All in good fun, StrawberryFrog :)


If Google is a company run and maintained by the Protoss, their servers are Zerg technology: weak individually (hardly able to serve one youtube video slice), short-lived (due to overheating) and controlled by a hive mind.

Microsoft is a company lead by Terrans, running on state-of-the-art Protoss servers, selling Terran technology to Zerg corporate drones from other companies.

Oracle are a bunch of Protoss mercenaries, selling Terran, Protoss, Zerg, Xel'Naga and Hybrid creatures to anyone else. IBM are like that, only they sell custom-made spaceships.


Then you've got the Xel'naga programmers (e.g. Dennis Ritchie, Ken Thompson, Dave Winer, etc).

Richard Stallman is probably the Dark Voice.

Edit: "The Dark Voice (also known as the Fallen One) is a Void entity. It is the leader of the hybrids and seeks to remake all life in its image."


Wait, Dave Winer in the same class as Ritchie and Thompson? Really?


Haha I knew someone was gonna say something about that. How about we replace him with... Grace Hopper?


Well butter my biscuit


You want a piece of me, boy?


What happens when you infect a terran programmer?


Infected terran programmer: While they can still write code that works, the tools/processes required by the company slow them down. (someone higher up has to bless the project with creep before it can be started)

Before being infected, they completed many projects one after another without being exhausted. However, after being infected, the programmers mysteriously disappear after completing a project for the first time...


I do wonder where Linus Torvalds would fit.

Terran? While getting shit done is usually fine with him, he also has a good sense of elegance and has been seen being vocal about code that looked bad.

Zerg? Yeah, no.

Protoss? While Linus' skills are high, I just can't imagine him being the rigid protoss, as he has his fair share of quick and dirty hacks aswell.

Also... what about the linux kernel developers as a whole? Are they like an infested terran-protoss hybrid, with Linus being the Overmind, and his leutenants the Cerebrates?


so google is auir, bill gates is (was?) sarah kerrigan, and zuckerberg is jim raynor?


Knowing the story, I'd say Arcturus Mensk fits Zuckerberg better. Jim Raynor probably maintains Debian.

Oh and don't forget Miguel de Icaza as Samir Duran (may not fit the person, but definitely fits the reputation).


I play random and very much enjoy it, use C, Python, C++, (and now) Lisp for depending on the job, sometimes write the maths and/or algorithm(s) down beforehand, sometimes write test, sometimes unit tests, and achieve what's interesting. I would've stopped playing SC2 if it wasnt' for random. ;-)


I had to Google for the terms, making me, I suppose a Trogdolyte programmmer....


Pretty apt analogy. Nice one!


I liked the idea of categorizing things using Starcraft, but this didn't particularly resonate for me. In particular:

a) Shiny math and shiny languages are negatively correlated; the mathier a grad student is, the more likely he is to use Matlab and the less likely he is to actually know how to program. When mathier people write non-Matlab code, it is often (but obviously not always) very shitty. Now, there are ML people, but they're a small subset of mathy programmers.

b) The "Terran" description is closest to what you would think of as a normal hacker, but hackers generally care that what they make is good, and people who care about code being good are not usually characterized as "just getting shit done," since for example they rewrite code that works just because it's ugly.

c) Terrans, by which I mean hackers, can and do learn math and then become unstoppable. I imagine there's some Starcraft parallel here, but I haven't played it recently enough.


The math-Matlab correlation may not be as big as you think. In my university, we use Matlab for almost nothing in the degree (I used it in Signal Processing), and write all our math code in C (Newton's methods, ODE integrators, linear system solvers). Of course this does not mean "knowing how to program" (unless you learn all the missing stuff along the way), or doing non-shitty code, but this is unrelated to Matlab being present


I meant mainly grad students and the like on their projects, not languages for classes. Languages used for classes are mostly the professor either picking his favorite language for the course (very random) or letting his TAs pick the language (very random if the TAs are not his grad students, mildly correlated with the field if the TAs are his grad students).

Edit: Initially I was talking about undergrad classes, but then realized you might have meant grad classes, so I changed it to say classes in general, which I believe is still true.

Edit 2: I set the delay so I can edit my post a bunch of times after I post it and not provide a moving target.

Edit 3: Clearly you are an exception, but then again you're reading Hacker News.

Edit 4: Where are you going to grad school that doesn't let you pick your own language?


I'm doing my PhD and do almost everything in C (I don't need to code a lot for my thesis, but for a paper I got in complex dynamics I did a few fractal renderers that needed to be fast, or at least as fast as I could get them to be). Sadly we can't choose the language as we have 3 courses on programming which are supposed to be C based. If I was to choose, I would pick Lisp... but this is only a dream ;)


I can code in whatever I feel like (then, if I see fit!), but I can't teach in whatever language I feel like. In the first course on programming we are taught C (and only C), and the following 2 build on it. Barcelona, Spain.


Yeah, this is stupid.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: