Summary With the increasing role of software in our world there has been an accompanying focus on teaching people to program. There are numerous approaches that have been attempted to achieve this goal with varying levels of success. Nicholas Tollervey has begun a new effort that blends the approach adopted by musicians and martial artists that uses a series of grades to provide recognition for the achievements of students. In this episode he explains how he has structured the study groups, syllabus, and evaluations to help learners build projects based on their interests and guide their own education while incorporating useful skills that are necessary for a career in software. If you are interested in learning to program, teach others, or act as a mentor then give this a listen and then get in touch with Nicholas to help make this endeavor a success. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email hosts@podcastinit.com) To help other people find the show please leave a review on iTunes and tell your friends and co-workers Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today Nicholas Tollervey is back to talk about his work on CodeGrades, a new effort that he is building to blend his backgrounds in music, education, and software to help teach kids of all ages how to program. Interview Introductions How did you get introduced to Python? Can you start by describing what CodeGrades is and what motivated you to start this project? How does it differ from other approaches to teaching software development that you have encountered? Is there a particular age or level of background knowledge that you are targeting with the curriculum that you are developing? What are the criteria that you are measuring against and how does that criteria change as you progress in grade levels? For someone who completes the full set of levels, what level of capability would you expect them to have as a developer? Given your affiliation with the Python community it is understandable that you would target that language initially. What would be involved in adapting the curriculum, mentorship, and assessments to other languages? In what other ways can this idea and platform be adapted to accomodate other engineering skills? (e.g. system administration, statistics, graphic design, etc.) What interesting/exciting/unexpected outcomes and lessons have you found while iterating on this idea? For engineers who would like to be involved in the CodeGrades platform, how can they contribute? What challenges do you anticipate as you continue to develop the curriculum and mentor networks? How do you envision the future of CodeGrades taking ship in the medium to long term? Keep In Touch ntoll on GitHub Website @ntoll on Twitter Picks Tobias Parsy Nevermoor: The Trials of Morrigan Crow Nicholas Kivy Wittgenstein: The Duty Of Genious The Hitchhiker’s Guide To The Galaxy by Douglas Adams Links CodeGrades Blog Post C# .NET London IronPython Musical Grades Autodidact Lambda School How To Draw An Owl Dunder (double underscore) methods Duck Typing Impostor Syndrome Django Girls Mu Editor Baroque Music Chamber Music PyData Adafruit CircuitPython Podcast Interview PyPortal Hypercard Pypercard Kivy Podcast Interview Alan Turing The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA