
What is Programming For Lovers?
The last coding course you’ll ever need.
Programming for Lovers combines the depth of an acclaimed Carnegie Mellon University programming course with the flexibility of self-paced learning. Each chapter follows a proven learning cycle (read, code along, practice) to help you master the fundamentals of programming.
Stuck between beginner courses and larger projects? We are your bridge!
What is P4L?
The last coding course you’ll ever need.
Programming for Lovers combines the depth of an acclaimed Carnegie Mellon University programming course with the flexibility of self-paced learning. Each chapter follows a proven learning cycle (read, code along, practice) to help you master the fundamentals of programming.
What makes us unique?
🎉 Fun
Learning to program should be, first and foremost, enjoyable: we have worked hard to find applications and exercises that aren’t just rote practice.
🔬 Science applications
Every moment of the course relies on a scientific narrative: simulate gravity, predict elections, and build evolutionary trees of deadly viruses.
🧠 Rigor
Take a course used successfully for over a decade to prepare students at Carnegie Mellon University for technically demanding careers.
💻 CS foundations
Explore Turing machines, undecidability, and P vs NP to understand not just how to code, but learn what a computer can and cannot do.
📖 Learn, then code
Introductory readings for each chapter give a stress-free language neutral way to learn programming without worrying about language syntax through pseudocode.
🤝 Pick your language
Whether you’re a new coder or an experienced pro, with Programming for Lovers, you can choose the language you learn: Python, Go, and (coming soon!) Java.
Meet our team

Phillip Compeau
Founder
Phillip is an Assistant Dean and Teaching Professor in the School of Computer Science at Carnegie Mellon University. He has designed a range of STEM courses to a diverse collection of student groups, built several student-centric academic programs, and founded scalable online education projects that have reached over a million learners, including Rosalind, Bioinformatics Algorithms, and Biological Modeling.

Daphne Han
Web Designer
Daphne is a master’s student in the Integrated Master’s in Computational Biology program at Carnegie Mellon University. She completed her undergraduate degrees in computational biology and IDeATe: Design for Learning at CMU. Her interests lie in developing machine learning methods to address biological problems, statistical genetics, designing accessible educational spaces, and science communication.

Sophia Chen
Content Engineer
Sophia is an undergraduate artificial intelligence major at Carnegie Mellon University. She loves programming and learning. In her free time, she enjoys playing tennis and watching FBI/crime shows.

Jon Potter
Content Engineer
Jon is an Automation Engineer and alumnus of Carnegie Mellon University, where he completed a master’s in automated science. His passion lies in revolutionizing scientific research through cutting-edge technology, particularly in the realms of drug discovery, genomic research, and longevity studies.

Xavier Lien
Content Engineer
Xavier is an undergraduate computer science and mathematics student at Carnegie Mellon University. Since picking up programming in middle school, he has always enjoyed problem solving and building things, from full stack web development to machine learning applications. He also hopes to further develop his interest in programming languages and type theory.

Spencer Fisher
Content Engineer
Spencer is an undergraduate at Carnegie Mellon University studying computer science with a minor in Chinese studies. In his spare time, he plays on the CMU club rugby team and is an avid soccer fan. He loves contributing to platforms with real-world impact.