Most CS education researchers arrive at questions about student success from the outside — from data, from literature, from the lab. I arrived at them from inside the institution, from five different roles in which I watched the same students encounter the same invisible structural barriers from completely different vantage points.

I am a first-generation college student, an independent CS education researcher, and a PhD applicant for Fall 2026. I work on the CVC-OEI Application Support team at Foothill–De Anza, where I help keep the systems running across financial aid, counseling, tutoring, and learning-community programs. Before that, I spent years inside those same programs as a staff member. The research questions I'm pursuing are not abstractions. They are formalized versions of things I watched happen to real students.


Five Roles, One Insight


The research isn't despite the student services work. The research is the student services work, made formal. I do not come to this research with the most advanced technical portfolio in my cohort. What I bring is an unusually complete picture of how students actually move through institutions — and an unusually strong conviction that the problems are structural, solvable, and worth a career.

My intellectual touchstones: Seymour & Hunter's Talking About Leaving Revisited, Jeff Anderson's applied linear algebra curriculum and twelve modeling criteria, Papert's Mindstorms, Ko's Critically Conscious Computing, and the SIGCSE community's sustained attention to who CS education is actually designed for.

This work is dedicated to Jeff Anderson, my mentor, whose textbook and teaching practice are evidence that the problem is solvable — that you can design curriculum around student need rather than disciplinary convention — and that solving it is worth a career. His antiracist learning science, ungrading framework, and five learner-centered objectives are the foundation of every curriculum I design.


The Curriculum Practice

In parallel with this research, I design introductory CS and mathematics curriculum for community colleges. The curriculum is not separate from the research — it's the intervention side of the same question. I design courses intended to address the structural problems the research documents, and those courses are meant to become the sites where I study whether the fixes work.

The courses are built on three principles: derive before compute (Harel's necessity principle), build before import (Papert's constructionism), and equity as design (Ko, Freire, hooks). Assessment is portfolio-based with student-proposed grades (Anderson's ungrading). The signature project — Build a Computer from Scratch — is a 20-week team build of a working 8-bit breadboard computer that bridges five STEM disciplines.

See the full curriculum page or visit the curriculum site.


Details

Current Role
CVC-OEI Application Support Analyst · Foothill–De Anza Community College District
Mentor
Jeff Anderson · Foothill College Mathematics
Research Area
CS Education · Learning Analytics · STEM Persistence · Help-Seeking
Target Venues
SIGCSE · ICER · EDM · LAK · Learning @ Scale
PhD Applications
Fall 2026 cycle · CS Education & Learning Sciences programs
CV
Available on request · henry@henryfan.org

Contact

henry@henryfan.org

git clone https://github.com/fansofhenry/cs-ed

Last updated: April 2026