Programming class

Sep 20, 2007 10:13


I hope to audit a Python class, or at least some type of introductory programming class, in the evenings and weekends. Do you know any you can recommend?

How about flashcards? Do those help for learning the vocabulary and rules of a computer language?

For years, I have gone back and forth on the issue of learning a programming language. At first, I ( Read more... )

Leave a comment

matt_arnold September 20 2007, 18:54:49 UTC
In any given learning session, it's just too daunting to relearn all the terminology I've forgotten since the last one. Ever had that experience?

When I attempt to read a piece of code, or want to figure out what punctuation error is causing my code to not run, it makes sense to look something up on the web. But that doesn't help if, during the interval since the last time I studied, I have forgotten the meaning of the words used in the help file.

I have a concept clearly in my mind, which is the thing between the parenthesis. I remember more or less what it is for. I just can't remember if the word for it is "parameter" or "argument". So I'm not sure what the help file is referring to by those words.

My solution is to create flashcard sets in Quizlet.com for Python programming using the glossaries of the chapters in "How To Think Like A Python Programmer". I've also made a set of most of the keywords and punctuation. Once the difference between the word "parameter" and the word "argument", the word "method" and the word "function", are in my long-term memory, I won't have to reinvent those wheels every time, and the chunks of effort will become small enough.

Reply

elizilla September 20 2007, 19:36:03 UTC
This is what comments are for. Write lots and lots of them, telling yourself exactly what this piece of code does. Then when you go back to it, you'll have a good, detailed description. Plus the very act of writing the comments helps you cement it in your mind. You can't have too many comments.

Reply

matt_arnold September 20 2007, 20:55:21 UTC
I just took a quick look at that link. A couple comments...

Been programming for three decades. Pretty good at it. Had you asked me five minutes ago what the difference between a parameter and an argument is, I woulda waffled. Why? Those terms are used interchangeably. Whether that's right or wrong doesn't matter. It's how it is. You'll need to know what people mean even if they use the terminology incorrectly.

Since you've associated those two words you probably already know how argum^H^H^H^H^Hthings are passed to functions/methods/subroutines. Move on.

Don't get too hung up on how things are described in any particular document; particularly something you found "on the web". Conventions are different between languages, and even between documents describing the same language. And "found on the web" documents almost universally suck.

The one you linked to? Very dense. That it mentions how important the distinction between argument and parameter is in the fucking preface should not be seen as an indicator for how quickly you're supposed to learn. Note that, according to the note in the preface, someone had to remind *the author* to use the terms correctly.

If you take a class on introductory programming (as opposed to a specific-language class; don't know which you're considering) I can assure you file I/O will not be in your first assignment. Your cat herding program? Not the stuff of first programming efforts.

Go to Amazon and read the reviews for Python books. Pick one that is well-regarded and, according to the reviews, written in a way that suits your learning style. Having a professionally prepared document may aid your learning. And I find that seeing things in a single-document format and at a physical location within a physical book aids in memory.

It's not cheating to look things up in a book every single time you need them. Those things you do often you'll eventually remember. Only pedants care that you've memorized the rest.

Reply


Leave a comment

Up