Hallway Track

Joe sits down with Mitchell to discuss all things terminal!

Joe Tannenbaum is a Laravel developer, living in New York, who has (since recording) recently joined the Laravel team.

The conversation delves into Joe's impactful presence on Twitter through his compelling terminal experiments, his approach to using the terminal for development, and his experiences transitioning from an arts background to tech.

Joe also shares insights into his daily routine, the development of his terminal-based projects, and his contributions to the Laravel community, including his involvement in PHP NYC meetup.

  • (00:00) - Joe Tannenbaum
  • (01:52) - A day in the life
  • (07:49) - The Terminal Guy
  • (12:54) - Idea generation
  • (17:22) - Use a Mac
  • (20:25) - Blowing up on Twitter
  • (22:41) - Getting in the game
  • (23:36) - Expo is dope
  • (27:49) - Speaking at conferences
  • (30:47) - Laracasts course
  • (32:20) - Screencasting.com and buying all the gear
  • (34:52) - The future of the terminal
  • (38:36) - PHP NYC
  • (41:37) - Life outside of work


Want to apply to be on the show? You don't need to be a "personality" - you just need to have one.

Apply to be on the Hallway Track podcast

Joe's links:
twitter.com/joetannenbaum
cli.lab.joe.codes
joe.codes

Mitchell's links:
twitter.com/mitchdav
linkedin.com/in/mitchdav
atlas.dev
recruitkit.com.au
hallwaytrack.fm

Creators & Guests

Host
Mitchell Davis
Founder of Atlas Software and RecruitKit
Guest
Joe Tannenbaum
Full stack developer focused on Laravel/Inertia.js/PHP/Vue/React. 👨‍💻 ssh https://t.co/g8wHZbkoKR✏️ https://t.co/3Fhk4TRSR4💨 https://t.co/Tgp2exhtdo

What is Hallway Track?

The hallway track is the best place to discover new people in the Laravel scene. You'll hear conversations between people you already know, and get a fresh perspective and stories from people you don't.

Mitchell Davis:

Good day, and welcome back to the Hallway Track podcast. My name is Mitchell Davis, and I've got a really interesting episode for you today. I spoke with Joe Tannenbaum, Laravel developer in New York, who's been really impressive over the last year on Twitter, where he's been showing us all some very interesting experiments experiments he's been creating in the terminal. We recorded this episode on March 6th, which is now 2 months ago. Because of this delay, which is entirely my fault, I internally debated whether to release this episode or not.

Mitchell Davis:

But I figured that since Joe was kind enough to put in the effort to record with me, I needed to come through and release it for you regardless of how late it is. Because of this, you'll hear us talking about some upcoming things, like LARIcon India, which have now already happened. I'm gonna make a real effort to get episodes out as quickly as possible after recording them for future episodes. Since recording, Joe has now joined the Laravel Organization to continue striving forward with Laravel development, and I'm so stoked for him. What a great addition to the Laravel team.

Mitchell Davis:

In this episode, we go through his approach to the terminal, the future of TUI's, his course, and some behind the scenes of hosting PHP NYC, a meet up in New York. If you're enjoying the show, please do me a favor and reply to me on Twitter. I'm Mitch Stav. There's a link in the show notes. I'd love to hear if you find the show engaging and if you have any feedback.

Mitchell Davis:

With that being said, I hope you enjoy the show. So, Joe, can you introduce yourself for me?

Joe Tannenbaum:

For sure. My name is Joe Tannenbaum. I'm a software engineer at a company called Digital Extremes. We are a gaming company. We make a game called Warframe famously.

Joe Tannenbaum:

And, yeah, that's how I spend my day to day.

Mitchell Davis:

So let's start by asking, what does a typical day look like for you?

Joe Tannenbaum:

Typically, my day starts with taking my son to school. I have a 2 year old son. School is generous. It's kind of glorified day care, but I I walk him there. And I live in New York City, so we do a lot of walking.

Joe Tannenbaum:

That's sort of a a big mode of operation here. Welcome to school. I come back. I make some coffee. I I kinda dive into work, but by the time I get home, it's usually around 9 AM or so.

Joe Tannenbaum:

And I take care of work stuff until noon. I kind of, you know, fixing bugs, doing doing generally what everybody does at work when you're a developer.

Mitchell Davis:

Sure.

Joe Tannenbaum:

But, around my lunchtime, I try to sneak in, you know, while I'm eating lunch, something extra for myself, whether it's, you know, working on a little app that I'm working on or, you know, learning something. I I try to absorb something, try to get something done that's not directly work related for a little bit, finish out the workday, and then spend as much time as possible with my wife and my son. And we have we have dinner, pretty standard. And once he's in bed, I'll catch up for a little bit with my wife, but then I generally dive back in. And especially, during the days when I was doing a lot of these, like, prompts experiments, it was a lot of just trying things.

Joe Tannenbaum:

It was something I was really like, my brain was really latched onto, and I really wanted to, like, explore it as deeply as I could. And so it was a lot of nights after my son went to sleep where I was just, like, hopping back on the computer and doing another, you know, hour to 3 hours of programming just to, like, have fun. It was just to have fun. And my wife had other things going on, so I wasn't, like, abandoning her, but it was you know? That that was what a typical day looked like for a long time, and now it's, I've got a couple other irons in the fire so that that pattern hasn't exactly stopped.

Joe Tannenbaum:

You know, it's pretty constant right now.

Mitchell Davis:

Yeah. Yeah. Cool. I I know the feeling of, like, it gets into you where it's like, oh, this is just you're having so much fun, like, working on something new. It's exciting.

Mitchell Davis:

And all of a sudden, it's like, yeah, it's 1 AM or something like that. It's like, oh, god. I need sleep or I can't work tomorrow, you know, like

Joe Tannenbaum:

