liveBook · Manning

Principle

A principle is a general rule, guideline, or value that guides decisions, behavior, or judgments.

How 4 Manning books explain it

Design for Developers

A general guideline for directing decisions about the visual and experiential qualities of a product or interface.

How it is used
Guides layout and visual decisions before wireframing and later interface design.
How deep it goes
Introduces five named fundamentals and their role in hierarchy, deferring detailed typography, color, and user-experience treatment.
Examples
Uses a planned-versus-unplanned house and website-layout comparison, plus wireframes as website blueprints.
What you can do after
Build it from scratch into a project-specific, lightweight design system and make more confident visual decisions.

Read how Design for Developers explains principle →

Software Design for Python Programmers

A design principle is a general guideline for structuring software to improve qualities such as flexibility, correctness, and performance.

How it is used
Guides functions, classes, and collaborating classes toward sustainable software that handles changing requirements.
How deep it goes
Develops principles through before-and-after examples, iteration, implementation hiding, and tradeoffs, without prescribing one complete architecture.
Examples
Uses basic-feature Python programs, before-and-after comparisons, requirement changes, and iterative refactoring with backtracking.
What you can do after
Evaluate and improve code by isolating change, reducing dependencies, managing complexity, and selecting supporting design patterns.

Read how Software Design for Python Programmers explains principle →

Object-Oriented Software Design in C++

A design principle is a general guideline for structuring software to improve qualities such as flexibility and maintainability.

How it is used
Improves code and class designs while guiding iterative development toward flexible, maintainable applications.
How deep it goes
Explains application across lines, functions, classes, and class groups, then connects principles to encapsulation, coupling, and patterns.
Examples
Uses before-and-after C++ programs, iterative application development, requirements analysis, implementation hiding, and backtracking over poor decisions.
What you can do after
Apply design principles to improve code, manage change and complexity, and refine applications through iteration and backtracking.

Read how Object-Oriented Software Design in C++ explains principle →

Reinforcement Learning from Human Feedback

A principle is a rubric criterion expressing a desirable quality that guides evaluation without being an absolute requirement.

How it is used
Guides rubric-based evaluation, synthetic feedback, preference judgments, and model-behavior specification.
How deep it goes
Defines principles through rubric examples and contrasts them with hard rules, but does not formalize a scoring algorithm.
Examples
Uses museum-exhibit criteria for precision, engagement, selection, consistency, and distinctness.
What you can do after
Evaluate responses by writing weighted, testable criteria that distinguish desirable qualities from hard requirements.

Read how Reinforcement Learning from Human Feedback explains principle →

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.