Steve Ruiz, founder of tldraw - taste, creativity and obsession - podcast episode cover

Steve Ruiz, founder of tldraw - taste, creativity and obsession

Jun 07, 202548 minEp. 139
--:--
--:--
Listen in podcast apps:
Metacast
Spotify
Youtube
RSS

Episode description

Steve Ruiz is the founder of tldraw - a whiteboard SDK / infinite canvas SDK. We talk creativity, taste and obsession. And marketing to developers.

This episode is brought to you by WorkOS. If you're thinking about selling to enterprise customers, WorkOS can help you add enterprise features like Single Sign On and audit logs.

Links:

Transcript

Steve

Yeah. By the time that I I started getting more serious about tldraw, it was because people were really asking for more. Can I pay you to stay unemployed? That type of thing.

Jack

I'm joined today by Steve, the founder of tldraw. We talk about taste, obsession, and how tldraw have been able to create such an amazing whiteboard.

Steve

I rabbit hold on this, like, globs. Like, if I take two circles and connect them with two Bezier curves. So I built, like, an entire editor to help me understand globs. And then that editor led me to think, well, I wanna design tool that works with any primitives. And that eventually became TL draw.

Jack

We talk about creative work.

Steve

The fun part about art is that it's not solving a problem. No one's asking you for this stuff. The work that they'll be doing seems like no one else could have come up with that stuff, and it seems very natural. There wasn't, like, a good idea. It was just the kind of the repeated iteration and just, the habitus of of the artist.

Jack

And we talk about developer content. tldraw is arguably the best out there.

Steve

The least engaging content is where where we say, like, look. It just works. How do you hook people? By showing the bug first.

Jack

Someone could see your, like, kind of path and it would the way you kind of have described it sometimes sounds like it's very kind of like, you're like, you're just this artist doing I've seen your stuff. It seems really good.

Steve

Thank you. Yeah. So my background is in in fine arts. That's what I studied. And before I moved to The UK and and even after I moved to The UK, was about ten years ago, I was a studio artist, painter, drawings.

I also wrote a lot about art. So would go to exhibitions and and write reviews for for magazines and do essays for for other artists and stuff like that. So not not exactly like an art critic, but like more of a arts journalist. Although I did have a blog where I gave art exhibitions like a pitchfork style rating, if that means anything more. Harsh. Like 7.2. No. They were all like 7.2. Okay. They were all.

But, yeah, I mean, that's that's really before I did my ten thousand hours in software, I also did my ten thousand hours, like, in in the studio. And the thing is, like, if you if you hang out with other artists, the which they they will hang out with you. And, like, studio visits are definitely a thing and stuff. The the work that they'll be doing seems like so natural to the person. Like no one else could have come up with that stuff, and it seems very natural.

Feels like it just clicks. It fits really well with their background. It fits really well with like their their way of working. Sometimes it it's weird, but it sometimes even fits with, like, their body size. Like, there's, like it's just, like, strangely, like, you know, you just won't make marks longer than this because that's where your arm goes.

And and, like, there's a a crazy amount of, like, correspondence between the the creative work that someone's doing and, the person themselves. And I used to marvel at that of, like, like, how do you like, how did you come up with this? But reality is you don't really come up with the art that you you make. You you just make it, and you experiment within certain conditions, and you kind of take take what you learned, what you loved about the certain art that you made, certain, you know, sound in a certain song, the certain way a video looked or, you know, a painting looked or something. Something that you did, that you were like, oh, I wanna do more of that.

And then you do the next thing, the next painting, the next batch of work, the next exhibition, whatever. That kind of rolls those decisions forward. It's almost like an like an evolutionary process, but more like opinionated. Mhmm. Is that the the thing that will cause things to survive is that you could you can practically do more of it.

And also, like, it's just more interesting. Right? And when you repeat that process lots and lots and lots of times, every time rolling forward the good decisions, your favorite part of the last, type of work, you just end up with this, like, highly highly, like, nuanced subjective deep, type of creative output that is is, like, impossible for anyone else to have ever come up with. It wasn't, a good idea. It was just the kind of the repeated iteration and just like the habitus of the artist.

Right? Like, and that that that is almost like it's different medium to medium, artists to artists, you know, time period, time period. But like, it's basically the just the pattern. That's like the way that you make creative work. And, you know, designers might be saying like, yeah. Yeah. That's kind of the way that I work. Or or musicians might say, yeah. That's kind of the way that I work. Right?

It's just pretty pretty pretty the same. Very different than normally how you make software and how you make applications. Right? Where you're, you're really trying to dial into a user. You're trying to find a market. You're trying to find like a, a problem to solve. Right? And and the the fun part about art is that it's not solving a problem. No one's asking you for this stuff. There are very few external constraints.

