The Tuple Podcast

In this episode, Ben chats with Thorsten Ball. This conversation fits neatly into two halves - in the first, Ben and Thorsten go deep on how to differentiate yourself, work in public, and make it easy for people to hire you. In the second part of the conversation, they talk more specifically about Zed, why it matters, and how it’s being built. 

Links
Tuple.app (https://tuple.app) - The best app for pair programming
Thorsten’s website (https://thorstenball.com) - Where you can find his books, blog, and other podcast appearances
Zed (https://zed.dev) - The editor Thorsten is working on

Key Takeaways
  • Cultivating a diverse skill set can lead to unique opportunities and make you a valuable asset in a company.
  • Evidence of competence, such as published work or open-source contributions, can significantly impact your chances of getting hired.
  • Soft skills, such as communication and problem-solving, are essential for success in engineering roles.
  • Taking initiative and adding value beyond your job description can make you stand out and contribute to the growth of a company.
  • Interviews should be seen as a chance to demonstrate your skills and fit within a company's culture, rather than just answering questions. Visual cues and real-time interaction are important in conversations to gauge resonance and maintain engagement.
  • Different business models exist in the tech industry, and investment can provide the time and resources needed for product development.
  • Building high-quality products in open source requires a focus on performance, quality, and attention to detail.
  • The landscape of text editors and funding is complex, with various models and approaches.
  • Working on a quality product with a talented team can be fulfilling and contribute to personal growth.
  • Noticing and writing about interesting ideas can enhance creativity and lead to new insights.

Chapters
  • (00:00) - Introduction and Background
  • (00:21) - Combining Software Engineering and Content Production
  • (04:41) - The Power of a Diverse Skill Set
  • (07:40) - Creating Valuable Content
  • (11:53) - Taking Initiative and Adding Value
  • (18:47) - Reaching Out and Getting Hired
  • (20:42) - The Power of Evidence of Competence
  • (21:39) - The Myth of Not Hiring
  • (25:35) - The Importance of Leaving Evidence
  • (28:06) - Resumes and Demonstrating Competence
  • (30:56) - Interviews as a Vibe Check
  • (32:38) - The Bias in Interviews
  • (33:55) - Hiring Process and Competence
  • (34:22) - No Foolproof Hiring Process
  • (35:20) - Evidence of Ability
  • (37:00) - Accepting the Hiring Game
  • (39:54) - Marketing and Self-Promotion
  • (44:10) - Zed's Journey and User Availability
  • (51:02) - Collaboration in Zed
  • (56:02) - The Magic of Audio Calls
  • (58:49) - The Intimacy of Voice-Only Communication
  • (01:01:16) - The Distraction of Self-View in Video Calls
  • (01:02:43) - The Importance of Visual Cues in Conversations
  • (01:03:36) - The Value of Real-Time Interaction
  • (01:05:34) - The Deep Knowledge and Complexity of Vim
  • (01:06:00) - The Benefits of Noticing and Writing About Interesting Ideas
  • (01:09:40) - The Habit of Writing and Its Impact on Thinking

Creators & Guests

Host
Ben Orenstein
Co-founder @tuple.
Guest
Thorsten Ball
Working on Zed. Ex-Sourcegraph.

What is The Tuple Podcast?

Ben Orenstein interviews great programmers about their craft.

Ben Orenstein:

Hey, everyone. Today, I'm talking to Thorsten Ball. Thorsten is a software engineer at Zed and also the author of 2 books, Writing an Interpreter in Go and then Writing a Compiler in Go. He is a prolific writer, makes a lot of video content, is very thoughtful about software engineering, and I'm super stoked to talk to him today. Welcome to the podcast.

Thorsten Ball:

Thanks for having me. Glad to be here.

Ben Orenstein:

Yeah. I'm excited to chat. And so the reason I reached out to you, originally is because you have an interesting combination of skills. There are not actually a lot of developers that are versed like, well versed in code and can be, like, really productive software engineers, And then also have the skill of, content production. It's like a terrible, like, way to talk about it.

Ben Orenstein:

But, you know, making interesting videos, writing interesting things, teaching things in a way that makes sense to people, sometimes those things are paired together, but not that often. And so when I see a combination like that, it makes me want to, like, get to know that person.

Thorsten Ball:

Interesting. Yeah. That's interesting.

Ben Orenstein:

Did you cultivate this, like, weird pairing of skills? Or is this just you were kinda born this way and this is just was always gonna happen?

Thorsten Ball:

I think in some way, I cultivated it in the sense that when I was a teenager, I wanted to become a writer and, you know, a journalist. And when looking into this and trying to figure out how to become a journalist, you know, in Germany, the writing culture is different than in the US, I think, from what I can gather over the last decade of reading about it. And this the term writer doesn't exist in Germany. It's the writer sounds pretty down to earth. Right?

Thorsten Ball:

Like, you're a writer, and I I'm a writer, and I write.

Ben Orenstein:

This is so ironic because I feel like German is famous for, like, having a term for everything.

Thorsten Ball:

Yes. But it's I think there's not it's either you you're an author, you know, like you write novels and this or or you're a journalist, but you can't just say I'm a writer. There's a word for it, of course, but it's not used. And when looking into how to become a journalist, it's either, you know, go to a journalism school. But that's about reporting.

Thorsten Ball:

That's about, you know, working for AP or in news agencies. Like, that's proper reporting, learning the, you know, skills of the trade. And I think the writing was a secondary thing to that. And then I read that someone was saying, hey. If you wanna become a writer, become published in, say, newspapers or magazines or something like that, not novels, you need to consider writing your second skill.

Thorsten Ball:

What you need to have is domain knowledge. You need to have something that you write about. Because if you're just good at writing, what are you gonna write about? And that made sense to me because if you look at, you know, the people who have a column in the newspaper or in a monthly magazine or something like this, they all have something that not you know, I don't wanna say an expert on, but they have something to talk about. So I kinda, you know, realized that makes sense.

Thorsten Ball:

So I need to learn something. And it it wasn't that I then went out and said, let's go learn about programming and then write about it, but it was always this, I'm gonna do I'm gonna, you know, read on the side. I'm gonna write on the side. I enjoy writing, and I always want to get better at it. So it was always this thing on the side that I valued and that I valued getting better at.

Thorsten Ball:

And then, you know, detour, try to become a musician, and then became a programmer. And I think that's one thing that writing was always this thing on the side that I always deemed important, that I wanted to cultivate. But the other is also, you know, I'm interested in a lot of things. I'm interested in, I don't know, reading a lot, like, reading a lot of nonfiction, reading a lot about I like reading about business, you know. I like reading Jeff Bezos books.

Thorsten Ball:

I like reading about marketing. And I think, you know, combine all of this, then you end up with some version of me. You know? Somebody's interested in in software. Somebody's interested in in computers, communication, marketing, history, I guess, business.

Thorsten Ball:

And then

Ben Orenstein:

Yeah. You know? That's interesting. I I think of programming sometimes actually as one of those, second skills kind of like writing. Where actually, it turns out you can just be a programmer and kinda go work on whatever.

Thorsten Ball:

You can.

Ben Orenstein:

Yeah. But actually, I think maybe better than that is to have a have some expertise or have a passion and add programming to that as a force multiplier. Yeah. And it's interesting that you like picking up another one of those, like writing or just like I almost feel like the blanket term here is marketing kind of. I feel like what you're doing is sort of like it's videos, it's podcasts, it's, writing.

Ben Orenstein:

Yeah. Books, it's quick blog posts, it's tweets. Like, you're doing all of these things. So, yeah, I think maybe that's the best way to think about it. But it's but having, like, the cross product of writing and or, like, like, marketing and programming and a wide set of interests, like, it's Yeah.

Ben Orenstein:

Is a is a heck of a combo.

Thorsten Ball:

The funny thing is, I would also say that I'm not really, really good at one of those things. It's more that good at some of those, which then puts me maybe above average. You know, the sum might put me above average. And, you know, I'm now thinking back because I mentioned this when I was a teenager. There was this quote, I'm sure you've heard about this, and I think it even came up in the context of software.

Thorsten Ball:

But I had this on my website as a teenager for the longest time, this, specializing is for insects. You know? This being proud of being a jack of all trades and master of none, I guess. And I I can't say that I am super proud and super 100% confident about it. There's obviously moments where I think maybe I should get really good at this one thing.

Thorsten Ball:

You know? But then over the last few years, I've realized, you know, being a senior engineer slash staff engineer, it does pay off to be good technically on the technical level, but also being able to write well or to talk to people or to convince people or to entertain people. You know? And I'm I'm sure you agree with this. Right?

Thorsten Ball:

That, engineers have this what is it? Like, the the the trap the mind trap of thinking the tech is the most important thing. And then when you run a business or an org or whatever it is, you realize no. You know, you you're just serving engineering is a function of the business, and you're serving the business. And there's more to it than just writing code and pushing a commit.

Ben Orenstein:

For sure. So I think it'd be interesting to maybe actually talk about the way you came on my radar, which was, I saw a video that you published where you were interviewing the founders of Zed, which is your your current gig. And you said or wrote something like, you know, you were you had all these questions and you realized if you're gonna ask all these questions of the founders, you should publish this. And I sent this to my friend Adam Lathan, and I was like, this is like what it looks like when a truly awesome person starts at a company, is they don't just like, they they think bigger than just, like, well, I need to get up to speed. They're like, how do we also make this a valuable thing?

Ben Orenstein:

And that, like and in particular, because, like, a marketing person prob like, might have had that idea, but your average developer gotta be, like, you know, 1 in a 100 at best. And so that really stood out to me, and, like, we talked about you for a while and a players and all that. And, I think that's, like, that is the sort of thing that sort of shows me, like, you are you're a little bit remarkable in this in this way. I guess I guess that and so when you were talking earlier about, journalism as a focus, I was like, it feels a little bit like that's like, you you're kind of doing journalism within the company was, like, sort of like an impulse you had.

Thorsten Ball:

Yeah. Well, thanks, you know, thanks for the compliment. I guess, just to make clear that I didn't think, look, here's a good piece of content and I hate I have big dislike for the word content.

Ben Orenstein:

It's I also do for what's worth. It's it's it's a convenient shorthand, but I super agree. I feel like it's like

Thorsten Ball:

It's when some it feels like when somebody goes to Italy to to eat pizza and then they say, I want to eat carbs. It's just, no, man. You're eating a pizza at least a day. It's don't you know? But Yep.

Thorsten Ball:

I I what I'm trying to say is I know what zed the business needs. And right now, one of those things is awareness. That's one thing. The other thing is I'm personally really interested in what the founders think. Like, why build a text editor?

Thorsten Ball:

Why build it this way with these trade offs? And I also like reading about this type of stuff. I do find it generally interesting in how people think about software and how to develop software. And, you know, one of the most fascinating text files to me on the Internet is, you know, Brian Maldonard's, 7 Habits of Highly is it efficient text editing or Fast Text Editing? Like, somebody putting a lot of thought and a lot of care into something that seems incredibly mundane to somebody who's not in this.

Thorsten Ball:

And I guess that makes all of us nerds, but I just get excitement out of it. I enjoy talking about software, reading about software. And then at the same time when I joined, I also had I don't know where it came from, actually, but I I do like reading interviews. I do like you know, I'm looking at my bookshelf. I've had, like, a lot of musician interviews and the Rolling Stone book of the interviews the Rolling Stone interview book and the Paris Review magazine.

Thorsten Ball:

And I don't know why I had this in my mind, but I thought that would be a nice art form, you know, to try my hand at this editing of a of a transcription. So it wasn't even the video for me was, you know, that was basically side effects. So I thought, wouldn't it be cool if I interview Nathan? Which means I don't have to poke him and go, write a blog post, write a blog post, write a blog post, because I'll write it for him, and I get to ask my questions. And then I can have some fun and try and edit this into, like, a transcript.

Thorsten Ball:

And then I asked him, and I he said, you know what? This is, you know, as chance we'll have it. Tomorrow, we schedule, like, this founder's chat to produce some video content. How about you interview us instead of David? And there's yeah.

Thorsten Ball:

Sure. We can do that. And I think that was the end that was the Friday of my first week. Yeah.

Ben Orenstein:

Yeah. Because it happened right away. That, I think, I feel like is part of what makes it so good. And, like, the fact that you were saying, like, I know what the business needs. And, you know, you know that, like, you're sort of managing up.

Ben Orenstein:

Like, you're like, I don't wanna harass this person and have them write a blog post. I can, like, figure out a way to get it done myself. And I hope everyone is kind of, like, clocking these things because, like, this is just insanely amazing behavior from an employee that just joined a company. Like, ever I I like, you want this from everyone you hire. And I feel like what you did is not it's not like it was super hard necessarily.

Ben Orenstein:

Like I think basically everybody could do the mechanical steps, maybe not as well, certainly not as well in some some regards for sure, But it wasn't like it didn't require a huge effort or huge talent or anything particularly crazy. It's actually just that you, like, understood, like, oh, one thing the business needs is this. Here's a way to get a, like, double dip on this thing so we get value from it in multiple ways. Let me just take it upon myself to do this, and, like, you you owned doing it and getting it done. And all of that is, like to me, that's almost like cofounder level contribution, And that's that's, like it's kind of amazing.

Thorsten Ball:

Can we edit a product and you say it requires huge talent? No. Kidding. I think you say cofounder, but I do think that let me take a step back. I think in a small startup, you need to have empathy with the person above you, with one level above you.

Thorsten Ball:

And empathy means thinking about why they hired you and why they would even take the risk of hiring somebody and paying them money, and what do they expect in return? And I think everything else flows from there in that, say, you're hiring say, you have a company with 50 50 people, whatever. And you wanna high and and it's it's a lot of salespeople. You have 10 engineers, marketing, but it's not a lot of engineers, but you would need to scale up engineering. So now you hire a CTO, and you're the CEO.

Thorsten Ball:

You're busy with sales and marketing. What do you expect of that CTO? You expect of that CTO to take care of the tech for you. You don't want them to come to you every week and say, should we do this? Should we do that?

Thorsten Ball:

No. You want this not have to worry about this, to be able to focus on marketing or sales or something else. And that's a high level example, and I think people think that it only happens at this high level. But I do think it happens at, like, to be a good employee as corny as that meant, you know, whatever that sounds. But to be effective or valuable, you need to do this at every level.

Thorsten Ball:

That means if you hire me to be the front end engineer, and I'm the only one in your company, that means I think, how do I take care of the front end stuff for Ben so that he doesn't have to worry about front end? I don't expect him to write tickets for me and spell out what I have to do. I need to anticipate what are the problems, How can we advance this? You know, what do we need to do? What does the business need us to do?

Thorsten Ball:

So I think it's this don't wait for somebody to tell you exactly what to do, but try to figure out what is your role and how can you contribute value in your role. And try to make problems not even show up on that other person's radar. You know?

Ben Orenstein:

I agree with that as as a baseline. Like, it's great to be able to delegate a part of the business to somebody Yeah. And not and, like, free yourself up to do other things. Totally agree. But I actually feel like what I'm seeing from you and the part that impresses me is that they did not hire you to interview them and make interesting marketing assets.

Ben Orenstein:

And that is where I feel like that's the special thing I think that happened. And I would say when we when you hire someone in a startup in particular, there's more room to do that. There isn't a marketing department at Zedd, I have to imagine, right? No one was like, oh, sorry, we already have a content calendar and you'll have to slot this in here and make sure you work with this person to get approval for the whatever. Yeah.

Ben Orenstein:

You were just like, you just did it. And so there's room to contribute in ways that are outside your normal job description, which is which is awesome if you treat that as an opportunity. Yeah. And honestly, I think that is the dream when you hire someone is like I think there's almost a little bit of a fallacy in early hiring where it's like, oh, we're hiring you to do this. But in a way, like, we don't really know how you can best contribute.

Ben Orenstein:

Like, the job description might say this. It could be that, like, the maximum like, the thing the company ends up needing and the maximum value you're able to provide are totally different than that and, like, way outside it. And so you being willing to see that and go at like, noticing it and going for it is, like, kind of the start up early employee hiring dream,

Thorsten Ball:

I think. Yeah. I think I agree. And that's why I enjoy working in small companies. It's this you get to do a lot of things, and there's a lot of work to be done, and there's a lot of different work to be done.

Thorsten Ball:

And you don't have to ask for permission, which then makes stuff a little bit, you know, I don't know, slower, more work. For the interview series, like, nobody reviews my blog post. It's, yeah, you run the show. Okay. And I'm like, cool.

Thorsten Ball:

That also means I have complete creative freedom to do whatever I want. And that's what I that's what I enjoy. If somebody tells me, you run this like it's your project. And, sure, people also told me this in a larger corporation, but it's a different thing because you then need a lot more people on board with the stuff that you want to do. And the other thing that I always say in startups is, you know, how people they say, oh, someone should.

Thorsten Ball:

Someone should. Someone should fix ours. Someone should use a different caching thing in our CI. Somebody should on our team home page link to the social profiles. Blah blah blah.

Thorsten Ball:

Guess what? There is no someone. There is no person somewhere else. The it's most likely you. 99%, it's you who should do this.

Thorsten Ball:

And that sounds scary, and sometimes it fucking sucks. Because you think, I wish somebody would just do this, and I don't have to worry about it. But on the other hand, you know, it's also fun because you realize there's nothing holding you back. Like, if you have an idea for something, you can just go for it. And I don't know.

Thorsten Ball:

I really I really enjoy that. I really thrive in that.

Ben Orenstein:

Yeah. So you are you're kind of a dream hire. I'm curious how how did you get how did Zed hire you? Did you go to them? Did they come to you?

Ben Orenstein:

Like, how do you how does someone recruit someone like you?

Thorsten Ball:

I I reached out to Nathan as more like putting my feelers out, but not really, oh, I'm ready to jump shit. But more, you know, how sometimes when the what's the Hacker News post? Who's hiring or something? You just scroll through and just some mental map of, oh, I didn't know they were remote, or I didn't know that they use Go or whatever. Like, it's I I just find it interesting to keep track of the landscape.

Thorsten Ball:

And I saw saw Zed and, you know, I become interested in zed as the product because I like the focus that they've shown. I like the focus on performance. I like the product itself. And I knew some of the people working, you know, there, and I thought they were impressive. And then I sent Nathan a message, and it was literally just one line.

Thorsten Ball:

And I was like, I'll keep it short. Are you guys hiring? And he he said, no. No. Not at the moment.

Thorsten Ball:

But, hey, let's talk anyway. Then we talked, and then we had a nice conversation. And there was just a loose conversation about software and products and whatsoever. And then I guess, I don't know, changed his mind, and then we were like, okay. You know?

Thorsten Ball:

How you know, let's do let's do an interview. And then we did a pretty informal pairing session, me and Antonio, and then they kinda made me an offer. Yeah.

Ben Orenstein:

Yeah. I think there's, like, interesting nuggets in there. Like, one is, did Nathan know you at all at this point? Did you have any or was, like, this

Thorsten Ball:

No. He did he didn't know me. He he then said later in the conversation, he said, turns out a lot of people that I know follow you or something like this. Yeah. Or they know you or yeah.

Ben Orenstein:

Yeah. So I think if you have taken the time to create all of these, all this evidence of your competence. Yeah. Then a one line email to the founder gets you an interview even when they're not hiring officially. So that I think is sort of like takeaway number 1, which is like you have put in years of work not directly to get hired, like for the purpose of getting hired, I'd say, for a lot of different reasons.

Ben Orenstein:

But those things have then helped, like, helped you get in the door, like, very easily comparatively. So I think that that that's interesting. I also think it's interesting that they weren't hiring officially. But it's like because I feel like the secret or like a the reality is, like, everyone is always hiring, particularly startups, if you can just show that you're gonna bring a ton of value. So, like, officially we're not hiring, but when Thorsten reaches out and you look at his profile and you see what he's done, you say, oh, it's very easy to to tell like how you're going to generate more value than the salary.

Ben Orenstein:

And maybe also we don't strictly have an opening, meaning like we're not like, oh my God, we're really missing a front end engineer or whatever your ostensibly going to do. But when you see the multifaceted nature of this person, you think they're gonna figure out a way to provide a lot of value here. And some of it will be through code and some of it will be through other things. And that changes the, like, we're not hiring to, like, nobody have to hire this person, actually.

Thorsten Ball:

Yeah. I think I mean, hiring you know, I've been on the other side few times. And I can't speak to being the hiring manager at the small start up, but I I think just to just to talk about the same two points that you just made from from, I guess, a different perspective. And the first one is, what did you say? Evidence?

Thorsten Ball:

You said evidence of

Ben Orenstein:

Of of competence. Yeah.

Thorsten Ball:

Yeah. That's what I often try to tell people when they ask me, how can I get a job like this? Or how can I do this or that? It's put yourself out there. Like, leave traces.

Thorsten Ball:

Like, leave breadcrumbs. Somebody sent me an email 2 weeks ago asking, hey. I'm a web engineer. I work on web applications, but I wanna be more like a systems programmer. How do I do that?

Thorsten Ball:

And then I said, look, man. Like, I I started doing websites and now work on a text editor in Rust. And it's not like I took a course and then applied to a systems programmer thing, but it was I got into compilers, interpreters, operating systems. I wrote these two books. And it's just evidence.

Thorsten Ball:

Like, that evidence I'm going to get to this. That evidence is now out in the world. There's blog posts. There's newsletters. There's books.

Thorsten Ball:

Whatever. And then when somebody looks at you wet and they think about whether they wanna hire you, what goes through their mind is when I hire this person, how will they function in this company? What can they be productive? Do I need to teach them stuff? What do they you know, like, can they provide value here?

Thorsten Ball:

And your job as an employee or as somebody who applies is to convince the other person that you provide more value than you cost in that interview loop. Right? And if you if there's already evidence that you can provide value or that you have knowledge, you skip you can skip the line because you don't have to have you don't have to answer all of these questions because look like there's 50 blog posts that you wrote about whatever. Why would I ask this in the interview? So this, you know, leave evidence, leave breadcrumbs, leave proof that you know something about something.

Thorsten Ball:

And that goes a long way. Because for most people, there's no proof whatsoever. You you have to pull it out of them. And even then, in interviews, most people are really bad at getting in the mindset of, this is my chance to convince the other person that I know something. They expect to answer questions correctly, but it's a pitch.

Thorsten Ball:

You need to pitch to the other person. I I can do something. Yeah,

Ben Orenstein:

yeah. Like, you should be able to drop a small handful of links to that that each each of which is a piece of evidence. And if, like, when people people say, like, oh, all my code is, you know, in private repos that I worked on this proprietary. It's like, yeah. Okay.

Ben Orenstein:

Well, that sucks. You should fix that. Like, you should do something else then because like you will compete against people that don't have that situation. If you can't send a handful of links to things you've made that show you know what you're doing, you are at a massive disadvantage. And if you can do that, you will be in the top 10% automatically.

Ben Orenstein:

Yeah. And then, like and your interview, you said, was like a casual pair programming thing. They weren't really and I imagine he wasn't even thinking, like, I need to confirm that this person can program well and understands programming languages and will be a productive engineer. It was probably more about, like, see how you think a little bit, make sure you're kinda fun to work with, check the vibes, get the sign off from the second cofounder, or however that is.

Thorsten Ball:

Do I wanna spend time with this person?

Ben Orenstein:

Yes. It was probably mostly actually, like, behavioral or, like, you know, about your personality, I would imagine, Because you can point to the books you wrote on these topics. And now that's an extreme example. Like, I don't think I would say, like, everyone should write a book on compilers to show they know what they're doing. But something along those lines that just makes it so that the interviews become more of a vibe check than a skill assessment.

Thorsten Ball:

And I mean, I don't know where I'm going with this, but I think

Ben Orenstein:

That's okay. Let's go there. Let's ride it.

Thorsten Ball:

Interviews should be unbiased. They should be. You know, like, they should be objective and all of that. But they are biased. That's just a fact.

Thorsten Ball:

Impressions count as, you know, people, they are influenced by how well your CV is written or how well your cover letter is written. And there's no way around this. There's no way around the fact that somebody takes in everything they can get from your side and form an impression of you. That's just how the world works. And I think engineers sometimes think that, well, that's all superficial.

Thorsten Ball:

What really counts is that I give the correct answers to the specific questions they are going to ask me in an interview. But the reality is that if you are presented with 2 resumes and one contains, you know, here's the link to my GitHub. Here's my 5 blog posts. Here's this that I did. I organized this conference.

Thorsten Ball:

And the other person is spent the last 8 years working at this company, and there's nothing to show for it. Guess who gets more clicks on their resume? Who gets more

Ben Orenstein:

Yeah.

Thorsten Ball:

Impressions in their you know?

Ben Orenstein:

Yeah. I wouldn't even call that biased, though. That just seems like very reasonable decision making. Right?

Thorsten Ball:

Sure. But I I I guess the counterpoint would be that somebody would say, oh, are they really that superficial that they judge a resume by how you know, which fonts they use. And answer is, obviously, like, everybody does. Like, if yours is shittily formatted, sure, we should ignore it, but it leaves an impression, You know?

Ben Orenstein:

It's it's funny that you're talking about resumes here because I'm sure you did not want send one over.

Thorsten Ball:

No. I didn't send one.

Ben Orenstein:

No. Yeah. Yeah. I I wrote a blog post a long time ago called, programmer resumes are deprecated. Yeah.

Ben Orenstein:

And it's like, why would you use a resume when we work in an industry where you can just show what you can do? Yeah. It's like this, like it's I feel like it's almost like no other field. Like, a surgeon would probably have a hard time, like, showing, like, look, I do good surgery. But a programmer can so so easily be like, here's some here here's some code I wrote.

Ben Orenstein:

Here you go. Check it out. Yeah. Yeah. And so why would you not use that superpower that we have?

Ben Orenstein:

That, like, that amazing ability to demonstrate competence and reduce the risk of hiring you right off the bat and turn your interview into a more, you know, casual chat. Like, that's so powerful. Yeah. And so I haven't had a resume in 15 years or something. Like, my resume is like, look at my Twitter.

Ben Orenstein:

Like, look at look at this company I made. Look at this look at these talks I gave over here. Read these blog posts and see that I write well. Like, it's it's that's the resume now.

Thorsten Ball:

Yeah. I think there's well, I wish it I wish it would always work like this. I do have to say that a couple years back, I was interviewed at multiple companies. Like, this was in 2018, 19 before I joined SalesGraft. And I already had 2 books, and I still had to do coding exercises, you know.

Thorsten Ball:

And then you get kinda, you know, pissed off because you're thinking, look. Like, there's so much code and stuff that I've written about code out there. But I get it. I get it in that you have maybe 20 applicants, whatever. Are you gonna go through all of them?

Thorsten Ball:

It's just it's tough. But I I I was this was also 5 no. 6 years ago. I was in a pairings interview thing, and the other guy was like, yeah. I read your book.

Thorsten Ball:

I know that you can program. So any do you have any questions you wanna ask me? And we just, you know, had a chat.

Ben Orenstein:

Did did you end up working at any of the companies that forced you to go through, like, a coding exercise interview?

Thorsten Ball:

Yeah. One of them. And then I quit after 3 months. Yeah.

Ben Orenstein:

Okay. Do you feel like that yeah. Because to me, that's a red flag. Like, I would I would consider that a like, not a deal breaker, but I'm like, I'm not I'm starting off not that impressed.

Thorsten Ball:

Yes. When I was hired at SauceCraft, I also sent back, look. Here's my books if you want a code sample. I send them the PDF. And Nick, back then, our head of engineering, I think he took it.

Thorsten Ball:

He has a good sense of humor. And he was like, yeah. But I still let's do the life pairing thing. You know? Just to what you said.

Thorsten Ball:

Like, find out what is this person. You know? What is this person like? What's it like working with them? And I chose the live you could do the take home thing and, you know, do, like, the 3 hours or do the live thing.

Thorsten Ball:

And I chose the live version because then I can explain myself and I can also talk to them and, you know, have some fun and whatnot. And yeah. But then I worked, you know, four and a half years at SauceCraft. Everything is open source. You can look at my GitHub, like, the last 4 Navios.

Thorsten Ball:

All of my tickets, all of my pull requests, everything is there. You can see what I did. Like, that's you know, a 1000000 times more you can get out of any interview, basically. And I think I've had still recruiters reach out to me, and they were like, yeah. So we need a, you know, if you wanna go to the next stage, we need, like, a pairing exercise or something like that.

Thorsten Ball:

And that kinda made me then that was a red flag. One of them was a this was a once in a lifetime thing, chance. I didn't even wanna leave Sourcegraph, but it was a chance to work on a compiler somewhere. And I was like, I gotta I gotta listen to like, I just wanna listen and have a conversation. But then they were like, yep.

Thorsten Ball:

He's gonna have 6 interviews. Here's a code check. Here's the code pairing and take home exercise. And then I was like, I just sent you the source code of an optimizing compiler I wrote in Rust over the last 3 years. There's books that I wrote about compilers.

Thorsten Ball:

What are we doing? You know? And I didn't proceed for other for, you know, multiple reasons, and one of them was that it left a bad taste in my mouth.

Ben Orenstein:

Yeah. Yeah. I that sounds like a bad hiring process. I feel like if you want like, particularly if you want to hire superstars and you do, you need to flex the normal process. Like, you need to realize when you're dealing with someone that is clearly competent and doesn't need to do the normal checks And if you are a slave to process and won't do that, you're probably a slave to process in a bunch of other ways that, like, will hurt the company, and you're not not a great organization.

Thorsten Ball:

How do you filter out okay. Maybe maybe that's already included in your point here, but I think I've hired people or gave a strong yes in interviews, you know, for people that didn't turn out, they can't do something. They can't ship. They they look amazing on paper, and they wrote papers or gave talks or something like this. And then it turns out they just can't function in, you know.

Thorsten Ball:

Did you ever run into this?

Ben Orenstein:

It's not ringing a bell. I don't think so.

Thorsten Ball:

Yeah.

Ben Orenstein:

I mean, my reaction to this is that, like, no hiring process is foolproof. You will always make mistakes. I think if you are hiring people who have artifacts that prove their competence to at least some extent, you will make this more likely to succeed. But you probably will still make some errors where it seemed like they were great and it turned out they weren't. For some reason, that was you didn't quite anticipate or didn't quite uncover.

Ben Orenstein:

And and I would sort of push towards a process that when you feel like you've got someone amazing on your hands, you bias towards getting them in the door rather than trying to avoid ever accidentally hiring someone who seems great. Not on paper, but, like, with some sort of evidence at least. Like, not like a strong resume, but, like, you know, some strong indication of performance. Let that mistake happen sometimes and just correct it.

Thorsten Ball:

Yeah. I guess now thinking about it, I think if you were looking for evidence, I think you would also look for evidence evidence of ability to ship or get something done. Right? For sure.

Ben Orenstein:

Yeah. And that's why there should be links. Like

Thorsten Ball:

Right.

Ben Orenstein:

I I think links are kind of important. It's not like, oh, I'm gonna describe this time I built a recommendation engine. It's like, no. Show me a link to something.

Thorsten Ball:

Give me the link.

Ben Orenstein:

Yeah. The link makes it way more real. It's like it has to have, like, actually shipped. It has to be public. It has to be a URL addressable thing that you put in the world.

Ben Orenstein:

Then it is like so much more likely to be an actual, legit, real thing.

Thorsten Ball:

What do you say to people who say that's unfair? That's extra work. I'm already working.

Ben Orenstein:

You're

Thorsten Ball:

right. That's yeah. I agree.

Ben Orenstein:

I agree. If you want the best jobs, like it's yeah. It's not about fairness here. Like, I'm not trying to, like, give an equal opportunity to every person that might be a candidate. I'm trying to find the very best people out there.

Ben Orenstein:

And the very best people generate things that make it clear they are competent. Yeah.

Thorsten Ball:

I agree.

Ben Orenstein:

And this is not to say that there are not great people that don't do this. Like, I worked with a programmer in the past who is by far the best person I've ever worked with. He's, like, incredibly knowledgeable when it comes to code. He has no social media presence whatsoever. He does do most of his work in private.

Ben Orenstein:

He's he is sort of hard to, like, find hard to assess that way.

Thorsten Ball:

Yeah.

Ben Orenstein:

If you paired with him, you become very clear very fast. And actually, you know what? He does write some blog posts and has given a couple talks, so it's not nothing. But he's not like a high pro he's not like you. It's not like the most obvious thing.

Ben Orenstein:

And there probably are some total superstars who have almost no footprint. But, like, that's I mean, I would argue that's a weakness in their, like, ability to get hired. And, like, yeah, it's unfortunate. I would love to also find those people, but it's just it's just way harder. And, like, it's it's it's much more likely you'll sort of weed them out.

Ben Orenstein:

Yeah.

Thorsten Ball:

I agree. So it's

Ben Orenstein:

not a flawless process, but there is no flawless process. There is no perfect hiring approach here.

Thorsten Ball:

Yeah. And I like what you said, it's this, you know, if you wanna work for these companies with these people, then that's the game you have to play. If you don't wanna play that game, there's other jobs, you know, then go to Microsoft. I don't know. To Sure.

Thorsten Ball:

Whatever. Dig Microsoft. But it's

Ben Orenstein:

Yeah.

Thorsten Ball:

If you, you know, you can't expect to work at, say, you know, what's imagine the top 0.1% coolest software companies. What say say hottest company right now, OpenAI. Right? Sam Altman, didn't he tweet, if you we're hiring. What we need is proof of exceptional ability.

Thorsten Ball:

That's what he put in. And then people go, oh, what does he mean? You know? That's unfair. But no.

Thorsten Ball:

They can pick. They can they can pick whoever they want to hire. And if you stand out, that's the way it is. And I think this is similar to in a corporation when people say, oh, you know, to get promoted, you have to be good at promoting yourself. And I'm my reaction is always, yeah.

Thorsten Ball:

No shit, dude. Like, what do you think what

Ben Orenstein:

do you think what do you how do you

Thorsten Ball:

think this works, that you can sit in your office and just silently work without ever telling anybody, and then somebody will knock at your door and go, hey. We've been watching. You're amazing. You know? We've been tracing your commits, man.

Thorsten Ball:

You're amazing. You're hire you're you're promoted. That's not how this works. And I told a friend of mine who coming to a different industry, but he's saying he's managing an engineer, and that one engineer, he has 2 engineers, 1 engineer, average one exceptionally good, average person talks to people, everybody knows what they're doing, they're always the person being invited to meetings, whatsoever. The other person, technically much better, feels like left behind because they don't do a lot of self promotion.

Thorsten Ball:

And I told him, man, you need to get real with him and tell him that's how the world works. You know? Like, you can't stand in the corner and say, oh, you know, the girls all go to the boys who are attractive and dare to talk to them. That's how it is. You know?

Thorsten Ball:

That's just how the game is played. And there's no there's nothing you can do about it except maybe find your own way to play the game, but you cannot change this. You cannot change the game.

Ben Orenstein:

Yeah. Marketing matters in it's like this is more marketing to me. It's like marketing yourself within the organization is totally a thing. Yeah. Yeah.

Ben Orenstein:

I I agree. It's like you could get mad about it or you could accept it and like try to rectify. Yeah. Or like just like just deal with the situation and act accordingly. And I think that's the that's the way to go most of the time.

Ben Orenstein:

Or maybe start your own company or, like, you know, advocate for some sort of different assessment process or, you know, do something, but don't just be mad.

Thorsten Ball:

Yeah. That makes sense. And, also, I I guess, you know, people seem see marketing or, I don't know, self promotion, whatever. They see it as this icky thing, And I don't. I I think, you know let's talk about self promotion in a big company.

Thorsten Ball:

People sometimes ship stuff they don't ever tell somebody about it. I always like to record demos, and I always like to record or produce little write ups and have nice pull request messages and make things look good and that type of thing. And it's not just for show. It's also because it helps me. You know?

Thorsten Ball:

How many bugs I found while recording a demo and having to redo something, or how many times when I wrote tried to write a clear pull request message of what something is, I noticed, oh, I left out an edge case. Oh, you know, actually, this doesn't do this whole thing. So, you know, writing about something is all producing content about something is also a way to reflect about something. And, ultimately, I think that also is a way to make the work better. So it's not just yucky.

Thorsten Ball:

Nobody's talking about lying. Right? And nobody's talking about exaggerating. I'm talking about just presenting what you did in a good way, and I think there's benefits to it.

Ben Orenstein:

Yeah. And recognizing that, like, the system is noisy. I like those 2 things you said. That's those seem like actually great benefits totally. But also just sort of understanding that in a company, there's a lot going on.

Ben Orenstein:

And Yeah. People are unlikely to have a perfect perspective on, like, what you're doing and how good it is and how much thought you're putting into it. But if you're sort of like if bread crumbs are appearing all the time, that just helps. It helps people get people sort of understand the reality of what's what's going on.

Thorsten Ball:

Yeah. Or the other thing, I'm sure you know this as a as a founder. People often think, yeah, I said it once. Right? I said it once and then, no, That's not how this works.

Thorsten Ball:

People it scrolls past in Slack. People forget about it. There's rarely a moment where somebody goes, oh my god, it's Thorsten again with his fucking feature. Didn't he say this twice already? That never happened.

Thorsten Ball:

You know? Like, maybe. But maybe once. I don't know. But I would rather er and decide of saying it once or twice too many times versus just one line.

Thorsten Ball:

Yeah. I shipped this amazing feature. And then it gets lost in the noise. And yeah.

Ben Orenstein:

Yeah. Have I been mispronouncing your name this whole time? It's Thorsten, not Thorsten.

Thorsten Ball:

I mean, one one is the English pronunciation, and the other is the German one. I don't

Ben Orenstein:

Alright. I'm gonna go I'm gonna start doing German, though.

Thorsten Ball:

I in I was in Australia for a year, and they couldn't pronounce it. They they just it ended up being Justin. I I said Torsten, and they were like, Justin?

Ben Orenstein:

And you were like, yeah. Yeah. Whatever. Yeah. I hear you.

Ben Orenstein:

Okay.

Thorsten Ball:

And yeah. Well, sorry

Ben Orenstein:

I didn't ask before I before I introed you.

Thorsten Ball:

No. No.

Ben Orenstein:

No. Thor's is fine. I

Thorsten Ball:

the way I explain it is, Thor and then 10. Thor's 10.

Ben Orenstein:

Thor's 10. Whatever.

Thorsten Ball:

Yeah. Okay. Nice.

Ben Orenstein:

I add it to my checklist for future guests.

Thorsten Ball:

So Check the pronunciation.

Ben Orenstein:

Ask yeah. Confirm the pronunciation before we start. Yeah. Hopefully, I will eventually made all of the stupid mistakes in the podcast, and, I'll I'll make it interesting advanced mistakes instead. Let's talk about Zed a little bit.

Thorsten Ball:

Yes.

Ben Orenstein:

Why why make an editor?

Thorsten Ball:

Why make an editor?

Ben Orenstein:

Yeah. Why Zed? What is what is Zed's what's in the DNA over there and the the brains of the founders where they're like, we have to make a new editor. We gotta start from scratch because nothing out there does what?

Thorsten Ball:

So the 3 founders of Zed, they all worked on Atom, which was this editor they built at GitHub. And Nathan, the CEO and one of the founders, he's been building text editors since he came out of college. That was, you know, the thing that he wants to build. And his dream, as far as I understand it, is is and has always been to build the best possible text editor. And then he was hired at GitHub, and they build it.

Thorsten Ball:

They build Atom. And Atom had I say it Atom, by the way. I said Atom, but they always say Atom. And then in transcripts, it shows up as Atom. So I'm now super tripping up at how to pronounce it, but you know what I mean.

Thorsten Ball:

And Yep. So they built this editor. They also built Electron, right, as part of this. So Yeah. These are 3 people who left their mark already on technology in some sense.

Thorsten Ball:

And at GitHub, I think, basically, they, at some point, pulled a rock under the project. I think, you know, you know, they don't wanna fund it anymore, put resources on it. And along the same time, Versus Code came along. And then I think they all went kinda separate ways for a short while, but they all closely stayed in touch. And I think, well, I guess, 2 or 3 years ago, they decided, no.

Thorsten Ball:

We have to do this. There's Versus Code. That's not the that's not the best thing we can have. There's there has to be a better version of this. And so they set out to build the best possible text editor they can build.

Thorsten Ball:

And, I mean, I'm sure you get this. Right? There's some people online or wherever they go. Hasn't this all been invented? You know?

Thorsten Ball:

Hasn't this all been done before? Why not a text editor? And I'm not gonna put words in their mouth, but my answer is is sure. But if people were to think like this, then we wouldn't have a lot of amazing technology. Right?

Thorsten Ball:

This, oh, it's been done before. Somebody did it before. We wouldn't have Vim because somebody would have said, why improve it? You know, VI improve. There's already VI.

Thorsten Ball:

We don't have to do anything. So they said, you know, we gotta build the best damn text editor. And the focus is there's a lot of lessons learned in zed, I think. And that is, with Adam, they went with Electron, web technology, JavaScript, and they kinda backed themselves into a corner where performance just did not go where they wanted it to go. And there were limits to what you can do with JavaScript on one side, and then electron c plus plus on the other side, and you want plugins too, and you know, you have a garbage collected language here, you have c plus plus over there.

Thorsten Ball:

If we wanna make something faster, then we kinda have to convert this part into this. So there were a lot of technological technological choices that resulted in this feeling of, oh, we can't we can't go further than this. This is holding us back. And then, like, I'm piecing this together only from talking to them in the last few weeks. Right?

Thorsten Ball:

This is it might be wrong here. But from what I understand, they didn't build collaboration into Adam, meaning that you can have multiple cursors in the same text editor and edit the same text file. But they also bumped into limits there because that had to be an extension too, you know, in Atom. And you you don't have access to the core thing, the data structures weren't there, and you basically I think Antonio explained it by saying, you had your text buffer in Adam, and then you wanted to build a CRDT version of that to enable collaboration, which means you had to juggle 2 of those because it wasn't built into this. So when they then set out to build Zed, they said, okay, focus performance, focus collaboration from the ground up.

Thorsten Ball:

We you know, that gives us technological choices. Rust. Right? We we gonna use the GPU. They've gotta build a GPU accelerated text editor.

Thorsten Ball:

We're gonna use tree sitter, which is this parsing library that Max built, also one of the cofounders, a parser generator toolkit, that allows you to I'm gonna use the wrong words here. But, man, I can't even come up with the wrong words. But the parses generated by TreeSitter, they're really fast, and but they also are made for text editors, meaning they can do incremental parsing or partial parsing. So that if you have a file, where you're typing, meaning you delete stuff and then you have invalid syntax in the middle, what TreeStudio can do is it can parse the top half, go to your cursor, realize there's something off off it, and parse the rest, and you can still get syntax highlighting. So ages ago, parses couldn't do this.

Thorsten Ball:

You would lose the syntax highlighting below the stuff you were editing or lose it completely or, you know, everything was gone. So that that was another thing in the toolbox. Right? So tree sitter, Rust, focus on performance, focus on collaboration. And then they, you know, set out to build it, and here we are.

Thorsten Ball:

You know?

Ben Orenstein:

Cool. Yeah. The I'm curious about where where we are in terms of, like, custom like, the the journey of this product. Like, seems like it's very early days. Probably not a ton of users yet, but maybe still, like can can people just use it, or is is there a wait list for it?

Thorsten Ball:

No. It's open source. You can download it. It's still in beta, but you can download it. We went open source a week after I joined, basically.

Thorsten Ball:

And after you know, they say correlations and causation, but a week after I joined, the numbers went up. But, you know, 26,000 stars on GitHub or something. Like, it Nice. Blew up on Hacker News.

Ben Orenstein:

That's very cool. I I I admire the the the collaboration stuff looks interesting to me. As someone that makes a development collaboration tool, I keep an eye on, you know, what's going on in the world. And it looks it's interesting. Like, there's, like, sort of a it almost looks like the Slack sidebar kind of where there's different channels.

Ben Orenstein:

Yeah. Except the channels seem to be like work channels. It's almost like I'm over here on the whatever project.

Thorsten Ball:

Yeah. Yeah.

Ben Orenstein:

Yeah. And you can I can see, like, oh, Thorson's in that channel, which means he's working on the sim VIM, whatever it is?

Thorsten Ball:

Or whatever.

Ben Orenstein:

Yeah. VIM mode. Exactly. And I can hop in there, and now we can talk. Yeah.

Ben Orenstein:

But I also, like, I can follow your cursor or something I assume is Yes.

Thorsten Ball:

And you can also edit with me. Like, you can we can pair in that. Everybody who joins has their own cursor. I can follow you around. You can follow me around, or you can edit the thing that I'm editing.

Thorsten Ball:

We can talk. We have, audio calls. I can screen share. So if I command tab out of that, you will then see my screen. But the terminal, if I command back and you see my, you know, normal cursor.

Thorsten Ball:

So, yes, collaboration fully built in. The left side bar, you know, where you have your project panel with the files, you can toggle this, and then you see collaboration and the channels. And, yeah, it's I wrote a newsletter post about this, about how how different it feels to work at zed because, you know, zed is developed in zed. And we don't use any other tool to collaborate. So that means we have Slack.

Thorsten Ball:

Right? We have Slack, but Slack is pretty quiet. And give you an example from yesterday. So this week we had quality week, meaning we just focus on bugs. Funnily enough for quality week, focus on quantity over quality, meaning let's get as many little things fixed as possible.

Thorsten Ball:

Right? And I said, I set up a Calendly link, and I tweeted out, hey. I'm doing office hours, quality week. Hop on like, send me a thing and then repair in zed on zed fixing bugs. Bring your own bug ticket or repair to get on something else.

Thorsten Ball:

And I have to say this, I'm shamelessly copying the calendar link from colleagues, Mikaela and Conrad, who's been they've been posting them in GitHub Issues and saying, let's work together on this. Here's my calendar link. But I've been tweeting this out and immediately got 5 people on, on, you know, my calendar. And yesterday May was the day before, I think it was Wednesday. But yeah.

Thorsten Ball:

Wednesday. 3 o'clock. I'm in this I'm waiting in the zed channel for this person to show up, Ricard, who said he wants to pair with me. And he shows up, and we pair on

Ben Orenstein:

I don't know what it was.

Thorsten Ball:

I looked at a GitHub issue. We realized it's harder than this. We look at something else. Let's try this. And he's been watching me.

Thorsten Ball:

He kinda I see his cursor move around. I see him getting more comfortable with how this stuff works. And then we get stuck on, somebody else joins and just watches, like, somebody from open source community. And there's a chat too, so I think they said hello. But it was just 2 2 of us.

Thorsten Ball:

And then a 4th person joins, who is also just an open source contributor, and he starts talking with us, and then we bump into this type error in Rust. And then it was the 3 of us for 45 minutes trying to fix this type error. It's just like, try try this. Let's turn this around. And then somebody asked, no.

Thorsten Ball:

No. No. What what about this? Let's comment this out. And then we would all you could see how the cursors would all end up in the same file again, and then they would kinda disperse because everybody would go and find different files in the project to see how other files do it.

Thorsten Ball:

So then, I was like, we're getting nowhere. So I left an emergency call in Slack, and I said, can somebody hop into that channel? Because I need help with async rust. So Conrad comes in. Just, you know, I didn't know that he but he just popped in.

Thorsten Ball:

Hello. Okay. Let's let me try to help you. So he's trying. He also doesn't figure it out.

Thorsten Ball:

But the, you know, signal, the bad signal was still shiny in Slack. So Mikaela then comes in, like, 20 minutes later, and she's like, what are you what are you doing? So it was 5 or 6 people in this. And she's like, okay. I can figure this, you know, here's what we can try.

Thorsten Ball:

And she figures it out in 20 minutes, and she's like, alright. I'll see you. Bye bye. And hops off. I got another call.

Thorsten Ball:

Hops off. And then Conrad was like, yeah. I gotta work on this other thing. Alright. Ricard and I are at it again.

Thorsten Ball:

Okay. Now we're unblocked by this. Let's continue with this. 20 minutes later, Mikaela pops in again. You figured it out, I'm done with the other meeting.

Thorsten Ball:

You still need help or are you good? No, we're good. Alright, bye. She hops off again. At this point, it was me just sitting in front of our computers for 3 hours just hacking on this.

Thorsten Ball:

And then we opened a PR, and I realized, you know, I was just sitting here, and people just came in and hopped off and all on schedule, basically. And, funnily enough, I you know, when I joined Zed, I was shocked that there were no video calls. But now I think there's something really magical about just audio calls. Right? And just being able to sit there and just talk to somebody and you shut up and you don't have to think about what your face looks like when you just focus

Ben Orenstein:

on the

Thorsten Ball:

code and then you talk and I don't know. So that that was a nice it wasn't it wasn't above average afternoon, but it wasn't out of the norm. This you're working on something, you're hanging out in channel, somebody drops in, drops out again, somebody helps you. And that's what this is about. Yeah.

Ben Orenstein:

That's very cool. Yeah. The no no webcams thing, I think, is actually interesting. So that tuple calls are the same way. Like, by default, they start off with with audio only.

Ben Orenstein:

And in fact, something like 85% of our calls are are audio only. No webcam. And I think that's great. It's actually, like, it's really fatiguing to have cameras on a lot, and it locks you in place. Like, I love to stand up and walk around.

Ben Orenstein:

Like, I'm my back hurts right now because we've been sitting here for an hour. Yeah. And, like, I would love to get up and stretch and look out the window and, like, grab a drink and, like, continue talking to you the whole time. Yeah. And but with the camera, that makes it more more awkward.

Ben Orenstein:

It does I don't feel as free to, like, kinda stroll around and and take care of myself.

Thorsten Ball:

Which is weird, no? Because I've been working remotely for 5 years now. And 4 and a half of those were video calls, calls, a lot of video calls. And I was a big fan of I always thought it's an anti pattern when you have a comedy call and everybody has their camera off. And I think that's the I still think it's an anti pattern.

Thorsten Ball:

If somebody has their camera on and everybody else has them off. I loved it at SauceCraft when there was a company meeting and there were 70 people with their cameras on, and you could see what everybody's doing and who moved apartments and whatnot. That was really cool. And I always thought this is a fundamental requirement to working remotely, seeing the other people. So then I joined Zedd, and I said, 3rd day, I was like, I didn't see anybody.

Thorsten Ball:

I just talked to people. That's and then I I sent Michaela a message. Hey. Can we do a meeting, but also with cameras? Oh, yeah.

Thorsten Ball:

Sure. And then we did this. And then I did the same with Conrad, I think. Can we do it with Cameron? He laughed, and he said, oh, yeah.

Thorsten Ball:

That's also what I asked about when I first joined, but I don't mind it now. And I thought he was crazy. I sent 2 friends. I sent messages. Like, they don't use cameras.

Thorsten Ball:

Yeah. That's crazy. And then I started to get used to it. And then this morning, I had a call and the camera on. It was so, oh my god.

Thorsten Ball:

What come on. You know? What is this? And there's a special intimacy to just voice only.

Ben Orenstein:

Yeah. It shouldn't be, though. Right? That's so weird. It is.

Ben Orenstein:

We we have so much circuitry for reading faces. Right? So it should feel totally, like, disconnecting and, like, off putting to, like, not be able to do that, I think.

Thorsten Ball:

I I told Nathan and the others. I said, I'm not sure I want video in zed. I think there's something magical about only boys. And it reminds me of being a teenager and being on the phone with my friend for 4 hours and

Ben Orenstein:

just Right.

Thorsten Ball:

Just talking and playing with what we did actually back then was on a phone call and then we played Quake 3 online, you know, before TeamSpeak, just on the phone. And there's also something that somebody once posted on Hacker News that I constantly think of. They said the latency was better with analog lines. The latency was it actually is faster than the speed of sound. So if you were on the phone to somebody, it feels like they're really close to your ear, you know?

Thorsten Ball:

Versus if you're in the room, do you perceive them as being, you know, at a distance to you? And so there's some special intimacy that it really does feel like they're next to your ear. And this is, you know, it's immediate blah blah blah latency. So there's something special about this. And, also, that obviously is not the case right now with, you know, digital calls over the Internet.

Thorsten Ball:

But all of that is to say, being on the phone for hours is not as straining as being on a Zoom call for hours.

Ben Orenstein:

Right. I think that's the diff yeah. I think that's the key thing here actually. It's like if you are if you're doing a 1 on 1, and I'm trying really hard to kind of read your mood and see how you're actually feeling. Like maybe I wanna see your face and your affect like

Thorsten Ball:

Yeah.

Ben Orenstein:

Are you sleeping? How's your how's your outfit? Do you look like you're, like, taking care of yourself? Like, I can read some extra clues if I can see you. Yeah.

Ben Orenstein:

But if you and I are staring at code and and we wanna be able to do it for hours on end and stay in the zone and stay focused, maybe seeing your face actually just makes that worse and harder, more fatiguing. Yeah. I I kind of fought webcams for a while, like adding them to 2 people because we added them at one point, you know, for for a period of time we didn't have them. And of course, people requested them a lot, and so we eventually added them. But then then I fought for a long time to hide the self view.

Ben Orenstein:

Like Yeah. Like, I I gave people a way to, like, briefly check what they looked like, but then, like, made it hide automatically and people, like, for I think for, like, a whole year, I kinda thought, like, no. Like, trust me. You don't wanna see yourself like this. Like, you don't

Thorsten Ball:

Why do you think that it like, I I've never gotten on that train, the height of you.

Ben Orenstein:

My argument is it's nearly impossible not to stare at yourself and not actually pay attention. Like, I think our brains are just, like, not like Imagine trying to talk to a friend and, like, there's a mirror pointed at you right next to them. Yeah. Like, is how's that gonna go? It's gonna go worse.

Ben Orenstein:

It's gonna be worse than if you just can't see yourself.

Thorsten Ball:

Oh, when they have mirrored sunglasses, and

Ben Orenstein:

they're like Yeah. Yeah. Exactly. Oh, yeah. Terrible.

Ben Orenstein:

Yeah. Yeah. So we're not like yeah. I think our brains don't don't want this. And people think they want it because they have anxiety about, what about my background?

Ben Orenstein:

What if my hair is weird? What if blah blah blah? What if I forget I'm a have my webcam on? And my answer is like it was for a long time, which is like, no. You trust me.

Ben Orenstein:

You you think these things are all true. You don't want this. Eventually, I caved. Like, you know, when 100 of your users ask for this thing, it's kinda like, alright, fine. I guess I will build this for you against my preferences.

Ben Orenstein:

But, yeah, to me, that that's actually the worst of now you're all the way down the the bad, you know, affordances for collaboration. Not only do you have video going on the whole time and all that that that cost you, but you also have a your own stupid face on it, and you're just staring at yourself and checking you yourself out.

Thorsten Ball:

And The the funny thing is though, I once did a podcast recording without video and that just completely tripped me up. And I think that was because the other person, the host, they were it was a pretty short form of podcast. And I think what they were trying to do was ask something, let the other person talk, and then ask something. But what I want is I wanna find out, is it resonating, this conversation? Like, are you also smiling, having fun?

Thorsten Ball:

But if the other person tries their best to stay quiet and I can't see them, it just feels really weird. You know?

Ben Orenstein:

Yeah. Yep. That makes sense. Yeah. I think being able to nod at someone as they're talking to encourage them to, like, keep going and sort of say, yep.

Ben Orenstein:

That's it. It's really useful. Like, but that's like a conversation. Like, the thing you're doing is you're making conversation. Right?

Ben Orenstein:

Like, the thing we're building together right now is a podcast episode. It is not code. We're we're not both looking at something else.

Thorsten Ball:

Yeah. I mean, I'm watching TV, but you know?

Ben Orenstein:

Oh, nice. Okay. Yeah. I'm staring out the window with the squirrels occasionally.

Thorsten Ball:

Yeah. Yeah. Did you try the VIM mode yet?

Ben Orenstein:

No. Not yet. I need to. I actually haven't tried the editor. I'm Okay.

Ben Orenstein:

So but but I'm interested. I'll give I'll give it a shot. I I I'm pretty hardcore VIM person, so we'll have to see, like, if you've got the chunks of VIM mode that make me, you know, like VIM.

Thorsten Ball:

Same. Yeah. But I did with I'm keeping notes now because we do have VIM mode, and I learned a lot of things about VIM that I'd never thought existed where people ask, why don't you do this? And you realize, I didn't know that's a thing. Today, I learned, you know, you can in Vim, you can press I to insert insert mode, obviously, or you can press a to append after the current thing.

Thorsten Ball:

I didn't know that those take account. So you can say 5 a, insert something, hit escape, and then it inserts it 5 times. I didn't know. Sure. Yeah.

Thorsten Ball:

Or, I don't know if this is how you pronounce his name. Scott Chaikin Chacon, the cofounder of

Ben Orenstein:

Oh, Chacon. Yeah. Yeah. Yeah. Chacon.

Thorsten Ball:

I think yeah. He, he opened a ticket to ask for r mode, the replacement mode, capital r in the VIM mode, which Yep. Rides over the things. And he says, I use this a lot. And I go, I've never once used this in over 10 years of VIM.

Thorsten Ball:

And he's like, I use this every day multiple times. I need this.

Ben Orenstein:

This is the yes. So one of the best engineers I work with said the problem with Vim modes in every every other editor is that they think, oh, we'll just implement the 20% of Vim that everybody uses. But it turns out everybody uses a different 20%.

Thorsten Ball:

Yeah. It's crazy. It's crazy.

Ben Orenstein:

So you're kinda signing up for implementing more, like, 80% of Vim.

Thorsten Ball:

Yes. And there there's the interesting thing now that people come to zed from Versus code, for example, and then they expect that the VIM mode in zed works like the VIM mode in Versus code, which is not there's like a, you know, it's like a Frankenstein kind of thing where they say

Ben Orenstein:

Oh, god.

Thorsten Ball:

They expect the interaction between the non Vim parts where you hit, say, command f to search to work a certain way with the Vim stuff, which is hitting slash to search for something. Yeah. And I was in that ticket going, why do you like, that's a you'd know, you search with slash. And they go, yeah. I don't use slash.

Thorsten Ball:

I go, what is what are we talking about here? Oh, yeah. I come from Versus Code. Okay.

Ben Orenstein:

Yeah. Yeah. Wow. Oh, man. That's that's tough.

Ben Orenstein:

Yeah. Don't yeah. I wouldn't say I would say don't don't offer to implement Vim mode with and be surprised. Like, know what you're setting up for, which

Thorsten Ball:

is It's hard.

Ben Orenstein:

Probably probably a lot of pain. But but, yeah, as a Vim user, I appreciate it. Yeah. I haven't used the editor. I haven't been ready any code.

Ben Orenstein:

I haven't written code in a long time. So but one of these days, I'm gonna have to pull, do a do a new coding project, and I'll I'll give it a shot.

Thorsten Ball:

Nice. Let me know what you think. That would be interesting.

Ben Orenstein:

Totally. Yeah. I'd be happy to give you some feedback. Maybe we pair on something, and so I can give it to you a lot.

Thorsten Ball:

Nice. That would be cool. Yeah. Adding your favorite, obscure Vim thing.

Ben Orenstein:

There you go. Yeah. That'll be the best the motivation. I'll find something. Wait a minute.

Ben Orenstein:

Alright. I'm gonna call a person.

Thorsten Ball:

The other thing was, here, capital u. I'm just looking at my notes. Undo all latest changes on one line. I didn't know that's a thing.

Ben Orenstein:

It's a really nice one.

Thorsten Ball:

Yep. Didn't even touch macros yet or registers or Mhmm. You know, all of that other stuff.

Ben Orenstein:

It is a deep it is a deep hole. It is a huge editor. Yeah. There's a lot. And once you get used to how quickly you can do things when you know all the pieces to not have that there is like, it's like this interrupt.

Ben Orenstein:

It's like, oh, man.

Thorsten Ball:

Yeah, there's really subtle things. I fixed a lot of things, or asked Conrad to fix them for me when it came on, because, you know, I've been using them a long time, but there's little things. I wouldn't even call them features, but it's just say you do a visual selection in Vim, and then you hit slash to search, and that carries the selection with it. Right? So you can select multiple things.

Thorsten Ball:

And then then you go in insert mode or whatever. The state of that selection and when it appears and when it disappears and which key you hit, that's not something you consciously think about when you use it. But then, in zed, there was this thing where you would do a selection and then you change something and then you undo it, it restores the selection because selections work differently in zed. So they're part of the undo stack. So you can select stuff and then unselect stuff.

Thorsten Ball:

And that just tripped me up because it was this little thing that I'd never thought about.

Ben Orenstein:

Right.

Thorsten Ball:

Yeah. And I was off.

Ben Orenstein:

Yeah. Yep. Well, I wish you luck. That's that's a hell of a yak to shave amongst a Yeah. A whole, field of yaks.

Thorsten Ball:

Yeah. We can already see the skin through of the yaks. So, you know, it's all Nice.

Ben Orenstein:

Okay. Yeah. Cool. Alright, man. This was great chatting.

Ben Orenstein:

I appreciate you coming on the pod.

Thorsten Ball:

Thank you for having me, man. This was great.

Ben Orenstein:

Yeah. So try out Zed. Buy Thorsten's books. Follow him on Twitter.

Thorsten Ball:

Subscribe to my newsletter.

Ben Orenstein:

Oh, yeah. My t shirts. Yeah. Totally. By the way, I I just just last thing.

Ben Orenstein:

Your your pitch for Register Spill Mhmm. Which is you have a blog already, and then you made this other thing. And you said, it's thoughts I can't keep in my head. I set the timer to 60 minutes. Start writing, and hit send.

Ben Orenstein:

Not a lot of editing, just off the cuff. It's what I'd reply to you with if you'd asked me what's on my mind this week. What a pitch. That is just a great great product. I I'm I love it.

Thorsten Ball:

Thank you. It's it's I have to admit it's started to morph into more than that in that when I I I don't know. We're over time. I don't know. But if you got a couple of minutes, I'll just one thought and this that is Yeah.

Ben Orenstein:

Hit me with that.

Thorsten Ball:

I started setting myself the challenge. Can I write on a schedule? Can I do this weekly? I hate expectations. I hate schedules.

Thorsten Ball:

So I thought, I I I'm just gonna try. Could I do this every week? Write something. And, also, you know, the, say, the earthquakes on Twitter and social media, I thought, maybe some other place where I can, you know, collect some thoughts. And it started with exactly this.

Thorsten Ball:

I set myself a timer 60 minutes. Write something down. Boom. Hit send. Sometimes didn't even read it twice.

Thorsten Ball:

But then what happened after a while is you start thinking on Wednesday, I would start thinking, what am I gonna write on Saturday or Sunday, whenever I write this? And I would have my notes and, you know, notes file on my phone, just Apple Notes, and just jot down some ideas. And then you flash them out one day. And then you sit down Sunday morning and go, this is what I'm gonna write about, and write this whole thing down. But the really interesting, you know, change is you walk through life thinking, what can I write about?

Thorsten Ball:

That puts you in a state of noticing, and it puts you in a state of taking notes and kind of molding stuff over in your head. Yep. And it's nice. It's

Ben Orenstein:

Yep. I like it.

Thorsten Ball:

Can be stressful. I'm still not sure what I'm gonna write tomorrow on Sunday. But it's I'll take lying and bad thinking over thinking about what I'm gonna write over a lot of other worrying. You know? It's it's Mhmm.

Thorsten Ball:

I don't know.

Ben Orenstein:

Yeah. It's like why gratitude journals work. It's because if you know you're gonna have to write down some things you're happy about, you are looking for those things.

Thorsten Ball:

Yes. Yeah. Exactly.

Ben Orenstein:

I love that. I've been making Twitter videos recently and really enjoying it. And, so I started, you know, Twitter videos list, and I find it's helping me kind of catch things that I like, oh, I think this is interesting. I think this is, like, worth talking about. It's a thing I don't hear talked about very much.

Ben Orenstein:

And, like, and I like that my brain has that process running it, actually.

Thorsten Ball:

Yeah. Yeah.

Ben Orenstein:

I think it's kinda watching for interesting interesting nuggets.

Thorsten Ball:

That's cool. That's how you should go through life.

Ben Orenstein:

I'm gonna yeah. I'm gonna put a very casual low pressure pitch out to you of writing

Thorsten Ball:

about this. About yeah. The the habit of writing.

Ben Orenstein:

Mhmm. Like, what having this thing does to the way you think and why why you like it.

Thorsten Ball:

Will do. That's a good idea. I'll write this down.

Ben Orenstein:

Cool. Low low pressure. I won't be sad if you don't write with this. I'm just throwing it out there. Alright, man.

Ben Orenstein:

This is a delight. Thanks for coming by.

Thorsten Ball:

Thank you.

Ben Orenstein:

Alright. I'm gonna stop recording. Bye.