Live data from Hacker News

The Number One Trait of a Great Developer

engineyard.com

11–20 of 72 posts

Re: The Number One Trait of a Great Developer

#11
post #6

This essay seems to beg the question. A "good" developer, by its definition, is the who picks the most reasonable, easy to maintain technology, because she knows anything "much more complex would be beyond her current skill." Yet, if she is lacking in skill, how can we be sure her judgment is sound on what a "reasonable" and "easy" technology is? Doesn't the basis for that judgment require superstar-like experience a…

I would say that once you reach a certain level you are able to determine which technology is reasonable based on things like language familiarity, community support, and documentation.

Sure, but I wonder if two years in Ruby, or any language, is enough?

A superstar dev might go out and try a lot of the new, cool stuff, even when it is needed. But it seems that that developer would also have a grasp of the common characteristics of bad technology.

So I think there are at a minimum two good traits of a great developer. The rockstar-like quality of having the skill, curiosity, and breadth of knowledge to handle being on the edge. And the maturity and thoughtfulness to know whey he/she has failed in the past.

Re: The Number One Trait of a Great Developer

#13
This article is totally true, but almost impossible to act on.

It's very very hard to differentiate people who have a passion for doing good work and people who just like to play with the latest trendy technology. Especially since the latter is often just an immature stage of the former.

Re: The Number One Trait of a Great Developer

#14
When I do my first interview (as the interviewer) one day, I'm going to ask "Do you read blogs by software developers?" and if they answer "Yes", I will not hire them because these blogs are a bunch of horse shit.

Re: The Number One Trait of a Great Developer

#15
post #9
post #6

This essay seems to beg the question. A "good" developer, by its definition, is the who picks the most reasonable, easy to maintain technology, because she knows anything "much more complex would be beyond her current skill." Yet, if she is lacking in skill, how can we be sure her judgment is sound on what a "reasonable" and "easy" technology is? Doesn't the basis for that judgment require superstar-like experience a…

Developers who lack skill are awful at picking technologies. I like to think of it like this: when the guys that don't know anything start picking the tools they are basically throwing darts at a board. Everything is going to seem random. Sure, some of their picks will be correct, but most are going to be awful selections that make maintaining the project a very unpleasant experience.

These kinds of people tend to choose whatever seems popular right now. If they happen to be managers then they will read Gartner reports and report on their contents as if Moses himself had presented them with edicts carved into stone tablets.

Re: The Number One Trait of a Great Developer

#16
post #11

Earlier quoted context omitted.

I would say that once you reach a certain level you are able to determine which technology is reasonable based on things like language familiarity, community support, and documentation.

Sure, but I wonder if two years in Ruby, or any language, is enough? A superstar dev might go out and try a lot of the new, cool stuff, even when it is needed. But it seems that that developer would also have a grasp of the common characteristics of bad technology. So I think there are at a minimum two good traits of a great developer. The rockstar-like quality of having the skill, curiosity, and breadth of knowledge…

Two years? I think you can learn everything you ever needed to know about a language in a much shorter time period than that.

Re: The Number One Trait of a Great Developer

#17

When I look around at other companies hiring Ruby on Rails developers, I see them focusing on three major traits: Super-smart; Large community following; Deep Ruby knowledge. I definitely agree with the thrust of the article, but I run community sites and have run Ruby job ads for a few years and I can't recall seeing anyone looking for a hire with a "large community following." In aggregate, across all the listings…

I can't recall seeing anyone looking for a hire with a "large community following." companies are most usually looking for ... team working skills I believe there is an operating assumption here that active membership and following in a given community is a solid indicator that the individual in question has very good team interaction skills, as well as working knowledge of the community's domain focus.

Maybe, although I think that assumption would be erroneous (not that you suggested it wasn't :-)).

I can only speak for the Ruby and Rails community but I think there are many developers who have a strong "following" on blogs, Twitter, at events, and even on GitHub but who aren't necessarily good "team players" (To be fair, I include myself in this bracket ;-)).

Re: The Number One Trait of a Great Developer

#18

The article is a good example of a false dichotomy. http://en.wikipedia.org/wiki/False_dilemma

What dichotomy?

Are you being misled by the fact that the article uses only two examples? That's a rhetorical shortcut, not a proposed dichotomy. The article does not actually claim that "those who use Sexy Tech X tend to have bad judgement" or anything like that. What it says is that folks with good judgement use appropriate tools for appropriate reasons, which may be situational.

Re: The Number One Trait of a Great Developer

#19
I think that for any type of problem solving there is a clear workflow you must go through in order to efficiently come to a solution. 1.) Break down the problem to see what you are actually required to do. 2.) Think of ways in which you have solved previous problems and check whether you can do something similar to what you have done in the past. 3.) If you need to do something that you haven't done before do some research and find the tools that you need to solve the problem; if there are multiple paths to solution apply Occam's Razor. 4.) If step three didn't work, you haven't looked hard enough or you have found a problem that no one has solved before, it is most likely the former. 5.) Implement your solution; if it works great the problem has been solved. If it doesn't work retrace your steps and then take a break and come back to the problem when you have a clearer head. 99% of your problems can be solved in this manner

Re: The Number One Trait of a Great Developer

#20
I agree with this article and have a proposal for another trait of a great dev:

A great developer is not necessarily one who writes the most elegant code, but one who knows how to walk the line between elegant code and speedy dev time.

Thoughts?

Post reply on HN