And even if you're selling work, it's hard to, during at least the formative parts of your career, it's hard to really make enough money for that to be the motivating factor. At the end of the day, you're just you in a room with a certain amount of time and a certain amount of material to to do whatever you want. And and that's kind of like a a terrifying problem for a lot of folks unless unless you really have that experience or that education to say like, well, here's where you are. You're like in the middle of two different projects. You just finished a project.

You're gonna work on one now, and then you're gonna roll whatever you liked about this one forward into the next one. Right? And that that in the middleness kind of gives you the right perspective in order to be productive in that lack of constraints. Right? Because it doesn't really matter, but it absolutely does matter because it's like gonna lead to the next thing.

And so, you see this sometimes with people doing open source work. I guess that's the closest, or side projects where there is just, you know, you're not gonna finish it. And you're not gonna sell it or whatever. But, you know, you like, this is what I did with the state designer, which was kinda like a state charts library, like XState with like an a visual app attached to it, which in building that, you know, at one part of that application, I needed to draw arrows dynamically. And I was like, oh, that's a really interesting problem.

I'm gonna rabbit hole on arrows. And that turned into some, you know, fascinating area, which also led me to work on, a digital ink. Yeah. Pressure sensitive digital ink, which was Perfect Freehand, got really popular.

Jack

So it's used by like Canva.

Steve

Yeah. Yeah. Even even Canva use use Perfect Freehand. Excalidraw, Teal Dry as well. Everall. Yeah. It's like if you need digital ink, you should use perfect freehand. It's it's the best we got. But in doing that, like, I I rabbit hole on this like globs. Like, oh, if if I take two circles and connect them with two Bezier curves, like, you know, based on this old paper.

I guess not that that old Andrew Glasser. Like, then I can create these little, like, chunks and and create the pressure sent the variable width line out of these little chunks of these circle curve segments called globs. So I built, like, an entire editor to to help me understand globs. And then that editor, led to well, it was great. It was like a design tool, but it only used globs.

There was only one primitive, which was globs. And so that led me to think, well, I want a design tool kinda like a canvas editor like this that works with any primitives. Yeah. And that eventually became tldraw a couple of iterations, down the road. And so every time it was like it wasn't that I didn't care about any of these projects, but like it was just natural that, oh, I'm into digital ink now.

That's not where the story ends. Like, not like, oh, great. I've arrived at Yeah. At at the interest and creative output of of my career or something like that. It was like, well, this is this is between something. Right? It came from somewhere. It's gonna lead to somewhere. But for now, I'm gonna work on that. And even though Diltry has ended up being like the long project.

Right? It's turned into a company. It turned into a team. It's it's, you know, powering some incredible experiences across different apps including our own. That problem was big enough that, you know, I can still think of that same pattern of like things that you're kind of rolling forward, building on what you build, within within TLDRAW.

Yeah. And I know that someday TLDRAW is gonna lead to something else. And but but for now, I'm very very happy working on it. So, yeah. I I guess we again, we were talking kind of about, like, the way that kind of professional creative work is done. And and, yeah, I I do think that that's a kind of like way of working that I've rolled into Teal Draw pretty whether I like it or not, that's just the way that it work.

Jack

Yeah. Yeah. I think you were saying as well that product market fit was kind of like almost like chasing you in a sense.

Steve

Well, the the the second secret to kind of creative work like that is that other people have to know about it. Like it doesn't, especially if you're not getting constraints from from outside. If your work is also not discoverable, then well, that then it never will be. Right? And so it's not exactly like self promotion, but it's like kind of just, you know, keep keeping the windows uncovered so that people can look in or, you know, being able to to share your work very naturally, especially work in progress, getting other people over, you know, to your studio and seeing the stuff or, you know, how it's expressed in in in my life and in in software is like just tweet.

Just post about this stuff. Right? Like, especially the bugs, especially like the edge cases, all that stuff. All of the projects that I was working were very visual. And so, you know, the way that an arrow goes wrong is sometimes just as interesting as like when it goes right.

And unpacking of like, oh, this is why the ink this is an improvement to the ink algorithm and here's like the before and after, and you can kinda see the edge detection happening here and all that stuff. Right? Just made for good content, like great content, I think, and really seemed to connect with, developers who either were interested in this type of thing but but not working on it, or people who who had done more like kind of visual problems in the past, or probably I mean, the majority of web development is not that not that it's not that interest like, it's not that fun. I mean, like, I'm I'm very lucky to be able to use, like, TypeScript and React and all this on on incredibly visual, like, problem area. But, you know, there have been plenty in my career where we were designing like forms.

