Skip to main content

Kristian Stevens

Teaching

I teach and develop courses in Python programming and data science, data structures and algorithms, and bioinformatics. Many of these courses are designed for students outside traditional computer science majors, with an emphasis on computational thinking, problem solving, and the practical application of computing across disciplines.

Since 2018, I have had the privilege of teaching 6,375 students in these computer science courses for non-majors.

Courses
  • ECS32A Intro to Programming
  • ECS32B Data Structures
  • ECS124 Algorithms in Bioinformatics
  • ECS197T Tutoring in Computer Science
ECS32A Introduction to Programming – Python

ECS 32A introduces students outside computer science to the pleasure and usefulness of writing programs. The course is taught in Python, chosen because it is easy to start with, powerful enough for real work in almost any field, and used extensively in industry. It is built on a simple idea: the best way to learn programming is to write programs. By the end of the quarter students leave with a powerful and flexible tool, programming, they can write useful programs of their own and draw on a vast body of existing code. Students should leave with a lasting sense of how programming can help solve problems in their own field.

SLAC / CodingForward: A team of undergraduate Tutors help to make this large course great. Find out more at Coding Forward/SLAC

ECS124 Theory & Practice of Bioinformatics

This course shows you how the algorithms and data structures of computer science became the engine of modern biology. Over the past two decades, the cost of reading DNA has fallen faster than almost any other technology in history. Biology is now flooded with sequence data: genomes, transcriptomes, metagenomes, and pathogens. Nearly every recent breakthrough in the field depends on our ability to search, compare, and assemble that data efficiently. A sequencer produces raw reads – but algorithms are needed turn those reads into biology. This is algorithms and datastructures applied to data – specifically biological data.

Other courses teach you how to run bioinformatics tools – This is a course about how and why those algorithms work.  If you understand the techniques rather than just particular programs, you will be able to adapt as technology improves.