{"id":625,"date":"2021-03-31T21:58:07","date_gmt":"2021-03-31T21:58:07","guid":{"rendered":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/?page_id=625"},"modified":"2026-09-17T14:45:43","modified_gmt":"2026-09-17T21:45:43","slug":"teaching","status":"publish","type":"page","link":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/teaching\/","title":{"rendered":"Teaching"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"625\" class=\"elementor elementor-625\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1882f94a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1882f94a\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-74fd765f\" data-id=\"74fd765f\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2573d2f1 elementor-widget elementor-widget-page-title\" data-id=\"2573d2f1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"page-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\n\t\t<div class=\"hfe-page-title hfe-page-title-wrapper elementor-widget-heading\">\n\n\t\t\t\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\n\t\t\t\t\t\t\t\t\n\t\t\t\tTeaching  \n\t\t\t<\/h2 > \n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-26bb0ae0 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"26bb0ae0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-61f050b9 elementor-widget elementor-widget-text-editor\" data-id=\"61f050b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>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.<\/p><p>Since 2018, I have had the privilege of teaching 6,375 students in these computer science courses for non-majors.<\/p><h5>Courses<\/h5><ul><li>ECS32A Intro to Programming<\/li><li>ECS32B Data Structures<\/li><li>ECS124 Algorithms in Bioinformatics<\/li><li>ECS197T Tutoring in Computer Science<\/li><\/ul><h5>ECS32A Introduction to Programming &#8211; Python<\/h5><p>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.<\/p><p><strong>SLAC \/ CodingForward<\/strong>: A team of undergraduate Tutors help to make this large course great. Find out more at <a href=\"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/cof\/\">Coding Forward\/SLAC<\/a><\/p><p><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-content\/uploads\/sites\/88\/2026\/09\/ECS32A-1024x571.png\" alt=\"\" width=\"800\" height=\"446\" \/><\/p><h5 style=\"color: #333333;font-family: -apple-system, &#039;system-ui&#039;, &#039;Segoe UI&#039;, Roboto, &#039;Helvetica Neue&#039;, Arial, &#039;Noto Sans&#039;, sans-serif, &#039;Apple Color Emoji&#039;, &#039;Segoe UI Emoji&#039;, &#039;Segoe UI Symbol&#039;, &#039;Noto Color Emoji&#039;\">ECS124 Theory &amp; Practice of Bioinformatics<\/h5><div><p dir=\"ltr\" style=\"color: #000000;font-size: medium\">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 &#8211; but <b>algorithms<\/b> are needed turn those reads into biology. This is algorithms and datastructures applied to data &#8211; specifically biological data.<\/p><p dir=\"ltr\" style=\"color: #000000;font-size: medium\">Other courses teach you how to run bioinformatics tools &#8211; This is a course about how and why those algorithms work. \u00a0If you understand the techniques rather than just particular programs, you will be able to adapt as technology improves.\u00a0<\/p><\/div><div><img decoding=\"async\" src=\"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-content\/uploads\/sites\/88\/2026\/09\/ECS124-Full-1024x572.png\" alt=\"\" width=\"800\" height=\"447\" \/><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>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.<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"footnotes":""},"class_list":["post-625","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/pages\/625","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/comments?post=625"}],"version-history":[{"count":52,"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/pages\/625\/revisions"}],"predecessor-version":[{"id":1196,"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/pages\/625\/revisions\/1196"}],"wp:attachment":[{"href":"https:\/\/faculty.engineering.ucdavis.edu\/stevens\/wp-json\/wp\/v2\/media?parent=625"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}