6 ms·
Quote from that page: "Good programming requires thought, but everyone can do it and everyone can experience the extreme satisfaction that comes with it." That
by mb_72 12y ago
Quote from that page:
"Good programming requires thought, but everyone can do it and everyone can experience the extreme satisfaction that comes with it."
That contrasts directly with my opinion after 20-years of development experience working on applications across a number of industries and in teams of 1 to 100. Not 'all' programmers can be or are good, and definitely this is not true for 'all people' in general.
After such a start, why then should I read further? I'm genuinely interested to know the answer.
- dragonwriter 12y agoYou should read further to find out why the authors disagree with your opinion (including how they explain your experience), and how they propose approach the problem you think is insoluble. Well, except that seems to be covered better by the preface to the firat edition.
- mb_72 12y agoReplace 'programming' with 'guitar playing' or 'painting' and I would still think the same way. 'Programming' is not a special case. Thanks, though, I will read ahead a bit and try and keep an open mind.
- sparkie 12y agoWhat makes a good guitar player, or painter anyway? They practice. Your idea that some people "have it" and some don't is just not true with almost anything in reality. Prodigies are extremely rare, and everyone else who "has it" got there by practicing in their field. Anybody (assuming no other learning disabilities) can become a programmer, and a good one at that, if they honestly believe they can do it, study the foundational skills they need for it, then practice and practice. Try to remember how you became a programmer - chances are you started learning at an early age - you already had the foundational skills in language, math and science etc, because you were competent in school, and you probably spent a large part of your youth engaged in programming. You're no prodigy, and you didn't have it to begin with. Instead of saying "I can't do it", your probably the type to ask "how can I do it?". The "bad", or non-programmers are more likely to be the ones who say "I can't do it", "it's too complicated for me", etc. You can crush the chance of these people ever being competent by simply agreeing with them that they can't - because if they don't have the belief that they can, they won't bother spending hours learning the foundational skills they need, or the thousands of hours practicing which would turn them into good programmers. From my teaching experience, the learner's belief is by far the most important factor in their learning. Those who have no belief will simply not put any effort into learning, and will never progress. The author obviously understands this too, and invites the reader to first believe they can do it, so that they continue reading. Try to write some educational material for programming, and introduce it by saying "You probably won't ever get good at this, you suck, why are you still reading?", and see how many engaged readers you get.
- ruma 12y agoAt one of the coffee shops local to me works a woman who was encouraged into programming as a career. She believed she could do it, did a BSc, worked as a dev for a year, hated it, now works at the coffee shop scratching her head about what to do. My last IT director had a similar experience. He became a business analyst after hating dev for two years, having become a dev by having the prescribed requirements. Programming simply is not for everyone, and telling those people to just practice ignores the fact that they couldn't do so and retain their sanity. I think it's fair that we don't expect people to forego their sanity, and therefore that they won't be able to practice, and therefore that they will never be good programmers.
- dragonwriter 12y agoThe authors don't think programming-as-a-career is for everything, they think that programming-as-a-skill is something that, taught properly, is accessible to anyone and has value that extends well beyond programming-as-a-career. The preface to the first edition expressly made this clear, introducing the book as "the first book on programming as the core subject of a liberal arts education", and proceeding to lay out the case for programming as a liberal arts core subject [0]. It specifically notes that "traditional forms of programming are useful for just a few people." (emphasis in original) [0] For that explanation, see "Why Everyone Should Learn to Program", at http://htdp.org/2003-09-26/Book/curriculum-Z-H-2.html http://htdp.org/2003-09-26/Book/curriculum-Z-H-2.html
- nixpulvis 12y agoThere is a difference between being able to be good at something, and that thing being what you like to do. Generally they go hand in hand because you are more likely to spend time doing something you like. The statement at the start of the book is just saying that anyone can be good, but it doesn't say everyone will.
- ruma 12y ago"There is a difference between being able to be good at something, and that thing being what you like to do." That depends on the degree to which you like or dislike that thing. If you don't like something to the point that you can't stand to pursue the practice that would make you good, then you are not able to become good at it. If you aren't able to practice, then you aren't able to be good. Not everyone will, agreed, but nor can those who can't stand the necessary practice.
- proveanegative 12y ago>After such a start, why then should I read further? Because the stated assumptions aren't always reflective of the actual design principles of a product. HTDP is a solid course that in practice does not compromise on quality for the sake of popularity. That everyone could (and should) learn to program is also a popular thing to say these days. This generally means that you can discount the importance of any one person saying it to that person's beliefs.
- dragonwriter 12y ago> Because the stated assumptions aren't always reflective of the actual design principles of a product. The statement at issue very much is central to the actual design principles of HtDP.
- faitswulff 12y agoBecause it says more about the author's pedagogical approach than it does about the content of the book itself. There are probably more important indicators of the book's value further along.