You know? There's a lot of forms.

Jack

Forms.

Steve

You know? And and dashboards and things like that. That's like the normal web development kinda like material. And so I think it was interesting to see from from an observer perspective to see those same tools being used in this like very unusual way with me and and Teildraw and arrows and things like that. But as a result, you know, the the normal build a thing, try and validate it, update it, try and validate, like, you know, the dialing in m MVP type of process that you you see in startups normally.

I didn't really do that because I really wasn't really building a product. I was just kind of working through different ideas. But it was very visible so that people eventually got like really excited about it. And whether I like, whether I was doing it very intentionally or not, like I was, you know, maybe content driven development is like gonna be a thing. But, yeah, by the time that I I started getting more serious about about Teal Dry, it wasn't because like I thought that people were were gonna like this.

It was because people were really asking for more

Jack

Yeah.

Steve

From it. And saying, you know, can I build with this? Can I can I pay you to stay unemployed? That type of thing. And and and when you you know, that's that's pretty good signal of Yeah. Maybe there's something more here. And yeah. So it it it was a unusual path between side project to or in into the company that is now now Tildra.

Jack

Scaling DevTools is sponsored by WorkOS. If things start going well, some of your customers are gonna start asking for enterprise features. Things like audit trails, SSO, SCIM provisioning, role based access control. These are hard to build, and you could get stuck spending all your time doing that instead of actually making a great dev tool. That's why WorkOS exists.

They help you with all of those enterprise features, and they're trusted by OpenAI, Vercel, and Perplexity. And for user management, the first million monthly active users are completely free. Let's hear from Utpal from digger.dev, a dev tool using WorkOS.

Utpal

How it's designed is that you can start as early as day zero. But for us, it wasn't day zero. It was closer to when we first started monetizing because we didn't have a sign up at all. People could just anonymously use our tool. So it was a little later, coincided with when we wanted to start monetizing and, like, we needed a nice enterprise feature set.

If you're open source and you're doing enterprise first, the minute you think about monetization is when you should think about Work OS. To be honest, if we do that again, I think we'd think about that on day zero, to be honest, because, like, we should have done it on day zero ideally. Anonymous usage should be permitted, but you should know who's using your tool. It should be optional, %. It should be opt in, hundred percent.

But it'd be great to have auth from day zero. You don't necessarily think about these enterprise features, but they still lead revenue. And it kinda is a no brainer in that sense. So, yeah, I highly recommend.

Jack

Yeah. Just like an observation just from the way like, actually listening to you talk about this stuff, probably people listening will feel this as well. Because when I spoke to Lou from your team, Lou was talking about, you know, make it visual and show your work, which you've just mentioned those two things. There's obviously a a big value at Teal Draw. But there's also this like kind of I think people find it interesting when someone gets very kind of nerdy, very deep into something quite specific.

Yeah. And just the way you're talking about like the globs. It's like it's fascinating like that you just like found a paper on this, you know, this old paper and and built something just because it's like there's something I I feel like it's I mean, so what Hacker like? Hacker News loves this stuff. Oh, yeah. We all love this kind of like is it something that you think about?

Steve

Yeah. I I do. Like, before I I worked on Teal Draw, I was at I worked for about a year at Framer doing their as a as a design educator, basically, a DevRel for this tool, which at the time was more they've they've began as a kind of a code y prototyping tool, they've ended up as a more visual, like, website ing website builder tool with some great code driven features kinda under the hood. I was, like, right in they're right in between where it was kind of playing in both areas of, like, coding, kinda React powered design, as well as, like, a visual design tool, Canvas, etcetera. And, you know, that I I can do both.

Like, I have design background, also, like, technical brief but intense background. And so I was like, you know, one of their their biggest users and also love to talk, produce content, etcetera. And I I I didn't do well at that job. I couldn't figure out how to make the right content fast enough that interested the audience that we had and that, like, did the job that, I was being asked to do, which is, like, make educational content that also brings an attention. Teach people to use this thing.

Well, it turns out that designers don't wanna code. Number one. And that, trying to create higher production video on a extremely fast moving, software product, startup software product is very risky because, like, the UI could change the night before a launch or something. And there goes all of your tutorials and stuff like that. Right?

And, you know, the for for the right reasons, you know, I that they were pivoting more there and I wasn't being very effective. So that role ended. And I suppose some of the the public work that I was doing, the kind of the work in public work that I was doing after that was a way of almost like, like, I knew that there had to be a way to connect, like, connect with that type of audience. Like, there had to be a way to, you know, to to do this better. I was kinda like, I joked that I was like, some of those open source projects were a way of just processing like the the fact that like I I had not been good at something, you know, like, or like I it hadn't worked out.