Yeah. Especially feeling. When when you have a young kid, that's a that's an alarm clock you can't turn off. So that's you know, when that kid's up, you're up. So whatever sleep you've gotten at that point, that's what you're getting.

Mitchell Davis:

That's it. Yeah. It's not getting any better. Yeah. Cool.

Mitchell Davis:

I want to ask you about how did you get started with software? So maybe you can touch on, your introduction to terminal to the terminal and to those types of applications, but also more broadly, how did you get started, you know, with your career?

Joe Tannenbaum:

Yeah. For sure. I had a little bit of an unconventional background. I my dad was super interested in tech, so we always had computers around. We had some of, like, the original Apple twos.

Joe Tannenbaum:

I I can't remember which ones they were, but some of those original Macs, and and we would we would play with those at home. And, you know, he we would just kinda tinker, and I would build my own little HP desktop computers and things like that. So that was always kinda flowing through, but we are a big arts family. I did a lot of theater. I did a lot of I was a dancer.

Joe Tannenbaum:

You know, it was a different life back then. I went to school for acting, but all through it, I was doing tech. I was I was teaching myself programming. I was I had learned HTML and CSS and PHP and JavaScript because that was just sort of a parallel love. I loved theater.

Joe Tannenbaum:

I loved dance, but I really also love tech. And so when I graduated, I didn't wanna wait table, so I was a freelance developer while I was trying to audition and trying to make it happen. And, you know, I realized that industry wasn't for me, and I kind of went full force in the tech direction and was temping for a while, like, doing, like, you know, more higher technical temp work, basically, and continually teaching myself and trying to, like, up the skill set and and and, you know, tier up constantly. And then one of my first major jobs was I I was temping at a place, and I think I was building, like, HTML email templates, something like that. And I was you know, it was real real sweet gig.

Joe Tannenbaum:

Yep. And, then my boss said, you know, we'd love to hire you. We don't we don't have, you know, you you seem to be a good employee. We'd love to, like, hire you full time, but you don't know ColdFusion, and that's what we write in. And I was like, well, can you give me 2 weeks?

Joe Tannenbaum:

Can we can we can we try this? And he was like, I mean, sure. Okay.

Mitchell Davis:

Good

Joe Tannenbaum:

luck. And I like yeah. I dove head first and, you know, I was I'm not gonna claim to be an expert at the end of 2 weeks, but I I could contribute. I could I could contribute back to the cold base. And I don't know if you know what cold fusion is.

Joe Tannenbaum:

Do you know what cold fusion is?

Mitchell Davis:

I know of it. Yeah. I never used it myself. I used, CodeIgniter and Zen. Yeah.

Mitchell Davis:

Never touched on ColdFusion. Fusion.

Joe Tannenbaum:

Yeah. Cold fusion was an Adobe proprietary language that, was sort of tag based, and then you could dive into, like, a sort of Java sublanguage thing. I don't even know. I'm I'm I can't even remember. It was so long ago.

Joe Tannenbaum:

But, yeah, I worked at that for a little while by company and then ended up just kind of going full force into PHP and, ended up at in Laravel World and, yeah, kind of just escalated from there. It was you know, every job just sort of teared me up a little bit more and and taught me new skill sets. I I managed a small team for a little while. I was probably too young to do that. Didn't really make a lot of sense, but, you know, you live and you learn.

Joe Tannenbaum:

And I was a freelancer for a long time. And and now I'm, due to health insurance and and the and the like. I'm back in the workforce. That's it. Yep.

Joe Tannenbaum:

Yeah.

Mitchell Davis:

All the things that Americans have to deal with.

Joe Tannenbaum:

Yeah. It's a very unique situation that we're that we're dealing with.

Mitchell Davis:

I won't comment. Yeah. So then specifically for the terminal, because it is a big part of your current, you know, your uplift in popularity and fame and everything that's happening for you, People do kinda currently at least know you as the terminal guy because of some of the amazing things that you're doing. So what sort of fostered that, like, initial interest in the terminal?

Joe Tannenbaum:

I just always liked writing little utility scripts for myself in the terminal. I thought it was a really quick way to to get a task out or to to improve a workflow. I was just always creating these little, like, micro scripts that were doing things. And especially when I was freelancing, it was so useful to just say, like, oh, I need to interact with my timer's API, and I also need to interact with FreshBooks, my, like, accounting software, and I need them to connect. And I didn't wanna write a whole web based application for that.

Joe Tannenbaum:

It was just so much easier for me to just bang out, like, a a terminal command, basically. Mhmm. And so that's what really, like, kind of kicked it off. It was just these little utility scripts, and then prompts came along, and I think I think the origin was that I was I was, trying to prep a PR for Jess. I was trying to prep PR for for and I I saw the inner workings, and I was like, this is so elegant, and it's very it, like, really makes sense, and it's nicely abstracted away.

Joe Tannenbaum:

And I don't know. Let's just play in the space and see what happens. And, and that's what happened as I just started cranking out these weird little experiments that for nothing, just for myself.

Mitchell Davis:

Yeah. And you went nuts with it because you've got yeah. There's, like, 10 of them on there, I think, Maybe 10, somewhere around there.

Joe Tannenbaum:

Something like that. I think there's so many more that got left sort of at the side of the road that I was like, either abandoned or they're I just never really made them good enough to actually show anybody. But, yeah, there's there's a I did a lot of them in a quick succession. Yeah.

Mitchell Davis:

Have you have you got any idea how many people have connected to that, like, that server? Is it We won't get too technical. I know you've got some other episodes coming up. But, yeah, like-

Joe Tannenbaum:

Oh, sure. Yeah.

Mitchell Davis:

Where do you host this, and do you have any analytics on how many people have used

Joe Tannenbaum:

