Sign In

Communications of the ACM

BLOG@CACM



Learning Programming at Scale
From BLOG@CACM

Learning Programming at Scale

I summarize my first three years of research as an assistant professor on studying and building tools to support people who are learning computer programming.

Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities
From BLOG@CACM

Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities

Eight of the top 10 CS departments in the U.S., and ~70% of the top 40, teach Python in introductory courses.

Small-Group Code Reviews for Education
From BLOG@CACM

Small-Group Code Reviews for Education

Real-time, small-group code reviews are great learning opportunities for students.

Data Science Workflow: Overview and Challenges
From BLOG@CACM

Data Science Workflow: Overview and Challenges

I provide an overview of the data science workflow and highlight some challenges that data scientists face in their work.

Coping With Linux Distro Fragmentation (Visualized in One Giant Diagram)
From BLOG@CACM

Coping With Linux Distro Fragmentation (Visualized in One Giant Diagram)

I describe software incompatibility problems caused by fragmentation in Linux-based operating systems and present one potential solution.

Teaching Real-World Programming
From BLOG@CACM

Teaching Real-World Programming

In this post, I describe a ubiquitous style of programming that, to my knowledge, has never been formally taught in the classroom.

Teaching Programming To A Highly Motivated Beginner
From BLOG@CACM

Teaching Programming To A Highly Motivated Beginner

I recount what I learned from spending nine months teaching computer programming to a person with no prior programming experience.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account