Skip to main content

about 3 years ago Syntax Podcast

Supper Club × Zach Lloyd from Warp

Wes Bos

Wes Bos Host

Scott Tolinski

Scott Tolinski Host

Topic 0 51:41

Upcoming Warp features for team collaboration and knowledge sharing

Guest 2

like, share commands and share terminal knowledge. I think that'll be really valuable.

Guest 2

I'm using the regular None of their clip art shows up. They're gonna be like, oh, this is a broken

Guest 2

Those are 3rd party library. So on Mac, we use core text, which basically, like, you say, like, lay out this This, string and it does, like, the complicated stuff around, like, There it is. Text shaping engine.

Scott Tolinski

Yeah. So first and foremost, what kind of computer and mouse and keyboard do you use? I'm on a an Imac.

Guest 2

early summer, something like that, which I'm I'm excited to see how if we get if we can get teams to start using warp together as a place to, And so, you know, you lose a lot of stuff that you get for free This is more theoretical than, like, proven for us at this point. And, like, I think the the biggest challenge text areas and scrollable areas and and recs and drop shadows and, like, All that sort of stuff.

Topic 1 03:31

Discussion of building Google Docs - client-server architecture, offline support, code sharing

Guest 2

cross compiled for the web using GWT Developers make Completions and auto suggestions and syntax highlighting, all that stuff just, like, work out of the box, but, like, really, let's make the interaction feel Key events, mass events. Oh, yeah. You need some sort of API for creating Windows It's awesome.

Guest 2

client model.

Guest 2

all of those apps will run without any

Scott Tolinski

Is when Oh, my gosh. The first version of it, how it came out. 15, 16, 17 years. It's unreal that that even works. So I don't even know what my question is, but, like, how does that how does it work? Like, what's the JavaScript? I mean, I have a direct Question is too damn hard as it were. When I was at Google, I did my Google interview. One of the questions they asked me in my interview was if you were building Google Sheets, How would you handle

Wes Bos

Oh, more. Maybe even more.

Guest 2

row 5,000, which is make a spec and let people,

Guest 2

which it's not that heavily used, but it was like there were there were, You know, Google's in the enterprise software business, and that's like folks, like, we can't move off of office unless, you know, I'm sure I can use this thing all times. And so we moved to a totally, like, Rich

Scott Tolinski

that nothing would go away or that it would all all stay? So That was basically the question is how would you build Google Sheets? What what technology would you build it on? Right.

Guest 2

or a a document, if there's a way to use the generative AI to help me become a better singer, a better musician.

Guest 2

Yeah. And then mainly for, like, you essentially you I'm not sure if you read the notes or not, but did you come with a sick pick? I don't know. It's just gonna put put put me in the bucket of being an annoying person, but I so I'm in New Mexico, and there's no gym So the way I get I don't know how describe it so much how it works. It's like at a very high level, there's, like, a very rich You know, the way I sort of think about it is, like, it's the it's the easiest place for developers to write apps for each other, traditionally, has been the command line.

Guest 2

It's moved to being, like a canvas. And so Woah. You just, like yeah. You just Draw And, like, the thing Like, it knows how much weight I should be lifting.

Guest 2

Like GWT or GWT. I don't know if you guys a ton to I guess, in a couple ways. So one is, like, the apps have become For this type of app, like, the terminal actually is somewhat performance intensive. Like, you know, rasterize like a like a PNG I built actually,

Wes Bos

Totally. I'm I'm curious about the Google Docs stuff. If we can talk about that real quick before we get into work, just because I'm I'm always been fascinated. Donated. Google Docs has been around for, what, like, 10

Guest 2

in the browser.

Guest 2

1st joined Google, which was in 2007,

Scott Tolinski

the persistence

Guest 2

server now.

Guest 2

We sort of, like, on the sheet side, And that's because

Scott Tolinski

that if you refresh the page,

Guest 2

Richer over the years. Like, when I started on Google Sheets, art and, like, build on it. But I just think we have to do that because we're otherwise, we're gonna be constantly behind, and, like, no. That, like, didn't actually pan out. But to me, the, Like, the generative AI and ChatChipt and that type of thing legitimately I actually think the 1st platform we're gonna focus on is the web, which I think would be interesting to to to chat about how that would work. Yeah. People really want Linux and Windows, and so we'll we're gonna start moving on this. Like, we we get that that's important. I I that's exactly what I was gonna ask next, which is We have a bug fix coming for you, Wes, around the top of the background. The background stuff? Yeah. That's around background stuff. Like, we've been working on that. So, yeah, thank you both so much for having me. This Super fun conversation. Cool. Thanks. Thanks so much.

Guest 2

it was much more of a client server model where it's like, If you were to type in a formula, you would you would essentially make a sort of XHR to the server. The server would do the calculation,

Guest 2

And so, like, if you run Google Sheets locally, like, there's a whole calculation engine, the rest of the platform API. So it's like you need some place to get event information from. Right? So it's like Mhmm. And WebGL, and is Used it a bunch. I'm not skeptical.

Guest 2

it also kinda blew my mind. I was like, how is this possible that that that you could even do

Guest 2

Much richer and then I also Rust plus, like, actually directly interface with the With the graphics, it all translates pretty pretty quickly. I don't think that's gonna be the hard part.

Guest 2

I would say multiplatform from the start.

Guest 2

all of the data model code, all of the business logic?

Guest 2

A spreadsheet The other interesting, you know, sort of big change was, like, there's on the web a move away from HTML rendering, and that happened And then, you know, for the last The And so, like, the short answer is, like, we're behind. So we we need to sort of do, The AI stuff, so Warp AI, we did a, Engineering lead on the Google Docs suite.

Guest 2

Send things back.

Guest 2

it's a big engineering effort to make that work because you're basically having to reinvent a bunch of the stuff the browser does Oh, yeah. Right. Yeah. You need to test it. You need, you know, you need to do text layout like Canvas. At least when I was honest, it only did, like, single It's so hard on Canvas. Yeah. Yeah. So, like, it's, you need to redo selections. You need to do accessibility. Like, all that stuff.

Guest 2

code We built like we have an actual abstraction or a code, which is like a sort of UI framework, which has no dependencies at all on the terminal.

Guest 2

It's run natively on Google's servers because you have, like, API endpoints for these things. Yeah. And then they actually and this is even one of the crazier things. Like, it's translated And, you know, GPUs are really Good at that? Like, there's not that much code right for it. So, like, the actual, like, put pixels on screen code is not very much.

Scott Tolinski

So is is there a quick answer to that? Like, what is the right answer for them? For that kind of that connection? How does it work? So I don't know. I'll say this. When I when I

Guest 2

so just render row 5000 to 5,050, But, where the the terminal commands is it starting to do that? This is not live, but this makes this is, like, stuff that we're working on. So there's there's, like, can you make the suggestions context aware is kind of an obvious thing? Can can you We can't just use them 1 to 1 though because we're written in Rust and and those specs are in TypeScript and they're dynamic.

Topic 2 52:21

Guest uses iMac, Microsoft split keyboard, VSCode

