Live data from Hacker News

Teach Yourself Programming in Ten Years (1998)

norvig.com

131–140 of 323 posts

Re: Teach Yourself Programming in Ten Years (1998)

#131
post #97

Earlier quoted context omitted.

After 40 years of programming, 33 of that professionally, I can’t think of anything that was a waste to learn other than scrum. Syntax is something I never learned, I programmed with man pages and manuals open at all times. But every language and technology I learned taught me something useful about a fundamental problem in computing and systems. The way we address problems gets wrapped in different clothes but the p…

> I can’t think of anything that was a waste to learn other than scrum. Believe me, I have plenty of criticisms of that entire culture but it has a lot of good ideas. What in particular (besides the obvious overwrought ceremony) do you find not worthwhile?

The idea, and especially its unconditional forcing down the throat, that you can run marathon faster by running it in 100m sprints. That idea is wrong as it has been shown many time in practice, yet even the slightest doubt of that idea is squashed. Scrum is basically an ideology/cult, and as typical for such it is built on a lie - it is sold to rank-and-file as performance improving whereis its real goal is improving reporting to the manager at the cost of rank-and-file's performance, the manager's convenience at observing the status even if the things are relly moving much slower as a result. It is similar to how in a religious cult people would be sold on supposedly reaching nirvana/etc. while in reality the guru/pastor/etc. would be abusing them financially/morally/physically/etc.

Re: Teach Yourself Programming in Ten Years (1998)

#132
post #122
post #97

Earlier quoted context omitted.

> I can’t think of anything that was a waste to learn other than scrum. Believe me, I have plenty of criticisms of that entire culture but it has a lot of good ideas. What in particular (besides the obvious overwrought ceremony) do you find not worthwhile?

Scrum forces you to package your work into daily sound bites. It pull your focus elsewhere and reframes your work in a wasteful way where you are always cutting off the corners because of how it affects your 30 second daily advertisement.

> daily advertisement

Not defending scrum but sounds more like you've been abused by bad culture disguised as scrum.

Re: Teach Yourself Programming in Ten Years (1998)

#133

Just doing something for 10 years doesn't make you an expert, I started coding 11 years ago- as a kid. But my knowledge became so diffuse across topics I was interested in that I never really became an expert in any of it.

This is the story of my life. I know a little about pretty much every topic ever.

Re: Teach Yourself Programming in Ten Years (1998)

#134
post #125

Earlier quoted context omitted.

Just doing something for 10 years doesn't make you an expert.

I think it does, just not in the things your measuring. Sitting on a couch for 10 years will make you an expert. Not an expert in sitting on couches in general but an expert in sitting on your couch during the period you were there.

Pretty sure I got worst at it. 10 years later and now my back hurts.

Re: Teach Yourself Programming in Ten Years (1998)

#135
post #125

Earlier quoted context omitted.

Just doing something for 10 years doesn't make you an expert.

I think it does, just not in the things your measuring. Sitting on a couch for 10 years will make you an expert. Not an expert in sitting on couches in general but an expert in sitting on your couch during the period you were there.

I like this sentiment. A Wittgenstein collection called “Philosophical Grammar” contains a lot of these kinds of thoughts.

Re: Teach Yourself Programming in Ten Years (1998)

#136

Just doing something for 10 years doesn't make you an expert, I started coding 11 years ago- as a kid. But my knowledge became so diffuse across topics I was interested in that I never really became an expert in any of it.

