4 ms·
It's easy for programmers to forget how hard some of the earlier concepts were, even if we are good teachers and communicators. My wife has gotten motivated to
by tunesmith 13y ago
It's easy for programmers to forget how hard some of the earlier concepts were, even if we are good teachers and communicators. My wife has gotten motivated to learn Ruby on Rails (having never been a programmer before), and it's been a really valuable experience witnessing someone trying to understand almost all of the concepts from scratch. Just trying to describe what git does is almost impossible without somehow comparing it to saving a word document. The other day I had to clarify that typing something "into Sublime" doesn't mean it's only in Sublime - that Sublime is actually a view ("but I thought you said a view was a template!") into the same files and folders that are in her terminal. And the thing about how you can push to both heroku and github, but not check out or clone from heroku, that's still confusing. But she was deliriously happy when she figured out how to add a scaffold and add a link to the "create" functionality from the header, all by herself.
When I look at the examples that the author pasted, it seems like the commonality is that they all go more than a couple layers deep. Sometimes asking "why" twice is enough, but sometimes you have to go a few layers deep (like understanding PDO's connection flags when all you want to do is get a user's first name out of a database). I don't think that's so much about ability or smartness, as it is patience, and what layer of thinking you'd rather hang out in. Although, like other commenters have said, some good refactoring can help a programmer from having to need to understand those lower levels if they're not relevant to what you're presently working on.
- teach 13y ago> It's easy for programmers to forget how hard some of the earlier concepts were Which is exactly why Zed's and my books sell relatively well.
- xradionut 13y agoI recommends Zed's to the absolute beginners. If they can handle LPTHW, they are on a good track for the future.
- kpennell 13y agoI strongly dislike those books. I think LPTHW is perhaps good if you already know programming. Otherwise, he's just trying to get you stuck. Not what you need when you're already barely hanging on. I also HATE how arrogant he is on the web. I dislike him as a person and thus can't bother with his classes.
- teach 13y agoI'm sorry you strongly dislike those books. I think they're quite good. I can't imagine why you would say he is "trying to get you stuck". Do you have a specific example? I have taught zero-experience, low-aptitude beginners for nearly two decades, and his approach is basically exactly what I do with my own students.