Guest 2

I'm what's it called? Sub pixel Yeah. Sub pixel rendering. Yeah. Sub Sub pixel rendering, which we're like, do we wanna support that or not? We ended up we didn't support that, but we did support something that's, like, pretty good because that like, you know, developers have these gigantic screens that are not always retina, and you you kinda have to make the text look good everywhere. And if the text doesn't look good, I I feel like People aren't gonna use the product. Mhmm. Yeah. Especially when terminal is mostly attacks. Yeah. Yeah.

Guest 2

mouse, and those clients have become And that's done through a series of draw calls and, like, you know, there's you can get a nice warp terminal that's That that's literally that's what it's gonna be. Yeah. That that's that's coming. Like, I'm friendly.

Scott Tolinski

Yeah. That's cool.

Scott Tolinski

Oh, yeah.

Scott Tolinski

Yeah. Pumping on somebody's speaker. What about Text editor,

Scott Tolinski

if if you were to, like, start a A new project today that wasn't a terminal project.

Scott Tolinski

Like, what kinds of what kinds of topics would you be interested in? Just something interesting or fun to you. Like, if I'm starting a like a company or just like a fun, like, thing that I wanna work on? Just a fun project. A fun little coding project. That's interesting. So, like,

Guest 2

You You know, for a while, I was using, like, a mechanical keyboard, like a Keychron, and then my wife was like, this thing is just so annoyingly loud. Yeah. Please can you please use it's a feature that I'm super excited about. Awesome. That's great.

Scott Tolinski

Is it low profile? What the I like the low profile. Low profile.

Scott Tolinski

Yes. Yeah. Wow. Very common. Yeah. So since you've worked on a lot of different, like, types of projects,

Guest 2

Versus Code.

Wes Bos

theme, and font. I'm in

Guest 2

I don't know. I think I'm just use like, a default.

Scott Tolinski

Can you please use something else? I know. And it's Wes and I really liked mechanical keyboard. I like them to use them, but, like, we both record a lot of video where we're typing. And if that clicking is in the typing or in the videos, yeah, that's that ruins your video. Yeah. Yeah. It's

Topic 3 01:14

Guest intro - Zach is a software engineer, former Google engineering lead, Warp founder

Guest 2

for a long time there, I ran Google Sheets and make people more aware that WARP exists, we're hiring for that too. So my shameless plug is All around Warp recruiting. Is that allowed? Absolutely. That's a great one. Absolutely. Yeah. Okay.

Guest 2

Probably, is more of a chat style interface, and so it's it's in it has some cool integration points where, Like, if you have an error output, you could just be like, ask Warp AI, how do I fix this? you know, when And is run natively on Android.

Guest 2

I was How how will you Get something like this running in the browser. Right. So first of all, I agree with your premise. Like, I I think development is, where there's a few weeks ago, and that I'm, like, Basically, it's like you can translate natural language into a command, So Glyphs,

Guest 2

reinventing the the terminal.

Guest 2

I now am living in

Guest 2

I guess I would describe myself as an engineer first and foremost, although I've done a bunch of different stuff.

Guest 2

Sort of randomly, the interim CTO at Tyme, you know, do terminal stuff.

Guest 2

So, yeah, I'm I'm Zach.

Guest 2

like, thing career wise I did prior to doing WARP, I was a principal engineer at Google. I used to be the

Guest 2

Northern New Mexico kinda randomly. I live in Taos, which is pretty cool. Oh, cool.

Topic 4 08:50

Google Docs moved to canvas rendering for performance instead of HTML

Guest 2

with Microsoft Office files because, like,

Guest 2

its own whole text layout engine, and that's, like,

Wes Bos

open fine

Wes Bos

the challenges of getting the Ios keyboard to open programmatically,

Wes Bos

Bolding and text wrap and line height. You know? Like,

Scott Tolinski

to how much effort we had to put in on the web to try to get performance to be good. Yeah. That's wild to hear. And it's not really that surprising given that the performance is so good on it, and it does I think part of its success is that it felt Like a native app. Like, you know, people people really feel like they're using Word in the browser. Yeah. But I will say, like, to this day, like, when I talk to people who are in, like, finance,

Guest 2

You know? Because in in the office formats have Change a bunch of over the years that there used to be, like, a binary format essentially, then they moved to an XML based format that's like open source.

Guest 2

Really? So oh my god. So, yeah, this this, we also had a a whole, you know, sort of team around with just, like,

Wes Bos

have to make sure that

Wes Bos

16 year old Word documents

Wes Bos

Yeah. But

Wes Bos

You know, because, like, it will only open when you focus the input. And they were, like, sliding 1 in very quickly and putting it under your thumb and then sliding it out. And Oh, my God. I just love stories like that. I think we should do some sort of Yeah. Yeah.

Wes Bos

I don't know if this is true, but there's probably a guy at Google, and his full time job is working on

Guest 2

Handling conversion from, Yeah. Anytime you build a new feature in Google Docs, it's like, what's the import export story? Anytime Microsoft launches a new feature in Office, like, you're trying to Get Office users to go on to Google Docs. If they come into Google Docs and their first experience with it is, like, they bring in their PowerPoint file and, like,

Guest 2

But the reason that that we did it that way is just, like, it was So hard to get the performance of these types of apps Yeah.

Wes Bos

let's talk about Warp.

Guest 2

then they're not building something cool like What Notion is doing, for instance, where it's like you've integrated all of the pieces of productivity into 1 tool. And so it's it's really it was Super interesting set of product challenges. Fantastic. I'm I'm so glad I asked you about that because that is is fascinating. It's not every day you get to talk to to somebody. I remember for I mean, no. That's that's I can tell. Like, I don't know, bolding. I don't think there's an engineer who's doing just, like, bold.

Wes Bos

or HTML.

Wes Bos

Probably 12 years ago, I talked to somebody who worked on Gmail and he was telling me

Guest 2

That's hard. And, like, if you think Google has has a lot of people working on it, like, Microsoft has, like, 10 times more people working on this stuff. Is there really And then also to people that are actually built on similar technology stacks.

Guest 2

native desktop performance. And so, running tests. For some people, it's their code editor. For everyone, it's like how they write internal apps. It's how they interact with their, like, cloud systems, and so that's why I think it's an interesting place to focus. And then what we're doing is is, you know, looking at it and being like, hey. If you were to The reason, like, we're doing this, like, why is this an interesting thing to focus on?

Guest 2

On Google Docs side, there's still other work.

Guest 2

There's a whole another layer of performance that they could have. Now it's so much work

Guest 2

reaction features that We should talk about the AI stuff a little bit. Working on? Yeah. We should talk about the AI stuff. I also like, I built this crazy thing. I don't know if you guys have seen it where you can where you can put the input at the top. So this was another major complaint people had in warp. And then I built this thing where it's like you can actually do a reverse mode the one of the Google founders, Sergei, was like, by the year 2020, like, I mean, it's it's from No. That was that was, like that's been in all the versions of Warped. So that was, like, I would say the 2, like, core, like,

Wes Bos

about

Guest 2

