As computer programming becomes more central to the workforce, the need for better models of how it is effectively taught and learned has become more apparent. The current study addressed this gap by recording electrophysiological brain responses as 62 Python programmers with varying skill levels read lines of code with semantic and syntactic congruency manipulations. Group-level results showed that semantic manipulations resulted in N400 effects, with less plausible code generating more negative deflections in the 300-500 ms range than semantically congruent code. Syntactic manipulations resulted in P600 effects, with structurally invalid code generating more positive deflections in the 500-800 ms range than structurally valid code. Greater Python expertise within the group was associated with greater behavioral and neural sensitivity to structure, but not to semantics. These results support the notion that computer code comprehension is incremental, relying jointly on form and meaning, and resembles our dominant symbolic meaning-making system—natural language.