"Is there a better technique for dealing with this?" Not really.
"step-through debuggers" are their own problem. They're a kind of mental crutch that make it easy to get something that looks like it works.
First, look at http://code.google.com/appengine/docs/python/tools/devserver.html#The_Development_Console for something that might be helpful.
Second, note that --debug
Prints verbose debugging messages to the console while running.
Finally, note that you'll need plenty of Python experience and Google AppEngine experience to write things like web applications. To get that experience, the print
statement is really quite good. It shows you what's going on, and it encourages you to really understand what you expect or intend to happen.
Debuggers are passive. It devolves to writing random code, seeing what happens, making changes until it works. I've watched people do this.
Print statement is active. You have to plan what should happen, write code, and consider the results carefully to see if the plans worked out. If it doesn't do what you intended, you have to hypothesize and test your hypothesis. If it works, then you "understood" what was going on. Once you get the semantics of Python and the Google AppEngine, your understanding grows and this becomes really easy.