it? No. So I, I hosted on DigitalOcean. I initially had it on, like, one of these little $5 droplets because that's everything kind of can live on a $5 droplet when you have no users. But, initially, suddenly, it kinda blew up and the server was constantly going down, so I moved it over to a bigger it's the biggest server that I run right now.

Joe Tannenbaum:

And it's not like there's so many people going. Actually, one of the biggest problems was that I realized, bots started hitting it. And because p it's a long running process, the bot would hit the server and just wait for a time out. So it was just kinda clogging everything up along the way. But I do have some, like, light logging on the server.

Joe Tannenbaum:

I don't I have not checked it. I'd I've never really looked at who's coming or what's going on and yeah. But it's from the reaction on Twitter, people seem to be enjoying it. So I'm not sure how many people that is, but people seem to be enjoying it in terms of, like, a distribution method. I thought so so there's a guy called Matthew Phillips.

Joe Tannenbaum:

He's the the cocreator, I think, of Astro, and he did a similar little experiment where he put his blog on the terminal, like, completely independently of of me, and I I happened to come across it. I was like, hey, man. This is this is awesome. And he's and he mentioned he had analytics. And I was like, what what are you doing?

Joe Tannenbaum:

What's the secret? I couldn't figure out how to get, like, any analytics on this thing. And he's like, oh, I'm just I'm just logging it. I was like, oh, okay. Good.

Joe Tannenbaum:

I don't feel so so dumb. I thought there was, like, some secret sauce somewhere that you know? But, yeah, the, the

Mitchell Davis:

Keep it simple.

Joe Tannenbaum:

The ability to spin up I'm using a Go I think it's called GoWish. The so go, sorry. Not go. Charm. Charm Wish.

Joe Tannenbaum:

So Charm is a Go open source library, and Wish is their SSH server. So you can kind of run it in isolation on your server so that it can't access anything else on the server. It's just kind of running in that Go process. And, not knowing Go, that was challenging. I know enough Go to be, like, dangerous, but not enough to be, like, actually proficient in it.

Joe Tannenbaum:

And so that was I think that took longer to set up than any of the CLI experiments that I did. It was just that little getting that to work correctly.

Mitchell Davis:

I can imagine. I've only experimented with Go through, Caddy, the web server that gives you, like, automatic SSL encryption and stuff. And, yeah, learning how to compile, Go it down into a binary, like, man. And I was running it on, I couldn't get it to run locally on my computer. So I was running everything through a GitHub action.

Mitchell Davis:

And, man, I must have done, like, 50 commits to this workflow file to try and get it to run and then sit there and wait. And, yeah, it was a it was a chit chat.

Joe Tannenbaum:

The the the the GitHub action shuffle. You sort of, like, commit. Wait. You hope. Is it green?

Joe Tannenbaum:

Is it red? Like, it's Yep. You know, we've all been there. Spent a lot of time in those trenches. Yeah.

Mitchell Davis:

So let's talk about your ideas. Now firstly, if you, the listener, hasn't checked out these like these apps that you've got available through, SSH, if you head to Joe's Twitter, it's right there in your in your bio. But I'll also include that in the show notes. These are pretty incredible and it's a like really interesting take, on getting applications out there. You've got like a Nissan, car dashboard.

Mitchell Davis:

That's really interesting. You probably wouldn't see that on the web, but it makes total sense. The terminal looks really cool. What else have you got? You've got your resume, which I think is what kind of initially brought a lot of attention to this.

Joe Tannenbaum:

Yeah. Yeah.

Mitchell Davis:

It's super cool. Like, the the flicking between the different tabs that you've got on there. Like, it's really nice interactive, experience on the terminal. So I want to talk about how do you come up with these ideas? Yeah.

Mitchell Davis:

What what goes through your mind as you're doing those?

Joe Tannenbaum:

Yeah. I think what what would generally happen is, this was truly just a learning ongoing experiment. So I was like, okay. How can how far can we push this and how what else can we do and what haven't I done and what haven't I tackled? So every one of these experiments is just the focus was really, okay.

Joe Tannenbaum:

Can I animate something? Okay. Can I animate several things with with various timings? Or can we do async PHP and make a little chat app? Or, you know, how can we do some complex like, that Nissan dashboard was just about, like, okay.

Joe Tannenbaum:

Can I get some, like, complex layouts going? Because that little it's kinda hard to describe, but, like, the the speed indicator is sort of this, like, curved line, and it was that that Yep. Destroyed me. I think that was the the thing that took the long because it was a curved line, and then I had to animate these bars following the curved line. And that that that was the entire challenge.

Joe Tannenbaum:

The rest of it was like, okay. Cool. I have some, like, sort of, like, little bars and meters here, but that was the thing that was the nugget. That was the thing I wanted to, like, figure out. And so all of them were driven by what's the next thing I wanna figure out, basically.

Joe Tannenbaum:

And some of them there's a there was a Twitter account called, there is a Twitter account called retro tech dreams, I think, and that was where the Nissan came from because I I I happened to see it, and I was like, woah. I I could do that in the terminal, and there's some interesting challenges in this. And so, there's one I did. I think they also kinda tweeted out about the original iPad interface. And so I I recreated the iPad in the terminal, which was, like, really fun.

Joe Tannenbaum:

And, again, like, it's never the thing you think it's gonna be that's tricky about that. The trickiest part of that was the sliding animation between screens. Like, I broke it a 100 times before it was right. You know, it's it you would think like, oh, it's probably connecting to Spotify and making it work that way and dah, dah, dah, dah, and it's not it's not that. It's always the simplest part that that is deceivingly the hardest part.

Joe Tannenbaum:

Yep. Yeah. So that's that's where the inspiration came

Mitchell Davis:

from. That with a lot of projects yeah. I find that with a lot of projects, like, it is always the part that catches you by surprise. You would think, oh, yeah. That you know, that'll be fairly simple.

