Live data from Hacker News

How To Become A Better Programmer By Not Programming

codinghorror.com

31–40 of 121 posts

Re: How To Become A Better Programmer By Not Programming

#31
post #16

From what I've seen, there's just no crossing the skill chasm as a software developer. You've either got it, or you don't. No amount of putting your nose to the grindstone will change that. What a scary thought. Good thing it's not true. One of the many reasons I became a programmer was that the sky was the limit. Still is. Want to learn something new? Learn it. Want to build something cool? Build it. The only real l…

Don't forget:

-They are trying too hard.

On a daily basis, this hurts me more than anything else.

Re: How To Become A Better Programmer By Not Programming

#32

Earlier quoted context omitted.

When I was first starting as a programmer, I would have agreed with you. But over the years I've learned that it is 100% accurate that some people can program while others simply cannot. But it's not a matter of stupid/smart. It's actually the same reason why Paul Graham's 'Hackers and Painters' analogy is so apt. The reality is that some people can think in abstract terms, while others cannot. Someone who can think…

I totally agree with the 'thinking in abstract terms' thing but I would never reduce programming to that. It's not always so abstract. I tend to think that it'soften good rhetoric skills. A great ability with the three different types of rhetorical proof: ethos, logos, pathos. http://en.wikipedia.org/wiki/Rhetoric

Since I'm recommending books today, I really liked "Thank You for Arguing" by Jay Heinrichs. Very fun and instructive intro to rhetoric.

I can see how rhetoric (and religion!) can come into play in design meetings :-)

Re: How To Become A Better Programmer By Not Programming

#33

Earlier quoted context omitted.

I've wondered if engineering/CS undergrads should be forced to take a Design 101 class to learn: * design is everywhere * having a sense of taste is vital to anyone who makes things * end users are severely affected by every design decision you make I run into too many engineers that try to disregard the subjective aspects of development (architecture/UX/etc) because they believe the only worthwhile things are the lo…

what's subjective/"not logical" about architecture???

the aesthetics

Re: How To Become A Better Programmer By Not Programming

#34
post #16

From what I've seen, there's just no crossing the skill chasm as a software developer. You've either got it, or you don't. No amount of putting your nose to the grindstone will change that. What a scary thought. Good thing it's not true. One of the many reasons I became a programmer was that the sky was the limit. Still is. Want to learn something new? Learn it. Want to build something cool? Build it. The only real l…

I'd like to believe this, but it's not my experience. There are people for who it comes effortlessly, while it's a real uphill battle for others. Most of your listed problems are part of 'not being able to cross the chasm'.

Re: How To Become A Better Programmer By Not Programming

#35
post #16

From what I've seen, there's just no crossing the skill chasm as a software developer. You've either got it, or you don't. No amount of putting your nose to the grindstone will change that. What a scary thought. Good thing it's not true. One of the many reasons I became a programmer was that the sky was the limit. Still is. Want to learn something new? Learn it. Want to build something cool? Build it. The only real l…

I recommend reading the (ongoing) story of Dan:

WHAT IS THE DAN PLAN?

It’s a project in transformation. An experiment in potential and possibilities. Through 10,000 hours of “deliberate practice,” Dan, who currently has minimal golf experience, plans on becoming a professional golfer. But the plan isn’t really about golf: through this process, Dan hopes to prove to himself and others that it’s never too late to start a new pursuit in life.

http://thedanplan.com/blog/

Re: How To Become A Better Programmer By Not Programming

#36
post #11

This article just confirms my notion that in the debate about "what makes a great programmer" there is a fundamental disconnect between the concepts of being "a programmer" and being "a maker of software". Making software consists of way more than just programming, and in that respect I agree with Atwood. However, that ignores two other things I consider to be proven truths: 1. You don't have to be a great programmer…

But he's not talking about becoming a better programmer. He's talking about becoming great.

Not all software can afford to be made out of crappy code either. There are many fields in which being a good programmer is the same thing as being able to write good software. The web might be the exception here.

Re: How To Become A Better Programmer By Not Programming

#37
The fact that programmers tend to not get better has little to do with programmers' inherent worth or talent. It has everything to do with how programmers are trained. Employers are doing less and less to train their technical staffs, which has fostered a generation of programmers who believe that the right way to learn something is by Googling it or experimenting randomly on their own. Of course you're not going to get better this way.

Re: How To Become A Better Programmer By Not Programming

#38
post #11

This article just confirms my notion that in the debate about "what makes a great programmer" there is a fundamental disconnect between the concepts of being "a programmer" and being "a maker of software". Making software consists of way more than just programming, and in that respect I agree with Atwood. However, that ignores two other things I consider to be proven truths: 1. You don't have to be a great programmer…

But he's not talking about becoming a better programmer. He's talking about becoming great . Not all software can afford to be made out of crappy code either. There are many fields in which being a good programmer is the same thing as being able to write good software. The web might be the exception here.

The phrase "crappy code" is subjective and not easily measured.

What you consider "crap" may be pure art to the people that produced it. Perhaps you just lack their perspective? Perhaps you've never had to write code in that language or at that scale? Perhaps they are just learning to code?

The world is bigger than individuals. Some code may be "crap" to you, but let me assure you that your code is "crap" to someone else.

Linux kernel code is often called "crap" by the OpenBSD developers. In their mind it is. I'm sure Linux kernel devs feel otherwise and in places where they aren't proud of it, they slowly improve it to make it better. Oh, and BTW, the "crap" that is the Linux kernel supports far more hardware than OpenBSD will ever support.

So in my mind, it's all a matter of perspective and goals. Nothing is "crap". And calling it "crap" is wrong and may cause others to feel bad about themselves and their project. It's juvenile and unnecessary.

If you are interested in the project and think it's "crap" do something constructive, submit your glorious code to make it better and to enlighten us all.

Re: How To Become A Better Programmer By Not Programming

#39
post #18
post #7

Earlier quoted context omitted.

Some of the most productive programmers I've known toss code together in a horrifying slapdash fashion but somehow get great things done. And sometimes people with far more precise and mathematical minds just get mired in their beautiful architectures. The common trait I've seen in all exceptional programmers is an ability to keep a tremendous number of details in memory at one time. Most real world code is not lambd…

The common trait I've seen in all exceptional programmers is an ability to keep a tremendous number of details in memory at one time Would you care to elaborate on this? I'm a programmer with 'precise and mathematical mind' and I'd say that my one big weakness is exactly that: I struggle to large numbers of disconnected facts in my head at one time.

I'm not sure if that's quantifiable, or if it's a common trait. I'd say you either need that, or be really good at coming up with thought-efficient abstractions. The other way to put it is: you need to have great focus/concentration.

Re: How To Become A Better Programmer By Not Programming

#40

The fact that programmers tend to not get better has little to do with programmers' inherent worth or talent. It has everything to do with how programmers are trained. Employers are doing less and less to train their technical staffs, which has fostered a generation of programmers who believe that the right way to learn something is by Googling it or experimenting randomly on their own. Of course you're not going to…

Part of talent is knowing how to learn the right way.
Post reply on HN