And they're like and I'm like, oh, you know, I helped build a lot of Google Sheets. They're like, oh, I can't use that because it's, like, it's too slow or whatever. It's like, yeah. They're kinda right. Yeah. Like, it does it falls over it, like, I don't know, 10 tens of thousands of rows. This is very hard to get performance better than that. Wow.

Wes Bos

That's unreal. I I always just think about, like, the Unsung heroes of some of the apps that we use. And there's probably

Wes Bos

Oh, that that's fantastic. I'm really glad that we asked you about that because I've it just blows my mind that a majority of the code is not written in JavaScript

Guest 2

And this was a big source of and it's, like, Scott's such a steep learning curve, and these models are all built on, the section of the spreadsheet that you that you want, and I think that this is gonna become more and more seamlessly

Guest 2

you know, sort of like legacy file formats.

Guest 2

It's it's it's a real stress where, like, in, like, you know, it also opens up Google to strategic risk because if they're like, okay. We're gonna do perfect fidelity with clip art and PowerPoint,

Topic 5 39:38

Discussion of Warp's context-aware autocomplete and integrations with AI

Wes Bos

Sweet. I'm excited to hear that. That's

Guest 2

so I'm And we're working on these core things, and we're trying to go basically in order protocol from the shell to the terminal in a lot of domains could be pretty heavily impacted by,

Wes Bos

or just in regular old thing. Is there Do you guys have plans to Awesome. Well, thank you so much for coming on. Appreciate all your time and

Wes Bos

in in warp right now. So I have, like,

Guest 2

contribute them to open source. And so there's, like, a platform abstraction And Bash has a totally different way of doing this, and Fish has a totally different way. Mhmm. And so that's why it's, like, it's nontrivial to just sort of, like, support And more oriented around, like, actual tasks. Like, how do you be, like, like being, like, I wanna pull logs from this server. And, like, that might be, like, 5 commands or something, API on the computer was gonna be the best way to do it.

Guest 2

integrated into warp, Actually, like, recently, we've started putting a bunch of sort of AI oriented features into it, which I think is

Guest 2

Use AI to help you get more done inside warp. So one is something that we launched, it's evolved You know, terminal is very, very widely used tool. Most developers, and that shell function will fire It's it's not. It's like and, like, honestly, if I were if I were there today, across the client

Wes Bos

the users are requesting them. Yeah. Yeah. That would be cool because I I use

Wes Bos

One question I have and I guess it's kind of a 2 part is around all of the missing completions,

Guest 2

You just use the shell environment that happens to be in there and, you know, with with warp sub shell support, you're gonna be able to use, basically, we're translating like, okay. This would be on roll I I'm super interested in music.

Guest 2

use to, like, and then the only fancy thing that I use is a keyboard, which is a Microsoft split keyboard. Oh, wow. So it's like just don't think the actual language of the the shells. Like, if you want for for doing things, like, for scripting Jing is is not very pleasant, and so I think we could improve on that. We could improve on the configuration mechanism.

Guest 2

And then, you know, the other place I think we're gonna go with this is, like, The, you know, making someone onboard into a a place where, like, their ZSH scripts don't work feels like has actual, like, a fairly well defined in interface called, like, JavaScript client.

Wes Bos

Is there any other,

Guest 2

an update on that. We're actually trying to see this is kind of an interesting application of AI. If we can do, like, Continuous update based on translating them using GPT 4, which I think would be really cool, but that's just part of the strategy. The other strategy is we're gonna do what you're suggesting was, which is, fixing input and output. And so this this was, like, one aspect of fixing output was blocks.

Wes Bos

that. Yeah.

Wes Bos

a JavaScript API, which is then,

Guest 2

I mean, it's like it's almost embarrassing. Like, when I give a demo of it, I'm like and look. Look. You you could you could double click, and and if you hit delete, it deletes the word. It doesn't delete a character at the end of the line, and people developers are like, oh, wow. Like, it's it feels Yeah. So you've really done, It feels like it all between publishing and Google and and all this stuff. So some stuff. I I mean, I also I'm a I'm a law school dropout. Oh, lord. My gosh. At a music studio for a year, which was pretty cool. I I yeah. I've had I have some What'd you do at the studio? I was this music producer's

Guest 2

This is a little bit TBD, but probably And, you know, the client is not just a web client. The client is also like a Ios client and an Android client. And so one of the things that we invested really heavily in was, like, how do you share I'm, like, learning drums. I play guitar. I'm trying to learn how to sing. I think it would be cool to to see, like, how

Scott Tolinski

valuable. It's very valuable. Yeah. It's the type of thing that people like me have always been like, I I just don't get why Why? Why this has taken so long? And so thank you for actually prioritizing

Scott Tolinski

you follow

Wes Bos

NAS,

Guest 2

And it will sort of, like, Have a conversation, and then it will give you commands

Guest 2

and you do that by, like do you, like, prepend your command with, like, the Hash with, like, the pound pound sign, and then you type like, hey. What's the command for, like, you know, tarring up all the files in this directory? It just spits out the tar command. The new thing that we just launched is is, actually, probably almost a year ago using codex where, like, the method for teaching 3 years officially and really, like, longer than that, I've been working on, we're using threads I feel like it the the the hype cycle for AI has been going on for so long that it's like, I remember when I was when I was at Google, and it was, like,

Wes Bos

How will we write that spec? Do you have any ideas? Like, I know Raycast is also built in Rust, but then they surface to us plebeians with

Guest 2

extremely bullish on.

Guest 2

like,

Guest 2

Warp inside of, like, a docker container, for instance, when, I don't know, like 2013 or something. And, like, I feel like kind of as you're saying because it's it's it's of than Rust. Yeah.

Guest 2

and it's I think it's gonna become less oriented around commands

Wes Bos

I have a Synology

Wes Bos

that worked in specifically Fig and on that, I run all kinds of Docker images for home automation and worst. Yeah. TV shows and all that. And I just think, like, how sick would that be if there's a little button that you click and

Wes Bos

what will rather

Wes Bos

A 1000000 things that don't have as good of autocomplete or suggest essentially

Wes Bos

my main question. I a shout out to also one of your support engineer, Danny, It was, hold hold he's holding down the 4 in the completions thread. I visited every couple days. I know. Poor guy. It's like,

Topic 6 46:49

Bullish on AI assistants in Warp to help with workflows and tasks

Scott Tolinski

more AI first. Yeah. Totally. And we're we're seeing that in all kinds of ways. But, You know, the the biggest thing that sticks out to me is just docs for things. Right? You're gonna be able to ask the docs questions rather than have to go keyword hunting and having the keyword,

Wes Bos

it should know

Guest 2

We you know, we're we're one of the challenges with putting that everywhere is just we we need to make sure that we do it in a way that, like, respects people's privacy. It's like all of our AI

Guest 2

it's exciting to see it it pop up in places like the terminal, which, you know, many people might overlook. Like I said, I think the terminal is actually Perfect use case because so much of what you do in the terminal is totally opaque, pretty soon is is support for warp inside subshells. So it's like you can use on work and trying to, you know, build a lasting company around Improving developer productivity starting by Yeah. I think that would be the best.

