Non-Programmer Language


There’s a really neat paper that’s been circulating, Studying the Language and Structure in Non-Programmers’ Solutions to Programming Problems. The paper presents a study surveying non-programmers and their use of language in describing programming problems.

The idea is to shed light on what words / meanings non-programmers use and how those might clash with typical programming language keywords or overall design.

For example:

The raters found that the most popular use of the word then is for sequencing, or specifying that an action should happen after finishing a prior action. This is inconsistent with its use in most programming languages, where it means consequently.

Lots of really great insights here for anyone designing a programming environment.

(see also Glen Chiacchieri’s redesign of the results section of the paper)