And but I knew like, I'm like, this is an incredibly curious audience, like, smart audience, you know, who is who also consumes a bunch of, like, content as well. It's not like aesthetic or whatever, aesthetic. And but clearly, was making the wrong stuff for them. Like, what what does the right stuff look like? And without without being clickbaity or without being, like, kind of go hard on my own personality, like influencer type of stuff.

Like And what I kinda learned through these projects and stuff is that, like, everyone wants a certain level of like edutainment within like, sometimes I watch videos about like Korean factories, like steel factories, and like blast furnaces and stuff like that. There's just a fantastic YouTube channel where where some film student kid or whatever is filming his uncle's factory or something like that. I don't know the actual plan. I have no idea why, but he's not like a it's not like the train nerd guy who's like, I

Jack

love trainers. He's just like What's the channel called? Oh, I

Steve

don't know. I'm sorry. I'll try and put it in there. But I find it fascinating because like, I don't I don't need to know about this stuff. This is not but it is at the right level of like detail and and a curious kind of creator also.

Like, I feel like I'm experiencing this stuff, like, alongside of the the person who's making it. And it's good content. Like, I love I love that stuff. I do not wanna go deeper. But, like, I love kinda just seeing that surface of of of the the complexity and the the of a of a system.

And I think with with technology, it's the same. It's like, I don't I don't really have time to go deep into anyone else's problems. But I do like to kinda like come by as a tourist and and and see enough of the complexity to appreciate it or to develop, like learn something new, you know, in a way of that is like snackable. Right? Like, how does how do fractional indices work?

Right? Like, okay, you can order stuff like one, two, three, four, five. But then if you wanna move the bottom one, the the one to in front of the five, you know, you could do it so that it just becomes the five and everything else changes its index. Five becomes four, the four becomes a three, the etcetera. But in a multiplayer situation, that means you've sent a huge diff across. Right? You you're sending a ton of information to say, change the indices of every one of these shapes.

Jack

Mhmm.

Steve

What if you could only do it with like one shape? One one change. Right? Say, okay. Well, the zero goes in front of the five, so let's just make it six. That's fine. Right? Like, you don't need a one index. You just need a lowest and you just need to be able to sort these things. But what if you move move the like two, you know, index between the four and the five? Well, then you need to do like four and a half. Right? Makes sense. But you

Jack

We had a fire alarm.

Steve

So okay. Wait. So you're saying Fire alarm over. But, yeah, you you can put the whatever the two in front of the between the three and the four as like Yeah. Three three and a half. Right? Yeah. But you can only do that like 12 or or or 50 times or something like that before like you just lose floating point accuracy. Right? Yeah.

So how do you how do you solve the problem which is that like, if you put a number between a different number, you know, like the the three goes between the four and the five. Okay. Fine. It's four and a half. But if you then put the four and a half between the the two and the three or or put another number between Yeah. Four and a half and four, then it's like 4.25. Yeah. You know, and you do another one. Now it's like 4.125. Yeah.

And you can only do that like a limited amount of time before you lose floating point precision. You just run out of numbers. Right? You can't keep splitting.

Jack

And you might be doing this like many times in this.

Steve

It has to be. It has to have such a huge ceiling. Yeah. Right? Because a document might be used for months or for years. Right? And people might just be reordering stuff all the time. So that that problem of like fractal fractional indices. And by the way, the answer is to use some like base 96, string based, you know, representation of an index. Mhmm. Which can be sorted alphabetically rather than numerically.

Jack

And

Steve

so, yeah. Yeah. In Tildraw, like, we have this like, the the indices are go from like, I can't even do this, but like a zero, a one, it went up to like a 99 or something. And then it becomes like b zero, b one.

Jack

And just keep scanning.

Steve

Kinda like that. Yeah. And it's actually much much much more what I just described would, is nowhere near as robust as the actual solution.

Jack

Wow.

Steve

So you're basically like? It's infinite. Like practically infinite. Right? Then, what if two people do that at the same time?

Then you might both result in like the same like whatever a b b one or something like that. Right? So you actually have to add some randomness to the end of that, like called jitter. So that if in a collaborative situation that if two people reorder something into the same place at the same time, they don't end up with the same, result. They don't end up with the same index.

Yeah. And so like this tiny thing that you use in a design tool all the time of like move to front, move to back, move forward, move backwards, ends up having this like super complex, like technical solution for how do you actually do that with all these kind of problem elements that are like not obvious. Yeah. But which I can kind of explain, especially visually in like a Twitter thread. Yeah.

