4 ms·
I'm skeptical that the topics listed in the sample are actually relevant to a first-time programmer. While eventually I would want people to know that numbers a
by rflrob 15y ago
I'm skeptical that the topics listed in the sample are actually relevant to a first-time programmer. While eventually I would want people to know that numbers are stored in binary in the computer, for most purposes, a first timer doesn't need to know that. Similarly, signed vs unsigned numbers aren't hugely critical, and some languages (e.g. Python) don't even have unsigned.
It seems to me the core, universal concepts that beginners have trouble with are more often ideas like iteration, control flow, and functions and recursion.
- lylejohnson 15y agoI was thinking much the same thing. If I ever find myself in the position of wanting to teach programming to a "mere mortal", I suspect I'd look to Chris Pine's Learn to Program, which I've always heard good things about. http://pragprog.com/book/ltp2/learn-to-program http://pragprog.com/book/ltp2/learn-to-program
- henrikschroder 15y agoWell, the title of the book is "How to Count", which makes it understandable why it focuses on these things, but other than that I agree, as a first lesson, this will scare people away more than it will make them curious to continue. Floating point arithmetic, endianness and byte representation of data types is pretty hard actually.
- stephth 15y agoGood point. This is the reason I never listened to my math teacher, his material was too basic and too abstract for me to get motivated, I couldn't see myself using that knowledge in the short term. I went to art school, and only later I realized I was actually clever enough to program and enjoy it; all it took was a high level language like ActionScript 1 (and to put credit where it's due, Flash allowed a nice smooth transition from manual design to code). After that I worked my way down to Java, Objective-C, and more basic C concepts (although Ruby/Python are the owners of my heart). Ironically, this book looks interesting to me because it would now fill the basic gaps. I've never actually needed to understand binary numbers or endianness - it's bitten me in the ass a couple times but nothing looking for help online couldn't handle - but today those higher layers of knowledge have solidified enough in my brain that I'm ready to actually enjoy learning these basic concepts.
- scott_s 15y agoFrom my experience, the largest hurdle first time programmers have is being able to execute programs in their head. It takes a cognitive leap to go from the source code in front of them, and what happens at runtime. This disconnect is not present in straight-line code, but it becomes a problem when loops are introduced. So, I agree with you. If the goal is to get beginners programming, then they have to program. No amount of reading is a substitute for programming. This book may be an excellent way to introduce people who have already done some programming to important concepts, but I doubt it will get them closer to being programmers.