How to Design Programs, second edition: An Introduction to Programming and Computing

Authors: Felleisen, Matthias & Findler, Robert Bruce & Flatt, Matthew & Krishnamurthi, Shriram
Publisher: MIT Press
BISAC/Subject: COM051000, COM014000
ISBN: 9780262344128, Related ISBNs: 0262344122, 0262534800, 9780262344128, 9780262534802
Classification: Non-Fiction
Number of pages: 792,
Audience: General/trade
Synopsis: A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming.

This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks.

This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.

Sign up for our literacy platform for reading at home

LightSail includes up to 6,000 high interest, Lexile aligned book titles with every student subscription. Other titles are available for individual purchase.

Watch the power of

Lightsail in action

×

SUPPORT GROWING READERS

Immediately Engage Students
Immediately Engage Students
Simple intuitive design has classrooms reading within minutes.
Exponentially Grow Reading Time
Exponentially Grow Reading Time
Students love the LightSail experience and naturally spend more time reading.
Accelerate Literacy Development
Accelerate Literacy Development
Students reading 25 minutes a day on LightSail are seeing 2+ years of Lexile growth in a single year.

LightSail Education is a comprehensive Lexile and standards-aligned, literacy platform and digital e-book library. Including multimodal learning functionality and featuring books from leading publishers, LightSail holistically assesses and nurtures each student on their reading and writing-to-learn journey, throughout elementary, middle, and high school.

*LightSail offers a 2,000 or a 6,000 title bundle with its student subscriptions. Other titles are available for individual purchase.