And then you're like, oh, that's interesting. Cool. I'm gonna move on with my day now. Didn't have to like Yeah.

Jack

Yeah. It's like Yeah. It's like a curiosity kind of like Yeah.

Steve

And and if if if if I do my job right with that type of product, well, not even product, just just interesting posting like content. Now you might know enough about how to solve these problems. And if you ever need that in the future, like, that's great. Now you know that I've, not only that that problem exists, but that I've solved it. Right?

For Teildraw, the Teildraw is that much more technically robust. And and maybe also communicating that, like, these are the types of things that I care about Yeah. And the depth that I'm willing to go. And especially with TealDraw that like, turns out that Canvas tools in particular are just full of tons and tons and tons of these little details, little problems, little whatever. Like, that that need in order to solve them completely, like, need to go pretty deep.

Jack

Mhmm.

Steve

And if you go pretty deep and you solve them completely, then for most people, you'll you'll just never notice. Yeah. You know? You would have noticed the bug if the the document crashed because the indices are the same or if the the cursor is not rotating. You're like, oh, it's like I'm rotating the shape, the cursor is not rotating.

Or I'm rotating the shape, but the the shadow is also rotating. And so it looks like the light source is moving, you know, of the cursor or something like that. Right?

Jack

People would never think, oh, I guess actually, when I think about it, Tail Draw has never crashed on me.

Steve

Well, hopefully not. Yeah. Yeah. No. Like Yeah. You have to and I think this is the the kind of the fun part of of making kind of a commodity or an infrastructure product or whatever. Like, it needs to just work. Yeah. And your users shouldn't care about the fact that it's working really well. Mhmm.

They should be paying attention to the things that are special about it beyond like the the base. Is this Canvas working the way that I expect the Canvas to work? Is this bug free? Is this a smooth experience? Is the performance fine?

Like, the the absence of of problems there is is really like the baseline. But for a developer, for a designer, for everyone else, how you achieve that, like, do you achieve that kinda like perfect surface of a software product this complex? Fascinating content. Yeah. And that's that's a lot of what I realized is the right way to to connect with that audience.

You know, the the stuff that I was not doing at Framer that I then did with Teal Draw and the other other projects that I did was like, to try and tell those stories of how how are we building this? Because I I can't just tell someone, oh, it's good, or it's, like, complete or something like that. But, like, that's not very interesting. But it but by kinda, like, showing a little bit of of how these things are achieved and and the complexity involved and the interesting problems there, that's that's where people started really paying attention and really enjoying it.

Jack

Yeah. And I actually just to dig in even more because I think this is something that you guys are really, really good at. Mhmm. And I think it's quite hard. And I mean, if this was obvious, I think a lot of people would be doing it and they're not. Yeah.

Steve

That's true.

Jack

If you if you were to say, like, an example of what would be wrong, if we take this kind of thing, it but or or or I guess that's part of the question as well. It's like, maybe you just wouldn't have posted about this. But like, what would be example of like a bad kind of piece of content and then what would be like a

Steve

good piece? Oh, that's an interesting question. I think a least engaging content is like where where we say like, look, you can it just works or whatever. Like, look. And because like, okay, we just finished a feature like well, I mean, this was towards the beginning. But like, you know, where you hold alt and you drag something and you you make a copy of it. That's just the way that can Canvas works. Right? Is it complex? Yeah.

It is. But like, you don't see that complexity by from the end user experience part of it because that's just like a table stakes feature.

Jack

Mhmm. So it's boring because it's like, well, I would expect you to do that.

Steve

Yeah. Exactly. I'm sure every product category, every every kind of type of software has these type of like in in the text editor word world. Right? If I was building a text editor from scratch, and I was like, oh, check this out. Look, you type, and then you pause, and then you type again. And then if you press undo, it doesn't go back character by character. It goes back to where you paused. You know? Yeah.

You know? And I was like, well, that's I'm sure, you know, now that you mentioned it, that's kinda cool. But like, that that's also just I wouldn't have even noticed that. Like, if you use text editors forever, I didn't even notice that undo redo works that way. But I guess now that I think about it, it does.

But cool. Whereas introducing that as a problem and even showing what it would be like if it did go back character by character, you know, and and kind of making this invisible sort of feature set like visible to you. That that's where it gets interesting. So to to use my alt dragging. Right?

