Algebra word problenu are often surprisingly hard for college students to solve. However, more students are able to solve these problems correctly when asked to write a computer program, than when asked to write an equation. We hare also foond that programmers, with the same level of math experience as non-programmers, do consistently better on the algebra word problems, after only one semester of an introductory programming class. We argue that some of the difficulty associated with the algebra word problems can be traced to misconceptions about what the algebraic expression represents. Students often appear to use an algebraic expression as if it were a static description rather than as denoting an active operation being performed by one number to get another number. Although programmers may be equally prone to such misconceptions, it seems that experience with programming helps them to overcome these misconceptions, by encouraging them to develop a more active, procedural view of the problem.