...anyone who ticks all these boxes is at least a B+ player in my book.
Steve Jobs on Average vs Best Software Developers
101–110 of 130 posts
Re: Steve Jobs on Average vs Best Software Developers
#102A bit of a meta question: As someone who feels like a 'B' or even 'C' at times, what would it take to become an 'A' player? Is it predicated on pure talent alone, hard work, or experience? Even though I know I'm still a junior developer (~1 yr exp), I feel hopeless at times that I'll never approach being 'A' status especially knowing that I have many peers my age that are already far and away better than me. How woul…
Re: Steve Jobs on Average vs Best Software Developers
#103Earlier quoted context omitted.
Yes its especially true for non-white backgrounds. It all has to do with contrast. With black on white we have 100% contrast, if we use dark gray on light gray the contrast becomes say 70%. The lighter the contrast the easier it is on the eyes. Here's a quick example of what it looks like. http://cl.ly/1p103C2z1N220L1W213l
> The lighter the contrast the easier it is on the eyes. Or not: http://contrastrebellion.com/
http://cl.ly/0J3Q210X142x1h2m1G2v
for reference http://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contr...
and contrast tool http://www.snook.ca/technical/colour_contrast/colour.html
Re: Steve Jobs on Average vs Best Software Developers
#104Fundamentally, and he talks about this, computer programming is a way of encapsulating _your thinking_ in code. You are transferring your thought processes into computer code. A computer program is, quite logically, an encapsulated and packaged thought process.
I don't think anyone can or should try to argue that everyone thinks the same. Hence, not everyone's code is the same. And it follows that some people's thought processes are more efficient or better structured than others. These are the 50x'ers and 100x'ers. The A players. And I feel that just understanding that what you are doing is packaging your thought processes helps immensely in becoming more efficient, just because of the way you approach the problem.
People who are the 50x'ers, or 100x'ers, just solve problems very efficiently and are very good at packaging that problem solving logic in code. They are probably not as good as the 1x'ers in other areas of life--perhaps they are not as good at loving people, or raising children, or writing, whatever. They can be (and in my experience often are) not as good at a million other areas of life, many of which are far more important than programming. But they are very good at problem solving and transferring that problem solving logic into computer code.
I agree with Steve.
Re: Steve Jobs on Average vs Best Software Developers
#105A bit of a meta question: As someone who feels like a 'B' or even 'C' at times, what would it take to become an 'A' player? Is it predicated on pure talent alone, hard work, or experience? Even though I know I'm still a junior developer (~1 yr exp), I feel hopeless at times that I'll never approach being 'A' status especially knowing that I have many peers my age that are already far and away better than me. How woul…
In Coders At Work (http://www.codersatwork.com), Ken Thompson says, "When I was 30, 35 years old, I knew, in a deep sense, every line of code I ever wrote. I’d write a program during the day, and at night I’d sit there and walk through it line by line and find bugs. I’d go back the next day and, sure enough, it would be wrong."
Building things without deep understanding may produce a program, but it won't get you to A. Building understanding gets you to A. This is a deliberate process that takes time and work. You may not get all the way to A, but it will put you on the right path.
Re: Steve Jobs on Average vs Best Software Developers
#106I normally don't participate in these threads, but I watched the interview yesterday and I think Steve Jobs did a masterful job of explaining this phenomenon and it is getting lost in this conversation. Fundamentally, and he talks about this, computer programming is a way of encapsulating _your thinking_ in code. You are transferring your thought processes into computer code. A computer program is, quite logically, a…
The hard problem in software is writing code others can use. Everyone can write a solution that makes sense to themselves. Few can write one that makes sense to other developers. People who write code professionally will know what I mean. When you get someone else's work and realize it is better than anything you could have come up with. Not because it is extremely complex, but because it is perfectly simple.
I completely agree that people do not think the same. Where you went wrong is in believing an individuals thought process takes precedence over a teams. That is exactly the opposite of what is required and what software development spends a lot of time battling against.
Re: Steve Jobs on Average vs Best Software Developers
#107Earlier quoted context omitted.
I think theoretically we cannot achieve a state where all players are A. If that happens, our standards would be raised so that there will be a new class of B and C players that used to be A players. The only way for everyone to be A is for everyone to be the same, and in that scenario the classifiers would be meaningless. This all of course assumes that all humans are created with the same innate potentials, which i…
That's not what I'm suggesting at all actually. Again, you're implying this is a zero sum game, in which the world has nothing but 'A' players. Thats not what I've said. Being a 'hard worker' is completely and totally irrelevant in software development. More input does not equal better output, which in software is the key.
Re: Steve Jobs on Average vs Best Software Developers
#108I normally don't participate in these threads, but I watched the interview yesterday and I think Steve Jobs did a masterful job of explaining this phenomenon and it is getting lost in this conversation. Fundamentally, and he talks about this, computer programming is a way of encapsulating _your thinking_ in code. You are transferring your thought processes into computer code. A computer program is, quite logically, a…
The hard problems in software are not adding features or coming up with crafty efficient solutions. That is actually quite easy and I am constantly surprised how mediocre to poor developers can consistently come up with workable solutions. The hard problem in software is writing code others can use. Everyone can write a solution that makes sense to themselves. Few can write one that makes sense to other developers. P…
Although writing software in a way such that others can use it is certainly important, the network effect is the prevalent mechanism at work here (3 programmers need 3 times as much communication as 2 programmers; 4 programmers need 6 times as much communication; etc)
Re: Steve Jobs on Average vs Best Software Developers
#109I normally don't participate in these threads, but I watched the interview yesterday and I think Steve Jobs did a masterful job of explaining this phenomenon and it is getting lost in this conversation. Fundamentally, and he talks about this, computer programming is a way of encapsulating _your thinking_ in code. You are transferring your thought processes into computer code. A computer program is, quite logically, a…
But when Steve says things like this "if you go to New York City and get an average taxi cab driver versus the best taxi cab driver, you’ll probably get to your destination with the best taxi driver 30% faster. And an automobile; What’s the difference between the average car and the best? Maybe 20% ? The best CD player versus the average CD player? Maybe 20%"
I mean where is that coming from? The numbers are totally arbitrary. Where's the backup for that? That's not even the same as even saying "we had a trade show booth in the front at MacWorld and consistently did 30% better in leads then when our booth was in the back and anecdotally our friends reported the same rough advantage".
I'm not arguing that there aren't obviously programmers who blow the socks off of "average" programmers (or that this can't be proven). Or that an experience taxi driver will get you to where you are going faster. What I object to is the use of numbers as Steve did to prove his point when there is in fact no backup for those numbers. (Is there? If so I haven't seen it).
Re: Steve Jobs on Average vs Best Software Developers
#110I normally don't participate in these threads, but I watched the interview yesterday and I think Steve Jobs did a masterful job of explaining this phenomenon and it is getting lost in this conversation. Fundamentally, and he talks about this, computer programming is a way of encapsulating _your thinking_ in code. You are transferring your thought processes into computer code. A computer program is, quite logically, a…
The hard problems in software are not adding features or coming up with crafty efficient solutions. That is actually quite easy and I am constantly surprised how mediocre to poor developers can consistently come up with workable solutions. The hard problem in software is writing code others can use. Everyone can write a solution that makes sense to themselves. Few can write one that makes sense to other developers. P…
Think of things like natural language recognition, predictive analytics, statistical analysis, and so on. Things that seem like magic to the end user, that they've never seen before, are very hard before they're abstracted into something that B/C players can re-use. Woz, for example, worked some magic and packaged a computer circuit board into something that tons of less-talented people could build on. I would not even want to attempt what he did.
Yes, creating a feature like adding a Like button does not take complex thinking, but moving the needle forward significantly often does. I believe this is what Jobs was alluding to.