This week we welcome Meg Ray (@teach_python) as our PyDev of the Week! Meg teaches programming to other teachers and has developed Python-related curriculum. Meg is also the author of Code This Game, a book which will be coming out in August 2019. Let’s take some time to get to know her better!
Can you tell us a little about yourself (hobbies, education, etc):
I started out as an actor. I studied theater and moved to New York City to start out my career. One of the jobs I did to stay afloat while I was starting out was teaching theater classes to kids. I taught theater programs for students with disabilities as well as homeless youth. This lead me to my career as a special education teacher. I really enjoyed teaching and mentoring young people, particularly young people who have had challenges in their lives.
Around this time in my life, I began to learn to program. I was having a lot of fun with it, and I also started to understand computer science education as an equity issue. I was hired at a school to teach a software engineering and game design class that was required for all 9th graders. I learned as I went. I re-designed the course to include Python in addition to block coding and to be more inclusive of students with learning differences.
Now I develop curriculum and train other educators to teach computer science. Through the Cornell Tech Teacher in Residence initiative, I have been providing in-classroom coaching and support to K-8 teachers. I’ve also been working on my first book! Code This Game! is an intro to Python and computer science through designing a game. It was really fun to have the opportunity to apply everything I’ve learned about teaching Python to kids in a creative way.
On a personal note, I’m a new mom. One of the priorities that I have now is building community. I DM for a D&D (with babies!) campaign, and have been thinking about other ways to make space for family and community in my life. One thing that I love about Python is the Python community. For me that means participating in my local meetup, collaborating with others to support Python eductors, and attending Pycon as a family.
Why did you start using Python?
My partner is a software engineer. He really wanted me to attend the NYC Python meetup with him in 2013. I was convinced it would be boring, but agreed to go one time. I wrote my first program that evening and had a great time! I started going with him every week and using the time to practice and learn. Then he convinced me to attend Pycon with him in 2014. I signed up for a tutorial with Software Carpentry while he participated in the sprints. The rest is history. He’s also learned a lot about education since then. It’s been amazing to have the opportunity to push each other’s thinking, have debates about how CS is taught, and work on projects together.
What other programming languages do you know and which is your favorite?
What projects are you working on now?
At Cornell Tech, I’m developing and piloting a program called Raspberry Pi – in – a – Box. We noticed that students at underserved public schools don’t have the same opportunities to participate in “physical computing” and digital making as their counterparts at private and independent schools. We wanted to find out if it’s possible to make the Raspberry Pi more accessible to middle schoolers. Some of the obstacles that we need to think about are teacher training, cost, hardware and networking set-up, curriculum, as well as fitting it into the school day.
I’m also preparing a methods course that I’ll be teaching at NYU this fall. It’s an Introduction to Computer Science Education. It’s a deep dive into teaching CS at the K12 level. It is unique in that it is open to anyone who wants to take it as a non-matriculated course, and it is designed for students with a CS/programming background who are interested in education and for in-service and pre-service educators who are interested in CS/programming.
Which Python libraries are your favorite (core or 3rd party)?
Definitely ppb, which is a new education focused game library, that I’m very excited about. I’m a bit biased because the maintainers, Piper Thunstrom and Jamie Bliss, are friends and colleagues of mine, and I will be contributing as an advisor. However, I am really excited about how easy this library makes game development in learning environments!
I also think that there’s a lot of potential for NLKT (Natural Language Toolkit) in education. I’ve found it really fun to play around with and hope to find ways to use it for ELA (English Language Arts) and Social Studies – CS integration projects.
How did you become a speaker at tech conferences?
I had already started presenting my work on making CS education more accessible in education spaces. I submitted my first talk to PyGotham (the New York City Python conference) with a colleague who is a technologist. We gave a 30 minute joint talk. If I could re-write and re-present the talk I would, but instead I’ve just iterated from there. Every time I submit a talk or prepare for a talk, I have that little voice in my head telling me that I’m not qualified enough, not interesting enough, not enough. But I label it as imposter syndrome and keep going.
Do you have any advice for other aspiring speakers?
Think about what you are passionate about and what you have to say. Then think about the audience and frame it in a way that is useful and interesting to them. Don’t wait for your doubts or insecurities to go away. Let them chatter away, while you share your knowledge with others.
If you want to build your skills, start small. Look for opportunities to speak at a meetup, to co-present, and to give lightning talks. Then move on to submitting talks to regional conferences and then national/global conferences. If a talk doesn’t go as well as you hoped, it doesn’t mean you’re a bad speaker. It means you’re still developing. Reflect and iterate on it. Each talk is a learning experience that makes you a better speaker next time.
Thanks for doing the interview, Meg!