2 ms·
(1) If you count HTML as a programming language, then I had about 3 hours of HTML under my belt when I first started reading this book. Which is to say I unders
by anongraddebt 7y ago
(1) If you count HTML as a programming language, then I had about 3 hours of HTML under my belt when I first started reading this book. Which is to say I understood nothing nothing about programming when I picked this up. I have a method for learning new domains, and a part of that method includes skimming intro books to find ones that seem well put together. So, I had also blitz skimmed a number of books before finding this one. One thing I noticed right away from this book was that it felt more like a normal textbook than most of the books I was skimming.
(2) This is not an easy question to answer, because it includes a lot of speculation, but I'll try. For me, at least, it was important to understand - in some rough sense - the nature of the concepts. Obviously, there is plenty more to the nature of the following basic concepts than what I provide, but here's the way I was perceiving the concepts:
Variables - being able to name and rename data (or code) and use different things you've named
Conditionals - run code under certain conditions
Loops - run the same code multiple times under certain conditions
Functions - reuse the same code at different points in time
Lists/Arrays - save code (or data) to later be used and/or manipulated
Looking back on this textbook, as well as the other material I read where lists/arrays were presented very early, I just think it was more natural to think about code reuse before thinking about storing stuff for use and manipulation.
Just my two cents.
- onei 7y agoI would naturally pair loops with iterables, such as lists, particularly in python. I wondered if it was more to do with learning to structure code before structuring data. Personally, I'd be inclined to teach basic types and control flow, e.g. loops and conditions, before teaching how to structure code so that you can start with something long and repetitive and understand the benefit of utilising functions. Having said that, both are fairly basic concepts so I don't think you'd lose much either way.