Let’s Talk Teaching: Meet computing scientist Zachary Friggstad

Hear from Zachary Friggstad on learning about programming and algorithms in the remote environment.

Katie Willis - 09 March 2021

Zachary Friggstad comes to his work teaching computing science at the University of Alberta with his own experiences with remote learning. Friggstad, an associate professor in the Department of Computing Science, studied Grade 12 calculus at a distance from his home in rural Saskatchewan in the 1990’s. “I submitted my assignments via fax, and I could use a phone to ask questions during the lectures,” he said. 

Friggstad is an expert in computer programming and building algorithms. He teaches various undergraduate courses in the Faculty of Science—and assures his students that the technology used in courses taught in Fall 2020 will surpass the tools he used in high school. 

Hear more from Friggstad on computing science, teaching, and his advice for students learning remotely during the COVID-19 pandemic. 


What do you teach?

I mostly teach Tangible Computing (CMPUT 274 and 275), an introductory computing course that takes a more holistic approach than a standard first-year course. In addition to programming concepts, we also integrate aspects of basic circuit design and algorithms.

One way I help students engage in this course is through a problem-solving approach. For example, I usually issue a couple of large-scale programming assignments each term well before their due dates. The lecture material is then concretely tied to the various subtasks they are expected to address in their solutions to these assignments.

I also teach a fourth-year course on algorithmic problem solving plus graduate courses in algorithms and complexity theory. My research passion lies in theoretical computing science and I like to find opportunities to share insights from theory in my other courses.

What do you love about your field?

I really love the process of breaking a problem down into its various computational aspects and tying these together to build an efficient solution. I also love the mathematical sophistication that comes with the design and analysis of algorithms.

What should students who are interested in this topic know?

Don't just learn the mechanics of programming. Try solving the occasional algorithmic tasks (eg. "interview" questions) to keep your mind sharp. You can find many sample questions online. Try some of these—you might get hooked!

Students interested in pursuing algorithms even further should read beyond their textbooks. Talk to your instructors to learn what else is out there for you to discover. Also, take your linear algebra courses very seriously. 

Tell me about your passion for teaching. What inspires you?

I am inspired by seeing a student develop and debug their own solution for a programming task. It is a very important learning outcome in Computing Science: "The student will be able to create and troubleshoot programs to solve a variety of computational problems."

How do you cultivate a community of practice with your fellow instructors?

I help organize webinars with the Faculty of Science Teaching and Learning Committee. I also routinely meet with a team of instructors for our tangible computing course to frequently discuss directions, lessons, assessments, and more.

Our world has been turned upside down during the COVID-19 pandemic. What advice would you give students on learning in a remote environment?

It is easy to feel disconnected and isolated in a remote learning environment. Try to find a buddy or a group of students you can chat with about the course. But be mindful of collaboration policies in your courses. Ask your instructor if you are uncertain about a particular aspect of collaboration.

What is one thing that people would be surprised to know about you?

I also had a remote learning course in high school in the 90s. I lived in a small village in Saskatchewan and my only opportunity to take Calculus 30 was by watching a live satellite feed of lectures given in Regina. I submitted my assignments via fax, and I could use a phone to ask questions during the lectures. 

On one very snowy day, the satellite dish was covered, and I thought I had a free hour. But my principal caught me walking out of the TV room, handed me a push broom, and told me to clean off the satellite dish then get back to class.


Curious to learn more? Find more information on teaching and learning in the University of Alberta’s Faculty of Science