Practical Coding in Java
Online textbook for AP Computer Science.
website pdf
I am the Program Head of Computer Science and Software Innovation at Marlborough School in Los Angeles. I develop the computer science curriculum, and I work with faculty in various departments on collaborative projects showcasing the wide range of applications of computer science. In addition, I supervise students in research and interdisciplinary projects involving computer science and engineering.
I am also a Senior Software Engineer on the AI and Advanced Molecular Medicine team at the Ellison Medical Institute. I write software for data analysis and visualization related to: AI applications, data analysis pipelines, DNA sequencing, mass spectrometry, clinical and research databases.
I am a strong proponent of free and open source software, open public data, and open educational resources. I am also an advocate for increasing the diversity of voices in the STEM fields in general, and in software development in particular.
In the classroom I use free and open source software, open public data, and open educational resources. You can find out more about these resources on my Teacher Resources page.
This website was created with Simple.css. I created the animation with p5.js.
Online textbook for AP Computer Science.
website pdfOnline textbook for first steps in Python.
website pdfTutorial examples for Javascript and p5.js.
websiteDemo programs for the Processing language.
websiteA collection of open source software, open data, and open educational resources that I use in my classes.
websiteTutorial examples for using the Processing libraries from Java (useful for AP Computer Science teachers)
websiteAn ode to Takashi Murakami's flowers, using p5.js drawing functions only (no textures)
websiteA free online program to convert your sad face into a cat photo.
websiteA demonstration of a web-based visual novel using public domain content (Lewis Carroll's original images and text from Alice in Wonderland).
websiteDraw surfaces using parametric equations (for my Multivariable Calculus class).
websiteMiscellaneous mathematical explorations and demos.
websiteA source code translator that converts Processing/Java code to p5.js/Javascript code.
websiteVisualization of LAPD youth incarceration data, by student Isabelle '21.
websiteHour of Code tutorials created by coding students at Marlborough School.
websitePumpkin coding activity for a virtual Halloween 2020.
websiteICGS Conference, Toronto, June 2026
slidesICGS Conference, Philadelphia, June 2025
slidesEducator Workshop, Marlborough School, October 2024
Pushing Perspectives / AI Club, Marlborough School, November 2024
slides (Educator Workshop)NCGS Global Forum, Boston, June 2022
slidesGrab & Go, STEM Think Tank & Conference, Harpeth Hall, Nashville (virtual), February 2021
slidesNCGS Conference, Westridge School, Los Angeles, June 2019
slidesDesign and Maker Class Colloquium, Windward School, Los Angeles, June 2019
slidesDesign and Maker Class Colloquium, Windward School, Los Angeles, August 2017
slidesSTEM Think Tank & Conference, Harpeth Hall, Nashville, July 2017
Design and Maker Class Colloquium, Windward School, Los Angeles, August 2016
pdf slidesSTEM Think Tank & Conference, Harpeth Hall, Nashville, July 2016
NCGS Conference, St. Catherine's School, Richmond, July 2015
STEM Think Tank & Conference, Harpeth Hall, Nashville, July 2015
2020, Marlborough website
article website2018, Innovative Teaching + Learning: Disrupting the K-12 Classroom (book chapter)
pdf book2015, Genetics
pdf2014, doctoral dissertation
pdf2014, Bioinformatics
pdf supp repo2013, Molecular Biology and Evolution
pdf repo2008, Bioinformatics
pdf website