Hacker News new | ask | show | jobs
by rlt3 4544 days ago
Was Michael Jordon considered good because he beat a lot of high school kids?
1 comments

If his goal was to beat high school kids and he did just that, then yes. If your goal is to pick locks and you successfully pick the locks you want to open, then you're good at picking locks.

Can you be a good programmer without being the best programmer or even a world class programmer?

When did skill become a function of subjective goals?
When you factor in things such as "I'm a skilled programmer, but I don't know Ada." Are you still a skilled programmer? Sure, you're quite good at Ruby and Javascript. But you don't know Ada. Why not? Because your goal was never to learn every programming language.

If you want to pick every lock available to you and you can do so quickly and successfully, you're a skilled lock picker. Buying harder locks just to show you can pick them is an academic feat, not necessarily a real-world skill. Skill is just aptitude in doing something successfully.

> When you factor in things such as "I'm a skilled programmer, but I don't know Ada." Are you still a skilled programmer?

"A programmer" is not necessarily "A person who knows Ada".

You're trying very hard to play semantics and it's not working for you. You don't get to call yourself a skilled swordsman because you sliced up some virtual goblins, simply because the only things you felt like slicing up were virtual goblins. That's not what skill is.

Neither does skill require some asinine qualification of "real-worldness". We can generally agree that many skills are non-transferable or narrowly applicable, such as skill in playing Starcraft or picking "academic" locks. But you're not a skilled carpenter or metalworker if you go out and buy furniture from IKEA. A person who walks casually across the stage doesn't qualify as a skilled dancer unless he actually does some dancing.

"Buying harder locks just to show you can pick them" is akin to "choosing a more difficult project to code up" or "requiring that your algorithm be more performant than it was previously".

Saying that raking locks is skill at lockpicking is like saying you're good at breaking into computers because you have a sledgehammer and a knowledge of where the data center is. Or brute-forcing a password. Yes, it works. That's great. "Doing something successfully" isn't skill.

And you're trying really hard to make things more complicated than they are. A skill is not a complicated thing. Allow me to put the words in your mouth that you are struggling to say: "not a true Scotsman".
If it's not complicated, stop getting it wrong.
Am I a great programmer if I can write a really good "Hello World" in C?
No, but you may be a great "Hello world in C" writer. People can be insanely fast at solving Rubik's 3x3x3, but that doesn't imply they are good at puzzles in general or even at a 4x4x4.

[by the way, "Hello World" in C is a surprising amount of work. For example, version 2.9 is over 270 lines, and saw over 40 revisions for the main file (http://git.savannah.gnu.org/cgit/hello.git/log/src/hello.c)]