Django Girls Are Democratizing CS Education
I've embarked on a Summer study of Django. For the last several days, I've been slogging my way through several chapters of Test-Driven Development with Python, but I got stuck on getting the application to send email using smtp, so I decided before going back to that challenge I would take a look at some beginner Django tutorials.
A blog post by Adam Johnson titled Where to Learn Django in 2019 seemed like a good place to start, and reading through it I found a suggestion that I've seen countless times before, to start with the Django Girls Tutorial.
It didn't take long to figure out why this tutorial is so highly recommended. Django Girls have provided an engaging, beginner friendly introduction to the entire IT stack needed to understand and create a simple web application, from understanding the Internet and the web, through the Unix command line and file system, to the Python interpreter and onto the web. Revision control with git and deploying on the real web thanks to PythonAnywhere are introduced along the way, so that by the end of the tutorial the student has their own blog application that they created hosted live on the web.
As a computer science teacher for more than 25 years, I can tell you that doing this effectively is a truly amazing feat. Navigating the trade-off between presenting too little information, missing understanding of the big ideas which the activity aims to teach, and providing too much information, leaving learners frustrated and lost in the details, is a treacherous path to follow. Most tech writers tend to error on the side of too much information, which is one of the reasons far fewer people than we would like decide to pursue this area of study. The Django Girls have navigated this trade-off masterfully, and produced a brilliant educational resource as a result. At each stage the tutorial presents just the right amount of context to excite and entice the learner into the wondrous world of web applications, while at the same time rewarding her with regular thrills of hands-on achievement.
Six of my students attended a Django Girls workshop last September. They came away from it feeling a bit overwhelmed. I'm embarrassed to admit that I didn't take the time then to go through this tutorial myself. Now that I have (http://jelkner.pythonanywhere.com), I've come away from it thinking that despite its brilliance, it is still a bit much to digest in a single day workshop. As a one or two week activity in my classroom, however, I think it would work much better, giving students the chance to take in the huge number of big ideas presented in more digestible portions. Next year I will definitely use this tutorial in class, and assign some of the accompanying videos, like Your new friend: Command Line from the Coding is for girls YouTube channel, to watch for homework.
Django Girls, please accept this most heart felt shout out from a veteran teacher for showing us how its done! Your engaging, empowering tutorial is helping to democratize computer programming education by making it available to a much wider audience of students.
Gratefully yours,Jeff ElknerArlington Career Center