Wes Bos

clicking where you want your mouse to go, You need to try work. Yeah.

Scott Tolinski

cataloged somewhere. So yeah. No. It's it's gonna definitely change a lot of how we interact Stuff here at none. It's exciting to see,

Guest 2

it's like there's an actual AI being like, okay.

Wes Bos

Was

Guest 2

You know, we have we are working on some features for teamwork and collaboration that I think are gonna be really killer also.

Wes Bos

command line data. So it's like it's a very I think it's a really compelling, really use case for One thing I I love. There's so many little things in Warp where I tell someone if it's just for

Guest 2

opt in on a per use basis, so you're like, I want help with x. Mhmm. Mhmm. I do think it would be a more powerful interface if it was like, probably we will do it in JavaScript or types or TypeScript because

Scott Tolinski

these commands, and then, Potentially, you're running things you don't understand on your machine. You understand? Yeah. And and they they have the times, maybe you're the you don't even understand the question enough to ask The right question so that the thing you're trying to do from a Stack Overflow post isn't even what you wanna do in the 1st place. Yeah. Like, I I I sent you guys a draft of this This blog post I'm working on, like, I think that the the

Guest 2

like, a draft of it. And it could be editing or it could be or it could be generated from scratch.

Wes Bos

It's I I think so. Maybe you can tell me if I'm wrong, but it's we're starting to remember

Guest 2

Oh, I want AI everywhere in this app.

Guest 2

you ask An AI for something, and the AI basically generates,

Wes Bos

what commands you run-in which folders. So, like, If I if I'm running NPM or PMPM run dev in 1 and then I'm run PM NPM start in another project,

Guest 2

And then there's some phase of, like, manual adjustment, and then you execute it. It's like I think I think all of these productivity apps are Gonna have that. Mhmm. And, And, so work I guess one of the important things when we started was, like, we we wanted work to be usable with people's existing shells.

Scott Tolinski

yes. Find you, you know, hopefully, something that's been

Guest 2

Features right now are totally

Guest 2

Given this context, given this command history, We are product tension on Google Docs was like, you know, how much relative efforts you put into sort of porting, like, the import export and and round tripping with, Or if you're, like, Someone who's more interested in growth and helping, like, you know, again, it's

Wes Bos

suggestions when you goof a command up. So the common one for me is like that. Yeah. I wanted to get pushed. And it's like, well, this branch is not set up on the on the remote yet. And it just suggests the whole long string of I I don't even know what it is because I just hit the arrow key and and warped

Wes Bos

The common command that I run-in that specific folder and not just a command that I run often, I've I've tried it many times. It's one thing to get a nice clicky The key in the background, but it's another thing to get the Back back back back. The low the low frequency vibrations.

Guest 2

Google Docs and Figma and Warp and Versus Code is like this paradigm

Wes Bos

The other one is the the autocomplete

Topic 7 13:31

Overview of Warp - reinventing terminal to be more intuitive and work better out of the box

Guest 2

whether they wanna be or not, are in it every day.

Guest 2

that, in our code. Right? So there's, like, you Probably, like, 5% of our code base or something like that is, like, interfacing with Mac APIs.

Guest 2

simplest way of describing is we're we're trying to reinvent the terminal and make it a much better Product for individuals and also upcoming for teams.

Guest 2

And, yeah, it's like I think it's a you know, people people seem to really be digging it, which is cool. Yeah. It was the 1st terminal app that's pulled me away from Iterm, pioneered that. And so, you know, it used to be, like, back in the day when you would render a spreadsheet, you'd render it as, like, an actual HTML table.

Wes Bos

Obviously, Scott and I are are big, Warp fanboys here.

Guest 2

is super powerful because, like, not have to support every single completion ever and then just allow or Some sort of plug in system or be able to consume existing ones? Yeah. It's a great question. It's one of the areas our app's not we're not Crushing at the moment, like so we actually we we use Fig's open source completion specs. So Fig, you know, Fig is a cool tool. It's like they they, They, I think, have done a really good job for the community in getting people to write these specs and, the the the roles that we're looking Or if you're an awesome designer and interested in, like, Windows, I'm not as familiar with the graphics APIs, but but so, basically, like, the Rust app will compile for Windows and for Linux.

Guest 2

build a tool, of, like, running commands. And so Oh. That would be really good based on that technology. That'd be super fun. In college, I had to take singing, I'm not to geek out too much, but there's there's a thing that you do on those types of screens called that we led with, and then we've We've kinda built on them. Yeah. What a what a, concept. Let's make the mouse work.

Guest 2

completions working or your prompt to be good.

Guest 2

The command line and AI actually mix really well. Like, the command line is like a purely text based thing, and these large language models, like, sort of speak in text. Yeah. And then, like, the last thing that we're trying to do, we'll we'll have, like, a pretty big launch around this, and, like, You know, it's like we went to pretty crazy engineering lengths around trying to do that, which is which, by the way, one of the reasons the Warp is built in Rust and is a native app was like is like A personal I use Yeah. We wanna do that because, Like, basically, I have all your completions inside Docker, which is really cool, and your history and your workflows. And,

Topic 8 31:25

Discussion of Warp design decisions like mouse support and inline command suggestions

Guest 2

I'm using this product to get stuff done, and, like, I don't actually want the the overhead in my mind of knowing is this like a terminal feature or a shell feature. I just want, like, a command line feature.

Guest 2

For I think for most people, it's feels like a huge advance to not have to think about, you know, in order to do text layout, you this year.

Wes Bos

Were to make your own shell that even bit a little bit more into, like, the finder territory, I would be all into that. Just like A hover, a photo to preview it. Mhmm. And Mhmm.

Guest 2

that we use to do things like rendering, like, to know, like, you know, warp has a default prompt, for instance. And so we're able to use these hooks to generate that as well. And so, like, We integrate with the existing shells, less intimidating.

Guest 2

ZSH is pretty good. I don't know if you guys are using ZSH, Bash, your failure.

Wes Bos

Totally. Because I have I have I have a course command line power user, Which I only made because people say, how do I get my terminal to look like this? And I go, well and I still get emails because people are like, Well, it kind of looks like it, but the colors aren't there. Well, I'm like, well, there's a theme, but there's a shell. And those 2 things aren't the same. You know, you need the theme, you need the shell, you Need the terminal application

Wes Bos

like I type Do you wanna give us a rundown of what it is and why you built it?

Wes Bos

and the node process is sending text back to the terminal

Guest 2

that has carried over because this is, like, such an archaic, like, setup is really one of the things I care about a lot. Yeah. And that's amazing because it felt like nobody was caring about that, really.

Guest 2

you know, the the, like, the terminal protocol is, like, Really weird and archaic, and there is something called a DCS, like a device control sequence, You have to subscribe, but it is freaking awesome because I just go to my garage.

Guest 2

You know, honestly, my take on this is, like, I really, which I think is a really big deal. So if you you know, right now, when you go into a docker container,

Wes Bos

l l or I'm running a node process

Guest 2

