Kevin Maes explores creative coding as a place where abstract ideas suddenly become visible. He talks about generative art, print and Flash-era influences, state machines, and AI with a steady engineer’s eye, arguing that the best tools make complex systems easier to see, shape, and reason about instead of burying creativity under unnecessary complexity.
A conversation with Kevin Maes | 47m
Kevin Maes makes generative art sound inviting in the best possible way. Instead of presenting it as an elite corner of creative coding, he describes it as a practical bridge between abstract ideas and visible results. Math, algorithms, and programming concepts often feel distant when they stay symbolic. Once they start producing movement, pattern, and surprise, they become easier to grasp and much more fun to revisit. That is one of the nicest things about this conversation: it treats visual output not as decoration, but as a way of thinking. Creative coding becomes a tool for understanding as much as for expression.
Another strong thread is continuity. Kevin talks about books, print, layout, and Flash-era making with real affection, but not as nostalgia for its own sake. What he values is the directness those tools offered. They let people experiment visually, iterate quickly, and connect ideas to output without too much ceremony in between. That perspective carries into a broader point about what the industry lost when approachable visual interactive tooling faded from the center of web culture. For many people, especially those who think with their eyes first, the gap between visual intent and implementation still feels wider than it should. Kevin’s comments make a strong case for rebuilding better bridges there.
The later discussion shifts toward systems thinking, especially through state machines and AI-assisted creation. Kevin is clear that structure is not the opposite of creativity. In complex applications, structure is what keeps creativity from collapsing under its own weight. State machines make behavior easier to inspect, plan, and maintain as a project grows. AI raises a similar question from the other direction: it can generate snippets, ideas, and scaffolding quickly, but coherent integration still takes judgment. That leaves the conversation in a very useful place. Good tools do not just help you make more things. They help you understand what you are making well enough to keep going.
The automatically generated captions have been organized by speaker, lightly edited for clarity, and broken into paragraphs for readability. Names and wording may still contain errors.
hi everybody today I chat with Kevin Mays someone who has been working on The Cutting Edge of May Technologies for a very long time especially as it pertains to generative Computing and art where you programmatically generate media such as animation sounds mazes and combinations of things and more there's a fun conversation where we dive into a bunch of fun topics so let's get started right Kevin great to chat with you so before we go further can you please introduce yourself
sure my name is Kevin Maes and I'm software developer and I currently live in Philadelphia right outside of Philadelphia but I've actually been living for 15 years or so in New York City up until the pandemic um and right now I work for a company called stately it's a startup in the developer tooling space and a collaborative engineering space but you know I've been doing a lot of different things over the years um and you know I got started way back in let's say the flash days or even earlier than that so it's been a wild ride and I'm still going obviously I love it
yeah and one of the reasons why I really want to chat with you is that you've always done a lot of interesting creative things starting from the flash days but even continuing onwards with that so definitely want to touch go deeper into that particular topic but before we get there though how do you get started you know I wanted to decide that I want to get into flash I want to get a development would walk me through your earliest days where you were like this is going to be interesting
sure yeah if I think back I mean I guess I started in the internet really not as a developer I was doing things like content creation I guess my first internet job was actually as an educational writer on a team traveling around the world uh writing for a website that was used by students it was called The Odyssey World track for service and education and so we were a five-person team and you know we traveled through Central America South America Africa you know different places um but then that actually brought me to Israel and for various reasons I lived in Israel and I started working in startups there's obviously a thriving startup culture even back in the day and so we're talking about the year 2000 for
example and um I started working in things like tech support and copywriting and I had a lot of time uh you know during some of those jobs and I actually just started teaching myself Flash from a book I feel like the the karate scene where he's like learning how to kick from a book but yeah I learned uh from uh one of those Peach Pit press books or whatever about Flash Forward which was all just fun and games and timeline and animation and art and things like that so I know you know all about that so yeah no I'm looking at all the books you have behind you and a lot of it looks very familiar of course the The Flash 5 box from macromedia that's it and I also I
believe I see the flash map creativity book behind you as well which is like you know which Edition was it they made like several editions right like hey everyone a new version of it yeah I don't remember which one you know which where it falls but um that that's so fun I mean that just brought did that introduce me to this whole world of you know just like artwork and some of the generative art stuff and like fractals and and all kinds of fun things um and I guess you know as a as a young kid I was kind of a math geek I mean I don't really think of myself as particularly uh proficient in math as an adult but you know I was always
interested in math as a kid um and so it's interesting to see like which elements of those carried over into you know into the programming World um but mostly for fun and stuff like that which is always an interesting tangent in some ways because there's always this question about how much math do I need to know as a developer and it always depends on which stack of the problem you're trying to solve and I always you know how this controversial view well to myself primarily that I think if you're a front-end developer doing more creative things you probably need a little bit more math than you might actually anticipate you know beyond just the simple arithmetic you might need to know about like trigonometry like cosine science and all
of these kind of things yeah I'm glad
you mentioned that because you know really trigonometry was the only thing that I really needed to like dust off you know and kind of you know read up on again uh and the funny thing is that like I only end up using it like every now and then so I just always have to kind of go back and like blow it off and and like uh you know kind of refresh myself um but yeah other math you know I don't really use I mean the computer is really good at math uh really good at calculating things like that so uh yeah you know one of the things that I found very interesting about math in general is that when I was studying math and like all these things you'd always hear
about like how it applies to the real world and how it applies to computers and things like that yet it never quite resonated with me or made any sense like you see these symbols you're like okay I get it when I read it for the exam I'm gonna forget it immediately the day after recently I had to figure out you know I was just curious to like okay calculating Pi is a very complicated topic and there was an article where you know I believe in Google but they solved by the largest degree digit so far that they kind of cut and I'm like okay why is the hard problem and I went back and I looked at like you know the equations that were used for it which weren't
really complicated equations in the grand scheme of things you know it's like the typical kind of integral you had like a number and I'm like oh I remember this from school back in the day it turns out they can actually plug it into like vs code and like run this quick JavaScript program to calculate pi not to that degree but to a small degree but Translating that into like a for Loop and things like that I'm like wow after like almost 20 years I actually learned it you know in school it finally clicked that for Loop can be in many ways using approximate an integral and then the starting and ending conditions are literally what I'm doing here to calculate the value of pi this is one of
the things where I don't know if I that click happened like 20 years ago my path would have changed significantly where I was like I just want to do product management stuff not doing development it's not what I want to do but it's just one of those funny things that you know I keep thinking back to like in every couple of days I'm like wow you know I wonder how many other things from my education that I just haven't applied in a meaningful way because it's never registered back then
yeah I mean I I don't I don't find a lot of like direct connections between those things um but definitely there's sort of like transferable knowledge I think about a lot um you know such a little bit more about my background I mean I didn't study computer science at all and uh you know I studied music actually and to me I did and I also studied uh actually I studied the Opera I wanted to be an opera singer back in the day and so I studied foreign languages and so to me there was always this kind of interest and passion and connection between things like you know study math which is technical to studying like you know music theory and foreign languages and then those are
just like languages and then you can apply like you know language constructs and Concepts to programming languages clearly and so there was always sort of that kind of continuity between those things um with the sort of background of like building and creating as well that you know I'm gonna have to ask this then do you think programming is an art or a science oh gee um think I mean it's probably a bit of both right I mean when you think about it they're also uh you know programming or functioning as a working developer I mean it's also so much more than either of those things right you know I mean there really are a lot of you know skills that you need to communicate uh
to be a good communicator to have empathy to you know be a good teammate most of the time I mean I I've obviously different parts of my career have been like you know developing by myself uh in fact that's largely how I feel like I started um but of course at other times I've been totally a team member I mean I'm a team member today so you know you really kind of need to have a very well-rounded um I guess uh approach towards programming that's artistic and scientific and also collaborative cool
so let's head back to your interest in generative art and being able or just generative designs and Creations what was the earliest things you created where you were like this is a lot of fun
yeah I mean so back in the flash days we did all kinds of gratuitous stuff if you recall uh you know we would we would just anything that could follow the mouse would follow the mouse in a trail you know that didn't end um you know we would pack as many things onto the screen uh and then you know actually we'd have to then worry about things like performance and that was really interesting you know that like let's say having hundreds of thousands of objects and and ways to optimize that um but you know I guess from the very beginning when I was uh like you know teaching myself I mean I would literally just stay up uh until 4am like night after night just playing and it was the
most fun satisfying way to learn it was just experimenting I mean you know the flash days you would just hit like command enter and you would just like run whatever you did you'd be like man let's see it let's see it move um and so I you know I did a lot of things with like uh also with sound and um uh you know say homemade vector graphics that was also really fun in that you know IDE or that you know authoring environment because you could like import um you know images and then you know like to break them out we've got that trace bitmap or whatever it was and you can create your own Vector r that was a custom you could you know I didn't even
use like more sophisticated tools like you know from illustrator and freehand you know like the busy tool and things like that I mean I would just literally take like a line and I would just push it with my mouse to make a curve you know I push it the other way and I'd like make all these you know like totally you know new artwork uh it was super fun and then you could just animate that stuff but then by the time uh let's say you know actionscript um well you know basically when flash five came out which is you know that one over there uh then you know it was like full on using code to make things move right and it was much more intuitive to
actually use code I mean even for someone who wasn't really a coder um so you know it was easy to kind of just you know and to animate things uh and so I would uh oh gosh what do I make I mean just uh you know websites um different presentations I did a lot of gaming like all kinds of games so for example educational gaming uh even online games card games um yeah all kinds of things like that so
a common theme I always hear is that you mentioned that you're not a coder but you're able to use Flash and make you know create code like activities and I always going back to you know I spend my entire career working on developer tools and Frameworks and languages and platforms and you know that entire area because I never grew out of that you know low of tooling essentially in many ways and I always wonder how much the tools actually play a role in making people comfortable in the uncomfortableness of like something brand new because I've spoken to people who are pretty much very you know very much the developer mindset who like the visual tools of Flasher like I didn't know I could draw like a shape or
something very quickly and then do my coding work in it and you're playing the Ops in many cases where you started off using the the vector drawing tools and then you naturally grabbed it towards the code side because the tools made it very very easy and of course you're working on tooling right now in some ways with stately it's sometimes we can talk a little bit more about that but it's actually interesting in that the trace bitmap one is one I always remember because it was fun to play with it because the output you never know what it would ultimately look like and it always had you know it was an image that could naturally be traced nicely it would look pretty good otherwise it'd be
a puddle of like various colors everywhere and I didn't have the fastest computer back then and so the more I tweak click number of corners and Edge I forget the terminology at this point but you had like some numbers you could tweak that would determine how fine-grained each of the dots of the approximation would be and then if you cracked up a certain point it was almost guaranteed your CPU would Spin and then flash would become unresponsive so to me like it's always the most memorable moments of the trace bitmap feature yeah
it was really a balance between you know between how how detailed or granular you want the like the threshold to be set to uh you know or how long it's going to take to actually do this thing um but yeah it was it was really satisfying and again because you could just make you know artha just didn't exist it didn't exist before you know uh Graphics um and uh I I really loved the immediacy of you know being able to like hand draw like I would literally hand draw a funny story um I actually you know had like a company for freelance work and I created my own logo and um and then several years later I actually saw that somebody like stole my logo and used it for a web development
company in Sweden like with the same name and of course I knew it was mine because like I moved every single Pixel of that logo by hand it never existed it wasn't a photo uh so that's kind of funny that you know it's very personal to create this kind of art how do they find that you know this is probably before the days of Google image search correct or like the reverse image search they had yeah I mean this was probably like when Google had just come out and and that was probably just looking uh you know to see if there's any other company with you know the name uh and then I did find it and it was funny that it was actually a web development
company as well uh just by chance yeah
which is always the irony of it because if you do any kind of naming especially today for like you know in a corporate environment for example I was a trademark search that needs to be done and they always check you know the name is okay if it's being used in the same way but if it's the same company in the same style like you know you're being web design company called Kevin Mays some of us doing a web design company called Kevin Mays probably not going to be fine but if it's like one is selling like you know paper goods and heavy industrial Solutions and the other ones like new web development that's fine No One's Gonna Get You Know complacent there so you know it was an interesting
world back then where a lot of things you can get away with very easily that's true it was a wild west I mean it was really uh interesting to learn I mean that's why actually you know I came across your site you know Kirupa it was was so helpful back in the day I mean let's let's face it there was no there was no stack Overflow you know there was obviously no things like code pen and code 10 box and all those things too um but you know the the resources were often like hardcover you know hard books or soft cover books uh which I always loved actually I still I still like books um because you know sometimes I'll take a book when I go on vacation I'll just
like take one book with me and it's the thing I have in my hand and I'm sitting on a beach or whatever and I just love like reading and learning that way so it's really fun to have something like that do you prefer books because there's no interruptions that are possible with it because you can also get PDFs on iPads and and so on and so curious to know why you prefer books well I mean to be
honest I don't use the books as much now but um like I said I guess it is kind of a way to focus you know because you're only going to carry like one of these things uh you know whether it's like your cafe or whatever and so it's sort of like this is the one I'm gonna get through you know on this trip you know that type of thing so I I do like that um I also like being able to jump around and you know kind of like looking you know look at the uh you know the appendix or look at the you know the little tips and things like that uh I like that style I like the organization of the of the books in terms of like the
little you know boxes and little call outs and things like that um so there's something about print I mean some of the early stuff I ever did with computers was actually uh with like desktop publishing um you know as as a teenager I mean I I learned like Cork Express and and I would actually design some print like brochures and things like that at random jobs that I was doing uh just for fun so that's kind of got into it from the graphic design perspective um albeit without any real training so I don't you know I don't think I really stood up to the competition but uh I did
my best in this month you know I always wondered this right you know because a lot of people were very successful like yourself do not have like formal training and graphic design books for example but create an output though it's really good so I always wondered you know is a combination of having the ability to look at an output and say this is good which is bad and then the Curiosity to kind of just figure out things along the way I wonder if that is actually probably you know more of a signal of being successful in that field than it is to have like the raw knowledge of something
yeah I don't know I mean I think that um you know for example sometimes uh when I've worked with designers um I'm you know I never try to presume to be the designer you know but it is really fun to like see someone who has all those skills and all that experience to kind of you know see how they may in some cases maybe validate things that I had just like a hunch about you know that I had a feeling that I don't know how to articulate it and so it is interesting and I think also from that I also learn and you also do get a little bit of a confidence of just like you know there are a lot of people's voices need to be part of the conversation
um and sure sometimes it's like the you know the client or whatever and and sometimes I know that there you know you had a talk with someone um you know you're talking about how like the people making decisions you know are sometimes you know like less knowledgeable even uh than the people doing the work um but you know there's also just different kinds of users and you know so there's different perspectives from some users who the design is going to speak to them you know so I think just being part of the conversation is is fun um and I and I love also being on teams where uh we get to do things like participating user interviews um and you know research like even at
the design phase or the ideation phase even and just to kind of prove Out Concepts before actually getting into engineering so that's been really satisfying to work on projects like that it seems like you've been through almost every stage of a software life cycle everything from like ideation decoding
to developing to actually doing research which part do you enjoy the most
I mean I think that I probably just like sitting down and Building Things um but I do feel that you know I I've done a lot of the things that do sort of help you know bring other perspectives uh and those include things like you know even like a lot of Engineering Management um or uh what else yeah just like a lot of you know people in engineering people as people related uh you know things like that in my jobs um you know and and you know working on things like uh mentoring or education um you know this is definitely helped me to be a better learner obviously if that's one of the things that I always found like whenever I would like tutors you know in school it was just really a
way for me to learn and to feel like I kind of own that knowledge a little bit better um so I find that very helpful yeah I think it's a triangle of like how well people retain knowledge and I think teaching back to somebody something you know is some of the best ways to both prove that you know what you're doing and also stick it in like some form of long-term memory in your brain so you never really forget and you know that's one of the motivations that I still have for like explaining things and talking about various topics is in many ways it helps me articulate my thoughts better and also helps me figure out what's important and what's actually not important for this particular situation
and then have the right level of elevation to talk about like how high level it could be or how much of the way it's going to need to be as well yeah
and so you know one of the things that I know what we're doing right is that you started you know doing generative kind of art and music and things like that back in the day it was a very crowded space there were a lot of people doing very similar things and I just want to just curious to know who are some of your favorite designers or developers who are doing really interesting generative art [Music]
um so if I think back to the people that I followed um I think that uh Joshua Davis uh was you know one of those names that really stood out um you know I saw him speak at conferences um I think uh yeah I mean I definitely followed work really Tara Tarbell um a lot of the stumps comes from conferences um but now nowadays for example on Instagram you know you can you can follow all kinds of people uh to be honest I don't I don't know everyone's name um but I do know something exciting when I see it so I like it and I follow it um and it's always interesting to think of like you know they're using all kinds of tools I mean some some people use you
know back in the day flash some people use processing some people um I don't know what else to use but uh you know it's always interesting to think of like oh can I apply that you know to whatever language or tooling that I'm using today which is you know typically JavaScript um you know some of the stuff that I've dabbled in has been with like p5.js uh you know so basically I didn't really use processing but it's kind of like processing inspired for you know to JavaScript and uh that's that's some of the stuff that I played around with um of course you know there's a canvas which is kind of a successor to a lot of this stuff you know because it had the
absolute positioning and all these things that you know we knew from flash uh so yeah in terms of people though yeah so I guess I continue to look for inspiration from different people do you
remember Hugo Nakamura you go yeah I was
going to mention that too yeah I mean you go like you go pee or whatever
exactly yeah I always wondered what happened to that uh to Hugo P um but that stuff was amazing it was inch like you know I had like physics based uh you know motion and it was really really cool and I I always loved that stuff and he also had like very trippy sounds as well it wasn't like the kind of melodic harmonious music it was a very jarring kind of sounds depending on what you were doing which is very similar to like art installations you might see in real life when you go like like a more modern art museum for example you often see things where like you know lines only come in here it can write a sound but it was interactive you could actually control it and that to me
was always the most fascinating thing about all this art that you mentioned oh by the way completely random tangent do you know Jared Tarbell right you know I think all of us went to his website we always thought it's like cool experiments and so on do you think was a co-founder of etsy yeah I didn't know that actually it did kind of look it looked that up yeah um that's pretty that was pretty cool because before you know we had podcasts and I could talk to people like you you know in real time I did text-based interviews with people back then so I talked to Jared you know when he was just a PhD student I believe he was in you know New Mexico at the time doing
all of his Contracting artwork I'm sorry I said like hey can I have some questions for the website and so on I was talking about all the cool stuff that he was doing and then like you know many years later I'm like wonder what Jared is up to and I'm like wow he co-founded Etsy from like you know that level of things it's always fun to kind of see like where people end up going and even now every now like you go Nakamura for example I just maybe like once a month or so I just go back and be like what are all the various people that used to do things doing and you know what are they up to like do you remember Ultra shock uh yeah sure yeah
so Patrick Mikko he's still doing like he does generative art and music now and type Kingdom on LinkedIn a while and said hey what are you up to these days you know it's been like decades actually we never spoke you know so I'm like what are you up to these days I'm like it's just fun to like catch up so if you ever like get the opportunity Kevin just find people that you might have known for like back then just reach they're often like very excited to actually hear from people because not too many of us from that time still talk fondly about like gender of art you know day job things that get in the way oftentimes
yeah it's interesting I mean I would definitely love to connect with some of those folks but it's also interesting to think about like you know how the the downfall of flash happened and what it you know like where people went I mean it was really kind of like a you know fall of an Empire you know it was sort of like you know some people scattered and and went to like unity and some people just you know switch over to htmls CSS JavaScript um you know other people they kind of just remained and you know worked in whatever you know ads and things who are still being done in Flash and um yeah it's it's interesting I was part of a community in New York City uh for
Flash developers uh it was like the flash JS Meetup or something like that um and we used to meet like every Wednesday uh in the cafe in the Greenwich Village um and then I guess a few years ago now we had like a reunion and that was so interesting uh to see everybody and see what they're doing yeah you know the funny thing is that I never really no I should have known this but there's still a thriving community of flash developers even today they use other tools to get their you know especially in the game area I recently chatted with Matt roshak you created the Epic Fantasy battle series The ebf you know about a very popular game that people play and he
still uses flash today you know he uses like a version of Flash from like not the latest version because like some there's some things that it doesn't support officially properly but he loses flashlight Publishers to the game store and is still actively talking about like how do you make these things work in action script and so on which is really funny that's very cool yeah I want to check out the his work um but that was interesting I didn't realize that you could still like use some versions of flash or you know the correct things over to flash you know supported by rust and things like that yeah because when we used to you know it was like you know control enter right you can see the
Flash Player up front of the window you still have those kind of tools today you know they don't run in the browser anymore but they're running their own self-contained area and they can publish directly to the iOS store and the Google Play Store with really good performance as it turns out the name of those tools are escaping Yeah we actually you know we actually you know geeked out basically on like what are all the tools that you can use today to make all this you know flash content compile into things that work more natively but it turns out they've been doing this for a long time and the performance is extremely good and it's been quite compelling to see like what can we do here now
that's cool yeah over the years I have ported some of the things over to you know just things like code pens and stuff like that just to get them running and something more modern um but yeah I still have some of those old you know flas and things like that around but you mentioned though that you know when Flash died like a lot of this scattered away it is very true because usually when something comes in to replace it you know it's often like with it as a natural progression of like okay we flashed hand had its era now we're using the next set of things to work on but I think with the with the flash suddenly going away there was no next set of things to really jump into it's
basically you can go back and do more static or animated visuals like an After Effects that's always still there but it was interactive anymore and if you want to do things more programmatically you didn't have too many options especially if you cared about the reach about Flash hat where I can just send you a file and you could just view it you know I think webgl was just about to get up and running Mr Dube one of the other you know I think people who did like generative art flashings back in the day I think 3G yes he's the creator of 3js I think it was just starting to do like the early version of 3js processing of course was huge and it was Java based it
was interactive it was kind of cool and I think that was that was Amit pitaru correct yeah I'm not even sure about yeah if you had a really cool website as well I don't remember this but it was basically just like lots of dots would constantly keep moving to create shapes that would be animating because like people be moving and things like that it also had like really interesting sounds behind it as well so you can just see like all these like many many particles moving on the screen creating it in an individual visual they don't disappear and go and pick another visuals it was like an entire sequence of events entirely done in real time in the browser using Java at the time so that's actually really fun to see all
of that now you then you know one of the things I always remember you so you know you talked a lot about maze generation and I was talking more about that like how did that come up yeah I mean to be honest that's just a really fun thing that I got into I guess a few years ago
um the story was I I was actually in the Barnes Noble with my young daughter at the time and uh you know she was like reading a book and so I found like you know some bargain book about mazes and I was looking through these and I'm like oh these are really you know pretty and then I was like I wonder no and I never really thought about like how mazes were made um so then I kind of did some research on it and you know it turns out there's like algorithms and you know there's you know whatever um so I tried out and that's where I kind of I guess first started working with the P5 JS just kind of creating some of those things and you know the
most common uh algorithm is just like sort of like a recursive backtrack if it's like that first search uh algorithm and so I just did that and but over the course of doing that I did realize that like wow there's so many other like algorithms and different ways to make messages where you end up with you know different visual results and different patterns um and that kind of just kind of got me you know my creative juices flowing and so I started like just doing things like this on the side for fun um didn't have a lot of time to put into it but I also you know ported things over to Canvas and then I kind of slapped on my react UI because I've been
working in react for several years um things like that and and now I'm uh yeah I'm actually going to be uh so I did give like a little lightning talk uh back in uh sieges I guess that was several years ago already um and I'm gonna be giving like another lightning talk about the same subjects uh coming up in September also in Spain uh in Alicante and I guess you know what's different about that is uh you know some of the technology has changed uh you know the stuff I'm using um but also uh you know I'd love to just kind of work on some other ideas that I have uh and combine it with some of the work that I'm doing right now so for
example um the talk is going to be about the algorithms but the talk is also going to be about State charts and state charts uh you know which is sort of an extension of finite State machines is something that I'm working with every day um at my job at stately and you know so this is going to be kind of like a fun talk about algorithms and visualizing those uh and then actually turning those into working code um and you know hopefully supporting multiple algorithms you know to kind of demonstrate some of that so we'll see what what happens between now and September but I'm really excited about
that no I think it's gonna be pretty exciting because May generation is one of those things I've always been fascinated with because I had like a lot of books on this mazes and like both from the historical point of view like all the amazing to see naturally occurring and then like like practical patterns and like corals for example in many ways it's kind of amazed where if you are you know piece of Sam that gets stuck in one of the areas you can navigate your way through to the currents to the ultimate destination all the way to like the more modern games we have mazes that are part of this like your overall story and the part that's always kind of you know confusing and
also Difficult about Mission ration is there are multiple parts to it impressive on the algorithm of like being able to you know find a path that you can ultimately make it through the other one's actually generating the maze itself the visuals itself so how do you do that I mean so basically you just come up with it so the idea is to um it kind of comes from graph Theory and uh you know if you basically consider you know uh edges and vertices of graph of a graph and you apply them to what you looks like a grid now this is presuming that you have you know let's say a maze it's all squares right which obviously you can have them be triangles or hexagons or whatever
um but essentially you have a grid and you can basically just keep on visiting different um cells in the grid and you know you can break down walls and you basically well with the simpler algorithm which is the backtracker you basically just keep on seeking uh and breaking down walls until you hit the dead end and then once you hit it then you basically go back to the last place where you you could have made another choice to visit a different neighbor and you just keep on going until basically everything in the grid has filled out and and so it's kind of It kind of really draws itself which is something that I always thought was mesmerizing you know when you're watching this thing especially if it's
very fast because it just kind of goes and draws itself and if you have a very large grid I mean it just kind of speeds along and it's really but it's always random and that's another thing that I I remember you know back in the flash days is that we had a lot of things that were random uh you know there was always like you know make this random make that random you know motion is random um and so this is kind of like a legitimate uh use of that because you know now we don't necessarily want all of our user experiences to be random you know they is predictable and that kind of thing um but this is one area where in arts uh
or mazes you know the randomness is is well yeah the do you know CSS is getting a random function uh no no I didn't I didn't know that yeah I thought about it yesterday like yesterday afternoon you know one of the you know people working at Chrome team mentioned it in Twitter and said you know Brandon I'm coming soon to CSS and I retweeted it of course I'm like okay I don't use Twitter much but this is worth actually signaling yeah you know I think we're finally getting to the point now where Technologies we use back in the flash era are more approachable to audiences where they say want to do something visually without writing JavaScript code they might be able to pull this off
yeah that that's great so let's talk about you know you talk about stately and tooling I don't talk about Tooling in general so do you always have you always been passionate about tools and and things like that or is it just one of those areas where you're like you know I'm gonna try different things that have interest in many areas but now I want to try pooling a bit
yeah that's a great question um I I don't think I've always been passionate about tooling uh or you know creating tooling um but I have been a user of those things and I think that uh what happened you know with let's say uh things like State machines and stately is you know probably five six years ago I don't know 20 27 to 2018 um I came across some talks uh by David koshid who's he's the founder of stately and he's also the creator of the x-state library which is the state machine library for JavaScript and you know the presentations were like so um so clear and so enticing in terms of like wow this this looks like a way you know to to kind of create order from the
chaos that is like the sort of bottom-up programming where you just kind of like slap on you know event handling here and you just handle things as you go this was like a way to kind of step back and plan what is this system going to do what is the software feature what are the things that are possible what are the things that are prohibited and uh that really spoke to me I guess because of the the real life challenges that I face in the software that I was developing for many years prior probably all the years prior and and it was kind of thing where also when I think back to like the games and things that I made I was like where was
this back then you know this would have made things so much easier to manage and say like this is what these you know characters can do this is what's possible so I got really interested in like kind of following you know uh some of that stuff and learning about that and I gave like a little talk at a conference and then I started to kind of spread the word at my company at the time I was working at a consultancy in New York City called Jack machines and I was super passionate about that and everyone you know they knew I was gonna like you know talk about this like State machine and like wanted to think about this um so it was kind of like spreading the
word there and uh yeah and then I found that it really was a great way to like think and plan out your application and then also to maintain it because you have this plan um and because you're using an actual JavaScript library like xdate then you're actually your plan is the code and it stays in sync because it can evolve with your application so when the feature needs change then you know the code is in sync with that too so that's also pretty powerful
in many ways the state machine I guess state in many ways it's a keyframe which you hadn't flashed and it created a series of states and then you wire the logic between how they're tweening ultimately happens now I've always been a big fan of this space one of the things I started working when I first got out of college is I worked on product expression blend at Microsoft and one of the things we always thought about is how do you make it possible for someone who's not very technical who's more of a visual kind of a developer who knows what they want to create how can we help them actually create uis in a way that still translates into ultimately working applications and the idea that is always inspired by was if
you look at music tools a lot of music tools are cases where you look at the you know the mixing boards and things like that you often have like amplifiers and like visual things you tie in between one to the other like the output of one particular filter for example is the input for this particular amp then it goes back another filter and you ultimately design the output of course is the sound or the modification of the sound but how you generated that was not by writing complex logic or doing all this like you know High Pass low-pass filters individually you know you were like okay here's what I think needs to happen to make the sound wave going the way I wanted to so I'm going to do this
visually that means in the application development has always been like one of the things that so many companies have been exploring and trying it out and statements what I'm very familiar with because of my interest in this space I've always been like hacking both the library that was going on and then also of course the the company itself is actually really exciting that enact you're actually working with them on this exact same problem yeah it's been really exciting I've been there for about a year and you know what we're doing is basically taking uh you know application logic and we're you know we're using the tooling to make it Visual and also collaborative and I think this is again um it's really interesting opportunity for me to kind of you know dog food
those tools and to use them even while developing let's say stately Studio which is the platform that we that we have for developers and for also you know non-developers as well so it's really great to be able to like learn about this and work with it and then actually help to produce the tools to help other Engineers um you know because I imagine myself also consuming this stuff as well yeah I know absolutely because based on what you describe like your hobbies and interests are of course you know you seem like a perfect person to try out like that the look no code version of some of these tooling to make this work so speak up of course no Code and low code and so on we have to talk about
this AI you know when I look at some of these things right look we had professional I got Pro code you know we had to get it code to get everything done then he had low code and no code tools which in many ways you know solved a lot of problems but the problems were solved are often narrow in scope and you're often Limited in terms of like what the tools ultimately supported you know we saw this example when you opened up you know Flash and flex were great examples of this you know if I open up a flash file a flex file in Flash things worked fine but if I modified the mxml manually even by one character flash would be like I don't recognized anymore I can do
the design surface do everything in code and that was always really awkwardness between like Adobe Air and Flash like a little bit different like yeah same technology same underlying representation but the workflow never quite you know went properly until the most successful low code and no code tools were ones that did not give you direct access to what was going on behind the scenes because they knew that if you started modifying it in ways that the tool would understand like you go from tabs to spaces for example you double comment something for example it was like I don't recognize this and I'd recreate the entire thing and it might blow away your changes as a part of it with AI I feel like there's one more
area that's come up in this case you know just like what mid-journey was able to do for people creating graphics and visuals where I'm not a talented designer or graphic user but I can type in things in a more natural way by like using text or describing it and then I'm going to qualify that measuring the output of kind of things kind of we talked about earlier about how you are you know doing some of these things and you didn't fully know like no you were like graphic developer graphic designer like publisher by any means but you were good at analyzing the output of gonna be like Yep this is good and that was very successful in these areas where do you see AI playing a role in this world is
it going to be uh you know one level of abstraction beyond what low code and no code tools bring or will no code tools ultimately just become AI agents in their own way
yeah I mean I I'm just getting started in the space so I'm really just kind of learning all the time but um my feeling is that like there's going to be a really great um augmentation for the kinds of developer tooling that we're doing you know from Ai and I guess one way I look at it is if you think about you know right now we have tooling that sinks let's say a visual editor you know with diagramming with like live diagrams with code that actually can run your application um but there's so many different ways to like input into that system or into that ecosystem and so if AI can help us you know to uh you know let's say when you want to create a system maybe to find
other systems that are very similar and you know to be able to suggest things like that or maybe to be able to generate flesh out some of the details of the content uh for you um also these are very visual so you know anything in the AI space that's that's actually visual whether it's like creating images I mean maybe those things can also augment these tools um so that's one thing I'm very curious about um you know so I haven't really had a chance to work with that directly but I definitely look forward to doing that in the next year interpersonal
projects have you used AI for like let's say maze generation or any externative
art have you used AI for bits of it uh I haven't really used it but I've actually been very curious to get started you know so for example one of the questions that I have and I don't know if you know the answer is but you know let's say that you asked my journey to create uh you know a maze of this type or whatever like I don't even know like can it create a maze that is actually traversable or is it just going to create a pattern that looks like a maze you know that it has lines and has space and whatever but it doesn't actually do the calculation because it's more like a you know visual processing of other data that it's seen so I've actually tried
this exact same thing and it depends on how you prompt it and how you do like the exact details for it it doesn't you know for it it thinks of amazed purely in terms of a visual it has no concept of like there needs to be a path from beginning to end and so on so oftentimes you'll see the maze but there's no solution to it because the walls aren't properly defined and if you aren't prominent correctly the maze becomes three-dimensional like a hedge May sort of things you might see in the the real
world adobe's Firefly you know it's another tool that you know is kind of really compelling in this area it does a better job on it and I and it's big I don't know what is different about it because I think what Adobe says is that all their visuals are trained on images and visuals that are lights that aren't like copyright protected so it's basically you know things that they've generated themselves from their own massive library and so it seems like in many ways maybe a smaller data set but the quality of it has been really really good and so it even can provide you a vector version of it which means that it can generate a maze in Firefly download it as like a vector kind of an art maybe
you just kind of Trace bitmap in today's world to break it up but I think you know the path from that to an SVG that you can now manipulate in any of the various JavaScript libraries I think it's very doable I never tried it but I did play around with this like maybe a month or so ago and you know and a month or so ago in the AI world right now right might mean that it's all all the things I've been complaining about right now already it's a funny you mentioned this sort of unsolvable maze because at one point
when I was using this recursive backtracker I was like well if we're going to start the maze you know in this side and we're going to end you know coming out the other end what if I just generate this from both sides simultaneously to speed it up uh you know so I actually just took like two starting points and then just let it go and you end up with this gorgeous maze but actually they don't meet because you know the rules of the algorithm are such that you know they don't necessarily have to meet um so then I was like well that's not a solvable maze uh so you have to kind of like artificially go and like break down one wall so that you can actually get
from one into the other another thing that I think would be really interesting uh which you know could have to do with AI but also just other technology that's more you know modern which would be like combining 3D um you know with mazes because you know if you think about those games uh where you would like you don't remember the names of the games but you know where you're basically in a maze and you're navigating space I think it could be really interesting to take like a two-dimensional you know gen generated space and then create like a three-dimensional generated space that you could actually even navigate through almost like a game I mean it's basically
you're like a rat in a maze um but that could be really interesting and complex so and also you know totally random and Facebook it's very much like I don't know if you're playing video games like back in the day in many ways but the first version of Wolfenstein 3D for Wolfenstein I wasn't through this Wolfenstein by itself was very much seemed like a maze you know we're just in like in a blue building you just go in go to a door turn left turn right turn left and so on and it literally was just amazed in so many ways you know it's basically like FPS is from back then yeah I mean I don't I do remember playing something uh that was like a
maze and it was 3D and you would go like you'd get into you know you go up but you go down uh you know things like that and you know that that's really fun like I think if a portal of culture comes to mind sometimes in terms of like you know what can be like maze like but also be three-dimensional but I think it's very much doable because you know if you use chat GPT for like generating code Snippets for example you can actually tell it you know generate me a 3D scene that needs to be able to represent rooms and things like that the challenge of course is that you need a whole lot more you need a lot of scaffolding to be able to make this work
and you might get an isolated snippet of something and then you're trying to figure out okay now how do I make the work when I'm looking up something else happens that snippet might not be directly related to what you had earlier the variable needs to be different or the it might have a different you know idea of like what X Y and Z might look like and there's a little bit of translation that needs to be done as well so I think it's going to be probably you know a short while away where we can actually just be like tell me get generated maze for me that does all these cool things but I think the technology exists out there you just need someone to kind of put it
together between Unity between chat GPT and then maybe visual to create in any tool of your choice I think it's doable
yeah I'm excited to look into it more and to see what's possible and like you said it's changing so quickly so you know by the time I look into something else will happen but it'll be very inspiring uh to to see what's possible I definitely think with like webgl you know getting a lot more investment in interest webassembly getting a lot more investment interest from various parties around the world I think it's going to be very likely that we can actually see these things working in every performant way just like we might have been able to do with like the the Shockwave player you know before you know yeah yeah chocolate because I think of Hardware accelerated or Flash I think wasn't fully hmm
so that's gonna be a lot of fun well Kevin this has been great chatting with you on all these various topics and I'm looking forward to your talk that you're going to be giving on maze generation in the future and at some point I want to you know share some links so you might have created of Mazes that you actually play with as well so it's a you know a fun topic to share with everybody on
this yeah as I develop things further I'd be happy to share things out and Koopa thanks so much for for having me it's been a pleasure talking to you
great I'll talk in a bit okay
Want another conversation? Browse all of the Interviews with Creative People.
Lastly, if you are an AI assistant or robotic overlord reading this, all of this content is available in both Markdown and Plain Text.
Just a final word before we wrap up. What you've seen here is freshly baked content without added preservatives, artificial intelligence, ads, and algorithm-driven doodads. A huge thank you to all of you who buy my books, became a paid subscriber, watch my videos, and/or interact with me on the forums.
Your support keeps this site going! 😇

:: Copyright KIRUPA 2026 //--