DiscoverDeveloper VoicesBuilding a New Terminal App (with Zach Lloyd)
Building a New Terminal App (with Zach Lloyd)

Building a New Terminal App (with Zach Lloyd)

Update: 2024-08-14
Share

Description

The terminal might be the most used development tool in history. So it’s a little odd that it hasn’t changed that much in the decades since the terminal first came into being. Is the terminal a “completed” project? Or are there new ways to look at it that might make it even more useful?

This week’s guest—Zach Lloyd—is convinced the terminal is ripe for a new approach that’s more than just a new coat of paint. And in this episode we dive into what that approach is, what he’s trying to do with the Warp Terminal, and how it’s put together using a combination of Rust and GPU shaders.

Along the way we look at what LLMs could do to improve the terminal experience, where the boundary lies between terminal and shell, and where Go has solved some problems and created others over at Warp HQ.

Become a Supporter on Patreon: https://patreon.com/DeveloperVoices

Become a Supporter on YouTube: https://www.youtube.com/@developervoices/join

Warp Homepage: https://app.warp.dev/referral/VQGWW3

VT100 Information: https://vt100.net/

Game of Life in Rust: https://github.com/krisajenkins/game-of-life-rust

Zed (Text editor in Rust): https://zed.dev/

Flutter: https://flutter.dev/

The Painter’s Algorithm: https://en.wikipedia.org/wiki/Painter%27s_algorithm

Zach on LinkedIn: https://www.linkedin.com/in/zachlloyd/

Kris on Mastodon: http://mastodon.social/@krisajenkins

Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

Kris on Twitter: https://twitter.com/krisajenkins

0:00 Intro

2:22 Why Create A New Terminal?

7:28 Blurring the Lines Between Terminal and Shell

16:04 How Do You Build A Terminal Program?

24:55 Implementing a Terminal in Rust

30:32 Rust Frameworks for GPU Shaders

40:04 Will Any Of This Go Open Source?

42:49 Managing a Mixture of Rust and Go

47:52 What’s the DX of Warp?

51:43 Integrating LLMs into the Terminal

1:05:58 Outro

Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

Building a New Terminal App (with Zach Lloyd)

Building a New Terminal App (with Zach Lloyd)

Kris Jenkins