Live data from Hacker News

Being a "Great Coder" and 10000 Hours

groups.google.com

11–20 of 70 posts

Re: Being a "Great Coder" and 10000 Hours

#11

It's important to also continue striving for self-improvement. If you hit a level where you've stopped wanting to learn more and started wanting to simply compare yourself to others, of course you'll look good by comparison - but you're not getting any better. I started programming using Python. When I started, I wanted to understand the "feel" of Python programming, and that was all my mind could comprehend. Now tha…

When you don't know much about given subject you usually don't know how much you really don't know and most people at that stage actually have impression that they know a lot It is kind of catch 22 problem :-)

Re: Being a "Great Coder" and 10000 Hours

#15
I liked the comment about literate programming. When I need to write a new set of related functions (or classes if I am using an OOL), a great way to start is by writing function stubs, and then write the internal comments. Even better to not immediately write the code. Anyway, this works better for me than TDD.

Re: Being a "Great Coder" and 10000 Hours

#17

The better he got, the worse he knew he was. The inverse Dunning–Kruger effect: http://en.wikipedia.org/wiki/Dunning–Kruger_effect

Why do you say it is the inverse and not the regular Dunning-Kruger effect?

Surely silvestrov miswrote and meant "converse", not "inverse".

And it's because the classic statement of the Dunning-Kruger effect is that the unskilled have an unrealistically high estimation of their own abilities. It doesn't talk about what the skilled think.

Re: Being a "Great Coder" and 10000 Hours

#18
post #3

It's important to also continue striving for self-improvement. If you hit a level where you've stopped wanting to learn more and started wanting to simply compare yourself to others, of course you'll look good by comparison - but you're not getting any better. I started programming using Python. When I started, I wanted to understand the "feel" of Python programming, and that was all my mind could comprehend. Now tha…

This is a very good point. I thought I knew a lot about programming/CS until I decided to get my M.S. Now, the more I learn, the more I realize I don't know. It is actually a little defeating in the sense that I have had to accept that I will probably never know as much as I would like to.

Identifying gaps in your knowledge is half the battle.

Learning and getting better isn't limited to eliminating known unknowns, it includes becoming aware of unknown unknowns.

Once you can google a problem, there is a very high chance you'll be able to solve it.

Re: Being a "Great Coder" and 10000 Hours

#19
post #14

Wouldn't it be awesome if one of those "looking for a technical co-founder" types would say they were looking for a programmer "who knows how bad they are"?

Not everyone who thinks they're bad at something is wrong.

but everyone who thinks they're a "ninja" is wrong.

Re: Being a "Great Coder" and 10000 Hours

#20
The problem:

As it is mentioned in the email. People tend to believe, being great is about knowing a lot of facts and stuff from memory. Having information about stuff others don't know. While the fact is intelligence and knowledge only acts as catalyst in the path to success. They are not success or don't lead to success in themselves. Unless you don't understand this you will keep wondering why you are not getting successful while some guy you consider mediocre is winning.

What matters in real world is productivity. Ability to discover things quickly. Learn quickly. Learn to understand and properly state problems. Search for solutions quickly. And then use the best tools at disposal to build things in as little time with acceptable quality in the problem domain. Intelligence and knowledge of facts in this system at maximum fastens your rate of success nothing more nothing less. But yes practice helps. But practice in the right areas.

If you believe reading algorithm and data structures text books and searching for puzzles online will make you a good programmer, then I'm not sure. It may prepare you for interviews, it may also get you a job a bit web giant. It may make you look super intelligent in front of a panel or your team. But in terms of producing software for solving business problems, those facts from memory and even their practice at maximum serves as a catalyst not a crucial ingredient to success.

Apart from practicing writing programs. Learning API's, best practices, tools, techniques and your other usual day to day programming tasks. You also need to practice to be a better team player, you need to learn design, you need to learn customer interaction skills, you need to learn how to gather requirements.

You need to learn how to manage resources - time, money and people effectively. You need to learn effective ways of running software teams. The list goes endless.

Its no longer "Can write awesome code" == "Success". There are a gazillion parameters that will decide you success. And programming is just one of many of them.

Here is the shocker. You don't really a 1000 years of life to give 10 years to each. And even if you had a 1000 years of life you would be bored of giving 10 years to each and you would keep forgetting what you did decades back.

So, just be more productive and iterate your work endlessly. Find flaws and fix them. Do it in iterations. You will be taken care of.

Post reply on HN