Embedded - 287: Joke With No Punchline

Episode Date: April 25, 2019

Kate Compton (@GalaxyKate) spoke with us about casual creators, Twitter bots done cheap and quick, and the creativity that is within each of us. Kate’s website is galaxykate.com. Her Phd dissertatio...n defense is interesting, see it on youtube.com. She is joining UCSC’s CROSS to do more work on casual creators and open source software. (We talked to Carlos Maltzan, the head of CROSS in 285: A Chicken Getting to the Other Side.) Tracery is an open source story generator using a specific grammar. One example is at Kate’s BrightSpiral.com which creates a whole story every time you refresh. You can use Tracery to make Twitter bots via CheapBotsDoneQuick.com. They are often text (@infinite_scream, @str_voyage, @DUNSONnDRAGGAN) or emoji based (@choochoobot, @infinitedeserts). However, Tracery and CBDQ  can be used to create SVG images (such as @softlandscapes). Elecia’s text bot is @pajamaswithfeet. It tweets (usually) kind things you can (sometimes) say to other people (or yourself).

Transcript
Discussion (0)
Starting point is 00:00:00 Welcome to Embedded. I'm Alicia White, here with Christopher White, and in studio with us this week is Kate Compton, who recently defended her computer science PhD dissertation on casual creators. Hi, Kate. Welcome. Hi, thanks. Could you tell us about yourself as if we met on,
Starting point is 00:00:28 I don't know, a cruise devoted to game design? Okay. Well, here I am on this cruise devoted to game design. Oddly enough, I don't actually consider myself much of a gamer. I worked in the game industry for a number of years at Electronic Arts on a game called Spore and a bit on a game called SimCity. But I really wander in the worlds between disciplines. So I'm partially in game design. I'm partially in art. I'm partially in computer science and algorithms. And I like making tools for people to get into AI.
Starting point is 00:01:00 Cool. I have this thing. I have the list of questions I was thinking about asking. Now I have even more. Let's do a lightning round where we ask you short is on FDG 2014. We rented out a cruise ship because it turns out cruise ships are actually significantly cheaper than real estate in California. Unfortunately, we weren't able to do that for many years because it turns out that people get suspicious when departments put cruise ships on government grants. That question was actually supposed to be where have your favorite academic conferences been? And then I was hoping she would say a cruise, but apparently I just can't type. Can you recite the lyrics to or sing a computer science related sea shanty?
Starting point is 00:02:02 Sea shanty. I'm trying to remember at least one computer science-related song. We've been searching for the longest path. Whoa. Find the longest path. Whoa. Yeah, it's about algorithmic searching for the longest path for Billy Joel's longest time. That is really good. and I am in awe.
Starting point is 00:02:30 Sorry, I was trying to make a Dykstra pun. They're in the song somewhere, I just don't have those memorized. Favorite spore critter? It's called the frufa. It's a sort of large plant with a little bird beak and it's got big fluffy pink feathers in sim city how do i win not by not playing um i think it's a traditional answer if we're going for ai ai inside jokes uh no you you find you find your own purpose and you fulfill that purpose or you use the game to discover a new purpose.
Starting point is 00:03:09 Purpose is to build a city to properly feed Godzilla. Mm-hmm. We all have our purposes. All right. That actually was a good lead-in to what you do. What is a casual creator? So casual creators are my effort. So this is always a difficult interview verbally because I'm used to having a whiteboard or at least being able to gesture.
Starting point is 00:03:35 You can gesture. I'll appreciate it. Okay. So casual creators are, like I mentioned before, I'm not kind of a traditional gamer. I don't actually find any pleasure in competitive games. And I know a lot of people do, and I totally support that. I like games which are kind of weird, doodly, strange creativity things. So when I was a kid, I played a lot with a game called Kid Picks, which is halfway between, it's kind of like Microsoft Paint, if you ever used that back in the day. But as you draw, all the lines come to life in exciting new ways. So it's kind of an art tool that comes to life under your fingertips. And as I kind of continued, there were a lot of games like that where, you know, you're creating something and something is coming to life. And so it's not exactly like a pure functional tool.
Starting point is 00:04:22 It's somewhere between a pet and an art toy. So even things like SimCity are kind of examples of this and The Sims where I'm creating something, but something is also kind of pushing back against me. And so I needed a definition or kind of, I needed a line to draw around this so I could say, I'm a big fan of something and not just say like doodly little weird apps. So I said casual creators because these are creativity apps that are for casual users. They come to life too much to use them for professional uses. So your boss would never tell you to use one of these tools to design a car ad or to create a symphony. They're a little too lively and you kind of
Starting point is 00:05:02 can't have total control, but you have weird new kinds of powers that you didn't expect. So the casual creators are not the people doing the creating? Yeah, this is a bug in my naming. I named the software casual creators and then I realized that I didn't actually have a term for the people using them. So there's casual creators, which are the apps, and then there's casual creator users, which is the awkward term for people using them. Okay. So I understand that. I feel like I have seen many casual creator apps. There's one called Bandimals that I kind of love, where you can't make sounds that sound bad because they have constrained the environments. And when I saw your dissertation, you gave it live stream.
Starting point is 00:05:53 A, why? And B, I have another question about your dissertation. But let's go with live streaming your dissertation defense. Yeah, our department actually has a really wonderful culture of live streaming. We have an every Friday stream called Scholars Play where members of our department play some video game live and then give fairly erudite commentary on it. And that was started by one of my friends, Stella Mazzica, who's kind of our local streaming queen. So she was able to set up my stream for my dissertation. But yeah, it really, our department is often frustrated by the fact that like what we do in academia doesn't get out there. And so many people like video games or like these like strange interactive apps, that it's kind of a shame that we can talk about them, but we don't actually talk
Starting point is 00:06:42 to people outside of our department or outside of academia. So all of our kind of outreach stuff, all of our Twitter accounts and our scholars play and live streams. These are ways, and we also do a lot of zines, sort of little pamphlets that we pass out. These are ways for us to talk to people outside of academia, whether those are indie game creators or professional game industry people or just people who are interested in this space. And when you say department, UCSC and then there's more. Yeah. So I'm at University of California, Santa Cruz. So go slugs. And then I'm in the computer science department technically, although we also just branched off into computational media. So now we have a new little baby department for people. That's once for games.
Starting point is 00:07:25 That one is not just for games. That's why we didn't call little baby department for people. That's the one for games. That one is not just for games. It's for, that's why we didn't call it the Department of Games. It's anything from kind of weird art experiences to these sort of creativity tools or like, what is it to generate poetry? We have some people doing board gaming, really all sorts of different things. And then my particular group within that is the Expressive Intelligence Studio. So AI for expressive purposes. Okay. AI for expressive purposes. We talked to Janelle Shane. Oh, awesome. She does the AI weirdness. Is that what you mean by AI for expressive purposes?
Starting point is 00:08:05 Yeah, that's definitely in there. We're kind of in a weird phase in the modern AI universe just because there are these things called AI summers and winters where AI suddenly gets very popular for five years. And then that particular technique, it's always linked to a particular technique. Neural nets. Yeah, right now neural nets and machine learning are really exciting. Deep learning. And this is one of the richest AI summers. So you could do anything with machine learning, except that we're starting to like find little areas like conversation where it doesn't work that well. So eventually we kind of, everybody in it knows that this summer will too pass and another winter will come.
Starting point is 00:08:41 But because this has been such a rich AI technique, a lot of people forget that there were AI techniques before machine learning happened. So these are, we'll talk about this later, but things like grammars that I used to make Twitter bots with, which is really just kind of Mad Libs run backwards for a computer. So it's like writing a Mad Libs for a computer. Or even just if statements or kind of template structures. So there were, there was something in the 1960s called ELIZA that ran on a mainframe somewhere in MIT's basement that was a synthetic therapist. And it was really just kind of something that would mirror what you said back. So like, oh, my boss is really bugging me. And it said, you know,
Starting point is 00:09:22 recognizes that there's a noun in that statement. I'm like, okay, tell me more about your boss. Yes. Eliza was great. Weirdly insightful sometimes, which I think meant something more about me than it. I used to get into arguments with it.
Starting point is 00:09:38 Cause it just didn't. Yeah. Yeah. The best, the best AIs are always kind of a judo move where you redirect the players actions in a way that like gets them to answer their own questions. And in the end, you can just be a mirror, and a mirror doesn't actually have to do much work. The person will entertain themselves by reflecting themselves backwards. I feel like that really is sort of…
Starting point is 00:09:59 It was Freud's plan. All right. One of the things that I saw in your dissertation live stream was you used the word autotelic. And auto for self, me. And telic for communication, like telephone and telepathy? I actually don't know what that one is from. What does it mean? I mean, etymology aside. Etymology aside, autottelecommune is for its own purpose. So I'm doing something for the pleasure of it, not just because I want something out at the other end.
Starting point is 00:10:32 And so that's like playing games. Yeah, it's like playing games. But also, a lot of the people in our department, including me, are big fans of crafting. So if you've ever met anybody who uses a pottery wheel or who does quilting or knitting, you know that they'll have a giant pile of whatever it is that they've made. I have a friend who just keeps giving me like hand-thrown pots because she has nowhere else to put them. She's not making things because like she can't go to Ikea and buy new pots. She's making these things because the pleasure of working at the pottery wheel is so great for her. And then it kind of has these creative outputs as almost a side effect. I love this idea.
Starting point is 00:11:09 And I'm going to totally distract the podcast or derail the podcast now because I like the idea and yet it confuses me at the same time. Chris does music and he enjoys doing music. Wow. Then when nobody, when it isn't downloaded very many times, he gets sad. Or if I write a short story and can't get anybody to read it, I feel bad. I wrote it because I wanted to write it. That's autotelic. But what about the outputs? How important are the outputs usually? How important should they be? How important is public recognition if it's supposed to be autotelic? You had this happen with pottery, right? You did it, you initially did it for yourself, and it was fine. And so you tried selling some, and then it ruined it. And then it became a job. Yeah, it was not good after that. Did you get all the questions in there there was
Starting point is 00:12:06 yeah there were a lot of questions in there um there there's a lot of things about kind of our our social uh interpretation of creativity or our search maybe it's better to say our social experience of creativity um there are there are definitely things that, um, often creative people, uh, forget what it means to be bad at something. So to do something and know that you're like not actually good at it and still find pleasure in it. Um, and this is, this is something that society tends to squash really hard. This whole like idea that as soon as you have a hobby, it should become a side hustle.
Starting point is 00:12:42 Or as soon as you have a hobby, you should start judging yourself against other people. And I haven't actually read the research on this, but there's a really interesting thing that I've noticed when we used to do game tests with eight to 12-year-old girls, is eight-year-olds don't have any concept that they're bad at things yet, or they've really just started to learn that. So there's a, Will Wright, the guy who made Spore, had this example that he used to give in his talks. It's like, okay, ask a group of eight-year-olds, can you tell stories? Can you dance? Can you sing? Can you draw? And they'll all raise their hands. Because at that point, they know that can is really just a statement of, you know, sort of functional ability. Like, yes, I can do this. When you ask 12-year-olds this, sometime in those four years or even more years, people learn that can also means
Starting point is 00:13:33 do you have permission to? Are you good enough to? So, they suddenly realize that they can't draw anymore. They can't dance. They can't tell stories. So, if you ask adults this, they'll mostly sit on their hands. And we've forgotten kind of that feeling of the eight-year-old, of the six-year-old, that yes, you can do these things. You can stand up and dance. But it requires people to not immediately judge themselves, to kind of have this autotelic experience where I personally am a really rotten ballroom dancer. I am absolutely terrible at it, and I enjoy the heck out of it. And if I ever see myself in the mirror, it absolutely crushes the experience. But while I'm dancing, I have this idea in my head of, you know,
Starting point is 00:14:13 the ballroom scene in Beauty and the Beast that I'm, like, sweeping around in a giant dress. It doesn't look at all like that. So I actually have to kind of negate my experience of the end product, if it were. It seems like it becomes part of identity, too. Instead of, can you dance? Yeah. Are you a dancer? Are you a dancer? Are you a musician? Are you an author? And that has more weight and import than can you dance? Can you write? And it's odd that everybody has a different set of these. Like, if you ask a professional
Starting point is 00:14:43 flutist, like, can you draw? You know, you can get a bunch of very creative people in a room together and have them play picture narrator. It turns out none of them can draw, but they all enjoy it. And so it's kind of interesting that we're all rank novices in some way. And so we need to stop hearing, can you do X well? And go back to hearing, can you do X? Because can you is... Or do you enjoy doing X regardless of, yeah. Yeah. And to kind of bring this back to my research a bit, this is one of the things, so it's really hard to do that. You can't just go up to somebody and say like, be creative again,
Starting point is 00:15:20 you schmuck. And so I'm really interested in this idea of can we get computers to help with this? So we know a lot of stuff about improv from improv and a bunch of other creativity theory about it turns out the question is not what makes people creative. We can't answer that question, but it turns out everybody is creative. But we all have kind of these different boots stomping down on our creativity. So it's like, okay, well, what are the things preventing anyone at any given time from being creative? And this is everything from kind of that like redefinition of can you and like social expectation to things like, you know, not knowing what to do next. Where to start. Where to start. Yeah. And so there's all these improv techniques, really going back to the early
Starting point is 00:16:03 roots of improv, which is a book called Impro from the 60s, which are things like, if you've ever seen an improv group, draw an idea out of a hat. Or the idea that you have a prop on stage, so they give you a weird looking prop and you have to figure out what to do with that prop. Or even they give you a shovel and say, do something with this. So it's this kind of paralysis of choice. If you put somebody on stage and say, do anything, or you give somebody a blank sheet of paper and you say, do anything, most people will freeze up. Even if you say, just like, say a word, most people will freeze up. But if you give somebody a shovel on stage, they kind of have three different interactions, or like three different possibilities, instead of infinite possibilities that you have three.
Starting point is 00:16:44 You know, you hand me a shovel on stage and say, do something. Well, I can start digging, like pretending to dig a hole with it. So it's kind of playing along. And then there's, you know, I can pick it up and say, oh, it's not a shovel. It's actually like, you know, a ray gun, pew, pew, pew. Or I could say, yes, it's a shovel, but I'm digging a hole to the center of the world and I'm already a,000 feet down. So you can kind of like counterplay in interesting ways. Play. Yeah.
Starting point is 00:17:10 The play, I think, is the word in there. Because you've stopped seeing a shovel as a chore tool or a work tool and you've gone to seeing it as a play artifact. What other improv things can you relate? Yeah, there's a great one. This is the one that people always use to kind of make fun of improv, but the idea of yes and. I love that. I think that is incredibly, just so important. Good example. Yeah, I was about to say you probably use it in podcasting a lot.
Starting point is 00:17:46 Yes. And tell me more. No, it's usually so cool to change the subject. Yeah. Okay. So yes, and I am familiar with this, but maybe you should explain more. Yeah. So yes, and is the idea that when somebody does something on stage, one of the other things that shuts people down creatively is being told that they're wrong or like that, or whatever triggers that moment of self-doubt. So if you immediately tell people that you did it right, yes. And then you also do something that shows that they're powerful and that something exciting is going to happen in reaction to what they did. Yes, and. So you say we're on the improv stage and you say we're pirates and i say
Starting point is 00:18:27 yes and we're sailing to the moon um so this kind of acknowledges your contribution and then i build on it to show you that like i'm adding to your contribution and computers are actually pretty good at this um everything from uh when you click a button on a screen and it does that little click click button and then something happens immediately. So it said, yes, like I acknowledge that you've clicked because if you don't have that, people start wondering if it, you know, is this mouse even on, did I even click right? Is this button even active? And then the end is it does something interesting with your computer. So AI systems can do all sorts of things where it like, you know, it acknowledges your presence and then makes something exciting and
Starting point is 00:19:05 weird. So like all of Janelle Shane's interesting generative paint names and things. Okay. That's one example. Do you have another little app game-like example or generative thing you've worked on? Because I know you've done just a ton of cool generative things. So Sport Creature Creator is a big one. So I never personally worked on the Sport Creature Creator. I worked on some of the systems that were on other parts of the games. But the Sport Creature Creator, you're sort of building a Pixar-like monster. And you can add arms and add weird accessory parts and change the body shape in different ways. And whenever you drag something new onto it, I'm used to kind of gesturing this, but it'll raise up its arm that you just put on it, look at it, and then do kind of a big cartoony nod of like, wow, that was so good.
Starting point is 00:19:52 So it's lots of different systems kind of all going on at the same time. You know, you've dragged the arm over and the computer makes a click sound when the arm has gone into place. And then it redoes the mesh mesh which is kind of the body shapes that the arm is like now attached it redoes any of the texturing it redoes some of the animation so these are all kind of yes and things that the invisible system is doing and then the creature itself kind of yes ands by saying like oh i recognize that something has changed in me and i think it's great you're so good at. And there are lots of examples of software that does yes, but, or no. Yeah, the sort of dreaded clonk sound
Starting point is 00:20:29 that Windows does whenever you do something wrong. A compiler? Yeah, a compiler. Yeah, compiled programs are the worst at this. Yes, but you didn't put a semicolon, so no. Or it doesn't even get to yes, and it's just no. Yeah. Like, tell me what I did wrong.
Starting point is 00:20:44 No. And modern editors just don't even wait for you to, it's just no. Yeah. Like, tell me what I did wrong. No. And modern editors just don't even wait for you to compile anymore. While you're typing, nope, nope, nope, nope, okay. I think when they do it well, it does become kind of a yes and, of like, you know, if something is highlighted red, or, you know, I'm typing in Microsoft Word, and it's underlining all of my misspelled words in red. It's like, yes and, you might want to look back at this. Like, yes, and this word is misspelled. Like,
Starting point is 00:21:08 yes, and, you know, how awful would it be if you were typing and as soon as you had a misspelled word, it just stopped and wouldn't let you do anything until you correct that word. Somebody needs to write that editor. I mean, this is how most code works. And we, for some reason, coders, like, compilers haven't realized, people who write compilers have not realized just how awful this would be in any other discipline. But for some reason, a lot of the things that would be absolutely stinking terrible and completely unacceptable in other disciplines are considered just part of the practice in computer science. We're kind of goobers about this. That's a whole nother show. Going back to the shovel, one of the things that does
Starting point is 00:21:50 when you're making an improv thing is constrain the world. And you've mentioned constrain. In software, there's this idea of control versus power. Is that how you do it? Yeah, that's how I've discussed it in my dissertation. I've often thought about flexibility of a tool versus the learning curve of it. Are these similar concepts or do you think they're different? I think they're pretty different. Learning curves can mean a lot of different things. Um, there's, there's another comfort, like concept from my dissertation that I've, I've ended up using a lot, um, which is, uh, I studied all of these different fields, everything from kind of like business place learning to psychology to art. And a lot of them have this loop, um, of like, how do you, how do you learn how to do something?
Starting point is 00:22:41 Like if I'm, if I'm in 1985 and I'm using a mouse from the first time, how do I know what a mouse does? It's like, well, there's this weird gray lump by this computer. I have a screen on. I'm going to push this lump to see what happens. Like, maybe I'm just going to push it out of the way. And when I do that, I see something move on the screen. And so now I have this kind of loop that I'm going through where I have a hypothesis. Like, okay, something is happening. I think if I push the lump to the right, the little thing on the screen is also going to move to the right. So then I enact that hypothesis by pushing the mouse. And then the system responds in some way.
Starting point is 00:23:16 So the system then moves the mouse to the right. And now I look at that screen and I reevaluate what's going on. I see that the mouse has moved to the right. Now I update my hypothesis about the world, which is, okay, this is a device that when I move it, it moves the thing on the screen in the same way that I'm moving it in the physical world. And this is like a super simple example, but there's all sorts of different things like, you know, I compile a program. What effect is this program going to have on the world?
Starting point is 00:23:44 I push a button on this website. what effect is that going to have? And we only really learn by going around this loop. So I needed a name for the loop. Yeah, so I named the loop, excuse me, I named the loop, I named the loop, the Grok loop, after the term to Grok, which I think is a Heinlein term, which means to understand so well that you were like now part and sort of, it's like an alien word, which means to drink in so much that it becomes part of you. So like, you now know this thing so well that is like, it is not a learned thing anymore. It's like an embedded thing in your soul.
Starting point is 00:24:20 It's understood and intuitive and it's beyond, I read a book about it and into, I can do this. Like this is now just kind of part of my arm. Yeah. Grok is such a good concept. And the Grok loop that you have, so, I mean, you say hypothesis, it sounds like, you know, the scientific method. Yeah, it is, but we kind of forget that the scientific method is also just a formalization of the way that we understand things. Like, I test something and then see if my thing was correct. Like, you know, I want to figure out how to socialize at parties.
Starting point is 00:24:55 I think small talk will work well. Oh, no, that particular piece of small talk went badly. You know, you don't always learn the right thing, but we're always kind of constantly testing and reevaluating, even when we don't call it testing. Absolutely. So your Grok loop with software is just when I get a game and I don't know what the rules are, so I push buttons randomly until something rewards me in a way that I like. Yeah. And this is actually, it's a really big deal with AI now. So something that you can't run this process on is always a black box. So we get this a lot with
Starting point is 00:25:30 big AI systems. So Google had the system that they released maybe two years ago called Perspective. And this was something that they said, okay, the collected grand minds of Google has come up with this vast and complicated algorithm called Perspective that if you give it any piece of text, we will tell you whether or not that piece of text is toxic. So you can run this on your forums and use it to flag all the bad content. And normally what people would do in our current AI society is, oh, well, Google said so. So I believe that when I put in toxic content, it'll flag it as toxic. And when I put in non-toxic content, you know, this is my hypothesis of the world right now. Fortunately, what Google did, whether or not they intended this, was they released a live version
Starting point is 00:26:15 that you could test online. So suddenly you have a little grok loop going where people said, oh, my hypothesis is if I say, you know, poop, poop, poop, murder everybody, it's going to flag that as toxic. And, you know, I type it in and it does in fact flag that as toxic. It's like, okay, hmm, I wonder if it's good at like gender stuff. It's like women are bad. Okay, flag that as toxic. Men are bad. Huh, weird.
Starting point is 00:26:37 It flagged that as more toxic. And so now then people started kind of testing the edges of it. Like what if I say white people are bad, what if I say white people are bad? What if I say black people are bad? And it turned out it actually had a really ghastly model where things like I am Jewish would be tagged as like very toxic. I am gay was like about as bad as it could get. And it's like, okay, this, it lets people pop the bubble of what people have told them is really happening. Or like people tell them one thing, but like unless you have this Grok loop, unless you have a way to kind of test your hypotheses, the only thing you have to work with is how much you trust Google, which is a much slower Grok loop.
Starting point is 00:27:20 I feel like this Grok loop is very applicable to even small tactical pieces of software. It's like test-driven development. You need to be able to test it in order to know if it works. Yeah. What is your hypothesis about what your software is currently doing versus what is it actually doing? Okay. So the grok loop. But I want to go back to control versus power, right? Because I know mentioned that before. And a lot of people have experience with it, which if I just talked about like random apps that I enjoy, like nobody would have experience. So we all know that in a pottery wheel, I can make a certain shape of things, or I can really make a space of things. These are kind of round, round symmetrical objects. I can't make cool dragon statues. I can't make like good human
Starting point is 00:28:26 figures. But I can do these round things really well. Square plates are hard. Square plates are hard. Yeah. Even, you know, certain things like teapot spouts, you have to like take off the wheel and then put them on. So when I'm on the pottery wheel, I have a very specific possibility space of what I can make. And I can move through that possibility space by just kind of like mushing the clay up and down, you know, spreading it out, like pinching it in. So I can move through this possibility space and like get to different artifacts within that space. And, you know, I have kind of an extension of what I can normally do. So I can normally, you know, if I didn't have a pottery wheel, put my thumb in a piece of clay and it makes a single indentation. If I have a pottery
Starting point is 00:29:07 wheel, I can push my thumb in and it makes a perfectly round divot in this piece of pottery. So here's... You're leaving out the centering, but okay. Yeah. You're leaving out the hardest part, but yes. Yeah. But, you know, there's a sort of multiplication of my effort. Instead of one thumbprint, it's this weirdly perfect ring of a thumbprint um so this is giving me kind of control and uh emergence um like more than a human could have like you know with a spirograph i can draw very perfect shapes much more so than i could normally um the spirograph is the little interconnected uh it's one of those things that when you see it, you know it.
Starting point is 00:29:45 Yeah. But it's almost impossible to describe verbally. It's like little gears and you stick your pen in it and you like move your pen around and it makes like weird trippy art. But always circular. Always circular. Yeah. So you're kind of always working in this constrained space.
Starting point is 00:29:59 And so this is the idea of control versus power. So I've traded off the ability to draw anything I want or to make anything I want with this pottery wheel. Like I can't, if I want to put a spout on it, I'm going to have to stop the pottery wheel and take it off and then do that. Um, if I want to draw a line, that's not like a weird, like rotational sine wave, uh, with a spirograph, I have to like remove the gears and then like draw that manually. But in exchange for letting that go, I get all these kind of interesting generative powers. This sort of either it's making my strokes more perfect or it's making
Starting point is 00:30:37 more of the strokes than I could have made myself. So like multiplying things out like a kaleidoscope, you know, I've turned one bead into like 16 beads that are beautifully mirrored. Yeah, so it's kind of that trade off of I can have less choices, but the actions that I make are more perfect or bigger in some way. Humans do like symmetry. Yeah, we really do. There are a lot of things that it's the symmetry it builds. That suddenly you go from it's ugly to somehow multiplying it six times made it pretty. Yeah. It's a weird thing, but I totally understand what you're saying there. And it's hard for humans to do normally.
Starting point is 00:31:19 We can't do things symmetric. Like it's hard to draw symmetrically. If you've ever tried to draw a perfectly symmetric circle. And so even a tool that just lets you draw a perfectly symmetrical circle, suddenly it's like you've got the superhuman ability. But there is a downside. You don't get to do what you want all the time. Yeah. And so if you want to create square plates, you want to make straight lines, you have to go outside the tool.
Starting point is 00:31:44 Mm-hmm. square plates, you want to make straight lines, you have to go outside the tool. So are we calling the pottery wheel and this biograph set casual creators in the physical world? Yeah, I definitely think it's, they're definitely casual creators in the physical world. I'm pretty adamant in my dissertation that this is not a term that's like, it's digital or non-digital. It's about systems. You do have to have some kind of system, but things like a kaleidoscope is a system for multiplying artwork.
Starting point is 00:32:11 When we talk about it in software, where does this power come out? Where do we lose features? Is paint a casual creator or is that too generalized? This is kind of one of the sticky bits because everything like if you squint at it hard enough can be a casual creator. It's like Microsoft Paint. You know, each one of these little pixels gets filled in perfectly. You never have stuff spilling over the side of the pixels in Microsoft Paint. So you can do really perfect pixel art. And in exchange for that, you know, you've only got a certain number of colors. You can't make anything that doesn't have those little square pixels in it. But there are other things like kid pics is a really good example, like from
Starting point is 00:32:56 my childhood that I mentioned earlier. So I can draw a line and then as I'm drawing that line, like paint drips from it. And so you can make like drippy paint drawings or there's one other line where trees grow out of it. So, you know, I can't, it's hard to draw a picture of somebody's face with the trees growing out of it. But I couldn't draw those trees growing out of it otherwise. And this is why those, like this kind of idea of auto tele creation becomes important again um if i have a grand plan in my mind like i have the symphony that i want to write or the drawing that i want to make you might need a tool that gives you more control this is kind of where you where you need that control back um so you know at that point maybe you go over to photoshop or a blank piece
Starting point is 00:33:42 of paper um auto tele iselic experiences are great because a lot of times these people actually don't care what they're making. They just want kind of a 15 minute alternative to playing Angry Birds for a while. Like, oh, this app is going to make 3D printable teapots. That's cool. I'll kind of doodle with that for a while. Like, oh, this one is going to like do weird photo filters on my photos. That's pretty fun. You know, there might not be a particular thing that you're trying to get out of it, but you just kind of want to like explore the space. You want to go for a vacation in this possibility space. I like that idea, but isn't it just wasting time? I would like to think that people know how to spend their time. So I got my undergraduate degree in media studies and the whole point of
Starting point is 00:34:26 media studies is the world has a lot of different writing on Shakespeare. Shakespeare has been really well covered. If you want to know anything about Shakespeare, we can tell you anything about that. But we have all this time that people are spending and things that deeply matter to them in things like Star Trek and Buffy the Vampire Slayer, the Marvel Universe, video games, things that matter to people. And if you talk to people, there's often like some moment where they were playing a video game and suddenly something became clear. I know some people, somebody mentioned to me about Tetris like being a really good metaphor for when stuff is just stacking up and the more stuff stacks up, the harder a time you have to clear it. And it's this sort of runaway work metaphor.
Starting point is 00:35:13 And so these things, these things matter to us. And they also like are parts of the meaning that we provide in our lives. Like, oh my God, like she's such a Samantha, she's such a Carrie. But often these things don't get studied very much. Like, there's this whole other part of human experience that is not getting looked at. And so, this is kind of hard for me when I was writing this dissertation because people don't study casual creativity nearly as much as they study professional or what's called historic creativity. So, you know, people want to study Beethoven because Beethoven is fancy or, you know, Shakespeare is fancy. People also want to study, you know, okay, where the, like a lot of these are done by the U.S. military just because it's got the biggest funding sources. So, okay, can we get people to more creatively design like mission logistics? Because, you know, we, this is of benefit to us or, you know, we're San Francisco and we want to have like more creativity in our business
Starting point is 00:36:05 stuff. Like, you know, how do we get Pixar to be more creative? How do we get like, you know, paper supply company 47 to be more creative? So, yeah. But those aren't autotelic. Those aren't. So that's where all the funding, yeah, that's where all the funding and all the studies go. And so there's not a lot of studies for um people just enjoying creativity um the one the one exception of that is um uh they do study uh creativity effects in aging and uh social interaction um so it turns out that like creativity when you're getting older actually like significantly benefits your health. And it's like, that's a not bad study of autotelic creativity just because, you know, they don't care about the things that the old
Starting point is 00:36:51 people are making. They do care about the effect on their health, but like at least they're starting to look at what makes people creative or not creative even when they're not Mozart. It's so easy to say, no, I'm not going to write today. I'm going to mess around on Twitter. I'm going to read news. I'm going to be on Slack in case somebody needs me at work. And yet the reason I write is because I like having done it. I like doing it and having done it.
Starting point is 00:37:24 But it still feels like a waste of time. How do we convince people that autotelic activities are not only healthy, they make them happier? We're so in that environment of it's a waste of time, and yet there's so many other ways I waste my time that are not as good. Convince me to play games, please. I think this might be out of scope for my research. Yeah. I mean, there are all this stuff with like the brain age games, maybe like 10 years ago, or it's like, okay, well you have to do crosswords now because it's going to like prevent Alzheimer's. I don't think it's really my business to tell people what they should do, but this is another one of those things is like when you stop people
Starting point is 00:38:11 from preventing themselves from being creative, they'll just start being creative. So I think as long as we put these tools out there and people start getting into them. So I have this language, I don't know if we're on that part yet, but like I have this language called tracery that you can make, you can make weird Twitter bots on. And I never advertised this, but somebody put out a tool there where people could make their own Twitter bots. And suddenly like 8,000 people were making Twitter bots. Not because I was saying like, you know, it really benefits you to be able to make a Twitter bot. Or, you know, you're going to get Alzheimer's if you don't make a Twitter bot. Like, no, it's like as soon as people had these tools, and we found this
Starting point is 00:38:50 as a sport creature creator as well, like people would send us literally handwritten letters. Like we got letters in crayon, letters in pencil, like handwritten letters saying I had written myself off creatively, but like using this tool, I feel creative again. And nobody was telling these people like, you know, you've got to play this game. But this game didn't tell them no. And sometimes it gave them a yes and in a short period of time. You mentioned designing teapots. I can't imagine spending a day designing teapots, but if it was on my phone and I was in line and had 15 minutes, yeah, that would be totally amusing. Could I make a teapots but if it was on my phone and i was in line and had 15 minutes yeah that would be totally amusing could i make a teapot that was like the fanciest teapot
Starting point is 00:39:31 or the most functional teapot and it it would be fun and and useful to me at that time yeah even if i don't grow up to be a teapot creator. Yeah. I have this thing that I'm calling Funky Ikebana, which is like you just breed different derpy little flowers, like strange little generative flowers that I made with code. And they're sort of like big wavy Dr. Seuss flowers. And I put it up on a projector at parties sometimes. And people can just like select which one of seven flowers they like and then breed some more of those. And I've had people just sit down with it at parties, like two people at a time, just kind of giggling with themselves, trying to,
Starting point is 00:40:11 my favorite one was they tried to breed the smallest flower of kind of these big ostentatious flowers. They tried to get the Charlie Brown Christmas tree of flowers and they really just enjoyed surfing through that space together. Tracery. I am familiar with Tracery because I have written a Twitter bot in it. I'm so glad. I love when people make bots. Each bot is so beautiful. But for people who aren't familiar with Tracery, could you give us the two-minute introduction?
Starting point is 00:40:43 Sure. So the introduction to Tracery is a lot of us have played with Mad Libs as a kid and Mad Libs itself is a good casual creator. Kind of, you know, what words are you going to use to fill in this template? So we've given you a template and you, you're trading control like as before for a little bit of structure. This is kind of a structured improv exercise. And so in tracery, what you're doing is you're writing a computer, you're writing a Mad Libs for the computer to play. So one of my favorite examples, one of the first bots that came out for this was, it was called Hipster Cocktail. And anybody who's lived in San Francisco or, you know,
Starting point is 00:41:21 any major city knows that there are these hipster bars that sometimes get a little too creative with ingredients. So if I wanted to make a Mad Libs from making a hipster cocktail, I might say, okay, it's a liquid and a liquid mixed in a container and garnished with an object. Well, unfortunately, the computer doesn't actually know what a liquid is or what an object is. I could hook it up to some vast database, but the database doesn't actually know what a liquid is or what an object is. I could hook it up to some vast database, but the database doesn't actually know which ones would be funniest in a cocktail. And so I'm going to say, okay, well, I'm going to add a list of possible liquids that you're allowed to use, computer, when you're filling out this Mad Libs. So my liquids are going to be, you know, Tuaca, organic homebrew coffee, handmade and grenadine and actually maybe i want to make kind of i don't just want you to fill out those i want you to fill out a little mad lib for each of those so maybe it's um cucumber gin yeah or raspberry like like hashtag flavor hashtag liquid
Starting point is 00:42:22 or like hashtag way that it was made, adjective, hashtag liquid. So like handmade to aqua, artisanal lemonade, organic mint juice. You know, this is raspberry syrup or this one is bacon, like this one is bacon tea with like peppermint schnapps. So you get kind of these silly recipes and then, you know, garnish with a what. So it's really kind of all about putting fun flavors in these little recipes. And where Janelle's AI weirdness would read a bunch of recipes and generate something completely bizarre by randomly choosing to walk through those recipes in a certain way. Yeah. This is generative in that I would have to write down all of these ideas and try to find pathways through them and write it.
Starting point is 00:43:14 I'm using JSON. Yeah. You have to kind of figure out the rules yourself, which is different. So the way I like to, so a lot of the expectation now, because we've got machine learning is like what we think of as AI now. So all of those require what's called a corpus. So like a huge amount of data. So of the difference between taking a photograph and drawing. So deep learning approaches are like taking a photograph. There exists something in the world. I need a world to photograph.
Starting point is 00:43:54 And I'll need to find the thing that I want to photograph somewhere in the world. And then I'm kind of framing that in some way and hoping to find a truth in it. And for tracery, it's like drawing. Like the world doesn't exist. So I can say like garnish with a clock. And I might say, you know, and that sounds like a hilarious hipster cocktail. Like it rings true to me to have like, you know, this is virgin orange juice and vodka garnished with a clock. Like served in an old boot and garnished with a clock.
Starting point is 00:44:47 But machine learning often, it'll go through all these hipster cocktails and it'll come up with something like, well, it's orange juice and vodka served in a highball glass. What do you want? This is on average what a hipster cocktail was. It's a sort of idea of like, you know, if you draw a picture of a loved one, it's somehow more real sometimes than if I just had like security camera footage. We've all had photos taken of ourselves. We say, that's not the real photo. That's not me. Like say that's not the real photo that's that's not me like that's not them um so it's i like the tracery allows you to capture things that are are truer than the truth but also what allows you to capture in the same way that drawing you can make
Starting point is 00:45:14 fantastical things that don't exist there's a very good um dungeons and dragons ikea bot that makes um like you you hit the luftnart for five pine damage um eat six meatballs to recover health that sounds awesome and like where are you gonna find a corpus for that there like there's no ikea themed dungeons and dragons games that you can just like filter in until you get this bot thinking about it myself i had a different mental model for it based on art history style where additive mediums versus subtractive. And to me, the AI weirdness type style, it's subtractive. You're trying to sculpt out the cool parts. Yeah, like Michelangelo's quote about the statue is in there and I just chip away all the bits that aren't it. Yeah. But with tracery and some of the generative art things, you are adding things together.
Starting point is 00:46:13 You're choosing your paints. And you're making a painting by choosing the paints. And maybe you aren't in full control because you're letting the computer do part of it. You kind of got a Jackson Pollock thing where you're loading the paint onto the paintbrush, but then gravity decides where the drops will fall. Yeah. Or tracery will decide. Yeah. Tracery will decide how to mash things up together. Okay. So tracery is a language? Is it a tool? I mean, I use JSON. What is tracery really? I use language a little loosely, but it's really just a way of structuring things in
Starting point is 00:46:51 JSON or, you know, it's a way of structuring things. It's basically like, it's what's called a dictionary data structure. So I have a set of keys and each key has a set of things attached to it. So like liquids are one of these five different options. And one of the ways that it's easy to represent that is as a JSON object, and then I have either an interpreter or a compiler, depending on how you would define it. I'm not a programming languages person.
Starting point is 00:47:20 I just kind of accidentally wrote this thing. So you have some sort of interpreter that you then feed your grammar into and it parses apart whatever it needs to parse apart and then recursively expands things. So it expands hipster cocktail into a liquid in a liquid and then expands the liquid into like a hashtag organic, hashtag other liquid. So it kind of recursively does this
Starting point is 00:47:46 and then paste it all back in together. So yeah, it's really mushy. Like, is this a language or not? Somebody did in fact write their own Quine in it. And a Quine is a program that when you run it, it generates its own source code. So there's a little tracery grammar that when you run it,
Starting point is 00:48:01 it generates its own tracery grammar. So I think that pretty well defines that it's a language of some sort. All right. So let's talk about some of the bots written in this. Yeah. A lot of them are word bots that you... Can you do non-word bots? How would you do a non-word bot? I wasn't done with the word bots. I know. I'm just excited.
Starting point is 00:48:25 Okay. So how do we do a non-WordBot? I wasn't done with the WordBots. I know, I'm just excited. Okay, so how do we do a WordBot? You kind of said with the JSON and the word lists, but how do we make it good? How do we not make it sound like Mad Libs? That's a really hard question. So how do you make a bot nap sound like mad lips um i really want something that makes stuff that is kind of different um that still has a voice so you don't want something that is totally random and you don't want something that like only says one thing over and over again um but at the same time stuff that only says one
Starting point is 00:49:04 thing over and over again can be quite good same time, stuff that only says one thing over and over again can be quite good. So one of my all-time favorite bots is called Infinite Scream, which just goes, ah. In different lengths. In different lengths, in different lengths. But because it's a bot, it will always reply to you if you add it. So this is the bot that I encounter most frequently on Twitter because I'll just be reading some headline and some news story that somebody posted on Twitter. And then somewhere down in the comments, somebody will be like, infinite scream. Could you weigh in on this congressional hearing? And a very reliable guy goes, ah.
Starting point is 00:49:36 So that's something where, you know, there's not much variation in the bot itself, but the way that it participates in society, it's kind of become the ultimate character actor where you can just always bring it on and it'll always deliver its line reliably. But you can make lots of other different kinds of bots. So, like, if I had my hipster cocktail bot, I would want it to make things, you know, sometimes things that sound actually pretty yummy. Sometimes things that, like, are weird enough that they sound horrible. Like, you know, this one is pickle juice and toothpaste or things that sound like they're like, hmm, I wonder if like a pickle juice martini, I bet I could actually make that work. Yeah. I mean, you could have like liquids and disgusting liquids and yummy liquids. And sometimes you could combine them yummy, yummy. Sometimes you could do yummy, disgusting. Yeah. And often you kind of want a couple of normal things and then some weird things. This
Starting point is 00:50:29 is my philosophy of if you have all humans on an airplane, it's boring. If you have all monkeys on an airplane, it's slightly more interesting. But if you have like mostly humans and one monkey or all monkeys and one human, it gets more exciting. So you kind of want like all, all like a bunch of boring liquids and then one or two weird liquids. If you just do like all weird liquids, like, okay, this one is concrete and pickle juice and like gasoline. And it's like, it's trying too hard. Kind of all of its notes are too loud. So you kind of want to like a little, something that mixes stuff up a little bit and then also um another good technique is to find things that when you put them together create stories um so i have uh i really like hipster cuisine apparently um so i have a hipster chef game that i've been working on for a really long time really just kind of started making it
Starting point is 00:51:23 to test out tracery um and i still haven't finished it after about five years, but it makes hipster recipes. Um, so like hipster cocktail, but you know, for waffles. Um, and I made a little patron generator so that people can come in and order at your hipster cafe. And these were things like, this is all text. So you would have things like, you know, five businessmen come in like, okay, five minutes, five businessmen wearing cat ears, um, a trucker carrying a heavily stained teddy bear. Um, these sorts of like, um, uh, a nerd carrying a heavy cardboard box that's leaking slightly. These sorts of things that start to tell you stories. Um, sometimes by pairing people, it would write good stories. So there was one that was, um, a weeping priest and a grinning surfer.
Starting point is 00:52:09 It's like, well, why is the priest weeping? Why is the surfer grinning? This is kind of enough of a, um, I like to call them imagination playgrounds. So there's, there's two concepts that are just far enough apart that it makes fun, like it makes it fun to tell the story in your head. Uh, and the best ever story that I got from that particular generator was this one is such an imagination playground. It blows any of the little Hemingway short stories out of the water.
Starting point is 00:52:31 So it's an angry nun in a wedding dress. She came in, ordered Chardonnay and left. I can just tell her story all, all day long in my head. Yeah. Great writing prompts yeah and so these kinds of like little storyful words like having two things that are just far
Starting point is 00:52:51 enough apart that it makes you want to fill it in or things that kind of tell the story so like heavily stained or pregnant or weeping all all suggest that there's something that happened i have another bot that's called um bling Bot, and it tells little locker room mysteries. So, kind of, you know, the ones where it turns out that they were, like, murdered with an icicle and the icicle melted. Oh, okay. And so, it generates these things that don't have a solution because it's just coming up with them on a fly. So, it'll be things like, the deceased was found in a heavily worn wedding dress with a Latin dictionary and a guide to breeding roses. They died of asphyxiation.
Starting point is 00:53:32 And so, you have to be like, okay, were they breeding competitive roses, but they were about to marry their top rival, and that's why they're in a wedding dress, but why the Latin? Oh, it was a Catholic ceremony. That's why the Latin dictionary. And so you can kind of spin out these ridiculous things. It's like, it's telling a story that was, it's telling the punchline to a joke that was never written. Oh, that's another good, there's so many bots that I love. I can just spin out on this forever. There's one that, you know, those like jokes that were on popsicle sticks where they're like not really good jokes. This is one where it gives you the joke. So this isn't running on cheap bots on quick, which is what a tracery runs on.
Starting point is 00:54:13 This is something that somebody else made. So it'll say like, you know, why did Detroit feel seasick? I'm just kind of like spinning up a random one cause I don't remember any of the real ones. And so then people chime in with what they think the answer to that joke is. And then the one that gets the most likes is then retweeted as the actual punchline.
Starting point is 00:54:33 So this is, there's a joke with no punchline and people have to figure out what the punchline is. So yeah, I love these things where it's like it asks people to fill stuff in because it turns out that's one of the things that's most fun about this is kind of playing this improv game with a computer. Like, I'm going to be the clever one. The computer is going to be the one that doesn't understand human logic and doesn't know why Detroit being seasick is funny or not funny. But a human can figure out something, with a terrible terrible pun that'll solve that so you're using the computer as your straight man yeah it's it's the it's the hat you pulled the idea out of yep yeah this is a really big hat yeah now i'm not really sure about my bot okay so now you have to tell us about your bot uh my bot i wrote to remind me to say things to people who are unhappy.
Starting point is 00:55:28 Sometimes they forget to say anything. Or, you know, somebody's going through a hard time and you say, oh, I'm so sorry. And then a week later, you're like, I should call them, but I don't want to bother them and so my bot suggests things you can say and reminds you that you can send a card and it gets a little weird um it has a long list of uh animal protectors the invisible golden retriever next to you will make you feel better, except sometimes it's an attack badger or a purple unicorn. And so the idea is that it reminds you to say nice things. It reminds you to say thank you. It reminds you to say I love you.
Starting point is 00:56:18 And it can be very dopey and dorky and sweet and very derpy. But I've had a lot of problems with it being mad lips. Yeah. But I think it can also serve a purpose. I think it sounds like that's a bot that gives people permission. So this is another thing that bots can do other than just being straight men. The bot told me to is a valid thing that can get people over whatever psychological hurdle. This is why we play Twister, right? I didn't want to hip check you. The spinner told me to is, is a valid thing that can get people over whatever psychological hurdle. Like, this is why we play Twister, right? Like, I didn't want to hip check you. The spinner told me to hip
Starting point is 00:56:49 check you. I had no choice. And, and to explore some cognitive behavioral things, uh, sort of live without working hard at it. Just a little bit. Yeah. A little push. Like it, you know, you wouldn't want to pay a therapist to do this, but a bod is kind of free. It can be there when you need it to be. And I think we were at a conference and I asked you how to make it more dynamic, and you said recursion was part of it. Yeah. And that has helped.
Starting point is 00:57:21 It's not only guilt is normal, but guilt and anger and whatever you're feeling is normal or common or everybody has it someday. And that's kind of wordy, but it's gotten more dynamic with that. So recursion was fun. Okay, so words. Words are fun, but pictures too with tracery and when you said this i was like uh no i know but tell us how you would make a picture thing um yeah so this was uh a bit of a surprise to me um like originally in tr in tracery, um, the site that I was, so I made a site called, uh, brightsbrowel.com, um, slash tracery, um, which is like a very work, you know,
Starting point is 00:58:13 those like four-year-old work in progress websites. It's, it's had the metaphorical, like under construction banner for four years and I've never gone back to it. Uh, not that any of you listening have sites like that. Um, um, but yeah, you can still go to brightsbarrel.com slash tracery and like make Twitter bots. And I was just learning JavaScript at the time. Um, and so when you had the output of your little tracery grammar, um, I used, and this was just an accident of like me not knowing HTML very well. Um, so I, I did, uh, in jquery.html to set the value of the output, the little output div instead of dot text. And so what dot HTML does is instead of just pasting the text in there,
Starting point is 00:58:53 it sees whether or not that text can be interpreted as valid HTML. And it'll, you know, do like nice styling for headers or you can, when I was testing that I had like arrested development GIFs that it would paste in from somewhere online. So you could kind of paste in different stuff and have it like be interpreted as HTML. And then a while back on Twitter, I got a text from somebody called, I think Ranjit Bhatnagar. Hopefully I'm getting his name right. I mostly know people's Twitter handles by like the image that they use. That's why I can never change my image. Yeah. But he said, oh, look, I got Tracery to make graphics because, so Tracery makes
Starting point is 00:59:33 hierarchically structured text. So these kinds of things that are made out of things that are made out of things that are made out of things. And if you do HTML, you might recognize that that's how HTML is structured. It's kind of this hierarchically structured structure. And SVG is kind of like HTML for graphics. Like, okay, I have a group and it's made out of a circle and a square and a squiggly line. And now I have another group that's like rotated and another circle and a different squiggly line. So you can kind of make these recursive vector graphic structures. And then they get interpreted by an HTML web page. And so George Buckingham, who runs CheapBotsDoneQuick, which is, so I should mention what CheapBotsDoneQuick is.
Starting point is 01:00:18 Just if anybody out there is listening and would like to make a Twitter bot, you should definitely go to CheapBotsDoneQuick.com. And it's a really friendly website. And you just paste in your little tracery grammar. And you log in with your Twitter credentials. And you tell it how often you would like your bot to post. And then you hit go. And now you have a Twitter bot. So it was what's really behind a lot of the success of tracery was this ease of you don't have to run a node server. You don't have to know JS or JavaScript or anything. You just like paste in your little Mad Libs and you hit go. And I mean, Pajamas sources online,
Starting point is 01:00:52 a bunch of people have their source online. It's very easy to get. So you can see examples and there's a ton of tutorials. And you have a generator that you can actually see what it's doing, which is helpful. Yeah. Yeah. Cheap bots done quick is just really fun. Yeah. I do recommend that. It'll be in the show notes for sure. Yeah. So that's what cheap bots done quick is. So after Ranjit posted this circle thing to Twitter, George Buckingham, who runs Cheap Bots Done Quick, said, oh, like, obviously these bots should also be able to post in SVG graphics. So they
Starting point is 01:01:32 did some like pretty heavy lifting changes on the back end, which I don't know how technical the audience for this is, but there's like a headless Chrome that is interpreting this as a web page and then snapping a photo of it and then running that through whatever node server they have to then post to Twitter. So kind of awesome amounts of technology behind it to allow you to post an SVG graphic that's made with tracery. SVG graphics are actually pretty hard to make with tracery. Pretty hard to make without it. Yeah, this is true. You don't have Illustrator.
Starting point is 01:02:07 You're having to just describe what a rectangle is to a computer. But people ended up making some pretty clever stuff. So one of the first ones was Circle Party, which was just Ranjit turning his original thing into a thing that just makes circles. So it's a bot that just posts circles, and it's Circle Party. And then George Buckingham made something called soft landscapes that does like very gently shaded, um, hills fading into blue in the distance.
Starting point is 01:02:33 Um, yeah, I've, I've seen all sorts. There's, there's one that does, um, uh, Mary, Mary Blair style artwork. So kind of like the backdrops to it's a small world. Um, there, there are not nearly as many of these as there are um tracery text bots oh but the one kind of graphic bot that a lot of people do make that is not svg is um it turns out you can do all sorts of fun stuff with emoji so there's a whole subcategory of people making little landscapes out of emoji um so i think one of the first ones was tiny gallery that makes um a little for like fake looking 3d space out of punctuation marks and then fills it with uh the emoji that look
Starting point is 01:03:12 most like pictures and then put some little people wandering through it uh from the emoji people set and then uh choo-choo bot is a train going through different locations. So, you know, making use out of all those like weird train parts that for some reason the emoji set has all those like tram, like there's like six different kinds of trams for all of your tram emoji needs, which are actually some of the least used on Twitter. There's a site that tracks which emoji are most and least used. And for a while, there was a particular tram that was the least used. And so I pasted it like 200 times into a tweet and I got to see it go up the ranking. It's like I could actually bump something up the rankings of Twitter by using the least used emoji. But yeah, like... Choo Choo Bot not only uses the train emojis, it also puts bunnies and sun.
Starting point is 01:04:02 Yeah, it's got several different landscapes that it can do. There's an undersea one. one oh it can go through hell so there's like little fire and like little demons that it's going through and it goes through space sometimes so it has like the stars and the moon and an alien yeah like people are just really creative with these things it's like well it doesn't take a lot of technology to put a bunch of emoji together um there are two different bots that do emoji farts it's like farts emoji and emoji farts um which is just you pick a random emoji and then you put the wind emoji next to it and it looks like an anchor is farting exactly or like the french flag is farting whatever whatever emoji you have and it's like that is not terribly complex technologically but um it's and it, it's not doing recursion or
Starting point is 01:04:45 anything, but it is kind of endlessly amusing to, to those of us of a certain perspective. Do things have to be silly or artish to be interesting? I think artish is a fairly broad range. I do love Infinite Scream just because it is so simple. And I consider Infinite Sc scream art. Not many people probably wouldn't, but I do consider it art just because it's, it's almost like a theatrical piece, the way that it's interacting with people constantly. I think things have different amounts of meaning. And I think like we've talked before, like not every Twitter bot is like a performance for the world. Some are just uh inside jokes between two people
Starting point is 01:05:26 so there are probably a lot of twitter bots that i just never see out there because you know some 14 year old made a meme bot for their 14 year old friend and nobody will ever retweet it because nothing of what it does makes sense but like they're like oh yeah that is that is so deeply meaningful to us or even people who, make these grammars but never publish them. Because, you know, maybe it just never really came together. So, yeah, I don't think anything has to be, like, deep art or deep humor. They can be silly. There's a couple that people have made as kind of ways to get around different, um, things that they were studying academically.
Starting point is 01:06:06 So there's, I forget what it's called, but there's one that's based on like a 1960s media philosophy from Mexico city. Um, that's like, uh, different ways of conceptualizing what a book is. It's like a book is a collection of pages with empty space. Um, but it just like posts different variations on, on media theory from Mexico City in the 1960s. There's one that's, I held a really fun Twitter about workshop at a poetry workshop in University of Virginia. And there were a bunch of people from like comparative literature there. And there's a woman who studies a 17th century woman poet who was, she released just vast quantities of poetry, but she would always send them to her friends with these like little notes of like, I have made a small dalliance of poetry with,
Starting point is 01:06:55 you know, a 400 page tome. And so she made a Twitter bot that makes this style of kind of like poetry announcements of like, I've made a little dalliance of words. I have made, you know, a whimsical setting of, you know, language and just made those as kind of, you know, a way to play with her favorite poet. There's tracery too. What is that? Yeah, tracery too is, so tracery is really a complete thing. Like I made it pretty quickly. It serves exactly the purpose that it was meant to serve which is to get people to make these things and not think too deeply about like um i'm sure many of your many of your listeners have heard the term yak shaving where it's like you you want to do one thing but then you just kind of go on this
Starting point is 01:07:40 long technological voyage of like well if i have to do that then i have to learn how to do that and if i have to learn that then i have to be able to hook up of like, well, if I have to do that, then I have to learn how to do that. And if I have to learn that, then I have to be able to hook up this thing to node. And if I have to learn node, then I have to get this thing running and well, now I better like start running my own server, et cetera, et cetera. So tracery, one of the reasons that it's called, or the reason that it's called tracery is tracery is the fiddly bits of the cathedral that doesn't hold up the cathedral itself. It was actually a reaction to some of these like very complicated story generation languages that exist only in the academic sphere,
Starting point is 01:08:08 which tried to build the whole cathedral. And Tracery was like, nope, not going to build the whole cathedral, not going to have a giant world knowledge base, just going to do the fiddly textural bits. So Tracery 2 is adding more logic, things like random number generators, but also functions that you can run and, um, more ways for it to hook up to, uh, other JavaScript programs.
Starting point is 01:08:35 So if you have like a data structure, you know, um, this comes into play when you're doing something that interacts with users more. So let's say, let's say I'm using Tracery for writing chatbots that are interactive. So I want to run something on the Google Home. I want to say, okay, hey user, what's your name? I then want to store that name somewhere that Tracery can use it. So I can say like, okay, hashtag name, I've made you a hashtag cocktail. So you can kind of like mix and match these world structures that you're setting with JavaScript with just purely trace regenerated stuff. There are chatbot grammars. Have you used any of them?
Starting point is 01:09:14 So I used to work for, well, I didn't officially work for Google. I worked for Adeko Staffing Services, which supplies contractors to Google. But I worked with the Google Home assistant team for a while, the one that was the sub team that was working on the personality for Google. And when I was there, I did a whole bunch of prototyping to try to, you know, in the same way that you can post doofy things to tracery very quickly. Can I say post? You can say it, I'll bleep it. Okay. So you can sort of irreverently have ideas and post them very quickly to tracery. You can make stupid things quickly
Starting point is 01:09:55 before they are no longer funny. The Google chatbot, and this is true of all chatbots, I don't even know if Siri can run apps, but things like the Amazon Alexa, if you make an Amazon Alexa skill, it's like, well, that's your day job for the next two and a half weeks is figuring out that API and like all the API keys that you need to do that. You can't make infinite scream and have it still be funny two and a half weeks of node later. And so there's no infinite scream or whatever infinite scream would be on these assistants. There are people working to change that. These are people who are, by and large, trying to make the sort of things that we think, that industry thinks chatbot should be, which is,
Starting point is 01:10:39 they're very concerned about how to make money in this space. And so most of the things that they're making are variants on pizza ordering bots. They can order you anything from a pizza to Uber to flowers. They can answer simple questions about which pizza you could order. They often try to have conversations, but it's like these sort of general purpose conversations that Google wants you to have with an AI. Which I think that they're taking entirely the wrong perspective of this. And so I tried to make, while I worked at Google, something that could handle small, weird experiences in the way that Tracery handled small, weird experiences. They didn't end up using it for a variety of technical reasons,
Starting point is 01:11:21 but they were kind enough to open source it. So it was open source under the name Bottery. And then in the six months that it took for Google to open source it, somebody else came up with a library called Bottery. But of course, because Google is doing it all internally, like we both ended up coming out with something named Bottery at about the same time. But they actually had users, so I kind of like ceded the territory. So now, very confusingly, Bottery is now named Chancery. Um, mostly because it's another cathedral term and I was going to kind of keep with the cathedral, like E-R-Y, uh, theme. But yeah. Um, so Chancery is something that I'm also working on alongside Tracery too, which is like, you know, what is a grammar for describing a chat bot? Um, and it makes heavy
Starting point is 01:12:02 use out of Tracery. So basically so basically like um if anybody has played with something called twine which is um sort of hypertext uh fiction authoring for the web um okay yeah so um twine you can kind of make these little choose your own adventure stories where you like um it's mostly text but you click on a piece of text and it takes you to a new piece of text and people have made just amazing games with it just like mind-blowing games there's one called howling dogs it's considered like one of the top indie games of all time um like just beautiful experiences and then often funny or silly experiences there's something called crystal warrior kesha that is also very good um which is about going on a surrealist road trip with Kesha. You know, speaking of things that are only funny
Starting point is 01:12:47 if you can make them very quickly. But yeah, so it's this kind of node-based, what's called a finite state machine. So almost like a board game where you're moving a piece from one slot on the board game to another. I tried to write a chatbot using one of the big grammars, using one of the grammars that won the ELISA 2 big award, big grammar. But I wanted to do something different.
Starting point is 01:13:15 I wanted to have a bot you could go to and say, I think maybe I've been sexually harassed, but I'm not sure. What do I do? What do I do next? And have it talk to you. Yeah. And that was a total whiff because that is a huge space and I am so unqualified for it. And the chatbot part was hard.
Starting point is 01:13:39 And that part I was qualified for. Tracery was quite a bit simpler. But again, going back to the power versus control, it wasn't the interactive experience. I'm looking forward to Chancery and how its interactive experience will go. Do you think there will be something like Quick Bots Done Quick? I get that backwards all the time. It's not an easy title for an easy piece of software. SheepBots Done Quick.
Starting point is 01:14:08 Do you think you'll get something similar to that? Yeah, that's actually part of the grant through the Center for Resources and Open Source Software. Carlos, who you had on, I believe, last week, runs that and offered me the grant. So I've got this grant to make a piece of open source software. And the goal is to do, do tracery to do chancery, but then most importantly, make a site that people can have these bots running on. So it's called art bot.club. You can go there and there is absolutely nothing there yet.
Starting point is 01:14:40 But the thing that I'm pitching to people, this is, I've heavily workshopped this description. This is my elevator pitch. It's like GeoCities for AI. So we all remember, well, all those of us of a certain age. How much flashing is there? Lots. Well, it's that idea of you're making things that are slightly embarrassing and slightly terrible, but very unique and very you. Nobody made a general
Starting point is 01:15:05 purpose website on GeoCities. You make, you know, the new kids on the block fan bot, or you make TimeCube, or you make whatever, like, deeply bizarre thing. I think I had a Quest for Glory fan page, which was a video game that I was really into at the time. So you're making small, weird things that are, like, centrally hosted. You can make them without a lot of technological ability. And so I'm hoping to have that sort of feeling of GeoCities hosting of like, you're a derpy human who's never done this before. Of course, you can just drop in and make something. And everybody else's is also terrible. So you don't feel like you have to be particularly good about it. And then have basically a chat server that you can talk to all these different weird bots on.
Starting point is 01:15:49 Twitter, I would love to have it running on Twitter, but Twitter is often kind of a hostile place for bots. They like blocking bots now. I would love to have it talk to the Google Home and the Amazon Alexa. on Alexis, you know, if you, if you make your deeply bizarre bot or your deeply meaningful bots, if you were able to make the likes talking to somebody who may or may not have been sexually harassed, like, um, or, you know, somebody has had a bad day and like, doesn't want to call the suicide hotline. But like, if you've ever seen the people who like just need to talk to somebody and they'll like hold up the entire, entire grocery line, just because humans sometimes deeply need to talk to people. Um, and so like have a bot that somebody can talk to you and so you can make your bot publish it on
Starting point is 01:16:29 the site other people can talk to it maybe other people can like clone it and start working on their own version of it if you allow that um really just have a chill sort of site where people can um play foolishly with ai i think like tracery tracery didn't at all do what i thought it was going to be i thought it was going to be a storytelling tool to kind of tell full stories uh and nobody used it to tell like long stories because it's actually like less satisfying to do that didn't yeah then then to just make weird stuff that i didn't know had existed um so like i i deeply do love infinite screaming. And I'm excited to find out what the other infinite screamings are of different bot interactions. Like, what are the
Starting point is 01:17:11 things that we didn't know that we needed? I have so many more questions, but I don't want to keep you forever. It is 420. Santa Cruz. Let's see. What are you going to do next? It sounds like you're going to work on the open source. Yep. I've got the open source grant for a while, at least six months. Do you have any advice for people wanting to get into computer games? Make small, weird things quickly. Don't try to build World of Warcraft.
Starting point is 01:17:44 In the same way that like, if you wanted to, so I think computer games and AI should be things like, you know, if somebody said they want to get into writing, you know, you don't tell them, well, okay, you need to skill up on all these different writing platforms. You need to learn all these different writing techniques. And then you'll be able to write a novel. It's like, well, no, start writing small things. Like try writing like a short poem, write a short story, maybe get somebody to read your short story. If you're making either AI or games or casual creators, making small things quickly gives you a lot more skill than failing to make large things
Starting point is 01:18:21 over the course of five years. Well, now we have to go back to the lightning round question. Do you work on, would you rather finish one thing or start 12? Would I rather or do I? Do you? I have thousands of things that I have started and not finished. I need a manager. I need to just like go on Craigslist and be like, okay, I will pay $12 an hour for somebody to yell at me and tell me to finish my work. Just make a bot for that.
Starting point is 01:18:50 This is true. I think I need a human. That's a thousand and one now. Thank you. I need the human guilt. Bots don't have good human guilt yet. Yet. All right. Are there any thoughts you'd like to leave us with?
Starting point is 01:19:05 Oh, the final thoughts. Yeah. Really just that I think anybody can make AI. I joke that one of my goals in life is to bring AI to people that AI doesn't deserve. So AI is kind of a mess of a field. It can be very exclusive and very non-diverse. and that people in dance and theater and poetry and art all ought to be doing AI, but they oughtn't to be doing AI because STEAM is important. We've all got to go worship at the Temple of STEAM. I want to bring AI to them because it's a tool that I think that they might enjoy using in their own work. And they'll then tell me that I'm wrong and that it should be used in this entirely other way. And they'll surprise us by how we didn't know that AI needed to be used.
Starting point is 01:19:56 All right. All right. I think I followed that. And I think it's cool because, yeah. Yeah. All right. Our guest has been Kate Compton. Geologic choreographer, dance breeder, and crafter of twitching generative bots. There are lots of links and lots of Twitter links, but the one that you should remember is cheapbotsdonequick.com and tracery,
Starting point is 01:20:30 and Galaxy Kate, because that's Kate's Twitter handle. Thank you for being with us. All right, thank you. Thanks, Kate. Thank you also to Christopher for producing and co-hosting, and of course, thank you for listening. You can always contact us at show at embedded.fm or hit the contact link on Embedded FM, where you will also find show notes.
Starting point is 01:20:47 Now a quote to leave you with from my very own little Twitter bot, Pajamas With Feet. Let it go. You are who you are. Let's pet a penguin. Whale emoji, bunny emoji, caterpillar emoji, tree. Embedded is an independently produced radio show that focuses on the many aspects of engineering. It is a production of Logical Elegance, an embedded software consulting company in California. If there are advertisements in the show, we did not put them there and do not receive money from them. At this time, our sponsors are Logical Elegance and listeners like you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.