This week we welcome Jessica Ingrassellino (@jess_ingrass) as our PyDev of the Week. Jessica is the founder of teachcode.org, where you can schedule teaching classes with Jessica. She is also the author of Python Projects for Kids. Let’s take some time to get to know her better!
Can you tell us a little about yourself (hobbies, education, etc):
Before I had a career in tech, I studied for my EdD in Music Education, and was a music teacher for ten years in public schools. I spend my free time reading (I really have a book problem!), writing, and playing violin and viola in local orchestras. I love learning, and so I go to different lectures that are available in NYC as well. Outside of work, I focus on doing teacher training and support through my organization, teachcode.org. I speak at conferences about software testing and using python & python libraries as software testing tools.
Why did you start using Python?
So, I actually stumbled into Python by accident. After about 6 months of doing software testing, I became really frustrated by regression testing after each release. I thought there must be a better way, and when I talked to developers, some of them knew about automated UI testing. They weren’t sure about the specifics, but they knew how to point me in the right direction. I looked up free coding classes, and found a Python MOOC by Rice University. I got about 3 assignments in, and then Hurricane Sandy knocked our company offline and I had to spend weeks helping to get things up and running again, but that class got me started in Python.
What other programming languages do you know and which is your favorite?
I know HTML, some CSS, Ruby, some C++, and Python. My favorite is Python because it makes the most sense to me. Honestly, I always call myself a “slow coder” (which annoys my colleagues) and Python is where I have understood code concepts with the most clarity and speed (which is fast for me, but slow for many others!).
What projects are you working on now?
Right now, I am working on a book for adults who are beginning to code. The biggest areas of this book I really want to focus on are addressing some of the assumptions about prior knowledge that I see in other books, and also including unit testing as a part of learning about code. It’s actually tricky to write those things in a way that makes sense and is not confusing, so I’m hoping I will be able to succeed.
At my day job, I’m helping to build out the robot framework for automated testing, although that has taken a bit of a backseat since I became the Director.
Which Python libraries are your favorite (core or 3rd party)?
I’m really enjoying pyglet right now, as I am using it for my book. For work, I use robot framework, and that’s been great in a testing context. For unit testing, I’ve enjoyed looking at pytest, and I am looking into Hypothesis for property testing. I love that the python ecosystem is so strong and has so many great libraries.
How did you get started with the Python Education Summit?
I got started with the education summit because I believe that Python is a great language for people to begin learning to code. I wanted to know how I could help others begin their code journey (because it is a journey!).
What are you most excited about when it comes to programming and education?
I am excited by the possibilities. When I am teaching my middle and high school code students, I like to focus on using code as a tool to solve a problem. What happens is that I can see how each student learns, innovates, and understands code. I am excited because code, as a discipline, has not yet been codified in the way that other disciplines have. There are still lots of arguments about the “best” ways to do things, but ultimately, there is room to try something, watch it fail or succeed, and learn how to do it better the next time. The freedom to get things wrong is almost artistic or improvisational, and I really think that environment is phenomenal for fostering learning and creative problem solving.
Is there anything else you’d like to say?
Wherever you are, keep going. We all start at the beginning. In fact, I would still consider myself in the beginning or maybe intermediate phases of my coding career and life. Move forward with a learners mindset and ask a lot of questions. Learning never ends.
Thanks for doing the interview, Jessica!