D

Daniel Shiffman Books

1 book·~10 min total read

Daniel Shiffman is an educator, programmer, and artist known for his work in creative coding. He teaches at New York University's Interactive Telecommunications Program (ITP) and is a key contributor to the Processing and p5.

Known for: The Nature of Code: Simulating Natural Systems with Processing

Books by Daniel Shiffman

The Nature of Code: Simulating Natural Systems with Processing

The Nature of Code: Simulating Natural Systems with Processing

programming·10 min read

The Nature of Code is a bridge between programming and the living world. In this inventive and highly practical book, Daniel Shiffman shows how code can model the same forces, patterns, and behaviors that shape nature: motion, randomness, flocking, evolution, recursion, learning, and emergence. Using the Processing language as an accessible creative coding environment, he translates ideas from physics, mathematics, and biology into visual, interactive simulations that feel both rigorous and playful. What makes the book matter is not just that it teaches techniques, but that it changes how you think about programming. Instead of treating code as a set of rigid instructions, Shiffman presents it as a medium for experimentation, observation, and discovery. Readers learn how small rules can generate surprising complexity, how realistic motion comes from simple physical principles, and how computational systems can mimic life-like behavior. Shiffman is uniquely qualified to guide this journey. As an educator, artist, and leading voice in the Processing and p5.js communities, he has spent years helping programmers, designers, and curious beginners use code creatively. The result is a book that is technically grounded, visually engaging, and deeply inspiring.

Read Summary

Key Insights from Daniel Shiffman

1

Randomness Makes Simulations Feel Alive

Perfect regularity is often the enemy of realism. Natural systems rarely behave like machines repeating identical actions. Leaves do not fall in straight lines, animals do not move in exact patterns, and weather does not unfold with clockwork precision. Shiffman begins by showing that randomness is ...

From The Nature of Code: Simulating Natural Systems with Processing

2

Vectors Turn Motion Into Understandable Code

Movement becomes much easier to simulate once you stop thinking in isolated x and y values and start thinking in vectors. Shiffman treats vectors as one of the essential building blocks of computational physics because they unify direction and magnitude in a single structure. With vectors, motion is...

From The Nature of Code: Simulating Natural Systems with Processing

3

Forces Create Interaction and Dynamics

A moving object is interesting; an object influenced by forces is believable. Shiffman extends vector-based motion into a richer model by introducing forces such as gravity, friction, drag, and attraction. These forces make objects respond to the world instead of simply traveling through it. That sh...

From The Nature of Code: Simulating Natural Systems with Processing

4

Oscillation Gives Systems Rhythm and Pattern

Nature is full of cycles. Hearts beat, pendulums swing, tides rise, seasons turn, and sound travels in waves. Shiffman uses oscillation to show that many dynamic systems are best understood not as straight-line movement, but as repeating variation over time. This chapter expands the reader’s visual ...

From The Nature of Code: Simulating Natural Systems with Processing

5

Autonomous Agents Can Mimic Living Behavior

One of the most exciting moments in computational design is when an object stops feeling like an object and starts feeling like a creature. Shiffman reaches that threshold through autonomous agents and steering behaviors. Rather than scripting every movement in advance, he gives agents goals, constr...

From The Nature of Code: Simulating Natural Systems with Processing

6

Simple Rules Can Produce Emergence

Some of the most astonishing complexity in the natural world comes from systems with no central controller. Shiffman explores this through cellular automata and emergence, where simple local rules generate patterns that look organized, surprising, and sometimes even intelligent. This is one of the b...

From The Nature of Code: Simulating Natural Systems with Processing

About Daniel Shiffman

Daniel Shiffman is an educator, programmer, and artist known for his work in creative coding. He teaches at New York University's Interactive Telecommunications Program (ITP) and is a key contributor to the Processing and p5.js communities. Shiffman is recognized for his engaging teaching style and ...

Read more

Daniel Shiffman is an educator, programmer, and artist known for his work in creative coding. He teaches at New York University's Interactive Telecommunications Program (ITP) and is a key contributor to the Processing and p5.js communities. Shiffman is recognized for his engaging teaching style and his efforts to make programming accessible to artists and designers.

Frequently Asked Questions

Daniel Shiffman is an educator, programmer, and artist known for his work in creative coding. He teaches at New York University's Interactive Telecommunications Program (ITP) and is a key contributor to the Processing and p5.

Read Daniel Shiffman's books in 15 minutes

Get AI-powered summaries with key insights from 1 book by Daniel Shiffman.