The Invent with Python Blog

Writings from the author of Automate the Boring Stuff.

Book Review: Python Distilled

Mon 15 January 2024    Al Sweigart Lang en

article header image
Geometric Patterns with Creative Coding: Coding for the Arts by Selçuk Artut. Published by Apress July 2023. 420 pages.

4 stars. A fine introduction for programmers and non-programming artists alike.

I came across Selçuk Artut’s Geometric Patterns with Creative Coding while researching several topics on computer-generated art for beginners. I admit, the single 1-star review for this book annoyed me enough to read and review. I’ve come away believing that this book certainly deserves wider and better attention than that.

This book is a decent starting point for anyone who wants to program computers to create generative art. The first several chapters of art history are slim summaries, but they give you plenty of things to look up later if you’re interested (though you can also skip these chapters entirely if you aren’t.) The real meat of the book starts about 60 pages in with the briefest introductions to programming concepts before the next 300 pages have example after example of interesting tessellations (23 in total) along with code and breakdowns of the pattern motifs.

The primary downside of this book is that it doesn’t offer a lot of hand-holding. The explanation of the programming and math concepts is sufficient, but a bit more elaboration would help some readers with coding experience. But you certainly don’t need to be a programmer or “good at math” to follow along.

This book gives back as much as you put in: you have to put aside any feelings of intimidation and be willing to dive into the examples. (You don’t even need to install anything; you can use the browser-based Processing interpreter at https://editor.p5js.org/ to run the example art programs.) The primary utility comes from the many tessellating pattern programs it offers. Take the time to understand them. Make your small modifications to the code and watch how they change the resulting artwork. They are examples to be studied rather than just read once.

This book is rather raw and unpolished. The art history chapters are the briefest introduction and the programming and math sections make it hard for the non-programmer to figure out how to apply these ideas. I give this 4 stars because I feel there’s a lot that could be improved: comments in the source code could add more context, descriptive variable names instead of single letters, links to source code and other resources for further reading. All of the projects are basic tiled patterns of lines and arcs. It misses out on exciting patterns that could be demonstrated using Bézier curves, randomness, and recursion.

However, I still think this is a good book as long as it isn’t your only resource on Processing and algorithmic art. It should be on your bookshelf whether you are a teen or an adult, a software engineer or a hobbyist. The diagrams for the patterns are clear and descriptive. The 23 patterns (along with the source code that generates them) make for great programming practice for anyone who wants to start into the world of computer art.

Additional: I highly recommend Tim Holman's CSSConf Australia talk, "Generative Art Speedrun" for a great and concise explanation on generative art concepts.


Learn to program for free with my books for beginners:

Sign up for my "Automate the Boring Stuff with Python" online course with this discount link.

Email | Mastodon | Twitter | Twitch | YouTube | GitHub | Blog | Patreon | LinkedIn | Personal Site