There's a there's a kind of a if you're if you're if you're in a good good app, Canvas app, if you hold alt and you start dragging a shape, you'll you'll get that clone. And if you let go of alt, you won't have that that clone anymore. Right? And if you press alt again, you'll have the clone. Right? So you're you're you're still holding your mouse down. You're dragging. But like, you can kinda like toggle the clone on and off almost. I should have known. By pressing or releasing alt.

This will work in in Figma or any feature complete application like this. However, that feature set intersects with another interesting kind of problem, which is that there when you if if you hold alt and you drag and you and you let go, because now I want the the copy over here, Some people will let go of the mouse and alt key at the same time. And that causes a kinda like physical race condition of like which finger is gonna come up first. Yeah. Because if you if you let go of alt before you let go of the mouse, then the clone will go back to, you know, like you'll lose the clone, essentially.

So you actually have to add a tiny delay, like fifty millisecond delay before you like before you can say, okay, well, user let go of the alt key or something. The modifier key has been been released. In order to prevent those cases where like, you just like.

Jack

From a user, you would be like, why do the same thing and sometimes this happens.

Steve

Yeah. Sometimes the cloning thing just doesn't work. Like I I clone it. I say, okay, here. And then it it disappears. So what's up? And that that's what happened with us as well of like, how did well, like, why is this happening? And then we had to to dig into like, oh, it's like, it's not a software problem. The software is correct. It's doing the thing that it, you know, it should be doing.

It's that my my body Yeah. Has some randomness in terms of like which finger goes up first. And it's too much to ask people to like, just make sure that you let go of the the mouse before you let go of the alt key. Otherwise, you'll lose your clone. And so you solve that thing in in software, of course.

But like, it's a it's a problem that begins, you know, in the in in the skeleton or something like that. And that that becomes more interesting content. Right? It's not just here's the feature, but like, here's what makes this feature interesting. Here's the story that we had, related to it.

Here are some of the constraints that are not obvious. And then even with a feature like that in the canvas, because it is all these different systems that are all working together, shapes that can move, collaboration, undo redo, all that type of stuff, there's always at least one interesting collision between any given feature and and one of the the other features systems in the in the application. So like what if if you're alt dragging something and someone deletes it, you know, and then you let go. Like does it bring back the clone? If you press alt again, do you get the clone?

Or like if someone's changed it, like does your clone also change? Like while you're in the middle of this interaction, all this type of stuff. That's an example of like that feature overlapping with collaboration in a way that, I don't know, like produces an interesting problem if nothing else. Yeah. And all of those things can be visualized and shown.

And sometimes it's it's more interesting to like yeah. Similar to the undo by character by character example, like reproduce the bug in in in public in order to show like, this is not what you expect.

Jack

Ah. Is that kind of how you might lead of it? Because I was also when you were saying this, I'm like, okay, this makes total sense. Like, show this. This problem talk about this this is more interesting. But then how do you, like, actually get, like you like people scrolling on Twitter, like you want to just like instantly get them like interested in this as a problem.

Steve

Yeah. I think the Teildraw's content in this way peaked during a time in Twitter's history where like threads were rewarded and gifts were And so for me having like a thread of gifts was like really, really good at the algorithm. Not great. I think it's still pretty good at the algorithm. Like, but also folks, like, this is the type of content that I would like to see.

Like, I love watching other people's devlogs and, you know, like peeking under the behind the scenes at at the way that certain software is made. Same thing with video games. Like, the video game devlog is, a really phenomenal format of of content related to video games. So I I don't I don't know how like, how do you hook people? Normally, it's by showing the I think I did a lot of, like, showing the bug first, you know?

Yeah. And like the the misbehavior. Or when building a canvas, we also would build tons of debugging tools that visualized some of the behavior, so that we could understand it and so that we could make it make it work correctly. Most recently, this was like, we were doing elbow arrows, which need to kinda like path between, two edges of a geometric shape or something. And that pathing algorithm is is kind of complex.

Right? There's many many segments that it could, you know, it could go up and around and back and, you know, this way. And so the the debugging tools that we created for that were like super complex and interesting and like visually interesting. So sometimes the the threads would just start with with like that feature turned on so that you could see Yeah. Kind of what's going on.

And, you know, it's hard not to look at that and be like, what? Like, what is like, I wanna know more about that. Like, the, the kind of the skeleton view of of a certain interaction. And it's all I mean, because it's Teildraw, it's like this very simple, you know, normally black and white. Normally, eight to twenty eight to twelve seconds is like the ideal GIF length and stuff.

And, you know, aesthetically, it even though it looks lo fi, it's like good looking lo fi Yes. And stuff like that. But yeah. I don't know. That's the type, like, type of content that that seemed to really connect with people and get them in.

Jack