Feels problematic. Although there's different ways to handle. You could fall back. I I do think there's a lot of ways we could we could, we could improve on this. Yeah. Honestly, if you and

Guest 2

through, like, their APIs.

Guest 2

And so, you Not so much the rendering, but all of, like, the core stuff for doing, like, for example, for a spreadsheet. It's like all the formula parsing and all of the, like, Formula calculation and all of the spreadsheet cells, that's all written in Java Yeah. Harpfuzz, if you wanna look it up, it's like a it's like a text But we you know, it has been a lot of work to build, If you're an engineer who likes building stuff that you get to work on yourself or interested in learning Rust, we we would We're growing our team? I guess that's my main thing. If I had to pick 1 thing, it's all viewport. All the scrolling is simulated. Like, as you're scrolling I'm not, like, a crazy theme or faunter, so I'm using, like, a default dark theme in Versus Code. Cool. Do actually, 1 question is, do people use Vim straight from Warp? So, like,

Guest 2

hour right now. Yeah. Right. Anything that's a little bit more rich media than me. Like, I I mean, look. If you have a product idea, I think Nonreusable

Guest 2

We can have the best experience. Yeah. Because there there's weirdness right now in warp around the fringes of this.

Wes Bos

text dumps, especially my cowboy debugging style? It makes it so much easier.

Guest 2

that lets us understand what's going on. And so we can understand these hooks, and then we can also send back aspect of fixing input was, like, know, we have a real text editor for your input area in warp, and so, like, 2006 more intuitive,

Wes Bos

and you need these plug ins. Oh, you need the prompt. You need the. Is is Warp Ever. Like, do you do you guys ever think about Possibly just, like, giving me the warp shell. You know, like, could we ever do I know you already have your own prompt, and I still use this ZSH prompt, but will you ever just Eat that entire lunch, and I can say goodbye to

Guest 2

Like, we to be anything like tool. And so clip art.

Wes Bos

translating And this is just request

Guest 2

We'll we'll define a shell function that tells warp help with mixes.

Guest 2

And so what what we do is when we initialize your shell, like, let's say, you know, because the terminal starts the shell, we can put a little bit of, like, Magic into the initialization phase. We say, hey.

Guest 2

You know, it's like a little bit of a clutch, and so I I guess back like, originally from LA.

Guest 2

when those life cycle events are happening.

Wes Bos

to my entire shell?

Guest 2

And, like, what we actually do and, again, we I this is we we wrote about this is there's a

Wes Bos

And all that data is being encapsulated inside of a block. And if I kill the process and start again, it's its own block, which I love because I can I can search in a site, a specific block, and it just makes

Guest 2

context

Wes Bos

How are you doing that actually, technically? Yeah. So, technically,

Guest 2

know, Warp blurs the line with a lot of this stuff, which I think it drives some of our users who are, like, really savvy. It kinda drives them nuts, but it's like to objective c for Ios, and so that one code base is used everywhere.

Scott Tolinski

new shells for us. Yeah. And speaking of shells, like, what's your favorite shell personally?

Guest 2

we thought if we didn't make that work, we wouldn't get any usage. And so So the answer is,

Scott Tolinski

what I have to learn what a shell is. I have to learn now there's different shells. I'm Arving and tapered command, it doesn't work. Like, yeah. What would pain. Yeah. Yes. So try to try to remove that pain and try to remove that, like, Incidental complexity

Guest 2

command line, But figuring out how to do the alignment right, So it's like, yeah. But we I feel like there's a little bit of a chicken and egg problem, and we didn't start with that because And then on the client side, you would you would render things in HTML. So you'd have, like, a bunch of JavaScript. You know, Google has all their own internal JavaScript libraries, and so you would render it. And then and, you know, I I think we're we're gonna just so people get it. Like, we're gonna start, the terminal and shell distinction is not something I'm, like, a huge sort of fan of. Like, I tend to think of it as, like,

Topic 9 16:10

Warp built in Rust for performance instead of Electron, allows control over rendering

Guest 2

we ended up thinking that a stack of Built a lot of the current version of that.

Guest 2

There's obviously costs to that. Like, just to be totally totally clear, this is not like I would recommend everyone build every app in Rust. You know? And some of the costs are, like So there's text, and then there's rectangles,

Scott Tolinski

you're trying to get the up and running,

Scott Tolinski

And for the most part, I had experiences where

Scott Tolinski

And the things that struck me is just about everything you just mentioned, right, where

Guest 2

Yep. So why why pick Rust? We basically picked Rust which is pretty cool, but it's like the interaction with it is not very fluid, and I think you could do something much better if if you actually had a more of a conversation with the teacher.

Scott Tolinski

So with with warp,

Guest 2

You know, we have to interface with the graphics. Like, we have to do the hit testing for everything.

Guest 2

a little bit too slow, a little bit too bloated, and that, like I kinda said earlier on, like, my experience from Google Docs has Yeah. Made me very heavily favored. Like, I just wanna pick the fastest possible

Guest 2

You know, when we we just have to

Scott Tolinski

you said this is built in Rust. Right?

Guest 2

You know, developers are very sensitive to the performance in this tool. Like, one of the reasons you use it is because you're trying to get stuff done more quickly because you wanna get do everything from the keyboard. And so, UI renderer.

Guest 2

kinda do everything ourselves to some extent. Like, we had to build a UI framework Mhmm. That's sort of it's, like, loosely inspired by Flutter.

Scott Tolinski

which I've been on for, I don't know, for longer than I could possibly imagine. So

Scott Tolinski

that experience nicer. I I had to do less work to configure this terminal than I've ever had to do in any terminal that I've used before.

Guest 2

after looking a bit at Electron and WebTech in deciding that it was gonna be

Guest 2

stack for this.

Topic 10 54:02

Guest is interested in using AI for music education

Guest 2

more the level of impact of Something like the iPhone or, like, when Google came out. Like, I I'm tend to be skeptical of these things, but having Has that been, like, a a major challenge? Do you have to build it entirely from scratch? So we we had an engineer join us really early on Who's actually he's the founder of Zed. I don't know if you've ever talked to Zed or seen them. And so he was also the creator of Adam, and and, especially, we had problems on people who have non non, retina or non, like, I was founded another company called Selfmade, which was a venture backed start up in a totally different space, from what I'm doing now.

Guest 2

by the generative AI stuff. And, like, I'm I'm specifically interested if I could have, like, a music teacher

Guest 2

I think there's gonna be a ton of innovation in this area. Basically think the the AI stuff is gonna change so many different Precommand and post command where you can add a shell function, UI CJK characters or something like something like that. It's like you wanna use a library for this, and so, you know, if you looked at, like, what developers do in the terminal and build a tool that just helps them do that as well as possible, You would not rebuild the current thing that everyone has been using, which is, you know, essentially, like, a thing that hasn't changed in 40 years. It's like emulating an old Moving? Oh, yeah. Oh, man. Yeah. Yeah. I mean so what what's I'll say one thing about it. So it sounds ridiculous, but, like, Those are coming out sometime It's like I'm trying to think of the analogy. It's like in a video game if you, like, invert your controller or something. Yeah. It I've it feels like the type of thing I would actually really like. Yeah. You should you should check it out. So that that just launched.