Mitchell Davis:

Can end up taking the longest time. And it's hard to predict when that's gonna happen as well. Like, I guess this more relates on, like, not just building, like, these types of applications, but building out, you know, projects for us, like building client projects or internal projects. Yeah. You can get so blindsided by, like, oh, no.

Mitchell Davis:

That should be easy. And then it ends up taking 3 days, you know, whatever. So I can imagine that happens a lot. As you're writing these, like, maybe if we can just slightly delve into just a little bit of technical stuff, You're not having to run this on a remote server as you're developing it. Right?

Mitchell Davis:

Like, are you able to run these commands locally and then you just, you know, PHP artisan blah blah blah, whatever, run that, make sure it works there, and then you can upload it?

Joe Tannenbaum:

100%. Yeah. That's it's happened locally first. Neft I I would never have done this if I had to go on a remotes or a first. That is that is my nightmare.

Mitchell Davis:

I feed for you. You're Saturday there.

Joe Tannenbaum:

No. No. Everything's locally. And And then and then once I felt like it was ready to go, I would I would push it up to the to the lab as I would call it.

Mitchell Davis:

The lab. Yeah. Beautiful. Okay. So then question for you.

Mitchell Davis:

How often are you using the terminal in daily life? Like, are you a terminal guy? Like, you're a real nerd with your editors and stuff. Like, what does that look like for you? What how do you work?

Joe Tannenbaum:

I think people would probably assume that I have, like, heavily customized, and I'm a Neovium guy, and and I'm kind of none of those things. I like using the terminal for the utility aspect of it. And probably if I had time one day, maybe I'll dive into, you know, further customization or something like that. But right now, it's it just doesn't feel necessary. It feels extra.

Joe Tannenbaum:

So I I I just use it for the utility that it is. But I do you know, for my personal work, for my side projects and things, I use the terminal all the time for, you know, running artists and stuff or quickie little scripts or something like that. I but at work, I don't tend to use it as much. It's, and I think, honestly, it's because, it's a Windows machine that I'm not I'm not, like I don't feel totally at home there. And even though we have, like, WSL on and all these things, I still, like, feel it just feels, like, very clunky to me, and I'm so ingrained in Mac that it, you know, it it messes me up a little bit.

Joe Tannenbaum:

So a much more gooey base at work.

Mitchell Davis:

There's no way you can get them to get you a Mac?

Joe Tannenbaum:

No. Unfortunately. Yeah. They that conversation, that ship has sailed. Yeah.

Joe Tannenbaum:

Yeah.

Mitchell Davis:

Yeah. Sure. I had to convince, Chris who works with me. Originally, he when I first hired him, he was like, I use Linux and, you know, I really don't wanna make the switch because, you know, we're we're all in on Max, at least I have been, you know, prior to him joining. And I was like, man, I'm telling you, like, this is gonna be a problem.

Mitchell Davis:

I really need you to work with me. And is there any way you can work with a Mac? And he's like, yeah. Okay. I'll, like, I'll try.

Mitchell Davis:

I was so thankful. And then he did. And now, like, he's he's a wizard. I think he still yearns for using, Linux, and he he does with his personal projects. I know.

Mitchell Davis:

But, yeah, I think I've got him with the mask. It's just so much easier.

Joe Tannenbaum:

Yeah. It's also easier when everybody's just on the same platform. It's just you know?

Mitchell Davis:

Exactly.

Joe Tannenbaum:

The cross pollination, the the the workflows, they all just kinda everything works together a little tighter. And I think that's the reason why they basically wouldn't give me a Mac because they were like, well, that's not the vibe here. And I was like, okay. Alright.

Mitchell Davis:

Yeah. And, like, it it is valid. The reason I pushed so hard with the Mac for Chris was because, like, we write mobile apps as well.

Joe Tannenbaum:

Oh, sure.

Mitchell Davis:

And trying to use, yeah, trying to use, like, the Ios simulator to check, does this app that we're writing for a client, does it work on a on an iPhone isn't possible on other operating systems. Mac is really

Joe Tannenbaum:

correct, you

Mitchell Davis:

know, locked down as you can imagine. So so we're all in on the on the Macs. But anyway, cool. So then, obviously you have really come to the limelight quite a bit lately. Like, I've I've been sort of going back and forth with you a little bit over the last few months.

Mitchell Davis:

As I've seen, some of your tweets will blow up, you know, when you release a new experiment or you talk about what you're doing. Obviously, the reaction from the community has been really positive. Has it surprised you the level of interest that, the, like the broader Laravel community has had in the terminal? Or did it sort of feel like, yeah, this is interesting, you know, people should find it interesting? How have you felt?

Joe Tannenbaum:

I I quite honestly shocked. I've been shocked because I I was just doing these things for fun, and I thought they were interesting. But I I didn't really they're not, you know, inherently useful. It's I don't know how useful it is to build an actual application this way practically for most people. And so, you know, it didn't feel like something applicable to most people.

Joe Tannenbaum:

And so I said, okay. Well, you know, whoever likes it likes it, it doesn't really matter. I'm just kind of putting things out there. But people like it, and so I'm happy about that, but I'm certainly surprised. But but the the biggest benefit from it, honestly, is is that I feel like you know, like I said, I was a solo solo freelancer for so long, and I was really not engaging with the community very much.

Joe Tannenbaum:

And most of my friends are in the arts because that's where my entire upbringing in my school and everything was. So I didn't really have a tech community, like, around me, and, you know, my wife is so patient. And, you know, when I'm get excited about something in tech, I I talked to her about it, and she's like, yeah. Cool. That's great.

Joe Tannenbaum:

That's awesome. And she's she's amazing, and she's a really great listener. And, but but I wanted somebody who knew what I was talking about. And so I was like, okay. I wanna dive in.

