Live data from Hacker News

Zed Shaw is Writing A Book Teaching Beginner Python

sheddingbikes.com

21–30 of 114 posts

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#21
post #15

Earlier quoted context omitted.

Get the story from the horse's mouth: http://oppugn.us/posts/1272050135.html

I decided to learn Python recently, and I ran into "Dive Into Python" as a recommended resource (I think I Googled "Python book"), and it almost did put me off the language. It's not really the author's fault, it is the fault of those who recommend it.

I remember trying to read it way back when. It came recommended as 'the book' to read about Python.

Besides the ODBC stuff etc. that Zed comments on (never dived into the book that deeply) its biggest problem is that the writing style is extremely, annoyingly, time-wastingly redundant.

I remember it explaining the same stuff over and over, worded slightly differently, easily spanning a dozen pages for every simple thing. After the n-th "I got it the first time, move on!" feeling I stopped reading it.

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#22

"If a programmer tells you to use vim or emacs tell them no. These editors are for when you are a better programmer. All you need right now is an editor that lets you put text into a file." Ha! When I started to program, everyone told me the opposite. After weeks of head scratching and spending more time learning editors than coding, I secretly switched to Pico. But man could I use the hell out of Pico.

This is exactly why I have such a soft spot in my heart for TextMate. I used it like Notepad until I knew what I was doing, and although I'm far from an expert I'm still pulling new tricks out of it.

I'm sure there are other, similar options but TextMate has been good to me.

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#23
post #11
post #10

Earlier quoted context omitted.

[deleted]

So far, the exercises do look like their targeted to the total beginner, but my money is that most programmers learn Python as their nth language, where n > 2. I say "so far" in hopes that he eventually gets enough exercises in the book that the material included now is just a small part of the finished work. Doh! VB index alert: The exercises are 0-based and the steps are 1-based. ;-)

I was taught python in my first programming class. It's a large part of the reason I graduated with Computer Science degree.

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#24
post #11

Earlier quoted context omitted.

So far, the exercises do look like their targeted to the total beginner, but my money is that most programmers learn Python as their nth language, where n > 2. I say "so far" in hopes that he eventually gets enough exercises in the book that the material included now is just a small part of the finished work. Doh! VB index alert: The exercises are 0-based and the steps are 1-based. ;-)

"but my money is that most programmers learn Python as their nth language, where n > 2." Off the top of my head, I know at least 3 Universities (near me in Canada: UBC, SFU, UofC) that have recently switched to Python as the first language taught/used in their CS programs. There is a real demand for intro Python books. And IMHO Python is a pretty good first language.

MIT recently switched from Scheme to Python for their intro class

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#26
Before now, I assumed that teaching programming meant giving exercises where students figure out how to piece together the fundamentals of programming languages, and then try to build them up to harder programs. After reading through Zed's PDF, I realize I may have been wrong! If you let people absorb ideas by typing existing programs, they won't need to be taught how to decompose ideas, they'll try new things themselves. To teach game programming, you don't need to teach every single fundamental and build the user up to making a full fledged game. You just need to get them to install PyGame and draw a rectangle that they can move with the keyboard arrows, and tell them where the documentation is. Anyone who is really interested will do the rest themselves.

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#27
post #11

Earlier quoted context omitted.

So far, the exercises do look like their targeted to the total beginner, but my money is that most programmers learn Python as their nth language, where n > 2. I say "so far" in hopes that he eventually gets enough exercises in the book that the material included now is just a small part of the finished work. Doh! VB index alert: The exercises are 0-based and the steps are 1-based. ;-)

"but my money is that most programmers learn Python as their nth language, where n > 2." Off the top of my head, I know at least 3 Universities (near me in Canada: UBC, SFU, UofC) that have recently switched to Python as the first language taught/used in their CS programs. There is a real demand for intro Python books. And IMHO Python is a pretty good first language.

UToronto switched from Java to Python a couple years ago.

I wonder what my high school is using, they started us with BASIC, then Java and finally a little C... I was pretty well prepared for first year.

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#28
post #15

Earlier quoted context omitted.

I decided to learn Python recently, and I ran into "Dive Into Python" as a recommended resource (I think I Googled "Python book"), and it almost did put me off the language. It's not really the author's fault, it is the fault of those who recommend it.

You know, now that I think of it, Dive Into Python was the first exposure I had to Python, and I've always liked Ruby better... But no, I don't remember much about the book, I can't really comment on its quality.

For a long time the free online book to learn Ruby was "Why's Poignant Guide To Ruby."

When you compare that to Dive into Python the choice is easy ;-)

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#29
From my experience, the coolest thing to do when beginning is to work with a GUI because you really have the feeling to do something great (contrary to print hello in a terminal which is more than useless (from a novice point of view, of course)).

So, my suggestion is to put a small bundle library with a main.py to modify and learn. For instance, that library could only show a simple dialog which you can draw and fun with it.

And the exercice might be more about: - Print the current time in this GUI (which might be useful) - Create a small game (such as guess the number, lower/bigger), - Generate a close-me button that move when you try to aim on it.

Etc.. you get the point: easy and fun exercises.

Finally, there are software which abstract the terminal and merge the editing window with the interpreter. I think this might be way better than saying: try to find the terminal, learn to create a directory, etc.. Why not creating the directory directly from the explorer if the user wants to? More particularly, when you start learning something, everything is new. So it's important to separate the concept of what you should know and what you are supposed to learn. So by this respect, creating a directory shouldn't be part of the same as creating a .py file and writing something in edit for instance.

That's my 2 cents. Good luck and have fun with that :-D

Re: Zed Shaw is Writing A Book Teaching Beginner Python

#30

Earlier quoted context omitted.

You know, now that I think of it, Dive Into Python was the first exposure I had to Python, and I've always liked Ruby better... But no, I don't remember much about the book, I can't really comment on its quality.

For a long time the free online book to learn Ruby was "Why's Poignant Guide To Ruby." When you compare that to Dive into Python the choice is easy ;-)

I'm really wondering what will finally stop the Ruby vs. Python thing. It's getting old.
Post reply on HN