Wes Bos

Like, obnoxious

Guest 2

seems like it's gonna be client side apps. And so, like, extending their tools and, like, have all sorts of internal tools, and so we just need to have that. We just haven't done it yet. It's It's probably coming, I would say. Yeah. I I we will have that by the end of this year. I'm pretty confident, if not sooner. And

Guest 2

Every car will be self driving, and it's like, well, And then the big, are familiar with that. It's kind of like I don't think anyone in the world actually use it probably besides Google internal at this point. Mhmm. But it's very important for these apps to share Yeah. Like, I'm super crypto skeptical, and I I also have been like So now one one other interesting thing is, like, these apps also heavily use,

Wes Bos

Which I think it's funny. You talk to a lot of people who are just like, nah. It's you know, and it's it's because they're they're burnt on especially I think they're burnt on a lot of the crypto stuff, but, like, oh, my god. I think it's a different World man. And a lot of the same crypto people, like, pivoted pretty hard into AI, and they've, like, done it in, like, a, you know, thread below type of way. Yeah.

Scott Tolinski

which I'm not a a talented singer. I'm a pretty bad singer, and my my range is, like, one Octave, and it's pretty low. Mhmm.

Scott Tolinski

But in our singing class, what they would do is they would present you with a sheet of music that you've never seen before, and you had to sing the intervals, essentially it. So it was less than, like, the quality of your voice and more or less can you hit like an ear training. Yeah. Can you hit these intervals?

Scott Tolinski

I would have loved to have some sort of an app that was not just me practicing the same songs over and over again because when you practice them, you kinda get them, And then I'd get to the exam. They would say, hey. Sing this interval, and I'd be like,

Wes Bos

AI

Scott Tolinski

like, you know, just

Wes Bos

domains. Yeah. Yeah. We're we're pretty excited about it as well. It's it's kinda interesting because we don't wanna come off as, like, these,

Wes Bos

bros? Sure.

Wes Bos

So the last section we have here is sick picks and shameless plugs.

Topic 11 58:39

Guest plugs Warp hiring - designers, engineers, growth

Wes Bos

Answering all our questions about Warp. I'm pretty excited about the the future of the product as well. Yeah. Super excited. Thank you both for having me. Thank you for using the product. Thank you for giving feedback.

Scott Tolinski

for a full archive of all of our shows. And don't forget to subscribe in your podcast player or drop a review if you like this show.

Scott Tolinski

Head on over to syntax.fm It's expensive.

Guest 2

Especially if you're, like, a very product focused engineer, Warp is like, we're a small team, but, like, we're still hiring for engineers.

Topic 12 00:00

Intro to Syntax Supper Club podcast with guest Zach Lloyd, creator of Warp terminal

Wes Bos

Boyd on today, who is

Announcer

I sure hope you're hungry.

Wes Bos

Welcome to Syntax, the podcast with the tastiest web development treats out there. Today, we have Zack

Guest 2

Welcome, Zach. Thanks so much for coming on. Yeah. Thank you. Thank you both for having me. I'm excited to be here. You're welcome.

Announcer

so buckle up and grab that old handle because this ride is going to get wild.

Wes Bos

This is a terminal. We did an entire show on Warp a couple of weeks ago.

Wes Bos

creator of Warp.

Announcer

Wash those hands, pull up a chair, and secure that feed bag, because it's time to listen to Scott Tolinski and Wes Bos attempt to use human language to converse with and pick the brains of other developers. I thought there was gonna be food,

Wes Bos

Now we have Zach on just to talk about Warp as well as

Announcer

Hoo. I'm starving.

Wes Bos

all other kinds of interesting stuff. I know he's he's worked on quite a few things.

Announcer

the Syntax supper club.

Announcer

This is

Topic 13 23:22

Plan to compile Warp to WebAssembly for web version, challenges around threads and text layout

Scott Tolinski

which is a bummer. But And it and it's I'm sure it's A little frustrating on your end for just how many people are probably like, Windows win? Windows win? Linux win? You know? Like I mean, those are our like, if you look at our Our open GitHub issues, those are the top feature requests. Windows Linux.

Guest 2

Mac specific

Wes Bos

sorry, Sorry. What's the rendering engine? What's it called? It's not WebGL, obviously. It's, It's metal. Metal. On Mac on Mac, it's called, metal. Yeah. So you'd have to reimplement the 500 lines of metal in whatever the windows is, or how does that work? Yeah. So Windows,

Guest 2

You know, interface like like, we have all this custom code around, like, Mac menus, for instance, that's not gonna apply on Linux or Windows. So that that type of stuff,

Guest 2

sort of like vectors of data for for, like, rendering Less weird than in a normal like, your standard terminal. Those were the 2 ideas Like, some of, like, the functions are different, but, like, The basic, like, you know, you're passing in, butcher it. So, yeah, maybe that that would be fun. Yeah. I mean, there There are, like there's an app that I'm using to learn drums, there's so much preexisting

Guest 2

the way that we package the the code Yeah. Like, that's all performance reasons I would probably be, like, pushing to use WebAssembly like, understanding text and giving you text, which is The interface of the command line. And then these models are also all trained on a ton of that you can sort of directly, Piece of hardware that doesn't exist anymore, and so we're we're trying to fix some of it, like just, like, re totally rethink it. And, you know, what that means from user experience Perspective is like we're trying to make it, you know, I I think it's, like, basically, the paradigm of how you work with most Productivity apps is about to sort of drastically change to be we'll use, ton of super cool design challenges at Warp.

Guest 2

The hard part will be, And so a lot of important stuff still happens in it, whether it's like building code, it's good that users express what they want. I'll say that. It makes it very clear. Like, this is a thing that we we need to, we need to invest in. And, like, you know, like, half of our team is working on these types of things just in case there are warp users who are listening, who are like, why don't we have this? So So it's like we're working on this. You know, another really cool thing that's coming out, you you you need some sort of it's just much more accessible to a larger number of developers than, that out.

Wes Bos

And when you when you want to eventually support Windows,

Guest 2

team within Warp Like, the the way that we, like, hook into the shell is, like, like, suggests, you know, this is the next command.

Guest 2

So probably Open GL. And, like, the actual, like, Open GL, like, Shader language is actually not super different from metal. Like, maybe the coordinate system might be different.

Wes Bos

how do you take this rust and,

Guest 2

And so what we what we'll do is we'll substitute So there's definite attacks, but it's It's gonna be done out of the browser. Like, we started we started native because most terminal usage stays native, and, like, we wanted So it's like I think going further down the stack makes a ton of sense for us. We're not there yet, though. Yeah. Yeah. Was so is the blocks thing was that, Like, one of the core ideas you had initially,

Wes Bos

When we I first chatted with you, you're telling me how it's built on Rust. My I immediately went I was like, well, my prompt uses, like, a custom font, and then there's emojis inside of it. And then for I use, like, that The power line font for special characters. Oh, gosh. They're all different sizes, slightly different. You know, even sometimes you go into Photoshop and you type some text And you try to vertically align it. Like, that's not vertically aligned. It's because the font is a little bit funny.

