A spontaneous Creative Coding meetup in Barcelona
Update 2023-7-11: Wow, I really need to apologize to a few people here, because I unknowingly just took their place. There was already a meetup called Creative Coding Barcelona before my event and with this landing page here I made sure it came up second on Google, which should have caused a lot of confusion. I will now contact the organizers and clarify this. Sorry for the confusion!
https://hangar.org/en/orbitants-ocasionals/creative-coding-barcelona/
https://www.meetup.com/es-ES/creative-coding-barcelona/
When I decided to spend a few months in Barcelona and work from there, I knew it was going to be a very special, adventurous experience. One of the first things I did to get to know new people was an Instagram post in which I presented the idea of organizing a Creative Coding Meetup. In no time I had started a WhatsApp group, which soon had more than 40 people not only looking forward to the event, but actively helping to organize it. Felix Martinez, the technical director of the international design agency B-Reel and by now a good friend, offered directly to let the event take place in the new office of the agency. And so the whole thing turned into two unforgettable evenings with many new contacts, great conversations and tons of inspiration.
As speakers we had great people as guests, among others Lena Weber, who came all the way from Germany, Monica Losada and Henry Rodwell.
Many thanks to all who participated!















KeyVisual
int tilesX = 2;
int tilesY = 2;
float tileW, tileH;
Tile[][] tiles;
float speed = 2;
color C1, C2, C3, C4;
boolean showTypo = false;
PGraphics pg;
PShape typo;
PFont F;
void setup() {
size(1920, 1080);
randomize();
typo = loadShape("typo.svg");
typo.disableStyle();
//pixelDensity(2);
}
void draw() {
background(C1);
fill(C2);
noStroke();
shape(typo, 0, -10, width, width);
for (int x = 0; x < tilesX; x++) {
for (int y = 0; y < tilesY; y++) {
Tile T = tiles[x][y];
float wav = map(tan(radians(frameCount + x*10 + y*10)), -1, 1, -10, 10);
wav = 0;
T.display(wav);
}
}
//if (frameCount % 60 == 0) {
// randomize();
//}
if (showTypo) {
noFill();
strokeWeight(4);
stroke(C2);
shape(typo, 0, -10, width, width);
}
}
void randomize() {
setColorTheme();
tilesX = int(random(1, random(12)));
tilesY = int(random(1, random(12)));
tileW = int(ceil(width / tilesX));
tileH = int(ceil(height / tilesY));
tiles = new Tile[int(tileW)][int(tileH)];
for (int x = 0; x < tilesX; x++) {
for (int y = 0; y < tilesY; y++) {
tiles[x][y] = new Tile(x, y);
}
}
showTypo = !showTypo;
}
void setColorTheme() {
int selector = int(random(2));
switch(selector) {
case 0:
C1 = #F05423;
C2 = #0754A4;
break;
case 1:
C2 = #F05423;
C1 = #0754A4;
break;
}
}
class Tile {
color FG, BG;
int tileSelector;
int imageSelector;
PImage img;
int colorSelector;
float phase;
float x, y;
float offsetX = random(-200, 200);
float offsetY = random(-200, 200);
Tile(int _x, int _y) {
colorSelector = int(random(1, 3));
tileSelector = int(random(1, 5));
imageSelector = int(random(1, 27));
phase = random(360);
x = _x;
y = _y;
FG = C1;
BG = C2;
img = loadImage(imageSelector + ".jpg");
img.resize(2000, 0);
//img.filter(GRAY);
pg = createGraphics(int(ceil(tileW)), int(ceil(tileH)));
pg.imageMode(CENTER);
}
void display(float phase) {
pg.beginDraw();
pg.ellipseMode(CORNER);
pg.clear();
if (tileSelector == 1) {
pg.push();
float wave = tan(radians(frameCount * speed + phase)) * 50;
pg.translate(pg.width/2 + wave + offsetX, pg.height/2 + offsetY);
pg.scale(0.3);
pg.image(img, 0, 0);
pg.pop();
}
if (tileSelector == 2) {
pg.noStroke();
pg.fill(BG);
pg.ellipse(0, 0, tileW, tileW);
}
if (tileSelector == 3) {
pg.push();
float wave = sin(radians(frameCount * speed + phase)) * 500;
pg.translate(pg.width/2 + wave + offsetX, pg.height/2 + offsetY);
pg.image(img, 0, 0);
pg.pop();
}
if (tileSelector == 4) {
pg.noStroke();
pg.fill(BG);
pg.ellipse(0, 0, tileW/2, tileW/2);
}
pg.endDraw();
image(pg, x*tileW + phase, y*tileH);
}
}
Related
Creative Coding in the Age of Automation
A question that comes up again and again is how AI affects the field of Creative Coding and how I […]
Showreel: 128KB – A Creative Coding Workshop at HEAD Genève
What happens when you confront a talented group of creative minds with a set of technical limitations within which they […]
I don’t use Apple and Adobe anymore
Edit: Sarah Schröerlücke This video about my transition from proprietary software and hardware to Open Source software is one of […]
The Future of Processing – with Raphaël and Stef
I have some really good news: Processing is currently undergoing rapid development! Processing community lead Raphaël de Courville and primary […]
Deconstruction / Reconstruction – Creative Coding with Prof. Stig Møller Hansen
I am more than excited to share this session with Prof. Stig Møller Hansen with you today, whom I would […]
CodeCrafted
When I completed my bachelor’s degree in 2013, coding was considered a marginal topic. There was a dark spirit at […]
My new Podcast “Demystify Technology” is out!
One of the most beautiful books I have ever held in my hands is “Lo–TEK” by Julia Watson, an architect, […]
Lo-Fi Collage Machine
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
I am totally thrilled to introduce Nicolas Landrieux to you today. We met a few years ago at one of […]
Raquel Meyers – The Tool is the Message
Let’s begin here: A myriad of new technologies is accelerating our world at a breathtaking pace. I’m not interested in […]
Kit Kuksenok on p5.js 2.0
In 2025, both Processing and p5.js made major leaps forward in the development. I had the great opportunity to speak […]
Below is the written version of my talk at DEMO Festival in Amsterdam, January 2025. I’ve also recorded an audio […]
Omid Nemalhabib on Design within Limitations
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
Hannah Gmeiner on Permacomputing in Graphic Design
In an age of increasing digital consumption, Hannah, a recent visual communication graduate, explored “Permacomputing”—a sustainable approach to technology inspired […]
DEMO 2025 – My Submissions
Limitations have always been playing a major role in my creative work; I was only able to develop my best […]
Tameem Sankari on Creative Coding for Large Media Corporations
In this interview, Copenhagen-based creative director Tameem Sankari shares his journey into Creative Coding, combining Processing, Blender, and Adobe CC. […]
Sam Griffith connects Creative Coding with Enviromentalism
In this post I’d like to introduce you to Sam Griffith, a talented graphic designer based in Detroit, to discuss […]
Throwback: My Talk at Demo Festival 2022
The next edition of the DEMO Festival is already approaching and I am currently developing a brand new talk for […]
Powers of Two – 128kb by Lena Weber
20 = 1 21 = 222 = 323 = 824 = 1625 = 3226 = 6427 = 128 … »In […]
A Call for Coding Designers
This is a call for coding designers. It aims to serve as a proposal and a provocation for creative work […]
p5.js Design Tools Directory
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
In 2022, I spontaneously posted a story on Instagram: If anyone out there is also in Rotterdam, I’d love to […]
The 128kb Framework and its Aesthetic Characteristics
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
A conversation with Talia Cotton
During OFFF Festival here in Barcelona, many interesting people come around! This interview with Talia Cotton came about almost by […]
Lena Weber about her collaboration with A. G. Cook
Lena: This 10-minute visualiser for A. G. Cooks album teaser featuring my python archive generator, is one of my favourite […]
A conversation with Anna Shams Ili
Hi Anna! It was super nice to meet you at the PCD CPH, I really liked your talk in which […]
Coding Systems: New Workshop Dates!
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
My new writing project “downgrade” is live
Hey folks, I hope you are doing great! You may have already read one or two of my essays that […]
Join the 128kb challenge!
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
Ruder Processing Unit by Kevin Koch
In my teaching at universities and in workshops, I have met many very enthusiastic and highly talented people who have […]
A reflection on Processing Community Day Copenhagen 2023
I’ve been travelling a lot in the last few months. Still, it was only during a short stay in Copenhagen […]
Ksawery Kirklewski on his Symphony in Acid
For me, it’s by far the most inspiring project of the last few years: “Symphony in Acid”, a collaboration between […]
My AI Dilemma
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
Creative Coding on a Raspberry Pi 5?
The downgrade mindset led me to another exciting experiment: The Raspberry Pi is a small and cheap computer (around 100 […]
Teaching Creative Coding in Design – a Philosophy
Click here to login or connect!To view this content, you must be a member of Tim's Patreon at €8 or […]
Video Portrait by BLAU (German)
Finally: A video that explains what I do in a way my parents understand it 🙂 Massive thanks to
Teaching through the Lens of the Tool – with Prof. John Caserta
On a hot day in the summer of 2024, my friend Cem Eskinazi brought a stack of books to our […]