Joe Tannenbaum:

And this wasn't even the method to do that. I just was sharing this because I thought it was fun. But the but the nice side effect is that, like, I feel like I've gained, like, so many friends, and I'm excited to, like, go go to Laracon and see people. And I'm excited to you know, it's it's been a really nice side effect of this whole thing, and that's it's been the best side effects of this whole thing is that I feel like I have a community around me now, which is really nice.

Mitchell Davis:

Absolutely. It it's, I know you talked about this, pretty extensively on the Ripples podcast that you've just been on, and I'll link that in the show notes. But, yeah, that that, like, sense of building a community and sharing what you're doing, it's really important, and it's really beneficial as you're seeing. I'm starting to see that a little with putting myself out there doing the show. We've just released 2 articles which have gone fairly well on our Oh,

Joe Tannenbaum:

the Inertia stuff.

Mitchell Davis:

Blog, and I'll link those as well. Yeah. That's right. So just done something with, Inertia, writing about why we use it on basically all of our client projects. And that's gone really well.

Mitchell Davis:

There's been like quite a, yeah, a very positive reaction. If there's been negative sides, I haven't seen it yet. So no one's reached out to me, with any with any negatives yet. But, yeah, that's been fun. And then we've also done an article, just earlier this week about expo and building mobile apps, and that's resonated quite well with the, like, the expo community.

Mitchell Davis:

It even it's been retweeted by expo themselves, which is like this framework for those that don't know. It's this framework on top of React Native, and they've got all these amazing tools and packages and everything, and it just, like, really helps streamline the mobile app development, process.

Joe Tannenbaum:

Yeah. If I if I can interject on that, like, you you that I'm so interested in that because I built a lot of React Native apps as a freelancer, but I never had the opportunity to, like, get my hands on expo properly. And you you love it. You're you're all in. You you're this experience.

Joe Tannenbaum:

Okay.

Mitchell Davis:

I wouldn't recommend any other way because, yeah, we've toiled with just non, expo, so just purely react native apps before. And man, it feels like, like I've seen the light, you know, with moving to expo because you just get so much stuff out of the box. They've got packages that wrap around every little thing that you could do on any type of phone. They have we we tried, we tried probably 3 years ago with a client app to try and write some, like, automated scripts that would allow us to build the client app as a part of, like, CICD process. And we're never able to get it to work, and it it got real dark.

Mitchell Davis:

I was, like, like, googling on, like, the Apple developer, website that they've got and finding, like, okay, these are all of the, the different commands that you can run from the terminal for building your app, and you've got to have all of these different arguments in the right order. Total shit show.

Joe Tannenbaum:

Man, I've I've been there. It's it's rough. It's rough. The tabs become, like, entitled because they're so small. You've got so many open just going down all these paths.

Joe Tannenbaum:

I I've totally been there. I know exactly what you're talking about.

Mitchell Davis:

It's awful. And then introducing EAS by expo, which is this, like, amazing suite that they've got. It's exactly what I was looking for 3 years ago, and we found it now probably 6 months or so ago. And then Chris has just written up this nice article sort of highlighting the build and release process for our client apps now. And it's literally we just push the code up to GitHub, and then we've got a workflow which runs, like, just a few commands.

Mitchell Davis:

Yeah. And now there's an app sitting on my phone in test fly.

Joe Tannenbaum:

Oh my god.

Mitchell Davis:

We hit a button and it releases to the public, you know. Yeah. So if you're at all interested in Yeah.

Joe Tannenbaum:

That's amazing.

Mitchell Davis:

If you're interested in mobile apps and building them for yourself, Chris and I are going to be working a bit more on some articles for, introducing mobile app development to Laravel developers because from what we've seen, it doesn't feel like there's a lot of overlap there between like, Laravel being predominantly websites. But there's some really interesting and cool things you can do with mobile apps and expo is the way to do it in our opinion. So, yeah. So so that article got retweeted by Expo, and they reached out as well and were, like, hey. This article is really great, and, they even want us potentially to write up some content for them, and we're gonna try and integrate some yeah.

Joe Tannenbaum:

That's amazing.

Mitchell Davis:

It's really cool.

Joe Tannenbaum:

That's amazing.

Mitchell Davis:

Yeah. So and Chris knocked that article out in, like, a day and a half, And I'm so impressed because

Joe Tannenbaum:

I'm so Those are the ones that hit, though. It's like it's like when you just, like, check it out there, it just blows up. That's awesome. That's right.

Mitchell Davis:

The Inertia article that I wrote took me like 2 and a half weeks. I started on it after Ian and Aaron on the most of the technical podcast. They sort of talked in contrast in LiveWire and Inertia.

Joe Tannenbaum:

Right.

Mitchell Davis:

And I was like, right. I'm gonna get right onto this. So that is, yeah, it's like 2 and a half weeks later. But anyway, it's out now and it's done. So I'll link all of that in in the show.

Mitchell Davis:

Awesome. Awesome. Anyway, back to community, which is where we were before and the response. So you brought up on ripples that you are speaking at Laricon India, which is amazing. So congratulations.

Mitchell Davis:

I bet you're looking forward to that.

Joe Tannenbaum:

Yeah. I'm very excited. As somebody with an acting background who now works in tech, this is this is right in the zone. I'm good.

Mitchell Davis:

You're gonna be all set. That's awesome. When when is that? Those that don't know, myself included,

Joe Tannenbaum:

it's March 23rd 24th. So we're we're coming up. It's coming up soon.

Mitchell Davis:

Yeah. You are coming up. Right. You feeling ready? You feeling pumped?

Joe Tannenbaum:

Yeah. I'm feeling ready. The the first half of the talk is normal talk slides, everything. The second half of the talk, I I'm planning on live coding an app, and I've coded the app a bunch of times now. I'm still refining it and making sure that it's, you know, understandable within this the time span that we have.

