Pixel Distress

Published On

Dec 22, 2020

Asset A
Asset A

During my early days of learning Processing, I embarked on a series of small, exploratory projects that focused on image manipulation through simple user interactions. The core idea behind each experiment was straightforward: take an image and use a single interaction, similar to a brush tool in Photoshop, to transform it into something abstract and painterly. These interactions can be subtly adjusted, allowing users to change parameters such as brush size and orientation, which results in unique and often surprising outcomes.

What began as technical exercises quickly evolved into a set of playful tools that turned ordinary images into expressive visual reinterpretations. Each one offered a different kind of manipulation, and none gave any hints about what would happen—an intentional design choice that invited exploration and discovery.

Asset A
Asset A
Asset A
Asset A
Asset A
Asset A
Asset A
Asset A
Asset A

I shared the tools with a few friends and asked them to record their sessions. Watching how they interacted was fascinating. Most users began by moving their mouse randomly, trying to understand what the tool was doing. Each app included a reset button, and what followed was often a more deliberate second attempt, one that engaged more thoughtfully with the content of the image.

I shared the tools with a few friends and asked them to record their sessions. Watching how they interacted was fascinating. Most users began by moving their mouse randomly, trying to understand what the tool was doing. Each app included a reset button, and what followed was often a more deliberate second attempt, one that engaged more thoughtfully with the content of the image.

I shared the tools with a few friends and asked them to record their sessions. Watching how they interacted was fascinating. Most users began by moving their mouse randomly, trying to understand what the tool was doing. Each app included a reset button, and what followed was often a more deliberate second attempt, one that engaged more thoughtfully with the content of the image.

These projects were more than just experiments in visual output; they were a hands-on way to learn creative coding. Working with Processing’s copy() function gave me a tangible way to understand how image data could be manipulated. Designing these tools with others in mind also pushed me to consider user experience. I had to provide visual cues to show what part of the image was being sampled and where the tool was acting, which added another layer of design thinking to the process.

In hindsight, building small, shareable applications like these was one of the most valuable ways to internalize programming concepts. It emphasized iteration, clarity, and the joy of creating open-ended tools that invited play. Below, you can find a compilation of the outcomes, each one a blend of algorithmic randomness and human intent.

These projects were more than just experiments in visual output; they were a hands-on way to learn creative coding. Working with Processing’s copy() function gave me a tangible way to understand how image data could be manipulated. Designing these tools with others in mind also pushed me to consider user experience. I had to provide visual cues to show what part of the image was being sampled and where the tool was acting, which added another layer of design thinking to the process.

In hindsight, building small, shareable applications like these was one of the most valuable ways to internalize programming concepts. It emphasized iteration, clarity, and the joy of creating open-ended tools that invited play. Below, you can find a compilation of the outcomes, each one a blend of algorithmic randomness and human intent.

These projects were more than just experiments in visual output; they were a hands-on way to learn creative coding. Working with Processing’s copy() function gave me a tangible way to understand how image data could be manipulated. Designing these tools with others in mind also pushed me to consider user experience. I had to provide visual cues to show what part of the image was being sampled and where the tool was acting, which added another layer of design thinking to the process.

In hindsight, building small, shareable applications like these was one of the most valuable ways to internalize programming concepts. It emphasized iteration, clarity, and the joy of creating open-ended tools that invited play. Below, you can find a compilation of the outcomes, each one a blend of algorithmic randomness and human intent.

Asset A
Asset A
Asset A
Asset A
Asset A
Asset A