Five Years of Daily Code Art: What the Practice Teaches You
Saskia Freeke has created one piece of digital artwork every day for more than five years, using code to generate patterns, shapes, and animations. What began as a personal challenge to overcome creative blocks has become a daily ritual and a way to learn programming playfully, one small visual iteration at a time.
Starting from Scratch, Twice
Freeke’s path into generative art began after graduation. Despite a design-focused education, she had long wanted to understand how to build visual works with code. In 2014 she started experimenting with generative patterns, grid-based artworks, and animations, leaning on her existing design knowledge as a bridge into programming.
Two resources helped her make the leap: the HYPE Framework, a collection of Processing classes, and a Skillshare class by designer Joshua Davis. Combining a familiar skill—creating shapes in Illustrator—with a new framework made the learning curve manageable. For anyone starting out, Freeke suggests finding a learning path that builds on something you already know.
A bigger obstacle than the technical learning curve was perfectionism. She found that works produced during exploration were never “good enough” to share publicly. That frustration led to her first daily experiment: one artwork per day for a month, posted to her Tumblr blog.
Finishing that first month in September 2014 felt like a win, even though she allowed herself to skip days afterward. By January 2015 she returned to the daily routine, expecting to exhaust her ideas within a few months. Instead, the practice continues today.
Tools That Grew with Practice
Initially, Freeke worked with Processing, the open-source visual arts programming environment that began in 2001, along with the HYPE Framework. Her early pieces placed small vector drawings randomly on a canvas, varying colors and parameters to create different compositions. She also used Hexels, grid-based drawing software, either to animate directly or to produce small vector shapes for pattern generation. By adjusting shape counts, types, colors, and layout, she had nearly endless possibilities to explore.
Eight months in, she attempted her first animation from a blank Processing sketch. Research took time, and she copied code examples liberally to get something that worked. The code was probably messy and inefficient, but it functioned. That outcome mattered more than perfect elegance or full comprehension; creating from research and borrowed examples was a valuable start in itself.
Iteration and the Value of Constraint
A playful approach helped Freeke understand the tools. Instead of theorizing, she changed small bits of code and observed what they did, building deeper understanding through dozens of tiny iterations. Early on that meant little understanding but steady growth.
Over time, she introduced self-imposed constraints to keep the practice fresh. Small challenges, such as using a single color palette for three consecutive days, became a way to study how colors interact with shapes and compositions. By year four, those challenges grew into monthly themes. Working within a fixed thematic boundary eliminated daily decision fatigue: each day’s work became a playful extension of an ongoing framework rather than a blank slate. This also pushed her to be more creative within expanding rules.

Monthly themes eventually felt too restrictive, so she moved to weekly themes, which offer both depth and freshness. Each week starts with a new theme and gets explored for seven days. Watching a theme evolve over a week is part of the enjoyment—and it taught her that different creative approaches suit different temperaments and schedules.
The Ugly First Steps of a New Direction
Starting a new technical area is rarely pretty. When Freeke first tried adding 3D shapes to her animations, she imagined many hours of research would be needed first. Those hours never materialized. Instead, the 3D work began impulsively on a day when inspiration struck while preparing her daily piece. She looked up the basics, made a simple sketch by iterating from an earlier 2D one, and accepted the results.
Those first 3D experiments were not visually impressive, but they were forward progress. Over the following days and weeks she researched lighting and shape handling, and the output gradually became far more polished. What seemed like a large obstacle crumbled after a few periods of working through discomfort.

Making the Time
Finding time for daily creativity is often the biggest hurdle. Freeke treats the evening as her dedicated slot; making and experimenting with code has become meditative, a personal period to unwind. Not every person will want a daily rhythm though; weekly projects work for some. What matters is discovering an approach and time that fit your life.
Public reaction, she notes, is not always a good meter for quality: pieces she considers mediocre sometimes gather more likes than ones she loves. The point isn’t perfection, but consistent experimentation.
Get Started with Your Own Sketches
Readers who want to try generative art can start with p5.js, a Javascript library designed for creative coding. Freeke recommends its “Getting Started” tutorial and examples, Daniel Shiffman’s video tutorials at The Coding Train, and OpenProcessing for inspiration and public sketches to play with.
Freeke’s own explorations, including a p5.js sketch of geometric shapes patterns, remain visible on her Tumblr and Instagram pages. Her advice for those starting similar projects: don’t let past struggles limit future interest, small goals build momentum, and messy beginnings are still forward steps. Approach the work with play, not perfection, in mind.



