David Cantor
(He/him)
Computer Science Teacher
Mergenthaler Vocational Technical High School, Baltimore City Public Schools
CSA-MD High School Member at Large
How did you get into CS?
My first CS experiences were with Logo and the TRS-80. I was in Second grade back in the days of track educational opportunities and was pulled into a gifted program where we learned how to move a turtle around the screen to make shapes and complete mazes. Ideally, that should have led to programming and developing software; it didn’t, but it did spark my continued interest in exploring all kinds of computers, programming languages, designs, and drawing softwares.
When I left college, I found a job at a technical school that taught OS/390 JCL, COBOL/CICS, and a little tiny bit of Visual Basic. As a COBOL programmer/analyst, I learned about structured coding and solving problems with computers and even developed a side system. But the real discovery and exploration of Computer Science didn’t happen until I was starting out as a teacher. As I began looking at how to engage students in networks, system design, programming for a client, creating or following specifications, and how you can solve problems differently with a computer, that’s when everything from my history of dabbling really came together.
What are some successes and challenges you’ve experienced in your work in CS?
I have three moments in my programming career that I think were really amazing. One was that side system I mentioned before, which was for managing parking permits. I built it on an existing framework but designed the customer service screens, the back end update programs, and the daily reports- the full system from the client specs to testing and delivery. Another was an Access database I built for my cousin’s lawn business. It allowed for data entry, billing, and was tied to a promotional tool that helped grow his business. The third was a volunteer tracking database I designed and deployed at a small non-profit in New York. Nothing too fancy, but it challenged what I thought I knew and was a fun exercise.
I’ve had a few challenges as well, but in relation to CS education, engagement from students is my most consistent (constant?) struggle. I teach a required course; students don’t choose my class and many of them do not want to be in it, so they don’t try and they don’t engage in the material- which results in low grades, high failure rates, and lots of pressure to find solutions that result in more successful outcomes.
My first adaptation was to create special assessments/assignments for individual students. Students created web pages based on their interests (drawing, starting a business, a class they liked, an upcoming birthday); they designed short javascript games built around current events, mini games they had played, or other personal interests. I brought in outside speakers from businesses (Google, Amazon, Code.org) and even parents to discuss career opportunities or how CS impacts their daily work lives. Finally, I combined all of this into a full year project.
In the 7 years I have been teaching this introductory course, I have rebuilt the class each year to better meet the needs of the individual students in each class. This is both a challenge and a fun exercise.
What do you find compelling about CS?
Just how much fun it continues to be!
What are you currently working on? What are you hoping to see happen this school year?
I’m moving classrooms and will be getting a larger space with room to create stations and play areas. I’ve been thinking about what kind of stations or spaces I want: a lego design area with instruction books (algorithm design practice), an esports arena, an arduino and robotics lab, a repair station, and a classroom auditorium.
The heart of the space is exploring how computers can be used to solve problems. I want to create a space to lecture from that also allows students to go off into the room to work after the lecture. My goal is to create a classroom environment where students can relax and feel comfortable while still meeting academic and behavioral expectations.
Another thing I need to work on is creating a timeline, kanban, Trello, or other project scheduling area so students can plan for when work is due and will be graded. At the moment, my grading policy is very open and is providing too much opportunity for procrastinators.
I have a lot of thoughts and plans around the new space and am really excited about how it will develop!
Do you have any advice or suggestions?
My advice is to join a teacher support team. CSTA-MD got me through the first three years of teaching; the teachers there helped me develop realistic expectations for what my classes would be able to accomplish and how my administration would support me. My suggestions are to listen to your students, review their transcripts, and don’t be afraid to drop a lesson (I know that sounds like advice, but really, it’s a suggestion.. just drop a lesson, skip an objective, or extend one); curriculums are guides, not building manuals. As for resources, code.org, ISTE, CSTA, and your fellow teachers.
I’m also the new at-large High School representative to CSTA-MD, so if you’re trying something new or looking for ideas, just reach out! Maybe I can help, or maybe your idea will help me. Support your fellow teachers; I guess if there was one piece of advice, suggestion, resource I would share, it would be that despite the way it feels, teaching is not a solo sport, so find your team and lean into them.