Literate programming is a powerful technique that helps expert programmers integrate code and documentation in a manner that assists human comprehension. To date, tools for literate programming have had moderately complex syntactic requirements. Consequently, the programmers who stand to gain most from the clarity of the literate technique|novice and learning programmers|have been unable to do so. This paper describes the potential bene ts of literate programming environments within introductory programming courses.Design criteria for such environments are presented, and prototype systems demonstrating the criteria are described. Evidence of student enthusiasm for graphical user interfaces for literate programming is discussed.