Yeah. You mentioned kind of like that Teal Jaws is good looking, and it is Very good looking. And you I I also like on another show, I think it was on Latent Space. You were talking about like how you felt like there was when you were starting, you felt like there was a lack of like good taste. Mhmm. Well, I don't know if taste was the right word that you used, but you were talking about how there wasn't I think it was taste. You said that wasn't just about features of other things. It was like

Steve

I think especially from, like, a value proposition perspective as like a developer infrastructure tool. So it's Tiltraw is an application, tiltraw.com. It's also an SDK, tiltraw.dev. You can use this to build on top of the canvas that we've built. Maybe throw away our UI and build your own.

Maybe keep our UI, but, like, add stuff to it. Same with shapes and can like, canvas content. The canvas itself is like just a React app all the way down. So the components, each little shape and drawing bit, can be a normal web React component. So you can make interactive stuff or to do lists or charts and visualizations and stuff like that. It's a big tell.

Jack

No one else is like that.

Steve

Yeah. Yeah. That's very, very unusual. That is, that was a a strange bet that that was even possible. Like like a high performance, high ceiling, Canvas app that that used React as like the, the the rendering engine.

We've had to solve some insane problems related to to making that work. But, as a result, you can just put anything on that. Right? For teams who wanna build on a canvas, it's not enough to say, like, we've solved these these problem. Like, we we solved the, like, the high performance side of it or or the we've solved the browser compatibility and the mobile compatibility, or it's a it it just does the the the things that you need to do from a from a technical perspective.

It's also a lot of, hey, there there is no solution to some of these problems. Mhmm. Like, some of this stuff is really, really subjective. Like, if you wanted to build this yourself, it wouldn't just be a technical challenge. Although, it would be a very big technical challenge.

It would also be like, you'd be sitting down with your designers and your developers, and you'd say like, do we want our arrow labels to be in the middle of the line or at the end of the line? Yeah. And how close to the edges, depending on the arrowheads, do we want the arrow labels to be? And also, like, if the if the arrow label dimensions change, thus that the the label would overlap with the arrowheads, like, do we want that, or do we wanna collapse the compress the width of the the label?

Jack

And now elbow arrows.

Steve

Yeah. They want an elbow arrow. It's not that and and the worst part is that this all matters. Is that like this will have a meaningful impact, especially in in the aggregate over, like, whether your canvas feels good or not. And it's just like, man, in order to to to build something like TealDraw, it's not only do you have to solve the the technical problem and the design problem, but it's also like you have to have like, alright, let's look at how everything else is done.

Let's prototype a whole bunch of different things. Let's pick our favorite. You like, it is a matter of like, it's it's not like I was raised by arrows or something like that. Right? But it's it's like I've spent a lot of time thinking about this.

And the and you do want you you would want to hire the person who has that, like, extremely informed opinions about a very narrow subject matter that's gonna matter for your product. Yeah. And there just aren't that many people like that. And there's certainly fewer people like that than products that would like to have a canvas in them. And so I think part of our value proposition with Tildraw to to developers is not only does it work and do people like it and is our pricing, like, appropriate and all that stuff.

But, like, we are the people. I am the guy that you want designing your arrows. Right?

Jack

Yeah.

Steve

Like, this is the team that you want working on this problem. If you could hire us as a dev shop, like, it would be a good hire. But you know what? We got something even better, which is like, let's just distribute this SDK to you. And for for much less than our my contractor fee. Yeah. Yeah. Yeah. You know, like, you can have this experience and and pass it on to your users. And that's yeah.

That is I mean, taste is a complicated thing, but even just narrowing it to extremely informed opinions based on time spent in a in a domain and and knowledge of, like, different solutions that what is possible in this domain. Yeah. When it comes to Canvas, we have as much of it as anyone. And probably more than than is what's interesting is that it's more than would be necessary if we only cared about the application side of things. Is that because we're an infrastructure product, because we have this kinda like light cone thing going on where it's like, oh, I don't know.

Accessibility on TealDraw, like, it's not just gonna be one app, but we could be improving the accessibility of Canvas apps, you know, for a generation of software. Yeah. Let's do it right. Yeah. In a way that in an end user application, like, yeah, I would wanna do it, and I would wanna do it right.

But it'd be hard to prioritize because I might also be like, we're not the accessibility canvas. We are the, whatever, AI tutoring canvas. Right? Like, so let's make sure that we're focusing on the the value propositions that we have to our our customers. But in Teildra's case, like, is the value proposition.