Guest 2

and images and rectangles, in the client Wow. That is in JavaScript.

Guest 2

we're we're gonna spin up a platform

Topic 14 18:16

Warp uses custom UI framework inspired by Flutter, may open source it

Guest 2

It's not as crazy And I think it's a tool that, Other stuff I've done. So I'm a 2nd time start up founder. I did,

Guest 2

now I'm, like, guessing, but maybe it's, like, 10,000 lines of code, which is

Guest 2

We're able to get away with that because we don't support everything, every UI framework supports. Like, if you'll notice right now, there's no animations in warp. That's because we haven't built.

Guest 2

And so it's like if you wanted to build any kind of UI, really, like, you could do it. You have But in order to, like, do that, it's like, I think, you know, you have to find a way to do it where it's like people feel like you're not Sucking up their data or doing something, like, nefarious like that. So we've tried to be very careful around that. Is there is there anything else that we haven't talked about that you'd like to touch upon before we move into the next section? No. I think I think that we've we've we've covered, like, I think we've covered a really And that was Wow. Wow. That's partly driven by, like, a product requirement around, like, supporting offline for enterprises, Shells don't support this natively. And so what we ended up doing was, Probably a little bit more like Copilot where it's just like

Guest 2

And then there's images, and so you need to be able to sort of, that whole like, accomplish that whole task.

Guest 2

sort of UI.

Guest 2

So we didn't start totally, totally from scratch,

Wes Bos

and I scrolled on something. You have to build the whole scrollable area where you listen for the mouse

Guest 2

Yeah. This is a thing we would actually like to open source. We just kinda haven't it's, like, not quite mature enough, I would say, but I think it's generally Well, I was just going to ask that because changes that we wanted to make out of the gate were, You know, it has to do a lot of sort of text rendering and text layout. It has to read a lot of data potentially.

Scott Tolinski

as you might think. Wild. It's still wild.

Guest 2

which is to to do everything in a terminal app, which is kinda wild. And so if you think about it, like, well, what are the UI primitives you you actually Need, you need, that it will not show up. Like, the terminal is able its control characters, the terminal is able to parse this. And so we have a little bit of a communications

Wes Bos

you just start painting triangles on the screen

Guest 2

like, figuring out how to do text really well was pretty challenging, and, actually, there's it'll fire, like, when a command starts and when a command ends, basically.

Guest 2

You know, have, like, certain UI components. And so it it it slows us down in that respect, but it, coming up is to actually make the the terminal work As a place where teams can share knowledge and share onboarding information and sort of, you know, jointly become more efficient. Wow. So that's kind of like a long winded answer. It's it's Available on Mac right now. It's a native app. It's totally free.

Guest 2

But there is like a it's not totally bespoke in the sense of, like, we built a, like, terminal and the server.

Guest 2

essentially. So Mhmm. And rectangles can have, like, rounded corners. They can Backgrounds, they can have gradients, they can have drop shadows, but it's all just like a variant on a rectangle.

Guest 2

The UI framework code is probably on the order of, like

Guest 2

just by using the web platform, and then you lose a lot of stuff that you could just do, like, where there's the most usage, which is we picked Mac, but it had to be desktop. I don't think that There's as much heavy terminal usage in the browser. No. How do we get there? So this is gonna be interesting for us. So we we picked a stack with which we, you know, we wanted to be, like, our auto update is gonna be a pain. I have a feeling to to redo this type of app, so I I don't know that They'll they'll do that, but Yeah.

Guest 2

And so metal is like max graphics APIs.

Guest 2

You know, we we use we run our own shader code. Right? And so the shader language that you use for good amount of stuff.

Guest 2

And, like, we probably have it's like on the order of 500 lines of graphics code,

Guest 2

or an SVG.

Guest 2

you know, third party Rust based UI library, and there are a bunch of them. We kinda looked at this path too.

Guest 2

Interesting stuff we've written about with, like just to get

Guest 2

to build the the like, to get a working anywhere near me, and so I got a tonal. Oh, yeah. Heard of this? I have a tonal one. You You all you have at Tono? It's the best.

Guest 2

an NPM install for and, like,

Guest 2

Again, like, I would not recommend this for everyone, but this is, like, my battle scars are, like, I really I think at the end of the day, that is a A really nice position to be in because we're you know, it's like we sort of can can get the app to work the way we want from a product perspective. Totally.

Wes Bos

And you have to build every like, I just went to the tabs Let's start with, give us a rundown of, who you are, what you do, where you're from, all that good stuff. Okay.

Guest 2

that we're using on Mac is is metal.

Guest 2

and he's, like, he's a he's a great engineer. He was at warp briefly, and he had done some work on this UI framework, which we were able to sort of, like, pick up, adopt, I'm, And it it's cross platform And on, like, Linux, for instance, like, Is this in the shell? Is this in the terminal? Where are my completion? It's like, I just want a thing that works, and so that's kind of my philosophy on it. Yeah. Truly, that's the been the one One of the big downsides of anybody trying to pick up terminal for the 1st time at all Yeah. Is,

Scott Tolinski

Prioritizing the user experience above everything else. And so I think from a user experience perspective, it lets us build a, Like a better product. Yeah. So you mentioned that UI I layer is that you said it's it's totally custom and that that's what does all of the the text rendering and everything like that.

Topic 15 02:30

Zach has worked at Google, startups, music studio, law school dropout

Scott Tolinski

my dream for a bit was to see if I could be a, like, a rock and roll. Yeah. Yeah. You know? Me too. I went to school for music. So and and I went to school for basically music engineering. So that was kind of my wannabe career path before I found out that I A really loved website. So yeah. No. That it's such a good mix, though, because audio, DSP, all that stuff, it it works so well with the web and Yeah. I was in I was in Pro Tools all day. I don't know if they still use Pro Tools or not. But yeah. That's They do. Yeah. It was cool.

Guest 2

I would, Interacting with the terminal PTY happens on its own thread. And, like, that type of thing, I don't think it's gonna translate 1 to 1. Right. Yeah. But the basic idea is, like, we'll we'll we'll go Rust to web assembly, Meaning, like, we don't support every prompt perfectly.

Guest 2

assistant, basically. So I would set up recording sessions.

Guest 2

I would hang out with artists while they're away and record. It was, Like, I'm a musician, and so this was kinda my

Topic 16 26:06

Warp integrates with existing shells using hooks, allows structured output with blocks

Guest 2

ligatures and kerning and, like, shaping of the characters. And so on the web, There is something called hearth buzz, which is maybe what we'll use, Sure. So WARP is We don't we don't have support. We like, our UI framework doesn't yet support it. And so, like, that's, like, an example of an annoying tax where If we were using the web framework, we could just use animations that come, like, you know, from request animation frame or CSS animations.

Guest 2

Alignment issues on warp. So I I know you must have spent a ton of time on that. We well, if you used to warp really early on, we had it like, one of our top bugs was the text Just blurry, and that's not fun if you're a user.

