liveBook · Manning

Design

Design is the process of planning and specifying an artifact’s structure, behavior, or presentation, and the resulting arrangement, to meet intended purposes and constraints.

How 4 Manning books explain it

Functional Design and Architecture: Examples in Haskell

The creative activity of selecting and organizing software structures and mechanisms to satisfy requirements while managing trade-offs.

How it is used
Translates requirements and domain models into architecture and high-level code structures that meet goals while limiting complexity.
How deep it goes
Defines design, analyzes accidental complexity and trade-offs, and outlines interfaces, patterns, and top-down iterative architecture rather than detailed implementation.
Examples
Uses spaceship control requirements, engine-control UML, thermometer adapters, interface-based sensors, and deliberately overcomplicated FizzBuzz structures.
What you can do after
Evaluate/understand design choices by balancing requirements, simplicity, abstractions, maintainability, and paradigm-specific techniques.

Read how Functional Design and Architecture: Examples in Haskell explains design →

WordPress Power Toolkit: Harness AI to build next-level websites

Site design is the planning and creation of a website's visual appearance, layout, and user-facing presentation.

How it is used
Guides visual decisions that make a WordPress site comfortable, distinctive, and aligned with audience goals.
How deep it goes
Explains theme customization and gives procedural AI-led reviews, stopping short of formal color theory or typography instruction.
Examples
Uses recipe and water-garden home pages, an incongruous potato image, reference websites, and Canva landing-page templates.
What you can do after
Evaluate/understand a site’s visual strengths and weaknesses, then customize themes or templates to improve coherence and fit.

Read how WordPress Power Toolkit: Harness AI to build next-level websites explains design →

Collaborative Software Design: How to facilitate domain modeling decisions

Software design is the activity of determining a software system’s structure, behavior, and implementation decisions from its requirements.

How it is used
Guides collaborative activities that move a current software system from understood problems toward a preferred system.
How deep it goes
Defines design, distinguishes architecture, and connects modeling with facilitation, bias, explicit decisions, and iterative feedback.
Examples
Uses BigScreen modeling, boundary decisions, ambiguous terminology, architectural disagreements, and evolving decision records as practical examples.
What you can do after
Apply it via collaborative modeling to expose assumptions, make decisions, plan system changes, and keep designs adaptable.

Read how Collaborative Software Design: How to facilitate domain modeling decisions explains design →

Design for Developers

Web design is the planning and creation of a website’s visual presentation, structure, and interaction.

How it is used
Guides visual, structural, and interaction decisions while connecting developer implementation with user goals.
How deep it goes
Explains an iterative workflow from research and wireframes through visual design, implementation, testing, and refinement, without specialist depth.
Examples
Uses competitor comparisons, user personas, wireframes, pixel-perfect mock-ups, whitespace adjustments, and minimum viable product testing.
What you can do after
Apply design fundamentals to make interface decisions, communicate with designers, and iterate from tested feedback.

Read how Design for Developers explains design →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.