Genuary 2026
Happy New Year! It's time for Genuary 2026! I am not sure how many prompts I will do (or combine), but I hope to share my code and progress here. I hope to get at least 5-10 done this year with a mix of different languages and approaches. This post will be updated as I go through the month.
Day 13
Self Portrait

Day 12
Boxes Only
Day 11
Quine

let self="let self=Q;function setup(){createCanvas(600,600);fill(255,255,255,50);r=random(1,5);}function draw(){fill(100+100*abs(cos(frameCount/150)),175+100*abs(cos(frameCount/250)),200+100*abs(cos(frameCount/350)),50+20*cos(frameCount/100));translate(width/2,height/2);scale(0.4+0.2*cos((frameCount/250)*r),0.4+0.2*cos(frameCount/100));rotate((frameCount/300)*r);text(self.replace(/Q/,String.fromCharCode(34)+self+String.fromCharCode(34)),-width/3-width/4*cos(r*frameCount/100),0,500,180);}";function setup(){createCanvas(600,600);r=random(1,5);}function draw(){fill(100+100*abs(cos(frameCount/150)),175+100*abs(cos(frameCount/250)),200+100*abs(cos(frameCount/350)),50+20*cos(frameCount/100));translate(width/2,height/2);scale(0.4+0.2*cos((frameCount/250)*r),0.4+0.2*cos(frameCount/100));rotate((frameCount/300)*r);text(self.replace(/Q/,String.fromCharCode(34)+self+String.fromCharCode(34)),-width/3-width/4*cos(r*frameCount/100),0,500,180);}Day 09 + 10
Automata and Polar Coordinates
Day 07 + 08
Boolean Algebra.+ A city
p5js
Each building is an object with a list of bools that nest to determine different water reflection marks and windows.






Variations of translucent cities with a reflection in water with soft muted backgrounds and blues and greens and greys for buildings with some windows.
Day 06
Lights Off
Day 04 + 05
Lowres. + Write “Genuary”. Avoid using a font.
p5js (code)

Day 03
Fibonacci Forever
Day 02
Twelve principles of animation.
P5.js
Day 01 + Day 23
One color, one shape. + Transparency.
Processing Java v4.4.10 (p5js version here)

void setup() {
size(2000, 2000);
// 100 images to make video
for (int img = 0; img < 100; img++) {
//transparency + one color
fill(80, 160, 180,50);
noStroke();
float c = random(1);
int n = 6;
push();
translate(width/2, height/2);
for (int i = 0; i < 5000; i++) {
float x1 = width/3 * cos(c * i / 100);
float y1 = randomGaussian() / 4 * width / 3 * sin(c * i / 100);
float diameter = randomGaussian() ;
for (float j = 1; j < n; j += 0.5) {
push();
rotate(j * TWO_PI / n);
//one shape
circle(x1 / j, y1 / j, diameter / j);
pop();
}
}
pop();
save("/Users/you/folder/circles-" + nf(img, 2) + ".png");
}
}