Joe Tannenbaum:

So it's, yeah, I'm I'm very excited. I'm very, very excited about it.

Mitchell Davis:

Amazing. I hope that there's videos because I'm very keen to to see. Yeah.

Joe Tannenbaum:

Me too. Yeah. Me too. I hope there's videos to put out there.

Mitchell Davis:

Yeah. Well, on a similar note, like, I'm also trying to interject what I'm doing in- as a part of this show. I'm doing my first ever talk, at a local meetup. Certainly not the scale of Laracon India. That's amazing.

Mitchell Davis:

But I hope that there'll be like 10 or 15 people. Yeah. I'm really, really excited. So it's going to be, I think it's called the PHP slash Laravel Sydney meetup.

Joe Tannenbaum:

Okay.

Mitchell Davis:

He might want to work on the branding there. But, But yeah, I'm going to do a talk about AWS and some of the really interesting, features and functions that you can add to your app, your Laravel app with like very few lines of code. You can add really powerful, new features using AWS.

Joe Tannenbaum:

That's awesome. That, that rabbit hole goes deep. That's like a huge topic.

Mitchell Davis:

It does. Yeah. And I've seen just just I think it was yesterday I saw someone tweeted about how complex, and I completely agree, how complex the UI is for AWS and how it does feel very disjointed. I completely agree with all of that, but it still stands. There's some amazing things that you can add to your app with, like, really few lines of code, and I'm going to show that in this talk where I want to do it, like, you know how Taylor, is a baller and he'll just have like a single route file, like his web dot PHP.

Mitchell Davis:

I want to do it like that. Yeah. I'm like, okay, I just want to show you like really basic, front end and then this is the code that, like, the PHP code that will integrate you with AWS to do, you know, whatever. So, yeah. So I hope that that will be recorded, and then I can share that out as well.

Mitchell Davis:

But, yeah, I'm I'm just having a ball with it. I'm I'm writing the talk now. It's it too is around the same time as you'll be in India. It's at the end of March. So I've only got a few weeks.

Mitchell Davis:

But, yeah.

Joe Tannenbaum:

Break a leg, man. That sounds that sounds fun.

Mitchell Davis:

I did also wanna touch on, Jeffrey now quite publicly, reached out and said, hey, dude. We should get you on Laracast. Are you going ahead with doing that? Is that happening?

Joe Tannenbaum:

That is. I'm working on that now. Yeah. That's that's another I'm doing a lot of new things right now all at the same time. And so, you know, I did have a day last week where my brain just kinda shut down.

Joe Tannenbaum:

It was like, can't can't shove anymore in here right now. And so I I took a moment, but, it's all exciting stuff. It's all stuff I'm really excited about. And, yeah, Jeffrey reached out. That was potentially the most surprising thing that has come from all of this because, you know, that tweet itself said, like, I don't know if anybody even cares about this.

Joe Tannenbaum:

That was the that was how I introed the tweet. I didn't even, like, think anybody would be interested. And, yeah, Jeffrey was like, yeah. You wanna do this? And I was like, yeah.

Joe Tannenbaum:

Of course. I want you're yeah. Of course, I wanna do that. So, Yeah. Yeah.

Joe Tannenbaum:

Yeah. It's a skill I'm learning. I had to, for before I, like, submitted it to Jeffrey, I had to do the first episode, like, 3 times because it's just, you know, I'm not used to, like, talking out loud in a clear way while I'm writing code. That's that's not my normal mode of operation. So, that was a skill I had to learn.

Joe Tannenbaum:

But, yeah, it's it's going really well so far, and I'm really happy with with, the episodes that I put together. So, yeah, in in the works.

Mitchell Davis:

How many episodes do you think there'll be?

Joe Tannenbaum:

I think there's gonna be, like, 10 to 12. I think it's gonna be in that range. We'll see. I yeah. I think so.

Mitchell Davis:

How long does that take? Like, because I I haven't spoken with anyone who's written the course yet, and you could sort of see this as a course. Right? Yeah. So how long has it taken you so far?

Mitchell Davis:

How far through the process are you? How long do you reckon it'll take?

Joe Tannenbaum:

I think it's gonna get faster with future episodes. I think the process is a little slow. I'd like to, like, figure out you know, I've never done this before, so this this was new. And, so it's been a fairly large time commitment for the first, like, 2 episodes, but that's okay, and that's to be expected. And, but already 1 to 2, I've knocked down the time tremendously.

Joe Tannenbaum:

Like, I I understand. You know, I don't know if, Aaron Francis has that screencasting.com, course. And I don't know if you have it or not, but, the number of times

Mitchell Davis:

I have. Yeah.

Joe Tannenbaum:

That I have dipped back into that just as just to be like, okay. How do I how how do I grease the wheels? How do I make this easier? What's what's the best route here? It's it's invaluable.

Joe Tannenbaum:

And so much of it is, like, figuring out how to make the editing easier on the other side. And he mentions that in the course, and it's huge. Like, I can't put enough emphasis on that because in the second round, that's what saved me the most time is I knew, like, okay. If I just pause here for a second, this is an edit point, and I don't have to, like, barrel through and just, like you know? Yeah.

Joe Tannenbaum:

So, their time is reducing. The first the first episode took a very long time. Yeah. I'll I'll I'll be the first to admit.

Mitchell Davis:

In a minute. I won't probe any further. That sounds painful. But I can cosign absolutely on, aaron screencasting.com. Amazing.

Mitchell Davis:

Very, very good resource and well worth, your purchase if you're at all interested in creating content.

Joe Tannenbaum:

Absolutely.

Mitchell Davis:

