Originally posted as an answer to How can I become a web developer using Python on the back end?
I can’t give you a recommendation on a holistic class, but I can give you some recommendations on individual pieces/parts. First, I think that Django is a great framework for learning Python web programming. It has great documentation and support.
Working through the tutorial will give you a good understanding of what Django can do. Also, reading through the Django book will give you a good understanding of the additional features of Django.
My personal opinion is to start with a project in mind and start coding. PyCharm is a good editor and it is only $29 for students. It even gives you some good tools for CSS and HTML. Otherwise, PyDev is a pretty good Eclipse based editor.
If you do want more dynamic applications, I would suggest working through some jQuery tutorials ((http://docs.jquery.com/Main_Page). Combining Django and jQuery is really simple. For the most part, the Django portions of my application really don’t affect the jQuery portions.
From my own experience, this worked out fairly well. I learned web development on my own outside of any class room setting. I started out working through the Django tutorials and books and did fine.