Daniel Shiffman Books
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 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 SummaryKey Insights from Daniel Shiffman
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
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
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
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
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
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 ...
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.
