Live data from Hacker News

Do the Real Thing

scotthyoung.com

111–119 of 119 posts

Re: Do the Real Thing

#111
post #13

Definitely agree with the article, and would like to offer a useful supplement to "doing the real thing": "watch someone very skilled do the real thing". Watching a pro can really accelerate skill acquisition because it will expose you to high quality ideas that would have been difficult to develop on your own. Want to get better at Backgammon/Chess/Go? Play a lot of games (at various time controls). Yes. But also wa…

Just watching someone doing the real thing is one of the most prominent strategies to avoid doing the real thing. It is not enough to watch someone very skilled do the real thing. You have to imitate them: Reading a lot of great novels will not make you a better writer. Instead write a story in the style of any writer you admire and you will learn a lot while still doing the real thing. The same is true for almost an…

I think you have to watch someone writing a great novel or writing good code. Not just read it.

I believe that just reading without understanding the thought process only helps a little.

Re: Do the Real Thing

#112
post #67

Earlier quoted context omitted.

There is no such thing as universal advice. All advice is useful in some context, but no advice is useful in all contexts. Coaches and mentors can be so effective because they consistently deliver the right advice in the right context. Advice from the internet, on the other hand, is almost always mismatched to the context of the reader.

The advice "there is no such thing as universal advice" is, by its own rule, not universal advice, and therefore serves as its own counter-example.

True, if you interpret “advice” as we do in cryptography to mean “any arbitrary string that could provide an advantage in solving the problem at hand”.

Re: Do the Real Thing

#113
post #63

Definitely agree with the article, and would like to offer a useful supplement to "doing the real thing": "watch someone very skilled do the real thing". Watching a pro can really accelerate skill acquisition because it will expose you to high quality ideas that would have been difficult to develop on your own. Want to get better at Backgammon/Chess/Go? Play a lot of games (at various time controls). Yes. But also wa…

> Want to get better at programming? Write a lot of programs. Yes. But also read a lot of high quality code written by others. Well, do this in moderation, as reading "high quality code" can lead to a premature focus on code-quality. Most "high quality code" is the result of many iterations of ideas and use-cases. And trying to emulate that style can be counter-productive in many cases. I find going back in the histo…

Agreed, I'd replace that with "watch good programmers program", or even "pair program with great programmers" if that's an option.

Re: Do the Real Thing

#114
post #63

Definitely agree with the article, and would like to offer a useful supplement to "doing the real thing": "watch someone very skilled do the real thing". Watching a pro can really accelerate skill acquisition because it will expose you to high quality ideas that would have been difficult to develop on your own. Want to get better at Backgammon/Chess/Go? Play a lot of games (at various time controls). Yes. But also wa…

> Want to get better at programming? Write a lot of programs. Yes. But also read a lot of high quality code written by others. Well, do this in moderation, as reading "high quality code" can lead to a premature focus on code-quality. Most "high quality code" is the result of many iterations of ideas and use-cases. And trying to emulate that style can be counter-productive in many cases. I find going back in the histo…

> reading "high quality code" can lead to a premature focus on code-quality

I don't think so. There's a difference between a skilled software developer making tradeoffs under time pressure, and someone who doesn't know what good code even looks like.

If you aren't capable of writing good code, you aren't qualified to make the right tradeoff.

Re: Do the Real Thing

#115

Definitely agree with the article, and would like to offer a useful supplement to "doing the real thing": "watch someone very skilled do the real thing". Watching a pro can really accelerate skill acquisition because it will expose you to high quality ideas that would have been difficult to develop on your own. Want to get better at Backgammon/Chess/Go? Play a lot of games (at various time controls). Yes. But also wa…

"The increased accessibility of this kind of content is one of the greatest achievements of the internet."

Completely agree...it's vast and largely free. I am grateful to live in such an unprecedented era of access to knowledge, know how, and instruction.

Re: Do the Real Thing