Mhmm. It is the, like, not only have we chased all the rabbits down every rabbit hole and and made the shadows rotate with the cursors and all that stuff. But also like, your users aren't gonna crash the app if they move something forward and backward, you know, 50 times. Or, you know, and and that we've we've hit all of these these issues and that we've made some very informed subjective choices about like how the canvas should feel in a way that is consistent and should be predictable and and all that, which is very hard to do. Yeah.

But in the result, you have a nice nice canvas. Yeah. Yeah.

Jack

Yeah. It's really interesting. It it just makes sense. It's like you go really deep on a topic on topic like a problem. Mhmm. And then also talk about how you've gone deep on that problem and then it's like kind of you show that people that's the content people because people wanna trust you and also you live up to that trust because you have thought about all these things.

Steve

Yeah. It's I think I would be doing it anyway of like sharing those stories because I think they're interesting. But they're it turns out to be very aligned with like, in a practical sense, like like deal flow for us, is that when a product owner is like, hey, you know what? I think we should, add a annotation tool to our to our our our application so that people can draw on top of screenshots. Does anyone wanna do that?

Or, like, can we even do that? You know, estimate this or whatever. That someone on that team would be like, oh, you know what? I I know a guy. You know?

Like, I know a team who's working on this, and then we could use this like, give me an afternoon. Let me let me, do a proof of concept here. And that sidebar, but that that, like, time to first prototype is is definitely one of our kinda, like, key goals in the design of the, the developer product of, like, how long does it take someone to, like, wow their boss with, something built with TealDraw. It's actually very short. But, yeah, like just and and so that, you know, and that might lead to a deal and lead to a sale and, you know, lead to a line going up for me.

Yeah. Yeah. Know, it may have started with me posting about some random, you know, bug that, you know, before and after. And and here's the bug that that happened in in Tildraw. Or here's the complexity of of one of the features that we added in Tildraw.

And like that that may have been the seed of of that that deal flow. Right? It's also led to a lot of our hiring of like people wanting to work on those types of problems and wanting to work with people who care that much. And on a product where that actually is aligned with the business rather than being like a distraction, which unfortunately it is most of the time. And so again, like I would be doing it anyway, but it turns out to be incredibly good for the product.

Yeah. There's there's like no way to way to miss if you're, building a developer tool and, and talking about like not just what you offer, but but sharing your expertise, suppose. And like Yeah. Reinforcing that through through the stories you're telling about your thing. Yeah.

Because yeah, you you wanna you wanna feel like you're essentially getting expertise for free. You know, when you when you choose a developer tool. Like, I'd love part of why I love using React is I'm like, well, that's made by people who really care about this problem and who felt like, you know, from the very beginning that this this needed to be solved and this, you know, that there must be a better way type of thing. Right? And who care way more about the details of that problem of, you know, how do you efficiently put, like, together, like, parts of a website and update them when things change.

Like, I've gone way deeper on that. Like, I have a lot of trust in that that engineering effort and that, API design and all this stuff in part because, like, I I've identified the people who made it so well with, like, that problem space. Mhmm. Right? Like, if anyone's gonna figure this out, it's, you know, it's these guys. Yeah. I I hope to be that for for cannabis. But, yeah, it's it's an insanely hard problem. And but I I love it. It's like, I really do.

That's It haunts me all the time. Yeah.

Jack

Yeah. That's it's it's seriously cool. Steve, thank you so much. That was incredibly interesting. Have you got any shout outs or anything you wanna do?

Steve

Yeah. I mean, if you want to follow along the journey, you can follow us at TealDraw on on x, I think, on blue sky where tealdraw.com account. If you wanna try out the product, it's at tealdraw.com. This is like the end user demo. It's a very good whiteboard. It's free. It's essentially a marketing project. Although, it's very popular.

Jack

Very good. And you have users now.

Steve

Right? Yeah. You can also log in for the first time. Yeah. It turns out you can do your series a without a landing page and without letting people log in. You can just sync this up. Thanks. Yeah. And if you're a developer and you wanna work on this type of project or just wanna build something cool with TealDraw or or see how it works, that is tealdraw.dev. And get started for free, all that.

Really great community on Discord as well. So, yeah, follow us on social media, teildraw.com to use it, teildraw.dev to build with it. And, yeah. Have you built anything with Tildra?

Jack

Not. Not yet.

Steve

Well, later today.

Jack

Later today. Okay. It'd be good. I'll it.

Steve

I'll check it. Definitely.

Jack

Cool. Yeah. Amazing. Thank you, Steve, and thanks everyone for listening.

Steve

Thank you. Okay.

Transcript source: Provided by creator in RSS feed: download file
For the best experience, listen in Metacast app for iOS or Android
Open in Metacast