BookenDeX — Better Discovery eXperience
Cover of How to Design Programs
Book details

How to Design Programs

An Introduction to Programming and Computing

by Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi

Published 2001720 pagesISBN 978-0-2620-6218-3

This introduction to programming places computer science in the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process. This approach fosters a variety of skills -- critical reading, analytical thinking, creative synthesis, and attention to detail -- that are important for everyone, not just future computer programmers. The book exposes readers to two fundamentally new ideas. First, it presents 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, based on the analysis; how to finish the program; and how to test. Each step produces a well-defined intermediate product. Second, the book comes with a novel programming environment, the first one explicitly designed for beginners. The environment grows with the readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. - Publisher.

Beyond its central premise, the book can be read through the connected lenses of Nonfiction. Those themes offer useful points of attention as the characters, ideas, or world develop, especially where the book complicates the expectations of its primary category.

As an Amazon Associate I earn from qualifying purchases.

Full BookenDeX details

What the reading experience may hold

A fuller profile for choosing with more confidence—not just another copy of the preview.

Themes to notice

Nonfiction

Use these as starting points rather than limits; the most memorable books often stretch beyond their catalog labels.

Content notes

No specific content concerns can be confirmed from the available English catalog information. Consult a publisher or reader-supplied guide when detailed warnings matter.

These notes are inferred from available catalog information and may not be complete. Check a publisher or reader-supplied guide if you need comprehensive warnings.

Reading experience

Balanced tone · Steady pace

Best when you want to settle into a longer reading experience.

Who it may suit

A good fit if…

Readers looking for a substantial, immersive commitment with room for a world or argument to unfold.

At a glance

This book's DNA

A visual estimate based on this edition's categories, description, and length. Select a star to explore the signals.

ToneBalanced
LuminousDark

This signal is descriptive, not a rating. It helps compare the kind of reading experience this edition may offer.

No plot details

Spoiler-Free Emotional Arc

A broad estimate of the book’s emotional rhythm, shown without story events or outcomes.

Spoiler-free
12345
PeakRelative emotional intensity
How to Design ProgramsMatthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Powerful4.7/5

This visualization is an interpretive estimate based on catalog description, categories, tone, pace, and content signals. It does not describe specific scenes.

Before you choose

A quick reading snapshot

Edition facts and catalog signals to help you decide whether this book fits what you want to read next.

Reading lengthA longer, immersive read720 pages in this edition
Publication eraModernFirst published or edition dated 2001
Primary categoryNonfictionExplore similar books below
ISBN-13
978-0-2620-6218-3
Language
English
Edition record
OL9591969M
BookenDeX editorial lens

A more thoughtful way into this book

This guide uses the edition details and category signals above to help you choose deliberately. It does not replace the author's work or a full review.

Good to know

Best when you want to settle into a longer reading experience.

Begin with its place in Nonfiction, then notice where the book resists that label.

Try this reading approach

Read for connection, not completion.

Mark one passage that sharpens the book's central concern and one that complicates it. That tension often reveals more than a quick summary.

Three questions to carry with you

  1. Whose perspective organizes the story, and whose perspective remains outside it?
  2. Which sources or lived experiences carry the author’s central argument?
  3. How does the book change the way you understand its larger subject?

Editorial framework by Wesley Bryan, BookenDeX Founder and Editor.