Recently I've completed the MIT course "Introduction to Computer Science and Programming Using Python" offered by the edX platform and taught by Eric Grimson - a Professor of Computer Science and Engineering at MIT. It teaches basic Python, but it's not a typical online programming course. It's a challenging, rigorous and pretty formal exposure to computer science, where Python seems to be taught by the way. It gives a lot of opportunities to practice and to analyse problems. It teaches how to think and act like a computer scientist. And also how to think recursively and reduce problems into smaller chunks.
Another Python course offered by Coursera and one of my favourite. It's fast-paced and challenging. From lesson one students build interactive applications in a browser-based programming environment. No prior programming experience is required, but if you already know the basics, you won't get bored.
After the Django Girls workshop, I looked for other opportunities to learn Python. Coursera was free of charge back then, so I took some of their online courses. One of the them was "Programming for Everybody (Python)," offered by the University of Michigan. It took me around 2 hours a week for 11 weeks to complete it. I considered it time well spent for someone who had just started her adventure with programming and wanted to build a solid foundation. But I have mix feelings now after discovering that Coursera requires payment for that course. If you are thinking about enrolling for it, you may like reading my review.All Posts