I haven't gotten to any editing stuff yet, but I have read I have watched rather all of the, like, choosing your equipment and things like that. And I'm kind of someone who he advises in some of the, like, the episodes, like, hey, you don't need to go, like, balls to the wall and buy all the gear or whatever. But sitting behind my webcam right now is a nice new camera and, yeah, all of this stuff. I'm like, I'm all in. So hopefully, middle of this year, I'll have some some content.

Mitchell Davis:

I've just got to get my backdrop sorted, but, I'm working on it.

Joe Tannenbaum:

You can't tell tech people to, like, take it easy on tech. Right? Like, if you're like, here are the 3 options. This is the best option, but you'll need that. You're like, well, obviously, I'm getting the best option.

Joe Tannenbaum:

Let's, like, let's, like, hit ourselves.

Mitchell Davis:

He knew that when he made that that video. He's like, oh, you don't need this, but, yeah, I bet he knew. So maybe back on the point of the terminal, I wanted to ask you, where do you see the future of the terminal? Because currently, everything that I interact with, except when I'm writing my own commands or, you know, using SSH when I need to. It's basically all GUI.

Mitchell Davis:

Right? I'm doing everything either in the browser or in an IDE or, you know, word or whatever. So where do you see the future of the terminal?

Joe Tannenbaum:

It's a good question. I don't know if I see more terminal apps popping up necessarily. I don't think that's probably the future. But I think, you know, with I don't know if you've heard of Warp. It's a terminal that's that's on Mac now.

Joe Tannenbaum:

They're doing some super interesting things in that space. And, you know, the fact that they're integrating AI in a super helpful way is it, you know, makes it so much more user friendly. If something goes because if the scariest thing about the terminal is you're using it excuse me. The scariest thing about the terminal is you're using it and something goes wrong and you go, I don't know what this is or, you know, I can't even break in to interpret this message. And, you know, they've done the thing where it's just like there's a little lightning bolt, and you explain this to me.

Joe Tannenbaum:

What just happened here? And it does its best. You know, it gets it right a lot of the time. Sometimes you have to do a little extra interpretation, but it takes a little bit of that edge off. And so I would love to see people using the terminal more, but also, like, do what you love.

Joe Tannenbaum:

I don't know. It's it's dealer's choice. I'm not going away from it anytime soon. Like, I'll still be building on my little scripts. Like, every time I wanna prove out an idea, the first thing I do is build, like, a custom artist artist in command super fast and just kinda work through the idea that way.

Joe Tannenbaum:

I I I try not to get into the browser until I'm, like, forced to, basically. And that's Right. My choice. That's just that's just where my brain lives because I just think it's faster to just sort of prove it out in a simpler environment. So I don't know.

Joe Tannenbaum:

I think, like, terminal themselves are getting smarter. I don't know how many, like, text based user interfaces people are gonna be, like, you know, spinning up or anything. But, if you ever want to, it's it's it's fun. I I find it fun. You know?

Joe Tannenbaum:

I don't know if it's for everybody, but I I think it's a blast.

Mitchell Davis:

Yeah. Yeah. Totally. I, we just earlier today, actually, Chris, who works with me, we started working on, image moderation feature as a part of a client project. Cool.

Mitchell Davis:

And, you know yeah. And being able to automatically detect, like, hey. This is an inappropriate image. We probably wanna delete this. You know?

Mitchell Davis:

And his approach with some direction from me was, let's make this a command first and just sort of, like, feel it out, you know, see what the SDKs are like on on AWS. And, yeah, just try it that way. So for certain things, that's the approach that we'll take because, like, building a file upload

Joe Tannenbaum:

Yeah. Exactly.

Mitchell Davis:

In the browser, and then you need some controller or whatever. Yeah. Like, all of that stuff, totally, it's, it can just be a bit easier just attacking it from the command line. But it's funny. I'm no good at drawing, but I I'm quite good visually at, like, conceiving what it is I'm I'm getting at.

Mitchell Davis:

So, like, I can already see, like, okay, this is roughly what the page will look like and I can see, like, all the elements there. And then having to try and, like, describe that to someone else, often it is just easier. I just get into the HTML or know, into whatever I'm doing and, just start mocking it up that way. That's the way that I sort of approach problems. But, yeah, certainly the the command line has its, has its benefits for quick things definitely.

Joe Tannenbaum:

Totally. Totally.

Mitchell Davis:

So as we get closer to the end of the interview here, I did also want to touch on, you run the, a meetup in New York City. What's it called? How long have you been doing it? And you just did one recently, so how did that go?

Joe Tannenbaum:

Yeah. It's called PHP NYC, and I just did the first one. I that's another new thing I decided to do at the same time as all these other new things. But, I I kinda touched on this on the on the at the meetup, but, basically, I was just I had a a gnarly cold in December. I was bogged down on cold medication.

Joe Tannenbaum:

I was listening to I I think it was Northeast West with, Michael Turndon and Jacob Bennett, and they were talking about how meetups had had fallen off. And it was such a shame, and, like, we missed local meetups. And, you know, I'm kinda, like, all messed up on cold vacation, and I was like, I'm gonna I'm gonna run a meetup. Let's make this happen. So I, like, tweet out, and then I kinda just, like, immediately passed out because I was just a mess.

Joe Tannenbaum:

And I woke up next morning, and, like, people people were into it, which was great. It was more more traction. I just wanted to get a couple people. I just didn't know anybody in my city who was really, you know, writing PHP and was an active developer. And I again, like, community building.

Joe Tannenbaum:

And so, yeah, I I was like, okay. Well, I guess I now I have to do this. And it took a little longer than I thought. Just so many things were popping up and, you know, some life stuff got in the way, but we did it. We got the first one in the bag.

Joe Tannenbaum:

It happened last week, and it was awesome. It was sort of this, like, small but mighty crowd. I think there were, like, 15 of us there. And we had some great speakers, Chris Morell and, John Drexler were there and, like, just crushed it. And it was it was great, and everybody was so happy to just, like, be in the same room as each other and just, it was great.