By "doing something for 10 years", I think the implication is you're actively working on that subject area, regularly, for 10 years. Not per se occasionally working on something every now and then. You can become a really good Chess player if you consistently play for 10 years--you figure out all the strategies and shortcuts, and it would be unusual if you weren't really good compared to someone playing for a year (assuming they're not some exceptional learner). But if your metric is just "I've played it occasionally since 10 years ago" then indeed, you probably didn't develop much breadth or scope as you were constantly forgetting and relearning as opposed to compounding your knowledge.

As for programming, I don't think programming is all that hopelessly complex and broad as field, but it can seem that way to a beginner. Most computer science concepts translate very well to other parts of the field, and the core programming constructs and libraries don't change much at all. How many ways can you configure a website, a mobile app or a database? Your instinct might be to think about all the different libs you can pull in, all the different programming languages, etc. But they all do roughly the same thing, they all compile down to the same stuff. You just have to develop the skill of understanding the fundamentals as opposed to getting lost in a sea of high level abstractions.

Re: Teach Yourself Programming in Ten Years (1998)

#137
post #122

Earlier quoted context omitted.

Scrum forces you to package your work into daily sound bites. It pull your focus elsewhere and reframes your work in a wasteful way where you are always cutting off the corners because of how it affects your 30 second daily advertisement.

> daily advertisement Not defending scrum but sounds more like you've been abused by bad culture disguised as scrum.

A place with daily standups?

Their "sound biting" of a complex issue resonates. It can be difficult to even explain what I'm doing to several people in the bandwidth of 2 minutes sometimes.

Most charitably, it's just a quick, lossy status report and forced request for help with blockers.

I feel like something is wrong if you feel like you need to cut corners to perform a "good-looking" report in standup. You shouldn't feel/cave to such a pressure.

Re: Teach Yourself Programming in Ten Years (1998)

#138
post #120

Earlier quoted context omitted.

After 40 years of programming, 33 of that professionally, I can’t think of anything that was a waste to learn other than scrum. Syntax is something I never learned, I programmed with man pages and manuals open at all times. But every language and technology I learned taught me something useful about a fundamental problem in computing and systems. The way we address problems gets wrapped in different clothes but the p…

I feel most of my time as a professional software engineer has been learning stuff that I didn't need to. And I would argue that the majority of debugging time goes into debugging external code from libraries, the language itself, company-provided platforms, code, libraries, DLLs, experimentally figuring out how to use a system or tool that isn't documented, and more. It's pretty miserable. It'd be like being a carpe…

>> It'd be like being a carpenter or mechanic but spending the majority of your time debugging, fixing, and communication with manufacturer's of broken or poorly working tools.

What do you think a mechanic does ALL DAY? Very few carpenters start with a raw blank of nice wood and craft something amazing. It's all interpreting plans (poor spec), framing (boiler plate), figuring out an addition (bolting on features to a shaky platform), correcting things that have failed (maintenance), addressing things that were built wrong (bug fixes) or fixing shoddy renovations (tech debt). Sounds EXACTLY like the majority of software development.

Re: Teach Yourself Programming in Ten Years (1998)

#139
24 hours? Oceans of time! I had "Teach Yourself C++ in 10 minutes".

I had done some MSX-BASIC, but after we got a "real" PC I wanted to learn a "real" and modern language. This is what they had at the local bookshop.

The "10 minutes" is done by explaining what C++ is and then it declares "there, in the last 10 minutes I explained things and you now know what C++ is". Ehh...

I didn't understand a lot of it. Chapter 5 or so is templates. It's pretty thin, and just rushes past things and never takes the time to really explain anything. It may be somewhat suitable if you're experienced in other languages, but it's absolutely not suitable for beginners. Visual Studio also didn't help (at the time I thought you needed VS to program on Windows – it was 1999, we didn't have internet, and I was 14, so what did I know?)

Aside from being a border-line scam, these books are worse than useless and actively harmful. As a result of this book I gave up programming for years, thinking I just didn't have what it takes. Wasn't until years later that I discovered this "Linux" and then "FreeBSD" thing that I discovered you can "just" write programs with "just" a text editor, and that things like Perl and Python and C exist.

If you see one of these things at the bookshop you should steal it and throw it out. Haha, only serious.

Re: Teach Yourself Programming in Ten Years (1998)

#140
post #120

Earlier quoted context omitted.

After 40 years of programming, 33 of that professionally, I can’t think of anything that was a waste to learn other than scrum. Syntax is something I never learned, I programmed with man pages and manuals open at all times. But every language and technology I learned taught me something useful about a fundamental problem in computing and systems. The way we address problems gets wrapped in different clothes but the p…

I feel most of my time as a professional software engineer has been learning stuff that I didn't need to. And I would argue that the majority of debugging time goes into debugging external code from libraries, the language itself, company-provided platforms, code, libraries, DLLs, experimentally figuring out how to use a system or tool that isn't documented, and more. It's pretty miserable. It'd be like being a carpe…

This is precisely part of the job. Somehow your expectations are very different than mine.
Post reply on HN