How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on the programming strategies and techniques behind computer simulations of natural systems using Processing.

Many people think of hackers as cyber criminals, breaking into computer systems with ill-intent. Though there are plenty of destructive hackers in the world, there have always been people who hack with a different purpose. Some define hacking as "finding creative solutions to technical problems." To them, hacking means having an exploratory mindset about technology, and a willingness to "get under the hood" to tinker and see what happens. Other groups, like Anonymous, employ more subversive hacking practices to forward social and political causes, embedding a social consciousness into the traditionally murky dark-side of security hacking. Looking beyond the media hype and scare tactics, it is clear that "hacking" is a term whose meaning should be up for debate, and that some hackers could in fact be heroes, and not just villains.