#116
post #35

Possibly an over-simplification. Take this example: I want to sight-sing hymns. I know a bit of music theory but it's been cobbled together over the past year in an haphazard fashion. I pick up a hymnal to sing the first hymn and immediately need to look up the key signature (I never memorized them). Then I see the hymn is 12/8 time and realize I only superficially covered rhythm and time signatures. I go on YouTube…

Ooh, here's a fun idea: see if you can track down a hymnal that uses shape notes, like those described here: https://en.wikipedia.org/wiki/Shape_note The basic idea is to make it much easier to sight-read songs in different keys. With shape notes, the "Do" in solfege is always the same symbol, regardless of the key signature. So it'd be a "C" in C Major, but the same shape appears for an "F" in F Major. Once you can…

Thanks for the great advice. You are a blessing!

Re: Do the Real Thing

#117
post #63

Earlier quoted context omitted.

> Want to get better at programming? Write a lot of programs. Yes. But also read a lot of high quality code written by others. Well, do this in moderation, as reading "high quality code" can lead to a premature focus on code-quality. Most "high quality code" is the result of many iterations of ideas and use-cases. And trying to emulate that style can be counter-productive in many cases. I find going back in the histo…

> reading "high quality code" can lead to a premature focus on code-quality I don't think so. There's a difference between a skilled software developer making tradeoffs under time pressure, and someone who doesn't know what good code even looks like. If you aren't capable of writing good code, you aren't qualified to make the right tradeoff.

> "If you aren't capable of writing good code, you aren't qualified to make the right tradeoff."

So you should probably limit the amount of "good code" you read when you're learning something right?

Or else (as you say) you won't be able to understand why it's good and what trade-off's it will cause...

I guess my main point is, don't dive into the linux kernel if you're learning C, as you'll learn optimisation strategies that probably aren't useful in your context and will only slow you down...

Re: Do the Real Thing

#118
post #117

Earlier quoted context omitted.

> reading "high quality code" can lead to a premature focus on code-quality I don't think so. There's a difference between a skilled software developer making tradeoffs under time pressure, and someone who doesn't know what good code even looks like. If you aren't capable of writing good code, you aren't qualified to make the right tradeoff.

> "If you aren't capable of writing good code, you aren't qualified to make the right tradeoff." So you should probably limit the amount of "good code" you read when you're learning something right? Or else (as you say) you won't be able to understand why it's good and what trade-off's it will cause... I guess my main point is, don't dive into the linux kernel if you're learning C, as you'll learn optimisation strate…

> So you should probably limit the amount of "good code" you read when you're learning something right?

Why? If you're learning a dance, you try to copy the teacher, not other students. You don't need to study the mistakes of others, you are sure to make plenty of your own.

> don't dive into the linux kernel if you're learning C, as you'll learn optimisation strategies that probably aren't useful in your context

Unless you're learning C for the purpose of kernel programming, sure. That's not really the same question.

Re: Do the Real Thing

#119
post #13

Definitely agree with the article, and would like to offer a useful supplement to "doing the real thing": "watch someone very skilled do the real thing". Watching a pro can really accelerate skill acquisition because it will expose you to high quality ideas that would have been difficult to develop on your own. Want to get better at Backgammon/Chess/Go? Play a lot of games (at various time controls). Yes. But also wa…

Just watching someone doing the real thing is one of the most prominent strategies to avoid doing the real thing. It is not enough to watch someone very skilled do the real thing. You have to imitate them: Reading a lot of great novels will not make you a better writer. Instead write a story in the style of any writer you admire and you will learn a lot while still doing the real thing. The same is true for almost an…

JUST watching, yes. However, I really am inspired when watching my VERY competent co-worker. I pick up on little habits, and have a lot of 'Oh, cool!' moments. It's actually pretty cool because it's getting to the point where sometimes he will actually say 'Oh, cool!' about something he sees me do :-)
Post reply on HN