Joe Tannenbaum:

I I have I have things I would change about it for next time, but it was, in terms of, like, not the event itself, but some of the logistics around it, I would probably adjust a little bit. But, yep, it was great. I I already can't wait to do it again. We're gonna do it again April. I'm gonna pick a date and just just get in the books.

Joe Tannenbaum:

Yeah.

Mitchell Davis:

Congrats on, on running a successful meetup. I listened to, John on the thunk podcast and, sounds like he had a ball. It was very well received. So yeah. Is there a recording of that one?

Joe Tannenbaum:

Yeah. I was editing it right before, this podcast, so I'm gonna be putting that up this week. I have recordings of both of the talks, and I'm gonna I'm gonna throw those up online so people can see it. Really worth watching. They both just, like, absolutely destroyed it.

Joe Tannenbaum:

I I mean, we didn't even they kinda gave me, like, little synopsis. They were like, Yeah. I'm gonna talk about this. And I was like, great. That sounds awesome.

Joe Tannenbaum:

Like, anybody talking is perfect. And, I didn't really know them prior to this. And so they came in. They both just absolutely destroyed and, like, you know, walked out, tipped the hat, and we're like, I did it. I was was like, yeah.

Joe Tannenbaum:

You did. You really did.

Mitchell Davis:

CEO.

Joe Tannenbaum:

Yeah. They, they were amazing. They were amazing. Hats off to them.

Mitchell Davis:

Okay. So my final question for you, what else do you get up to outside of work? And I guess quite a few of these things that we've talked about are work adjacent. Is there anything else that's maybe not tech related at all that you get into?

Joe Tannenbaum:

I don't have a lot of time for other things at the moment, so it's very it's very computer oriented at the moment, unfortunately. But, you know, we we live fairly close to Central Park. I'm in Central Park with my kid a lot. That's that's a pretty constant activity. And I'm not a runner, but I I run.

Joe Tannenbaum:

That's my preferred form of exercise. So I, it it allows me to sort of, like, disconnect. I don't run with headphones. I don't run with anything really on me, and I just take in either, like, we have I run on the river. I run on Hudson River or I run through Central Park, and those are my 2 preferred routes, and that sends me out.

Joe Tannenbaum:

That's a good that always feels good. So that's all I've had time for lately, and that's what I've been doing. So, yeah, that's it. It's more than

Mitchell Davis:

true. That's amazing. Yeah. You're a you're a no headphones guy. I can't do it.

Mitchell Davis:

I don't know. I I listen to stuff as I so I walk a fair bit. I walk my dogs and I also walk without them. And every time, like, I've got headphones on, I don't really I haven't, like, self analyzed why that is because because I'm quite comfortable with my own thoughts. But, yeah, I just it it that's my time to consume stuff.

Mitchell Davis:

I don't find I have a lot of time for, like, being on Twitter through the day, though I'm trying to step that up a little. But, yeah, I find, like, okay, that's my time when, like, I hear about what's going on in the community or, you know, I listen to Conan O'Brien Needs A Friend and stuff. Like, that's my jam is when I'm walking or or doing that exercise. Totally. So yeah.

Mitchell Davis:

So not for you.

Joe Tannenbaum:

Well, I I wear headphones so much, and I I I'm kinda listening to podcasts, like, between doing things. So I'm only ever listening to, like, 5, 10 minutes of podcasts at a time, which is a little now that I'm saying it out loud, it sounds a little insane. But when when I go for I to to caveat the no headphones thing, I do have to pick something to think about. If I if I don't have, like, something to mull over, I just start thinking about the run, and that's bad. That's that's thumbs down.

Joe Tannenbaum:

But, I'll you know, if it's like something like, you know, oh, I need to buy a birthday present for my wife. Let's just sort of, like, think through ideas or think about what that might be, or I need to solve a coding problem or I need you know, just kinda pick a topic and marinate on it for the course of the run, and that that's enough for me. It takes my mind off of what I'm doing, and it allows me to, like, think through something. I can't I'm I'm not just, like, enjoying nature because that's that would be harder for me significantly. But yeah.

Joe Tannenbaum:

Yeah. I it works for me. I know it's not for everybody, but it it feels good to me.

Mitchell Davis:

Amazing. Well, is there anything else that you wanted to cover that we haven't talked about?

Joe Tannenbaum:

This was great. No. I'm Happy? Yeah. Thrilled.

Mitchell Davis:

Cool, man. No worries. Well, thanks, Joe, so much for your time. This has been great. It's been so cool watching your rise, and all of the really interesting things that you're doing with SSH, little old SSH.

Joe Tannenbaum:

Cool SSH.

Mitchell Davis:

Which I stopped using ages ago, and then now it's back, baby. It's back.

Joe Tannenbaum:

We're doing it. We're bringing it back.

Mitchell Davis:

So well done. Thank

Joe Tannenbaum:

you for having me on. I really appreciate it. This was fun.

Mitchell Davis:

Yeah. No. No worries at all. I'll leave links to everything that you're doing in the show notes. Where can people find you on the Internet?

Joe Tannenbaum:

Twitter is the best place at the moment. So you can find me at Joe Tannenbaum on Twitter, and, I'm not well, I was gonna say I'm not as active, but I I'm doing okay. I'm not as active as I once was last year, but I'm I'm still chucking things up every once in a while. So

Mitchell Davis:

busy now.

Joe Tannenbaum:

Yeah. Yeah. And and but, but, like, I'm looking to connect. So, like, you know, hit me up and, you know, connect.

Mitchell Davis:

Beautiful. Sounds good. Well, again, thank you so much, and, I'll see you later.

Joe Tannenbaum:

See you later. Thanks.