Live data from Hacker News

Programmer Competency Matrix

indiangeek.net

31–40 of 46 posts

Re: Programmer Competency Matrix

#31
He misses a few points subjects like computer graphics, computational geometry, understanding of databases (did he mention this?), numerical simulations, GUI design, general math skills, compression algorithm, heuristic algorithm, etc

That's what just comes in my mind..

Re: Programmer Competency Matrix

#33
post #30

This matrix is a bunch of crap. The ability to "get things done" is the most important factor of programmer competency. Every thing else is incidental.

Not true. Getting "things done" while creating an O(N^2) solution, in spaghetti code, to a problem that's already well solved by an external library is horrible .

Using your argument: Mcdonalds, Starbucks, Walmart, Coke and many other companies are O(N^2) solutions and therefore failures. They repackaged an existing idea, made slight modifications, and sold it for lots of money.

I hate seeing wasted money and stupid solutions succeed like the next guy and maybe we're talking about different things. But whether things got done should be decided by the customer not your TDD fanatic coworker.

Re: Programmer Competency Matrix

#34
All is fine so long as one does not assume 'great programmer' = 'competent'. This matrix really only differentiates 'well-educated' programmers.

There are many well-educated failures, and as many (some might say more) un-/under-educated successes.

Re: Programmer Competency Matrix

#35

Here's an alternative 1x1 matrix: [ build something that people will pay money for by any means necessary ] Much easier to remember.

No! This is what makes you a good entrepreneur. It's in no way a reasonable definition of a good programmer.

There are already dozens of dimensions that you could use to measure programmer greatness: being able to solve very difficult problems, writing very maintainable code, writing working code very fast, writing very rigorous mathematically correct code, debugging very fast, having good intuition about how the project will evolve over its life, working well in a particular team, working well with other disciplines, being able to deal with corporate politics and still get shit done etc.

Tying product design and marketing to this plethora is a wholly unwarranted conflation. Even if it's just two software developers in a garage.

Re: Programmer Competency Matrix

#36

Isn't this the sort of table that shows its author is a L337 hax0r because he's in the top category of everything? Anyone who automatically puts things like DVCS, TDD, and practices obviously related to Open Source development in the top tier sounds more like a Kool-Aid drinker than an objective observer making a sincere attempt to provide a useful resource.

A lot of the O(log N) items were depressingly basic. An undergrad education in CS will get you to O(log N) in basically all the Computer Science categories. Where are the finger trees? Array-mapped hash tries? Cuckoo hashes? Where's the domain-specific algorithm knowledge, like machine learning or information retrieval or computer vision? The IDE plugins? "Let it crash" and supervisor processes for error handling? It…

Hey, didn't you noticed that the O(1) column was missing?

Re: Programmer Competency Matrix

#37

I don't disagree with the comments about the triteness of this page and other articles like it. That doesn't mean it's entirely without value though. Think of it as like a financial budget: you know you're not going to hit it completely and some of the items you've budgeted for will turn out to be unnecessary or wasteful. At the end of the budget period, though, it gives you something to measure actual performance ag…

Honestly, I think it's seems like a great check list for finding holes in one's background and education. If you could make it into a wiki, it would be good since then the hole's in the author's experience could also be filled.

+1 for wiki suggestion.

The value in an exercise like this is the insight into the collective assessment, especially spanning different software disciplines, and with broader expert input.

Re: Programmer Competency Matrix

#38
post #30

This matrix is a bunch of crap. The ability to "get things done" is the most important factor of programmer competency. Every thing else is incidental.

Not true. Getting "things done" while creating an O(N^2) solution, in spaghetti code, to a problem that's already well solved by an external library is horrible .

I tentatively agree because these things can be showstoppers, but it really depends. I've seen PhDs who can't tie their shoes. Theoretical knowledge is useless in production software if you don't know how to apply it, and yet without it you will be greatly limited in the scope of systems you can build.

Re: Programmer Competency Matrix

#39

This matrix is a bunch of crap. The ability to "get things done" is the most important factor of programmer competency. Every thing else is incidental.

Good idea. I'd like to be your manager. I want every thing done in the range of 2-4 hours. More than that I'll fire you.

Re: Programmer Competency Matrix

#40

Here's an alternative 1x1 matrix: [ build something that people will pay money for by any means necessary ] Much easier to remember.

If you disagree with this 1x1 matrix that means you value form above function... which means you're destined to be a starving artist who writes software that is great for your imaginary friends, but will never become a great programmer that writes things real people want to use.
Post reply on HN