Wes Bos

Harf Buzz is Probably what we would end up using on the web. I have to give you props for all the text alignment stuff you've done so far because

Guest 2

you know, doing, like, text shaping, text layout, text rendering is really, really involved, you know, I'm really big on just, like, developer products, it's Has different shells expose different hooks for me. Yeah, please. Okay. Creates the remote branch that matches your local one, and I it's so good. I just find it so handy. I think that stuff adds up. Like, I think if we're, like if we're saving people 5, 10 minutes a day based on, like, Oh, you don't have to, like, remember that stupid Git command because it's like then I'm I feel like that's valuable to to hear that. Yeah. Another thing I'm not sure even sure if this is live yet. Somebody from Warped sent me a demo of it.

Guest 2

For Rust, the plan is to is to try to compile the web assembly.

Wes Bos

Let's talk about, Like the blocks and everything like that. How does that work? Like, are you

Guest 2

with different different fonts have different properties, and so, But it gives us it gives us complete control. That's, like, one other pro of it. So, you know, say we were to use some, like,

Wes Bos

I've for years of using hyper,

Guest 2

And to to get that, like, we really had to start We're trying to make it work out of the box lot better so you don't have to spend so much time configuring it to get things like kinda flow in the reverse order, and your input always at the top? So that was like No way. That would be see that. Oh, you should check that out. It's like I don't know how people do seem to to like it. It's pretty crazy experience because, like, and, you know, the ideal would be, like, Warp AI can help you construct can you make CorpAI actually understand your own setup? So it's like if you have internal tools or if you have, like you know, you're using G Cloud or AWS, it it can it can Do more than suggest the generic command, but can actually sort of solve your problem. And I think for the terminal, like, this is, like, such a killer use case for this type of technology that I'm Super excited about it. Yeah. There's so many times you go to Google or Stack Overflow or whatever, which basically lets you send back metadata It's like embarrassing. It is. It's You know, I I haven't we have this we have to explore how it's really gonna work, but it's like, for instance, I think things like threads are gonna give us trouble. Like, we're Yeah. I think it's very real. Totally.

Guest 2

but I don't know. This is gonna be like a not a not insignificant

Wes Bos

And I've never

Guest 2

Layout will be really interesting and challenging because you need In sort of the life type like, their life cycle

Guest 2

Like, our priority at the beginning of the company was, like, can we validate these product ideas? Can we get a feedback loop going? Can we get some group of users who are passionate about what we're doing? So, like, there's there's 2 ways you can currently Feels like that Yeah.

Guest 2

it's we didn't initially do the alignment right, And we had to sort of figure out how to like, we had to go fairly deep on that. We actually wrote a blog post on it.

Wes Bos

Everything will be run I, at least, I think everything's gonna be run-in a web browser at some point.

Guest 2

I I don't wanna use the wrong term if it's layout or shaping. It's like engine.

Guest 2

Like like render like, layout happens on its own thread and We have these product concepts that we were really big on, which was like, let's put some structure on the terminal output, and that's blocked. So it's like, You know, with a terminal block, we kinda know where a command starts and ends and can, like, make it easy to do copy paste. You can make it easy Share the output of 1 command. You can search this within 1 command's output. Now you can ask corp dotai about 1 command's output. And so it's a really useful primitive.

Guest 2

It's gonna be around, like, not all of our Rust dependencies are sort of web assembly

Guest 2

for, like, most of the business logic of the terminal. Mhmm. And then we will use WebGL and also for reasons of, like, wanting complete control of the rendering, you have to do, like, the alignment of the glyphs in a very specific way in order to get, like, the the borders not to be fuzzy.

Wes Bos

run into any weird

Guest 2

engineering challenge. But we're We're doing it because I think it's super important, the future of the of the product and the company. It's wild how many things you've mentioned this episode that I've never heard of, like harf buzz.

Wes Bos

the

Guest 2

super high def screens, for a little bit. So I was, like, worked at a media company on their technology.

Guest 2

for the graphics piece, And then we'll have to use, like, you know, the sort of native, like, browser APIs for things like, you know, getting events and that type of stuff. Text You know, most interesting, We want complete control. We don't want control over this. Like, there's no there's no business value for us in in reinventing how to do, like, You know, the worry is, like, when we go to support our next platform or when we go to, like Like, let's say, we wanna add animations, having to like, we just have sort of complete control and ability to do it.

Guest 2

you know, we don't that's not our, like, core strength as a company. So it's like when I say we, like, stuff, But but, like, like, doing, like, the text wrapping, for Sure. Like, Google Docs has essentially its own the way most productivity interfaces are gonna work and I was thinking about this from lines of, like, you need text glyphs. And so, like and, like, initial launch around There's it's also, like, fairly predictable, like, if someone runs command a, that they're gonna probably run command b next, like, a lot of the time, like Yeah. Get get commit, get push. And so we're we're trying to build, like, little bit of intelligence around, like, can you make the auto suggestions better? Eventually, I think the auto suggestions will work again, I think if we had a fully integrated Pretty free like, pretty freely in our app right now.

Topic 17 38:04

Possibility of Warp creating own fully integrated shell environment in the future

Guest 2

probably a lot of people would like it.

Guest 2

And, And, like, we are thinking about that kind of stuff with the blocks, by the way. Like Yeah. There's a lot of value in knowing where our command starts and ends. And, like, for instance, like, I feel like we could do, like, a nice rendering of CSV or JSON data in a way that's just native, that just works, that other terminals would have a really hard time doing because they don't have that metadata.

Guest 2

let's make the mouse work. Let's, like, But, no, other other than that, I think This has been a super fun conversation. We've covered a lot so far. Awesome. Let's move it in the next section, which is a set of questions that we have for everybody.

Guest 2

Like, I I think that that kind of stuff makes total sense.

Topic 18 57:17

Guest's sick pick is the Tonal home fitness system

Guest 2

It adjusts. It makes you feel kinda good when you hit a personal record. And so, like, I I the tonal is my what did you call it? Sick pick? That's my that's Yeah.

Guest 2

It's expensive.

Scott Tolinski

And I'm not I'm at the age where I'm I don't need to be lifting crazy heavy anymore. I just wanna, you know or is that something that evolved

Wes Bos

Plug as many things as you want.

Guest 2

Okay. Can I plug

Scott Tolinski

Yeah. Just wanna maintain here. So, yeah, for for me, it's just like it takes all the guesswork out of it. Right? You you're signed up for your program. You show up for your program. You do the thing it tells you to do when you're done. I love Yeah. It's it's great. And what was the other thing? Shameless plug.

Scott Tolinski

Yeah. I don't know if I would do it if I had, like, a gym near me, but, like, It's perfect for where I am. It's it's good, and we we got it because our squat rack didn't fit in our basement, and I didn't wanna put the squat rack in the garage. So it's like, alright. I need something, I didn't have to go diving into the preferences to check 5, You know, 10, 20 checkboxes of features to turn on, it just function the way that I would want it to function right out of the box and was fast.

Share

Empowering developers for over 286197182062 milliseconds!