**Adam:** [00:00:00] I would say like the architecture for b2c In our case for Stat Muse, it's like the opposite of what I like, feel like I'm super into these days.
It's like a elastic bean stock. We're talking like it's elixir. Yeah, it's, I hate that. I do too.
**Lane:** I think the only apps with a really satisfying architecture don't actually have any users. Yeah, yeah. Is, is my experience. Yeah. I love it. Doesn't work new dev stack until we started having users and now it's a mess.
**Adam:** Yeah. It changes me. It's just like you're constantly. You don't like build for scale.
**Lane:** Adam Elmore founder of Stamus, hero of a w s code streamer on Adam. Do dev did I miss anything?
I
**Adam:** don't even know anymore. I, I've, I've spread myself too thin. I don't know. I do a lot of weird things.
**Lane:** Yeah. So here's the thing. I, I found you on Twitch and at first, I, I can't remember where I, I actually found that you were an AWS hero, but at first I thought you were just an [00:01:00] ego maniac. I was like, I was like, AWS hero, like calls themselves that, and then I looked it up and it's actually a thing.
Yeah, yeah. That I didn't know about. So let's start there. What is an a w s hero?
**Adam:** Yeah, so heroes. I think if like I started my career 15 years ago in C Sharp, in the net world, if you're, if you've ever been a part of that world, I think they have Microsoft MVPs. It's like that if you don't know what that is.
It's like Google Cloud experts. There's a few different, every big cloud provider has a name for just people in the community that are sort of very vocal about their technologies. So I'm pretty in aws and have been for six, eight years now. So I guess I've just talked about it enough online that you get recognized as.
Like a figurehead within the community. I guess we're sort of championing uh, AWS technologies.
**Lane:** Yeah. I saw you had like an AWS podcast. Do you still run that as well?
**Adam:** Yeah, so aws.fm started because that domain was just too cool. I didn't know AWS let [00:02:00] any AWS dot whatever domains go. And that one was out there.
So I bought it and I was like starting a podcast. And I did it. I think I did 30 some episodes. We ended up. Like the last episode I did of that was with Dax and it was like I wanted him to just come on and be a co-host with me, and then we just rebranded completely and now it's, it's tomorrow.fm, so it's a different podcast.
We don't just talk about aws. That was another thing. I felt like it was so narrow, like I can only ever talk about one thing and there's a lot of things I want to talk about. So yeah, we rebranded and re-shifted efforts into a different podcast. Got it.
**Lane:** Yeah. I, I love Tomorrow FM, by the way. Oh, thank you.
Complaint is, there's not enough
**Adam:** episodes yet. We're doing two a week now, so it's new. We're gonna see if it, if we can hold it up. Yeah,
**Lane:** I I, I go to the gym, I hit the sauna. I listen to tomorrow fm. Oh, that's awesome.
**Adam:** Wow. It's so weird to hear. I'm sure you'll get this, like when you hear somebody listen to the pod, you just don't know if anyone's out there.
**Lane:** It's very, analytics on podcasts are like, They don't really
**Adam:** exist, right? Yeah, they don't, yeah. I don't know what I can do with the down. Does, did, does that [00:03:00] mean they listened? Did they downloaded it? I guess that's close enough. Just
**Lane:** storing it on their hard drive. Yeah. Okay. Cool. So you're an AW S hero.
What you, you did podcasts, you talked about Aw ws. I'm guessing that be, that's all stems from, you guys use AWS really deeply in Stamus and, and maybe at your other companies.
**Adam:** Yeah. So we stamus we co-founded in 2014. So it was right as I was sort of like being made aware of aw w s We actually started and built it on Azure and then hired our first like DevOpsy kind of person who was really a aw w s, his name is Ben.
And that sort of started the process of moving everything in Stamus over to, to aws. And I would say Stamus was like a unique experience for me in that. I was, I was running it for five years and as a co-founder I sort of had full autonomy to kinda like just play in AWS for those five years. So I really got hooked on kinda like event-driven architectures and building out all these weird exotic serverless things.
Cuz we were just like a, a studio for a while where we were doing weird [00:04:00] projects for random sports companies. So I got a lot of exposure and like on my own where I could just explore and, and that really started, I guess my love for it.
**Lane:** Yeah. Just to, to clear things up for everyone who doesn't know are, are you the CTO O of Stamus?
Is that the
**Adam:** Yeah, I was I co-founded it in, like I said, in 2014. I was C T O until 2019. Okay. And then I took a three year hiatus, we'll call it my co-founder and I just didn't like each other. At all. That's just a whole nother like, startup story, I guess. But are you friends again now or We're Yeah, we're friends again now.
So he asked me to come back like six to eight months ago. But I rejoined after three years off, so now I'm just kind of like, I don't even have a title. I'm, I'm actually just like a, I write code. I'm, I make things an ic. You're back to the interview. I'm back to, yeah. I'm an individual contributor.
Exactly. Awesome.
**Lane:** That's why you have, you've de-stressed your life and can now stream code. Yeah,
**Adam:** that's the, exactly, yeah. No, it's exactly right. I don't have to think about the high level stuff. I don't like to hire people. I just, I get to build, which is what I [00:05:00] like to
**Lane:** do. Okay. Yeah, no, that's that's fantastic.
And now, now you like to build with Laravel is what I, is what I understand.
**Adam:** I do. I'm very interested in Laravel there. It's funny you ask that cuz there's just like this joke that Dax keeps poking at me, that I haven't actually done anything with Laravel yet. I just tweeted about it and it's true.
But I'm very interested. It's, it's it's something you, you you're aware of it if you're on Twitter, all these other communities, things that people are into and they're really into 'em. And then when you finally break the veil and you peek at it a little harder and you realize there's actually something really compelling there.
That's where I'm at with Larry though. I just, I broke the veil a little bit. I looked at the docs. I set up a new project, that kind of
**Lane:** thing. That's how I am with with Rust. I've never actually written anything like production, even close to production in Rust. But like I've done the tour of Rust.
Yeah, yeah. The book. I look at how they handle errors and I go, Ooh, that's, that's really sexy.
**Adam:** That's cool.
**Lane:** Yeah. And
**Adam:** then I don't do anything with it. Yeah. There's so many technologies I've never gotten past that with, so I, I, I don't want to disappoint anybody now that they're very excited. Are you building something with Larry?
Probably. I hope maybe
**Lane:** we'll see. Yeah. Like my [00:06:00] problem is I'm just too productive and go at the moment. Yeah, and like too focused on building my thing, so like I just don't
**Adam:** Yeah. Haven't gotten right. It's hard, like when I think of another idea and I'm like, oh, I could, I could build that in this new thing, or I could just do the thing.
I can do it really fast in and maybe I just wanna do it really fast. It's, it's hard to break into new stuff. Yeah.
**Lane:** Side note, I, I guess I'm gonna actually put myself out there and embarrass myself a little. I don't know how to type properly. Yeah, like on aboard? Yeah. Yeah. Yeah. Oh yeah. So
**Adam:** I took it for granted that not everybody, like we had, like in school, I think they had a type in class, like in middle school.
**Lane:** Oh, I did, but I played flash games. Oh, I didn't learn. I love it. And so I, I'm like senior engineer, engineering manager, head of engineering, and like I type in 75 words per minute, like with three
**Adam:** fingers on each end. That's not bad. I mean, If you're not usings, the real typing method
**Lane:** for like, not being on a home row, like Yeah.
Anyways is unlearning right now. Now sounds
**Adam:** bad. Like you're trying to actually learn
**Lane:** the Yeah, the real way. I've been learning for three weeks now. I'm resetting my [00:07:00] brain and it is awful. Yeah. Now I'm bad in both. Like I can't type the way I used to and I still also cannot
**Adam:** type on home road yet.
It's like using one of the super ergonomic keyboards, like you're just bad at everything for a while. Have you considered like one of the other layouts or something like workman or Dvorak or whatever? Because if you're having to start from scratch, I've always wished I did something cool like that. Might as well start with the cool things.
Is Workman the
**Lane:** one with the levers? Have you seen that one? What I'm talking about? Oh, the care quarter. That sounds like it could be what I'm
**Adam:** talking about. Yeah. Like your fingers are on like little joysticks.
**Lane:** Yes. Yeah. Yeah. You like do combos, uhhuh and like they go like 400
**Adam:** words per minute or something.
Yes. I've got one in the closet. I started to play with it and it's very hard and I will never learn it. Yeah. I might try and teach my kids like if their first exposure to typing is just learning how to type it. 400 words a minute. I feel like superpower. It would
**Lane:** amazing. Yeah, cuz like I get told that I need to try vim and stuff, but I can't even type properly.
So it's just a losing
**Adam:** battle. Yeah. So when, when you say like you don't know how to type, is that, are you somebody who would say oh, great touch [00:08:00] typing? Because people say that to me sometimes and I'm like, you mean you mean typing? You mean typing? I'm just typing, I'm typing. That's, I take it for granted that is that.
You don't touch, you have to look, or you just, at this point, you just don't use the normal five finger
**Lane:** approach. So with, with my, the old way I did it, I could pretty much touch type still. The only thing was if my hands got off, I'd have to look, because I, yeah, yeah. Like my, my pointer fingers weren't on the ones with
**Adam:** the bumps.
Yeah. I like the bumps. I like the bumps on the, the J and the whatever. Yeah,
**Lane:** like my, my left hand would be on like W A S D because of first person shooters. They like ruined my anyways. It's just like a whole nightmare. Man, I've spent, I've wasted way too much more time talking about this, but unlearning things is hard and like it is now I'm gonna tie it back into into development.
So one thing I want to dive into with you specifically is You co-founded Stat Muse, you know all about a u s I really want to dive in if you're willing to, to some of the architecture of Stat Muse, like how you guys deploy on [00:09:00] aws, because it's not every day that I get the chance to talk to someone who founded a B2C company.
I've spent a lot of time in the B2B SaaS space and like how we think about architecture in that world is, is totally different. We don't care about seo, right? All we do is we just care about getting like our data aggregated on time. Yeah, maybe we could just jump into from a high level, how did you build state news and, and maybe what is state news for
**Adam:** for some of those?
Yeah, no, absolutely. And on that last point, I think just the idea of B2C being unique. I, I'm only putting it together like in the last six months that Oh yeah. Not like everyone else. Is mostly building B2B stuff and scale is totally different and everything about it's different. And I, I didn't put that together.
It's like, why does everybody use Versace? Or why does everybody do this and this? And it is just very unique. Not a lot of B2C stuff, I would say. Stamus just is a what is Stamus? It's just like sports statistics, search engine with a lot of personality.
**Lane:** I told my employee that I was interviewing one of the founders of Stamus and he was pumped because he knew [00:10:00] Stamus.
Awesome. He didn't know who you were. Yeah. Yeah.
**Adam:** He knew Stamus. I prefer it that way. NBA fans. Yeah. No, that's awesome. Yeah, it's it's like a search engine. We started just as a search, like a text box, just like Google, and we take natural language questions and then answer with Originally just tables and then we started doing charts and tables, and then we started doing like actual natural language generation, which is just a nerdy way of saying it just answers you back, like with text, with English.
So that's what sent me chat jeopardy. Like we're talking way pre Yeah, we're talking like 2014. This was before. Yeah. Before it was really easy to do this kind of stuff. I think the, what we're seeing now is totally gonna transform this space. But even there's been iterations since we started.
Stamus of other better tools we're built on like very old school NLP tech techniques. Stanford and LP was this Java library from the University of Stanford. I just realized, I don't know, is it Stanford University? University? Most my career is
**Lane:** actually an nlp so we can, we can get Oh, really? A little bit, yeah.
Okay. I, I'm a data, like I am a backend engineer, [00:11:00] but like at, in the B2B space, that honestly sometimes just means data engineer. Yeah. So did a lot with NLP on Twitter and Reddit ingesting
**Adam:** like very cool, cool data and stuff, so Yeah. Yeah, yeah. I know what you're talking about. Okay.
So I also wanna talk about, I don't know what the backend is, but we'll talk about that maybe later. When you say backend and I'm actually this, I'm actually that I don't know any of those things. We started really simple. It's like we've watched the wave of things like Alexa, you know, without a whole voice wave where like Google Assistant and Alexa were in an arms race, and that was the big topic that kind of happened right after we started Sat Muse.
So we got a lot of traction on the voice platforms because you could ask questions just Oh yeah. Like you would to a device and we would, we provided answers. So we actually did like official deals with Amazon and with Google, and we're answering sports questions on those platforms. We did it with like athletes voices.
So like you asked a question about Peyton Manning and he would come on and tell you about his career, answer the question in his voice Anyway, did a bunch of weird stuff and architecturally, I would say, It's reflects all that weird stuff, like eight [00:12:00] years of building. Like people think like you sat down and you like diagram out how your ar your, your application's gonna be built and then like you go and build it.
But really it was just like something different every year to meet the needs of that year. And we've really only grown a lot in the last two years I think. Okay. Five years at Stamus. My first five years, I don't know. I think we did 10 million searches in those five years and now we do more.
You don't believe if things are going super well, right? Yeah yeah. They weren't going great. Our, my co-founder and I, our relationship was really strained after five years. But I, I think we just lived long enough to start seeing the rewards now, like more than 2 million searches a day. Wow.
Whereas, you know, the first five years that we maybe did 10 million, something like that. That's crazy. Yeah. Yeah. It's grown a ton and we get like a, a million new inbounds from Google, so SEO is huge. For STA news, we answer just tons of Longtail sports questions and
I would say like the architecture for b2c In our case for Stat Muse, it's like the opposite of what I like, feel like I'm super [00:13:00] into these days.
It's like a elastic bean stock. We're talking like it's elixir. Yeah, it's, I hate that. I do too. We've actually moved away from it in a few different, we've got a lot of different things at Stat Muse. So there's, there's like an F Sharp. Repo that's, it's deployed, you know, on Microsoft Boxes, but we're migrating it to net core so it can run on Linux boxes and vie and containers and all these things.
But that's like the natural language part. But then there's the web part, which is all like Elixir Phoenix. It runs on e C two. It's just elastic bean sock. And then we got a ton of little, tiny little services that do different things like stitching audio files together to answer questions or generating images for social, or not for social, but for like unfurled images.
Yeah, just a lot of different random stuff. We do use a lot of like modern serverless stuff for new things. And we are rewriting the whole web app actually in astro. So moving away from Elixir Phoenix. Anyway, that was a, a lot of thoughts about what it's architected with, I guess. No, that's
**Lane:** great.
I, I, I [00:14:00] think the only apps with a really satisfying architecture don't actually have any users. Yeah, yeah. Is, is my experience. Yeah. I love it. Doesn't work new dev stack until we started having users and now it's a mess.
**Adam:** Yeah. It changes me. It's just like you're constantly. You don't build for scale.
You like build for whatever scale you need, and then you're constantly finding you have to change things as it starts to grow. And we've, that's been no different for us. Like we've had to make a lot of different changes to like alleviate bottlenecks. We, we would like crash every Super Bowl because for whatever reason we get more questions on the Super Bowl.
Than any. And it's not even like the NFL's not our biggest sport, but that was our biggest scaling problem, you know, a few years ago and now we sort of solved that. But like you're just always solving those problems. It never goes away.
**Lane:** Okay. So you mentioned you have this event driven architecture somewhat.
So you've got, you've got kind of your, your front end in, now Astro used to be Elixir Phoenix. Then you've got all these events going on in the background. You're processing them. What do you mean? So just to give [00:15:00] you, like you and the listeners some context, we did have an episode with Dax, where we talked about serverless in, in some amount of depth.
Yeah. But what do you mean when you say event driven? I don't think we used that word once when we were talking about serverless. Yeah,
**Adam:** it's it's this idea. I, I don't know, some people say I think it's tied into the ideas when people say microservices, like lots of different disparate systems that communicate through message buses, I think is, is kinda the idea.
And when
**Lane:** you say message bus, are you talking like rabbit Mq Kafka? likeQ?
**Adam:** For me specifically? Yeah. Sqs Sn s more of the Aw Ws first party stuff, just cuz that's, I don't know. I've drank the Kool-Aid, like I'm pretty invested in what I can do in an AWS account. Yeah. But yeah, same concept. Any, any event, bus or message?
Bus, I think Ultimately the event-driven thing is, is just a rebranding of serverless. I think that's what I've taken from it. The people who, like the serverless DA team, the serverless developer advocacy team at aws, they talk a lot about event-driven architectures. So I think they've rebranded this idea of.
What people used to call [00:16:00] serverless now is just this sort of watered down marketing term, but Ari, event-driven architectures is not watered down. It's like you build these systems that are very resilient. They're very hard to monitor, very hard to figure out what's going on at any given time. But they have got all this fault tolerance built in and it's not, it's like the opposite of a monolith, but I think the microservices term is maybe not right.
I don't know. I don't really know what microservices are. Like what is micro, how, how big is it before? It's not micro, I dunno.
**Lane:** Yeah, that, so that I completely agree with. I've spent a lot of my career in like microservices. Yeah. But I, I think that's the wrong term. I think services is maybe the right term.
Yeah. It's like there's services all kinds of different sizes. Yeah. Does all, does your app like run in one process on right, on one box or does it not? And if it doesn't Yeah. Then ah, you kinda have services. Yeah, exactly. Kinda how I think about it. Okay so event driven. One of the ways that I think about it is the idea of okay, if you have, if you have different services that do different things, and they, they communicate over some synchronous protocol, like just http, right?
Yeah. Making chaining, like [00:17:00] http requests from the services Maybe that's not event driven, whereas if it's more like pulling from a queue that is event driven, is that how you think about it? Or would you say even like synchronous stuff can be like, I think
**Adam:** that makes sense to me. I think the asynchronous part is, is kind of part of the definition in my mind.
You've got these very stateless services that are communicating asynchronously and responding to things. I know Lego. Is a good example. Like they've put out a ton of stuff just about how they build event-driven stuff at Lego where you've got like an order taking place and that ends up somewhere and it gets picked up by other things.
They got multiple things maybe refining famous to those famous tech
**Lane:** company,
**Adam:** Lego. Yeah. They really are like, they're like the famous serverless. Thing, I don't know, something about Lego. They've become this champion of, of serverless technologies. It's really sheen bristles at, at Lego, who's, he's a, a hero uh, AWS hero.
He, he sort of like started the modernization at Lego and building out all this serverless stuff. And now there's kinda like this flagship like, look what they've done with event-driven architectures.
**Lane:** Got it. [00:18:00] Okay. We kinda understand this event driven architecture. So you've got your, your front end in now Astro.
Mm-hmm. You've got mm-hmm. Some sort of event system going on in the background. You're using SQS to communicate messages around like why, so you're like mostly a search site. How does that how does
**Adam:** that work? Yeah, no, so Stamus actually isn't event driven. It's not using any of the modern, the modern like serverless stuff.
We have some serverless. Pieces, but they're all like ad hoc services. They're mostly multimedia stuff. For the most part, stat use is a monolith. It's been this giant elixir Phoenix app. Now it's gonna be an Astro app, which maybe like from an infrastructure standpoint is gonna be more distributed.
Like the astro site will run in lambda functions. And, you know, Cloud front, all that sort of modern serverless web stuff. Whereas our Elixir Phoenix thing is just running on an C two instance. So it's, it's much more monolithic both in the code base,
**Lane:** it's literally just, and EC two instance, no service on
**Adam:** top of it?
No. It's got a load balancer and, and scaling [00:19:00] groups and all that. Like it, there's multiple instances, but it's literally just We run this elixir process with all these very specific environment requirements that, I don't know, it could be containerized, but right now it's just literally running on easy two.
Yeah,
**Lane:** okay. But yeah,
**Adam:** it's, go ahead. Go ahead. Oh, I was just gonna say, I mean we don't do the event driven thing. It's, it's more like that's where my career is at this point. And it's just funny that we started Sat Muse back before that was even really a thing. So it's the thing I work on every day with Sat Muse is still using, pretty dated.
Deployment practices. Whereas the thing I talk about all day, it's just the whole thing with like tech Twitter, like we all talk about all these modern bleeding edge things, but we, what we actually work on every day is like elastic bean stock. Yeah.
**Lane:** And I actually think, you know, it, it can be problematic.
And this is why I love bringing people on that, that have like, Years of experience that are in the trenches, because I think a lot of times for, for like newer developers hanging out on Twitter it can, it can seem like the entire [00:20:00] world is astro and serverless. Yeah. It's like most jobs out there.
You're writing some nasty legacy code. Yep. Fixing some crazy bullshit. And, and there's no such thing as this nice clean stack that you learned in your last
**Adam:** YouTube tutorial. Yeah. There's nothing there's nothing that can sum up tech Twitter better. It's just, it's it's so disconnected from reality and you realize how little of a sliver it is, even of developers that are even extremely online, let alone talking on Twitter.
Then you got the all all these other communities, Reddit and Hacker News and wherever else. Yeah, the real world is messy. It, it doesn't come across on Twitter.
**Lane:** Yeah. Yeah, for sure. I don't know how we talked about your architecture without talking about the database. I imagine Stamus has some crazy data requirements.
Yeah. What, what
**Adam:** do you do there? So there's a few different pieces. There's the historical sports data, it like, we have this very comprehensive sports database that's got. You know, individual player statistics going back really far, it, it was literally this world renowned sports statistician that we [00:21:00] hired.
Jessica Bako, he worked at STAs for five years. He had built these, these himself, like they're the best sports databases in the world that they power. Buddy ball type guy, if you've seen them. Yeah, exactly. He worked for a lot of teams in the b a doing like analytics stuff as a third party. Yeah.
And he had built something called basketball reference, which is like the de facto database for NBA stats on the internet. That's like this big historical sports stats database. That's what like our natural language piece that service talk, you know, it queries that database to get answers to questions.
But then we have like, Obviously other databases that power each of these services. So the web thing has its own database and that's where like user stuff. And now we have subscriptions, like a payment concept. All of that stuff lives in just a Postgres database. It's r d s Postgres. Okay. Uh, But the, I think the, so the sports reference database is MyQ running on rds.
I think it's actually Aurora. The Postgres one's just straight rds, not even Aurora. And then we have a SQL Server [00:22:00] database that I can't remember what it does.
**Lane:** My SQL Postgres and SQL Server. Yeah. Yeah.
**Adam:** Whole SQL Stack. Yeah, the whole thing. So the F Sharp service interacts with the a SQL Server database, but I, I honestly don't remember exactly what's stored in there.
I think it's other kind of metadata on top of the sports data that's needed to, to build up queries and stuff.
**Lane:** I was getting ready to judge the amount of AWS Kool-Aid that you drink on a daily basis on if you were going to say that you use DynamoDB or not?
**Adam:** No. Yeah, I, I use Dynamo a lot in talking on Twitter and things I've done that no one uses, I use Dynamo, but the things that I've built, like stamus that actually have usage, it's MySQL, Postgres, and SQL Server.
So yeah, there you go,
**Lane:** man. If only like real world applications. Made sense for tutorials. It would, it would give so much more real world experience. Yeah. The problem is it would just be so unbelievably boring
**Adam:** and take so long. It's boring. Yeah. Like I realize when I work on stat news on stream, like this stuff is not as fun to [00:23:00] watch as I'm gonna make a new project today.
We're gonna use the latest thing. Yeah. The Twitter said we should use. That's just so much more exciting. So it is unfortunate. Which
**Lane:** http like debugging. I'm like, which http request? Has a typo in the like key of the Js O. Yeah, exactly.
**Adam:** Yeah.
**Lane:** That's like
**Adam:** where I spend a lot of my time Uhhuh. It's not quite as entertaining.
Yeah. Yeah. It's,
**Lane:** it's a whole thing. So now we're getting to the part of the podcast where I'm gonna try to bait you into saying something controversial that I have a nice hook.
**Adam:** Yeah. You probably won't have to try too hard. I've been getting into a lot of it lately. Go ahead.
**Lane:** I noticed and I absolutely, I've been enjoying it.
I tell my wife about all the Twitter drama. She loves it. Cool. I, I guess actually before, before we get into the baiting, or maybe I'm just saying that what would you change, and I guess you already mentioned that you're changing Astro, but what would you change about Stamus if you were rebuilding a site like Stat Muse today, how would you recommend new backend developers like our audience kind of approach that problem?
What, what technology would you use and, and how would you do [00:24:00] that?
**Adam:** So that's a great question. Today, things have changed so much. In fact, it's, it's crazy the timing cuz yesterday hoops GPT AI just launched. It's the guy, the Rahul Lima. For the, the whole Twitter layoff thing. It's that guy, no joke. He launched like basically Stat News but powered by G P T.
Okay. So Stat News made it, that's
**Lane:** like just prompt engineered to talk about sports.
**Adam:** Yeah so the way it works is like they actually have some sports data in a database like we do, and they use G P T to actually like, It's called G P T SQL or something like that. It's like formulates SQL queries based on your database schema and the natural language question.
Okay. That's the approach. So there's just this whole new world now where, I don't know if I were building it today, like if you asked me that three years ago, I would've said, oh, we would've used one of the like more modern NLP stacks cuz there's just been waves of better ways of doing it. Today? I don't know.
I don't know if it'd all be just one big G p T app. The problem with [00:25:00] that, I, I don't know how it works from a money standpoint, cuz now that we do millions of queries a day I can't imagine what our like open AI bill would be. I guess we'd have to build our own LLMs. I'd be large. It'd be large, right?
I don't know how, like we're starting to monetize. Searching on Stamus, but we could have never made it to this point if we were having to pay for a whole bunch of comp compute in the compute side. Like it's just not free, like the GPUs involved, all that stuff. But it's interesting and it just removes so much complexity, like the kind of stuff we had to do with Stanford, n l p you just can't unsee that stuff and it's so hard to maintain.
Like it's much more like manual approach to answering questions in an intelligent way. Today you've got AI and you're just like, I just use the AI thing. I don't know.
**Lane:** I get that. I'm a, so I don't know how much you know about Budd Dev, but it's basically this, this place you learn backend development. We do kinda this gamified learning and now we have this AI tutor that like answers your questions.
He's a little wizard bear. That's awesome. He's got a lot of personality because you know, [00:26:00] G P T can can do that. Yeah. But yeah, it's, it, it's, it's insane. Especially with G P T four now, like what I can throw into a prompt, like before, if you wanted to train a model to do something interesting, you needed massive amounts of data.
And, and the way I'm thinking about G P T and how I'm using it is like now I have this like magical model that's trained on all the data. Yeah. And I just need to give it. Three or four pages
**Adam:** of content. Yeah, yeah, yeah. Just the little specific, like you just need to get into your head space. Yeah. It's really incredible.
It, somebody said that on, I think on Twitter that it, it helped me think about the whole thing better. It's like the, the big wave here with these L LMS is not about them as knowledge bases. It's about. Reasoning engines, like they're good at reasoning and if you're like focused on that, they hallucinate and that they spit out in incorrect information, you're missing it.
The point is we'll be able to point them at real good data and they'll be able to figure out how to come up with [00:27:00] answers and solutions to problems. Like it's about reasoning and they just needed all that data, all that context to become really good at reasoning. It makes sense. It's pretty exciting and scary.
**Lane:** Yeah. One thing that's really interesting to me is to think about the difference between what a non-deterministic thing can do. Like an L l M Yeah. Versus a deterministic system. Because like people have said some pretty crazy things about how oh, AI will just do the whole thing now. It's like sometimes you really don't want non-determinism.
Like when you click that button, you probably want it to do the same thing every time. Yeah. In 90% of scenarios. But finding like, where. Where that matches up. But like sometimes you don't, like with chatbots and stuff, like you really don't want the same thing. That's just like a crappy wiki. Yeah.
**Adam:** Yeah.
I think it's like we're, we're dealing with this at Sam Mu. This is very top of mind because we're a very deterministic system built on a whole lot of complicated rules around the English language to solve sports questions. And then you've got this new wave with LLMs where they may not always be [00:28:00] correct.
And when is it really important that you know, somebody has a question? They're placing a bet in sports. That's what, that's what we get. They wanna know. They've got good information. So it's like this balance, but I think it's gonna end up just being these LLMs, these reasoning agents, interacting with good sources of truth and knowing how to use statin use basically on behalf of people.
I think there's gonna be a, maybe it's just the new way search works. If it's, Just a fundamental change in the way search engines operate on the internet. That's, that's another way of rephrasing all that, I guess.
**Lane:** Yeah. For me it really came down to the context. So like I launched pretty quickly this like kind of AI tutor that would help you understand code.
So you'd be like doing a coding exercise and on the right hand side of the screen you'd have your code. And I, and I launched this feature really quickly where you just highlight some code and send it to Chad who would explain what it does. Yeah. And it worked Okay. But then on the next iteration, I, I changed the prompt to have like in its prompt, Hey, you are a tutor.
Here's the correct code that the student is will work for the student. [00:29:00] Oh. And here's their instructions and here's what they're supposed to do. And like when I made that change, it was like 10 times better. Yeah. Because now it's this whole new way of thinking. Really good. Yeah, and I don't know, if we have to think if it's just product or how much it affects engineering as well.
So far for me it's been mostly changing how I think about products, but yeah, I imagine it'll change how we think about engineering. I,
**Adam:** yeah, I think so. I think Simon Wardley, who I look up to a lot in the serverless space, he, I dunno if you've ever seen Simon on Twitter. He puts out, he's the guy that does mapping wardly maps, but it's like this conceptual mapping framework.
He's just very like future thinking prognosticator, he's been predicting serverless for 15 years. And then the timelines he like has it all laid out. But conversational programming is the next thing after serverless that he's predicted for. For so long. And he's just put out some tweets recently cuz it's it's happening.
This is actually, this is what I've been talking about. Here's how it's gonna look. I would l I would recommend looking up his stuff. He's really, really bright.
**Lane:** That [00:30:00] idea of conversational programming is interesting to me. Is the idea that you, you, you have a conversation with the computer in order to produce some.
Some amount of code that you then save statically? Or is it like going a step beyond where it's no, we're just like training other neural nets to do our programming for
**Adam:** us? Yeah, but probably Bo, probably like in the short term, the former, and then over time the latter. I, I think like right now, It's cool to like just get faster at writing the code.
We were already writing and using AI to help us do that. And then I guess training ai, you know, these models to output good code and write their own things seems like a natural step in the evolution. Like they don't need us necessarily leading the charge. But then eventually like why, why have that intermediate step?
Why have it write Python? Yeah. When it could do something more interesting than that. Presumably.
**Lane:** So actually I've, I've thought a bit about this and I think a month ago I would've just completely agreed yeah, like why are we writing these silly programming languages? But let me use an [00:31:00] analogy.
Have you ever been in one of those product meetings where like there's an argument about whether a piece of code actually is a bug or not a bug because you can't agree on the expected behavior? Yeah, yeah. Yeah. So I see this future where if the code isn't, if, if what is produced by the L the l l?
Why can't I talk the large language model? Yeah, yeah, yeah. If the code that's produced by that isn't deterministic and like inspectable by a human or by another m l uh, l, l m like, yeah, you'll run into these like really weird scenarios where even if you're able to communicate to the like bot what you want, You won't be able to necessarily inspect it to see Yeah.
Like what the current state of affairs
**Adam:** is. Yep. No, I hear you. I, I don't know,
**Lane:** my brain just, I almost feel like it has to end up being some inspectable code that like Yeah.
**Adam:** May, it may be I don't, yeah. I don't know I don't know 20 years from now what all this looks like. If, and just the trajectory, the pace, I dunno, it feels different.
I, I hate getting bought into hype [00:32:00] stuff. But this AI stuff does feel different. It feels fundamentally different and. I don't want to deny it, but I also have no idea how to think about it. Like what's, what's coming. So just kind of like riding the wave, I guess. We'll see what happens.
**Lane:** Yeah. I feel that.
Okay. My, my, my final set of questions I wanna talk a bit about JavaScript land. So you're moving, yeah. You're moving from Elixir to Astro Astro's, A meta framework. I've never used it.
**Adam:** Yeah. So Astro is interesting. It's like, It's like a, a wrapper on top of ve it's okay, taking care of, really, it's, it's more than that and I shouldn't distill it down to that, but there's actually some platform or some frameworks that are like re-platforming on Astra now.
It's becoming so solid, solid start was I think built on ve now they're gonna build on top of astro bling, which is Tanner Lindley's new thing is, Architecture on top of Astro. So Astro is becoming this like layer [00:33:00] above ve. That's got more web stuff, more opinionated stuff built in the way it looks today, like getting out of future talk.
It's basically like pH h p but it's cript. You just write HTML files. You had to slip it in there, had to chill PHP a little bit. You, you've got fences at the top of the files, otherwise, or htm l no, they're not H M L the, they're like J S X E. Kind of-ish. Okay. They're more like html, they're a mashup because it's like you don't have class name anymore.
It's just class like H T M L. But at the same time, you can use a lot of the syntax to like embed stuff into like when you're, when you're escaping and trying to put, you know, dynamic values in the template, it looks like J S X in that way. Or when you're doing like a four loop and you're creating list elements or something but you just write like any type script you want.
Or JavaScript at the top in the fences. And then you can use that code, that data, whatever you, you know, variables, you've instantiated or whatever to render the page. So it's perfect for stat use. It's a perfect marriage of like use [00:34:00] case and technology. Cuz we could, we could have built stamus and php.
It probably would've been great. It just takes data. How much just Taylor paying
**Lane:** you?
**Adam:** Nothing. I get nothing. It's so funny. The, the whole Bel thing I've, I've pumped up a few things where I get excited. I'm just very excitable. No one's ever come at me the way they have with the Laville thing.
It's like they really think I'm getting something out of it. Like I'm getting a Lambo. I'm not. I get nothing out of talking about LA Be props.
**Lane:** Okay. Cool. All right. Adam, Adam is not being
**Adam:** paid. I'm not being paid. Lets, no one pays me to do anything. Just Staton News.
**Lane:** Yeah, when you release your tax returns, we'll believe you.
Okay you're, you're doing it in Astro, but recently you've talked about how much you don't like JavaScript. Let's talk about why, really quickly, what's, what's wrong with the JavaScript ecosystem? What makes you upset about it? How do we be better?
**Adam:** Yeah. Okay. So there, there's a few angles of this there.
This is a backend podcast. Mm-hmm. And JavaScript on the backend just is a whole, it's, it's a whole community. It's a [00:35:00] whole movement. It's a whole thing. And that's when I say I don't like JavaScript, it's mostly the JavaScript ecosystem. And it's really like a vibe thing. I, I don't know. It's not I don't like the way no JS is implemented.
I don't care. I don't get into that kind of stuff. And I guess even then there's multiple jobs could run times. So I, I don't care about all that stuff. It's just more like the people that have formed around this community. It's just such a dramatic culture and it's just, I don't feel like other, like laville dipping into that community on Twitter.
It's just such a different feeling. Astro. Similarly, and, and this is like we're, we're, it's hard to now differentiate between node js and different frameworks. There's specific frameworks and specific companies that have grown up in the node js space that have created a culture. I'm not a huge fan of, Astro feels like a breath of fresh air.
I realize that's JavaScript. So it, it's something more than just JavaScript, I guess. JavaScript is dumb. Look at what it does, look at these dumb code examples. Why [00:36:00] does that equal true and that equals nan. There's that stuff, but I don't care too much about that stuff.
It's mostly the community, I think, and, and then there's like the mpm. You get it technical. It's like the whole MPM landscape. There's no uniformity to like, this is the way you make a package and it will be good. And what is a good package? All of that is a huge problem that you just don't see with other backend languages.
They generally have better package managers and a better. Sort of ecosystem of packages to work with. You know what you get and all the docs, your uniform, everything in no js just feels so scattershot and so there was never anyone making the decisions. It's just everything for everybody.
Okay. I've said enough, I've said enough bad things about JavaScript.
**Lane:** No, you haven't. I have to bait you into more that things. But yeah, I'm with you like, performance is like a whole thing. Node modules, having 72,000 folders, like you use, create a boiler pit app, like all
**Adam:** that stuff is, is, and then we have like multiple package like.
Do you use yarn or mpm? Oh, is it yarn two or are you on p PMM now? Cuz you're cool. [00:37:00] There's just, we have so many stupid decisions we have to make in the JavaScript ecosystem every single day. We have to configure
**Lane:** Webpack for 13 hours. Oh, until you finally decide to switch to V. Yeah, it's the whole
**Adam:** thing.
Yep. And then you've got your tooling with Es lin and prettier and type script and making all those work together and package date on it. I just hate all of it.
**Lane:** All of it. I think. So here's, here's one of my theories. I'm interested to think, to hear what you think. I think part of the problem, so like we all have confirmation bias in this industry.
Sure. And it's like pretty, pretty crazy to admit if you don't like I've been, yeah. I've been writing go for six years. I just default to go if it fits for the use case. Yep. Because like I'm productive in it. Yep. I think that there's. Like this, this idea that like you can just learn JavaScript for, depending on like the marketing of the various boot camps, like three months, four months, like these crazy timeframes and it'll be super easy.
You get this high paying job, this remote culture. And then once you do that, you're like really bought in to whatever tech stack you learned. Yeah. And pretty much every bootcamp these days except for [00:38:00] boot dev which isn't really boot camp, but thing it's teach your JavaScripts, right?
Yeah. Yep. And I think the best engineers are not afraid to learn new things. Yeah, like you're using a tech site. Like the best engineers that I've met and worked with have been the ones that are like super excited
**Adam:** to learn new things. Yeah. No, I think and I think it applies outside of tech too.
I think there's something about being. Open-minded being okay to explore new things that you've never explored. I, that's driven all of my career. I've never been just like happy doing the same thing for years. I've always wanted to float around and be exposed to new stuff. I.
Yeah, I think there's a lot to that. I don't know why we start everybody, to your point on the boot camps, like why does everyone start out on the front end and why do we funnel new engineers into this very confusing space? And maybe it's, it goes one and maybe because that's the best place to start.
People, it's a much bigger ecosystem, so it's much more jumbled. But I just feel if you're taking a new person into this [00:39:00] career and you're like, Hey, you wanna be a developer let's learn, react, and use effect. And and Cs, you're gonna need some c s s cuz you're gonna hate that it looks awful. And oh, you need to deploy it somewhere.
Here's your there's just so many things as a front end developer today, I feel like it'd be so overwhelming. It's like, why not? Just here's a cli, let's build a little a CLI tool. Like spits out a stop describing
**Lane:** my curriculum. Oh, for real? Is that Yeah. Yeah. We don't, yeah, we don't. Ok, so boot dev is doing it, right?
We don't fuck with HTML and c s s. Okay, good. Yeah. Yeah. It's just
**Adam:** too much. It's too much at, at first, especially, and then it's not just HTML and c s s, it's like most people get funneled and react specifically. And I feel like that just has so many new things that you have to think about and. I don't know.
I, I just feel like there needs to be more boot devs. We need to start people in different places. I don't think it needs to be the front end.
**Lane:** I, I, I, I completely agree. You would, hopefully that goes without saying. Yeah. Um, But uh, here, here's my, here's like my theory as to why really quickly.
Yeah. I would love to know feedback loop. So [00:40:00] one of the hardest things or, or, or what I should say is what everyone who wants to get into development. Yeah. Wants is to have a website do a thing. Yeah. And so if you want a quick feedback loop, the, the fastest way to give that win to a student is to be like, here's 10 lines of html.
Yeah. Save it. Open your browser. Yep. And that's fine. I don't think there's necessarily anything wrong with that, but it, it's somehow evolved over the years from okay, we'll start here. Because a, it's like easy to learn. That sounds mean, but like it, it kinda is. No. Yeah.
Like you get started pretty quickly. Yeah. There's huge, there was huge demand in 20 15, 20 16 for front end devs. There was demand for every kind of dev. Yeah. And so it almost just became, in my opinion, like this rote script of you have to start with H T M L if you're going to be a developer.
Yeah. Duh. Yeah. Like first of all, that's only web development. Second of all, that's only front end web development. I was just pulling stats on this last year. There's twice as many BA like self-identified backend developers in the world as front end developers. Wow. Wow. I did not know this. Yeah, it's it's [00:41:00] crazy, but like tech influencers are, it's 10 to
**Adam:** one of like front end to Yeah.
The trends front end. Twitter's very front end heavy, which I, I don't understand that either. There's so many parts of this that I would love to have all the answers and just understand how things got the way that they are. I, I guess I think you can have a feedback loop in a CLI too, but I get that it's not as approachable.
Maybe Seeing text it's or something,
**Lane:** you know, yeah, yeah, yeah. I feel like they didn't build, that's the biggest struggle for me is yeah, starting people with Python and I do start them on the c l I, it's yeah, you're building an application here that does some pretty crazy stuff, but it, it's getting students to understand like I.
It's okay that it's, you are interacting with it through a c l I, like most of the world's infrastructure is c l I applications. Yeah,
**Adam:** yeah. Servers are c l I applications. I'm glad boot dev exists. You, you can you can be the answer now to like, why is everything start people, there's not everything.
There are things that are starting people in different places and to your point, not just web development, there's so many other types of [00:42:00] programming. I think people starting on hardware, like the first time I missed, I was. Eight, 10 years into my career before I mess with a raspberry pie or whatever.
And that just opens up so many new things in your brain. I think that's like a very engaging hands-on way to start learning programming. You have to flash little floppy shirt. Yeah.
**Lane:** Flashing Arduinos with like
**Adam:** ski. Yeah. This is like a whole thing. Yeah. Yeah. It's fun. It is, it is very fun. Way more fun than React personally, I think.
But
**Lane:** yeah, you don't have, you don't have to deal with Webpack, so it's already been Yeah, exactly. This has been absolutely fantastic, Adam. Oh, I loved it. I love having this conversation. Maybe in the future we'll have to have you back chat more about some other stuff. Where can people find you?
Find you online. Yeah. Where can, where can we, yeah. So it's
**Adam:** funny, adam.dev. It's my username, but it's also my personal site. It has links to all my stuff. So adam.dev, that'll get you my Twitch, my YouTube, whatever, Twitter. Cool. That's your last
**Lane:** name, right?
**Adam:** Dot dev. Yeah, yeah, yeah, yeah. No, it's actually middle name dot.
Yeah. Last name [00:43:00] Dev, adam.dev. I
**Lane:** love it. I love it. Cool. Thanks so much, Adam.
**Adam:** Yeah, thank you, Elaine. This was great. All right. We'll see you.
It's like a elastic bean stock. We're talking like it's elixir. Yeah, it's, I hate that. I do too.
**Lane:** I think the only apps with a really satisfying architecture don't actually have any users. Yeah, yeah. Is, is my experience. Yeah. I love it. Doesn't work new dev stack until we started having users and now it's a mess.
**Adam:** Yeah. It changes me. It's just like you're constantly. You don't like build for scale.
**Lane:** Adam Elmore founder of Stamus, hero of a w s code streamer on Adam. Do dev did I miss anything?
I
**Adam:** don't even know anymore. I, I've, I've spread myself too thin. I don't know. I do a lot of weird things.
**Lane:** Yeah. So here's the thing. I, I found you on Twitch and at first, I, I can't remember where I, I actually found that you were an AWS hero, but at first I thought you were just an [00:01:00] ego maniac. I was like, I was like, AWS hero, like calls themselves that, and then I looked it up and it's actually a thing.
Yeah, yeah. That I didn't know about. So let's start there. What is an a w s hero?
**Adam:** Yeah, so heroes. I think if like I started my career 15 years ago in C Sharp, in the net world, if you're, if you've ever been a part of that world, I think they have Microsoft MVPs. It's like that if you don't know what that is.
It's like Google Cloud experts. There's a few different, every big cloud provider has a name for just people in the community that are sort of very vocal about their technologies. So I'm pretty in aws and have been for six, eight years now. So I guess I've just talked about it enough online that you get recognized as.
Like a figurehead within the community. I guess we're sort of championing uh, AWS technologies.
**Lane:** Yeah. I saw you had like an AWS podcast. Do you still run that as well?
**Adam:** Yeah, so aws.fm started because that domain was just too cool. I didn't know AWS let [00:02:00] any AWS dot whatever domains go. And that one was out there.
So I bought it and I was like starting a podcast. And I did it. I think I did 30 some episodes. We ended up. Like the last episode I did of that was with Dax and it was like I wanted him to just come on and be a co-host with me, and then we just rebranded completely and now it's, it's tomorrow.fm, so it's a different podcast.
We don't just talk about aws. That was another thing. I felt like it was so narrow, like I can only ever talk about one thing and there's a lot of things I want to talk about. So yeah, we rebranded and re-shifted efforts into a different podcast. Got it.
**Lane:** Yeah. I, I love Tomorrow FM, by the way. Oh, thank you.
Complaint is, there's not enough
**Adam:** episodes yet. We're doing two a week now, so it's new. We're gonna see if it, if we can hold it up. Yeah,
**Lane:** I I, I go to the gym, I hit the sauna. I listen to tomorrow fm. Oh, that's awesome.
**Adam:** Wow. It's so weird to hear. I'm sure you'll get this, like when you hear somebody listen to the pod, you just don't know if anyone's out there.
**Lane:** It's very, analytics on podcasts are like, They don't really
**Adam:** exist, right? Yeah, they don't, yeah. I don't know what I can do with the down. Does, did, does that [00:03:00] mean they listened? Did they downloaded it? I guess that's close enough. Just
**Lane:** storing it on their hard drive. Yeah. Okay. Cool. So you're an AW S hero.
What you, you did podcasts, you talked about Aw ws. I'm guessing that be, that's all stems from, you guys use AWS really deeply in Stamus and, and maybe at your other companies.
**Adam:** Yeah. So we stamus we co-founded in 2014. So it was right as I was sort of like being made aware of aw w s We actually started and built it on Azure and then hired our first like DevOpsy kind of person who was really a aw w s, his name is Ben.
And that sort of started the process of moving everything in Stamus over to, to aws. And I would say Stamus was like a unique experience for me in that. I was, I was running it for five years and as a co-founder I sort of had full autonomy to kinda like just play in AWS for those five years. So I really got hooked on kinda like event-driven architectures and building out all these weird exotic serverless things.
Cuz we were just like a, a studio for a while where we were doing weird [00:04:00] projects for random sports companies. So I got a lot of exposure and like on my own where I could just explore and, and that really started, I guess my love for it.
**Lane:** Yeah. Just to, to clear things up for everyone who doesn't know are, are you the CTO O of Stamus?
Is that the
**Adam:** Yeah, I was I co-founded it in, like I said, in 2014. I was C T O until 2019. Okay. And then I took a three year hiatus, we'll call it my co-founder and I just didn't like each other. At all. That's just a whole nother like, startup story, I guess. But are you friends again now or We're Yeah, we're friends again now.
So he asked me to come back like six to eight months ago. But I rejoined after three years off, so now I'm just kind of like, I don't even have a title. I'm, I'm actually just like a, I write code. I'm, I make things an ic. You're back to the interview. I'm back to, yeah. I'm an individual contributor.
Exactly. Awesome.
**Lane:** That's why you have, you've de-stressed your life and can now stream code. Yeah,
**Adam:** that's the, exactly, yeah. No, it's exactly right. I don't have to think about the high level stuff. I don't like to hire people. I just, I get to build, which is what I [00:05:00] like to
**Lane:** do. Okay. Yeah, no, that's that's fantastic.
And now, now you like to build with Laravel is what I, is what I understand.
**Adam:** I do. I'm very interested in Laravel there. It's funny you ask that cuz there's just like this joke that Dax keeps poking at me, that I haven't actually done anything with Laravel yet. I just tweeted about it and it's true.
But I'm very interested. It's, it's it's something you, you you're aware of it if you're on Twitter, all these other communities, things that people are into and they're really into 'em. And then when you finally break the veil and you peek at it a little harder and you realize there's actually something really compelling there.
That's where I'm at with Larry though. I just, I broke the veil a little bit. I looked at the docs. I set up a new project, that kind of
**Lane:** thing. That's how I am with with Rust. I've never actually written anything like production, even close to production in Rust. But like I've done the tour of Rust.
Yeah, yeah. The book. I look at how they handle errors and I go, Ooh, that's, that's really sexy.
**Adam:** That's cool.
**Lane:** Yeah. And
**Adam:** then I don't do anything with it. Yeah. There's so many technologies I've never gotten past that with, so I, I, I don't want to disappoint anybody now that they're very excited. Are you building something with Larry?
Probably. I hope maybe
**Lane:** we'll see. Yeah. Like my [00:06:00] problem is I'm just too productive and go at the moment. Yeah, and like too focused on building my thing, so like I just don't
**Adam:** Yeah. Haven't gotten right. It's hard, like when I think of another idea and I'm like, oh, I could, I could build that in this new thing, or I could just do the thing.
I can do it really fast in and maybe I just wanna do it really fast. It's, it's hard to break into new stuff. Yeah.
**Lane:** Side note, I, I guess I'm gonna actually put myself out there and embarrass myself a little. I don't know how to type properly. Yeah, like on aboard? Yeah. Yeah. Yeah. Oh yeah. So
**Adam:** I took it for granted that not everybody, like we had, like in school, I think they had a type in class, like in middle school.
**Lane:** Oh, I did, but I played flash games. Oh, I didn't learn. I love it. And so I, I'm like senior engineer, engineering manager, head of engineering, and like I type in 75 words per minute, like with three
**Adam:** fingers on each end. That's not bad. I mean, If you're not usings, the real typing method
**Lane:** for like, not being on a home row, like Yeah.
Anyways is unlearning right now. Now sounds
**Adam:** bad. Like you're trying to actually learn
**Lane:** the Yeah, the real way. I've been learning for three weeks now. I'm resetting my [00:07:00] brain and it is awful. Yeah. Now I'm bad in both. Like I can't type the way I used to and I still also cannot
**Adam:** type on home road yet.
It's like using one of the super ergonomic keyboards, like you're just bad at everything for a while. Have you considered like one of the other layouts or something like workman or Dvorak or whatever? Because if you're having to start from scratch, I've always wished I did something cool like that. Might as well start with the cool things.
Is Workman the
**Lane:** one with the levers? Have you seen that one? What I'm talking about? Oh, the care quarter. That sounds like it could be what I'm
**Adam:** talking about. Yeah. Like your fingers are on like little joysticks.
**Lane:** Yes. Yeah. Yeah. You like do combos, uhhuh and like they go like 400
**Adam:** words per minute or something.
Yes. I've got one in the closet. I started to play with it and it's very hard and I will never learn it. Yeah. I might try and teach my kids like if their first exposure to typing is just learning how to type it. 400 words a minute. I feel like superpower. It would
**Lane:** amazing. Yeah, cuz like I get told that I need to try vim and stuff, but I can't even type properly.
So it's just a losing
**Adam:** battle. Yeah. So when, when you say like you don't know how to type, is that, are you somebody who would say oh, great touch [00:08:00] typing? Because people say that to me sometimes and I'm like, you mean you mean typing? You mean typing? I'm just typing, I'm typing. That's, I take it for granted that is that.
You don't touch, you have to look, or you just, at this point, you just don't use the normal five finger
**Lane:** approach. So with, with my, the old way I did it, I could pretty much touch type still. The only thing was if my hands got off, I'd have to look, because I, yeah, yeah. Like my, my pointer fingers weren't on the ones with
**Adam:** the bumps.
Yeah. I like the bumps. I like the bumps on the, the J and the whatever. Yeah,
**Lane:** like my, my left hand would be on like W A S D because of first person shooters. They like ruined my anyways. It's just like a whole nightmare. Man, I've spent, I've wasted way too much more time talking about this, but unlearning things is hard and like it is now I'm gonna tie it back into into development.
So one thing I want to dive into with you specifically is You co-founded Stat Muse, you know all about a u s I really want to dive in if you're willing to, to some of the architecture of Stat Muse, like how you guys deploy on [00:09:00] aws, because it's not every day that I get the chance to talk to someone who founded a B2C company.
I've spent a lot of time in the B2B SaaS space and like how we think about architecture in that world is, is totally different. We don't care about seo, right? All we do is we just care about getting like our data aggregated on time. Yeah, maybe we could just jump into from a high level, how did you build state news and, and maybe what is state news for
**Adam:** for some of those?
Yeah, no, absolutely. And on that last point, I think just the idea of B2C being unique. I, I'm only putting it together like in the last six months that Oh yeah. Not like everyone else. Is mostly building B2B stuff and scale is totally different and everything about it's different. And I, I didn't put that together.
It's like, why does everybody use Versace? Or why does everybody do this and this? And it is just very unique. Not a lot of B2C stuff, I would say. Stamus just is a what is Stamus? It's just like sports statistics, search engine with a lot of personality.
**Lane:** I told my employee that I was interviewing one of the founders of Stamus and he was pumped because he knew [00:10:00] Stamus.
Awesome. He didn't know who you were. Yeah. Yeah.
**Adam:** He knew Stamus. I prefer it that way. NBA fans. Yeah. No, that's awesome. Yeah, it's it's like a search engine. We started just as a search, like a text box, just like Google, and we take natural language questions and then answer with Originally just tables and then we started doing charts and tables, and then we started doing like actual natural language generation, which is just a nerdy way of saying it just answers you back, like with text, with English.
So that's what sent me chat jeopardy. Like we're talking way pre Yeah, we're talking like 2014. This was before. Yeah. Before it was really easy to do this kind of stuff. I think the, what we're seeing now is totally gonna transform this space. But even there's been iterations since we started.
Stamus of other better tools we're built on like very old school NLP tech techniques. Stanford and LP was this Java library from the University of Stanford. I just realized, I don't know, is it Stanford University? University? Most my career is
**Lane:** actually an nlp so we can, we can get Oh, really? A little bit, yeah.
Okay. I, I'm a data, like I am a backend engineer, [00:11:00] but like at, in the B2B space, that honestly sometimes just means data engineer. Yeah. So did a lot with NLP on Twitter and Reddit ingesting
**Adam:** like very cool, cool data and stuff, so Yeah. Yeah, yeah. I know what you're talking about. Okay.
So I also wanna talk about, I don't know what the backend is, but we'll talk about that maybe later. When you say backend and I'm actually this, I'm actually that I don't know any of those things. We started really simple. It's like we've watched the wave of things like Alexa, you know, without a whole voice wave where like Google Assistant and Alexa were in an arms race, and that was the big topic that kind of happened right after we started Sat Muse.
So we got a lot of traction on the voice platforms because you could ask questions just Oh yeah. Like you would to a device and we would, we provided answers. So we actually did like official deals with Amazon and with Google, and we're answering sports questions on those platforms. We did it with like athletes voices.
So like you asked a question about Peyton Manning and he would come on and tell you about his career, answer the question in his voice Anyway, did a bunch of weird stuff and architecturally, I would say, It's reflects all that weird stuff, like eight [00:12:00] years of building. Like people think like you sat down and you like diagram out how your ar your, your application's gonna be built and then like you go and build it.
But really it was just like something different every year to meet the needs of that year. And we've really only grown a lot in the last two years I think. Okay. Five years at Stamus. My first five years, I don't know. I think we did 10 million searches in those five years and now we do more.
You don't believe if things are going super well, right? Yeah yeah. They weren't going great. Our, my co-founder and I, our relationship was really strained after five years. But I, I think we just lived long enough to start seeing the rewards now, like more than 2 million searches a day. Wow.
Whereas, you know, the first five years that we maybe did 10 million, something like that. That's crazy. Yeah. Yeah. It's grown a ton and we get like a, a million new inbounds from Google, so SEO is huge. For STA news, we answer just tons of Longtail sports questions and
I would say like the architecture for b2c In our case for Stat Muse, it's like the opposite of what I like, feel like I'm super [00:13:00] into these days.
It's like a elastic bean stock. We're talking like it's elixir. Yeah, it's, I hate that. I do too. We've actually moved away from it in a few different, we've got a lot of different things at Stat Muse. So there's, there's like an F Sharp. Repo that's, it's deployed, you know, on Microsoft Boxes, but we're migrating it to net core so it can run on Linux boxes and vie and containers and all these things.
But that's like the natural language part. But then there's the web part, which is all like Elixir Phoenix. It runs on e C two. It's just elastic bean sock. And then we got a ton of little, tiny little services that do different things like stitching audio files together to answer questions or generating images for social, or not for social, but for like unfurled images.
Yeah, just a lot of different random stuff. We do use a lot of like modern serverless stuff for new things. And we are rewriting the whole web app actually in astro. So moving away from Elixir Phoenix. Anyway, that was a, a lot of thoughts about what it's architected with, I guess. No, that's
**Lane:** great.
I, I, I [00:14:00] think the only apps with a really satisfying architecture don't actually have any users. Yeah, yeah. Is, is my experience. Yeah. I love it. Doesn't work new dev stack until we started having users and now it's a mess.
**Adam:** Yeah. It changes me. It's just like you're constantly. You don't build for scale.
You like build for whatever scale you need, and then you're constantly finding you have to change things as it starts to grow. And we've, that's been no different for us. Like we've had to make a lot of different changes to like alleviate bottlenecks. We, we would like crash every Super Bowl because for whatever reason we get more questions on the Super Bowl.
Than any. And it's not even like the NFL's not our biggest sport, but that was our biggest scaling problem, you know, a few years ago and now we sort of solved that. But like you're just always solving those problems. It never goes away.
**Lane:** Okay. So you mentioned you have this event driven architecture somewhat.
So you've got, you've got kind of your, your front end in, now Astro used to be Elixir Phoenix. Then you've got all these events going on in the background. You're processing them. What do you mean? So just to give [00:15:00] you, like you and the listeners some context, we did have an episode with Dax, where we talked about serverless in, in some amount of depth.
Yeah. But what do you mean when you say event driven? I don't think we used that word once when we were talking about serverless. Yeah,
**Adam:** it's it's this idea. I, I don't know, some people say I think it's tied into the ideas when people say microservices, like lots of different disparate systems that communicate through message buses, I think is, is kinda the idea.
And when
**Lane:** you say message bus, are you talking like rabbit Mq Kafka? likeQ?
**Adam:** For me specifically? Yeah. Sqs Sn s more of the Aw Ws first party stuff, just cuz that's, I don't know. I've drank the Kool-Aid, like I'm pretty invested in what I can do in an AWS account. Yeah. But yeah, same concept. Any, any event, bus or message?
Bus, I think Ultimately the event-driven thing is, is just a rebranding of serverless. I think that's what I've taken from it. The people who, like the serverless DA team, the serverless developer advocacy team at aws, they talk a lot about event-driven architectures. So I think they've rebranded this idea of.
What people used to call [00:16:00] serverless now is just this sort of watered down marketing term, but Ari, event-driven architectures is not watered down. It's like you build these systems that are very resilient. They're very hard to monitor, very hard to figure out what's going on at any given time. But they have got all this fault tolerance built in and it's not, it's like the opposite of a monolith, but I think the microservices term is maybe not right.
I don't know. I don't really know what microservices are. Like what is micro, how, how big is it before? It's not micro, I dunno.
**Lane:** Yeah, that, so that I completely agree with. I've spent a lot of my career in like microservices. Yeah. But I, I think that's the wrong term. I think services is maybe the right term.
Yeah. It's like there's services all kinds of different sizes. Yeah. Does all, does your app like run in one process on right, on one box or does it not? And if it doesn't Yeah. Then ah, you kinda have services. Yeah, exactly. Kinda how I think about it. Okay so event driven. One of the ways that I think about it is the idea of okay, if you have, if you have different services that do different things, and they, they communicate over some synchronous protocol, like just http, right?
Yeah. Making chaining, like [00:17:00] http requests from the services Maybe that's not event driven, whereas if it's more like pulling from a queue that is event driven, is that how you think about it? Or would you say even like synchronous stuff can be like, I think
**Adam:** that makes sense to me. I think the asynchronous part is, is kind of part of the definition in my mind.
You've got these very stateless services that are communicating asynchronously and responding to things. I know Lego. Is a good example. Like they've put out a ton of stuff just about how they build event-driven stuff at Lego where you've got like an order taking place and that ends up somewhere and it gets picked up by other things.
They got multiple things maybe refining famous to those famous tech
**Lane:** company,
**Adam:** Lego. Yeah. They really are like, they're like the famous serverless. Thing, I don't know, something about Lego. They've become this champion of, of serverless technologies. It's really sheen bristles at, at Lego, who's, he's a, a hero uh, AWS hero.
He, he sort of like started the modernization at Lego and building out all this serverless stuff. And now there's kinda like this flagship like, look what they've done with event-driven architectures.
**Lane:** Got it. [00:18:00] Okay. We kinda understand this event driven architecture. So you've got your, your front end in now Astro.
Mm-hmm. You've got mm-hmm. Some sort of event system going on in the background. You're using SQS to communicate messages around like why, so you're like mostly a search site. How does that how does
**Adam:** that work? Yeah, no, so Stamus actually isn't event driven. It's not using any of the modern, the modern like serverless stuff.
We have some serverless. Pieces, but they're all like ad hoc services. They're mostly multimedia stuff. For the most part, stat use is a monolith. It's been this giant elixir Phoenix app. Now it's gonna be an Astro app, which maybe like from an infrastructure standpoint is gonna be more distributed.
Like the astro site will run in lambda functions. And, you know, Cloud front, all that sort of modern serverless web stuff. Whereas our Elixir Phoenix thing is just running on an C two instance. So it's, it's much more monolithic both in the code base,
**Lane:** it's literally just, and EC two instance, no service on
**Adam:** top of it?
No. It's got a load balancer and, and scaling [00:19:00] groups and all that. Like it, there's multiple instances, but it's literally just We run this elixir process with all these very specific environment requirements that, I don't know, it could be containerized, but right now it's just literally running on easy two.
Yeah,
**Lane:** okay. But yeah,
**Adam:** it's, go ahead. Go ahead. Oh, I was just gonna say, I mean we don't do the event driven thing. It's, it's more like that's where my career is at this point. And it's just funny that we started Sat Muse back before that was even really a thing. So it's the thing I work on every day with Sat Muse is still using, pretty dated.
Deployment practices. Whereas the thing I talk about all day, it's just the whole thing with like tech Twitter, like we all talk about all these modern bleeding edge things, but we, what we actually work on every day is like elastic bean stock. Yeah.
**Lane:** And I actually think, you know, it, it can be problematic.
And this is why I love bringing people on that, that have like, Years of experience that are in the trenches, because I think a lot of times for, for like newer developers hanging out on Twitter it can, it can seem like the entire [00:20:00] world is astro and serverless. Yeah. It's like most jobs out there.
You're writing some nasty legacy code. Yep. Fixing some crazy bullshit. And, and there's no such thing as this nice clean stack that you learned in your last
**Adam:** YouTube tutorial. Yeah. There's nothing there's nothing that can sum up tech Twitter better. It's just, it's it's so disconnected from reality and you realize how little of a sliver it is, even of developers that are even extremely online, let alone talking on Twitter.
Then you got the all all these other communities, Reddit and Hacker News and wherever else. Yeah, the real world is messy. It, it doesn't come across on Twitter.
**Lane:** Yeah. Yeah, for sure. I don't know how we talked about your architecture without talking about the database. I imagine Stamus has some crazy data requirements.
Yeah. What, what
**Adam:** do you do there? So there's a few different pieces. There's the historical sports data, it like, we have this very comprehensive sports database that's got. You know, individual player statistics going back really far, it, it was literally this world renowned sports statistician that we [00:21:00] hired.
Jessica Bako, he worked at STAs for five years. He had built these, these himself, like they're the best sports databases in the world that they power. Buddy ball type guy, if you've seen them. Yeah, exactly. He worked for a lot of teams in the b a doing like analytics stuff as a third party. Yeah.
And he had built something called basketball reference, which is like the de facto database for NBA stats on the internet. That's like this big historical sports stats database. That's what like our natural language piece that service talk, you know, it queries that database to get answers to questions.
But then we have like, Obviously other databases that power each of these services. So the web thing has its own database and that's where like user stuff. And now we have subscriptions, like a payment concept. All of that stuff lives in just a Postgres database. It's r d s Postgres. Okay. Uh, But the, I think the, so the sports reference database is MyQ running on rds.
I think it's actually Aurora. The Postgres one's just straight rds, not even Aurora. And then we have a SQL Server [00:22:00] database that I can't remember what it does.
**Lane:** My SQL Postgres and SQL Server. Yeah. Yeah.
**Adam:** Whole SQL Stack. Yeah, the whole thing. So the F Sharp service interacts with the a SQL Server database, but I, I honestly don't remember exactly what's stored in there.
I think it's other kind of metadata on top of the sports data that's needed to, to build up queries and stuff.
**Lane:** I was getting ready to judge the amount of AWS Kool-Aid that you drink on a daily basis on if you were going to say that you use DynamoDB or not?
**Adam:** No. Yeah, I, I use Dynamo a lot in talking on Twitter and things I've done that no one uses, I use Dynamo, but the things that I've built, like stamus that actually have usage, it's MySQL, Postgres, and SQL Server.
So yeah, there you go,
**Lane:** man. If only like real world applications. Made sense for tutorials. It would, it would give so much more real world experience. Yeah. The problem is it would just be so unbelievably boring
**Adam:** and take so long. It's boring. Yeah. Like I realize when I work on stat news on stream, like this stuff is not as fun to [00:23:00] watch as I'm gonna make a new project today.
We're gonna use the latest thing. Yeah. The Twitter said we should use. That's just so much more exciting. So it is unfortunate. Which
**Lane:** http like debugging. I'm like, which http request? Has a typo in the like key of the Js O. Yeah, exactly.
**Adam:** Yeah.
**Lane:** That's like
**Adam:** where I spend a lot of my time Uhhuh. It's not quite as entertaining.
Yeah. Yeah. It's,
**Lane:** it's a whole thing. So now we're getting to the part of the podcast where I'm gonna try to bait you into saying something controversial that I have a nice hook.
**Adam:** Yeah. You probably won't have to try too hard. I've been getting into a lot of it lately. Go ahead.
**Lane:** I noticed and I absolutely, I've been enjoying it.
I tell my wife about all the Twitter drama. She loves it. Cool. I, I guess actually before, before we get into the baiting, or maybe I'm just saying that what would you change, and I guess you already mentioned that you're changing Astro, but what would you change about Stamus if you were rebuilding a site like Stat Muse today, how would you recommend new backend developers like our audience kind of approach that problem?
What, what technology would you use and, and how would you do [00:24:00] that?
**Adam:** So that's a great question. Today, things have changed so much. In fact, it's, it's crazy the timing cuz yesterday hoops GPT AI just launched. It's the guy, the Rahul Lima. For the, the whole Twitter layoff thing. It's that guy, no joke. He launched like basically Stat News but powered by G P T.
Okay. So Stat News made it, that's
**Lane:** like just prompt engineered to talk about sports.
**Adam:** Yeah so the way it works is like they actually have some sports data in a database like we do, and they use G P T to actually like, It's called G P T SQL or something like that. It's like formulates SQL queries based on your database schema and the natural language question.
Okay. That's the approach. So there's just this whole new world now where, I don't know if I were building it today, like if you asked me that three years ago, I would've said, oh, we would've used one of the like more modern NLP stacks cuz there's just been waves of better ways of doing it. Today? I don't know.
I don't know if it'd all be just one big G p T app. The problem with [00:25:00] that, I, I don't know how it works from a money standpoint, cuz now that we do millions of queries a day I can't imagine what our like open AI bill would be. I guess we'd have to build our own LLMs. I'd be large. It'd be large, right?
I don't know how, like we're starting to monetize. Searching on Stamus, but we could have never made it to this point if we were having to pay for a whole bunch of comp compute in the compute side. Like it's just not free, like the GPUs involved, all that stuff. But it's interesting and it just removes so much complexity, like the kind of stuff we had to do with Stanford, n l p you just can't unsee that stuff and it's so hard to maintain.
Like it's much more like manual approach to answering questions in an intelligent way. Today you've got AI and you're just like, I just use the AI thing. I don't know.
**Lane:** I get that. I'm a, so I don't know how much you know about Budd Dev, but it's basically this, this place you learn backend development. We do kinda this gamified learning and now we have this AI tutor that like answers your questions.
He's a little wizard bear. That's awesome. He's got a lot of personality because you know, [00:26:00] G P T can can do that. Yeah. But yeah, it's, it, it's, it's insane. Especially with G P T four now, like what I can throw into a prompt, like before, if you wanted to train a model to do something interesting, you needed massive amounts of data.
And, and the way I'm thinking about G P T and how I'm using it is like now I have this like magical model that's trained on all the data. Yeah. And I just need to give it. Three or four pages
**Adam:** of content. Yeah, yeah, yeah. Just the little specific, like you just need to get into your head space. Yeah. It's really incredible.
It, somebody said that on, I think on Twitter that it, it helped me think about the whole thing better. It's like the, the big wave here with these L LMS is not about them as knowledge bases. It's about. Reasoning engines, like they're good at reasoning and if you're like focused on that, they hallucinate and that they spit out in incorrect information, you're missing it.
The point is we'll be able to point them at real good data and they'll be able to figure out how to come up with [00:27:00] answers and solutions to problems. Like it's about reasoning and they just needed all that data, all that context to become really good at reasoning. It makes sense. It's pretty exciting and scary.
**Lane:** Yeah. One thing that's really interesting to me is to think about the difference between what a non-deterministic thing can do. Like an L l M Yeah. Versus a deterministic system. Because like people have said some pretty crazy things about how oh, AI will just do the whole thing now. It's like sometimes you really don't want non-determinism.
Like when you click that button, you probably want it to do the same thing every time. Yeah. In 90% of scenarios. But finding like, where. Where that matches up. But like sometimes you don't, like with chatbots and stuff, like you really don't want the same thing. That's just like a crappy wiki. Yeah.
**Adam:** Yeah.
I think it's like we're, we're dealing with this at Sam Mu. This is very top of mind because we're a very deterministic system built on a whole lot of complicated rules around the English language to solve sports questions. And then you've got this new wave with LLMs where they may not always be [00:28:00] correct.
And when is it really important that you know, somebody has a question? They're placing a bet in sports. That's what, that's what we get. They wanna know. They've got good information. So it's like this balance, but I think it's gonna end up just being these LLMs, these reasoning agents, interacting with good sources of truth and knowing how to use statin use basically on behalf of people.
I think there's gonna be a, maybe it's just the new way search works. If it's, Just a fundamental change in the way search engines operate on the internet. That's, that's another way of rephrasing all that, I guess.
**Lane:** Yeah. For me it really came down to the context. So like I launched pretty quickly this like kind of AI tutor that would help you understand code.
So you'd be like doing a coding exercise and on the right hand side of the screen you'd have your code. And I, and I launched this feature really quickly where you just highlight some code and send it to Chad who would explain what it does. Yeah. And it worked Okay. But then on the next iteration, I, I changed the prompt to have like in its prompt, Hey, you are a tutor.
Here's the correct code that the student is will work for the student. [00:29:00] Oh. And here's their instructions and here's what they're supposed to do. And like when I made that change, it was like 10 times better. Yeah. Because now it's this whole new way of thinking. Really good. Yeah, and I don't know, if we have to think if it's just product or how much it affects engineering as well.
So far for me it's been mostly changing how I think about products, but yeah, I imagine it'll change how we think about engineering. I,
**Adam:** yeah, I think so. I think Simon Wardley, who I look up to a lot in the serverless space, he, I dunno if you've ever seen Simon on Twitter. He puts out, he's the guy that does mapping wardly maps, but it's like this conceptual mapping framework.
He's just very like future thinking prognosticator, he's been predicting serverless for 15 years. And then the timelines he like has it all laid out. But conversational programming is the next thing after serverless that he's predicted for. For so long. And he's just put out some tweets recently cuz it's it's happening.
This is actually, this is what I've been talking about. Here's how it's gonna look. I would l I would recommend looking up his stuff. He's really, really bright.
**Lane:** That [00:30:00] idea of conversational programming is interesting to me. Is the idea that you, you, you have a conversation with the computer in order to produce some.
Some amount of code that you then save statically? Or is it like going a step beyond where it's no, we're just like training other neural nets to do our programming for
**Adam:** us? Yeah, but probably Bo, probably like in the short term, the former, and then over time the latter. I, I think like right now, It's cool to like just get faster at writing the code.
We were already writing and using AI to help us do that. And then I guess training ai, you know, these models to output good code and write their own things seems like a natural step in the evolution. Like they don't need us necessarily leading the charge. But then eventually like why, why have that intermediate step?
Why have it write Python? Yeah. When it could do something more interesting than that. Presumably.
**Lane:** So actually I've, I've thought a bit about this and I think a month ago I would've just completely agreed yeah, like why are we writing these silly programming languages? But let me use an [00:31:00] analogy.
Have you ever been in one of those product meetings where like there's an argument about whether a piece of code actually is a bug or not a bug because you can't agree on the expected behavior? Yeah, yeah. Yeah. So I see this future where if the code isn't, if, if what is produced by the L the l l?
Why can't I talk the large language model? Yeah, yeah, yeah. If the code that's produced by that isn't deterministic and like inspectable by a human or by another m l uh, l, l m like, yeah, you'll run into these like really weird scenarios where even if you're able to communicate to the like bot what you want, You won't be able to necessarily inspect it to see Yeah.
Like what the current state of affairs
**Adam:** is. Yep. No, I hear you. I, I don't know,
**Lane:** my brain just, I almost feel like it has to end up being some inspectable code that like Yeah.
**Adam:** May, it may be I don't, yeah. I don't know I don't know 20 years from now what all this looks like. If, and just the trajectory, the pace, I dunno, it feels different.
I, I hate getting bought into hype [00:32:00] stuff. But this AI stuff does feel different. It feels fundamentally different and. I don't want to deny it, but I also have no idea how to think about it. Like what's, what's coming. So just kind of like riding the wave, I guess. We'll see what happens.
**Lane:** Yeah. I feel that.
Okay. My, my, my final set of questions I wanna talk a bit about JavaScript land. So you're moving, yeah. You're moving from Elixir to Astro Astro's, A meta framework. I've never used it.
**Adam:** Yeah. So Astro is interesting. It's like, It's like a, a wrapper on top of ve it's okay, taking care of, really, it's, it's more than that and I shouldn't distill it down to that, but there's actually some platform or some frameworks that are like re-platforming on Astra now.
It's becoming so solid, solid start was I think built on ve now they're gonna build on top of astro bling, which is Tanner Lindley's new thing is, Architecture on top of Astro. So Astro is becoming this like layer [00:33:00] above ve. That's got more web stuff, more opinionated stuff built in the way it looks today, like getting out of future talk.
It's basically like pH h p but it's cript. You just write HTML files. You had to slip it in there, had to chill PHP a little bit. You, you've got fences at the top of the files, otherwise, or htm l no, they're not H M L the, they're like J S X E. Kind of-ish. Okay. They're more like html, they're a mashup because it's like you don't have class name anymore.
It's just class like H T M L. But at the same time, you can use a lot of the syntax to like embed stuff into like when you're, when you're escaping and trying to put, you know, dynamic values in the template, it looks like J S X in that way. Or when you're doing like a four loop and you're creating list elements or something but you just write like any type script you want.
Or JavaScript at the top in the fences. And then you can use that code, that data, whatever you, you know, variables, you've instantiated or whatever to render the page. So it's perfect for stat use. It's a perfect marriage of like use [00:34:00] case and technology. Cuz we could, we could have built stamus and php.
It probably would've been great. It just takes data. How much just Taylor paying
**Lane:** you?
**Adam:** Nothing. I get nothing. It's so funny. The, the whole Bel thing I've, I've pumped up a few things where I get excited. I'm just very excitable. No one's ever come at me the way they have with the Laville thing.
It's like they really think I'm getting something out of it. Like I'm getting a Lambo. I'm not. I get nothing out of talking about LA Be props.
**Lane:** Okay. Cool. All right. Adam, Adam is not being
**Adam:** paid. I'm not being paid. Lets, no one pays me to do anything. Just Staton News.
**Lane:** Yeah, when you release your tax returns, we'll believe you.
Okay you're, you're doing it in Astro, but recently you've talked about how much you don't like JavaScript. Let's talk about why, really quickly, what's, what's wrong with the JavaScript ecosystem? What makes you upset about it? How do we be better?
**Adam:** Yeah. Okay. So there, there's a few angles of this there.
This is a backend podcast. Mm-hmm. And JavaScript on the backend just is a whole, it's, it's a whole community. It's a [00:35:00] whole movement. It's a whole thing. And that's when I say I don't like JavaScript, it's mostly the JavaScript ecosystem. And it's really like a vibe thing. I, I don't know. It's not I don't like the way no JS is implemented.
I don't care. I don't get into that kind of stuff. And I guess even then there's multiple jobs could run times. So I, I don't care about all that stuff. It's just more like the people that have formed around this community. It's just such a dramatic culture and it's just, I don't feel like other, like laville dipping into that community on Twitter.
It's just such a different feeling. Astro. Similarly, and, and this is like we're, we're, it's hard to now differentiate between node js and different frameworks. There's specific frameworks and specific companies that have grown up in the node js space that have created a culture. I'm not a huge fan of, Astro feels like a breath of fresh air.
I realize that's JavaScript. So it, it's something more than just JavaScript, I guess. JavaScript is dumb. Look at what it does, look at these dumb code examples. Why [00:36:00] does that equal true and that equals nan. There's that stuff, but I don't care too much about that stuff.
It's mostly the community, I think, and, and then there's like the mpm. You get it technical. It's like the whole MPM landscape. There's no uniformity to like, this is the way you make a package and it will be good. And what is a good package? All of that is a huge problem that you just don't see with other backend languages.
They generally have better package managers and a better. Sort of ecosystem of packages to work with. You know what you get and all the docs, your uniform, everything in no js just feels so scattershot and so there was never anyone making the decisions. It's just everything for everybody.
Okay. I've said enough, I've said enough bad things about JavaScript.
**Lane:** No, you haven't. I have to bait you into more that things. But yeah, I'm with you like, performance is like a whole thing. Node modules, having 72,000 folders, like you use, create a boiler pit app, like all
**Adam:** that stuff is, is, and then we have like multiple package like.
Do you use yarn or mpm? Oh, is it yarn two or are you on p PMM now? Cuz you're cool. [00:37:00] There's just, we have so many stupid decisions we have to make in the JavaScript ecosystem every single day. We have to configure
**Lane:** Webpack for 13 hours. Oh, until you finally decide to switch to V. Yeah, it's the whole
**Adam:** thing.
Yep. And then you've got your tooling with Es lin and prettier and type script and making all those work together and package date on it. I just hate all of it.
**Lane:** All of it. I think. So here's, here's one of my theories. I'm interested to think, to hear what you think. I think part of the problem, so like we all have confirmation bias in this industry.
Sure. And it's like pretty, pretty crazy to admit if you don't like I've been, yeah. I've been writing go for six years. I just default to go if it fits for the use case. Yep. Because like I'm productive in it. Yep. I think that there's. Like this, this idea that like you can just learn JavaScript for, depending on like the marketing of the various boot camps, like three months, four months, like these crazy timeframes and it'll be super easy.
You get this high paying job, this remote culture. And then once you do that, you're like really bought in to whatever tech stack you learned. Yeah. And pretty much every bootcamp these days except for [00:38:00] boot dev which isn't really boot camp, but thing it's teach your JavaScripts, right?
Yeah. Yep. And I think the best engineers are not afraid to learn new things. Yeah, like you're using a tech site. Like the best engineers that I've met and worked with have been the ones that are like super excited
**Adam:** to learn new things. Yeah. No, I think and I think it applies outside of tech too.
I think there's something about being. Open-minded being okay to explore new things that you've never explored. I, that's driven all of my career. I've never been just like happy doing the same thing for years. I've always wanted to float around and be exposed to new stuff. I.
Yeah, I think there's a lot to that. I don't know why we start everybody, to your point on the boot camps, like why does everyone start out on the front end and why do we funnel new engineers into this very confusing space? And maybe it's, it goes one and maybe because that's the best place to start.
People, it's a much bigger ecosystem, so it's much more jumbled. But I just feel if you're taking a new person into this [00:39:00] career and you're like, Hey, you wanna be a developer let's learn, react, and use effect. And and Cs, you're gonna need some c s s cuz you're gonna hate that it looks awful. And oh, you need to deploy it somewhere.
Here's your there's just so many things as a front end developer today, I feel like it'd be so overwhelming. It's like, why not? Just here's a cli, let's build a little a CLI tool. Like spits out a stop describing
**Lane:** my curriculum. Oh, for real? Is that Yeah. Yeah. We don't, yeah, we don't. Ok, so boot dev is doing it, right?
We don't fuck with HTML and c s s. Okay, good. Yeah. Yeah. It's just
**Adam:** too much. It's too much at, at first, especially, and then it's not just HTML and c s s, it's like most people get funneled and react specifically. And I feel like that just has so many new things that you have to think about and. I don't know.
I, I just feel like there needs to be more boot devs. We need to start people in different places. I don't think it needs to be the front end.
**Lane:** I, I, I, I completely agree. You would, hopefully that goes without saying. Yeah. Um, But uh, here, here's my, here's like my theory as to why really quickly.
Yeah. I would love to know feedback loop. So [00:40:00] one of the hardest things or, or, or what I should say is what everyone who wants to get into development. Yeah. Wants is to have a website do a thing. Yeah. And so if you want a quick feedback loop, the, the fastest way to give that win to a student is to be like, here's 10 lines of html.
Yeah. Save it. Open your browser. Yep. And that's fine. I don't think there's necessarily anything wrong with that, but it, it's somehow evolved over the years from okay, we'll start here. Because a, it's like easy to learn. That sounds mean, but like it, it kinda is. No. Yeah.
Like you get started pretty quickly. Yeah. There's huge, there was huge demand in 20 15, 20 16 for front end devs. There was demand for every kind of dev. Yeah. And so it almost just became, in my opinion, like this rote script of you have to start with H T M L if you're going to be a developer.
Yeah. Duh. Yeah. Like first of all, that's only web development. Second of all, that's only front end web development. I was just pulling stats on this last year. There's twice as many BA like self-identified backend developers in the world as front end developers. Wow. Wow. I did not know this. Yeah, it's it's [00:41:00] crazy, but like tech influencers are, it's 10 to
**Adam:** one of like front end to Yeah.
The trends front end. Twitter's very front end heavy, which I, I don't understand that either. There's so many parts of this that I would love to have all the answers and just understand how things got the way that they are. I, I guess I think you can have a feedback loop in a CLI too, but I get that it's not as approachable.
Maybe Seeing text it's or something,
**Lane:** you know, yeah, yeah, yeah. I feel like they didn't build, that's the biggest struggle for me is yeah, starting people with Python and I do start them on the c l I, it's yeah, you're building an application here that does some pretty crazy stuff, but it, it's getting students to understand like I.
It's okay that it's, you are interacting with it through a c l I, like most of the world's infrastructure is c l I applications. Yeah,
**Adam:** yeah. Servers are c l I applications. I'm glad boot dev exists. You, you can you can be the answer now to like, why is everything start people, there's not everything.
There are things that are starting people in different places and to your point, not just web development, there's so many other types of [00:42:00] programming. I think people starting on hardware, like the first time I missed, I was. Eight, 10 years into my career before I mess with a raspberry pie or whatever.
And that just opens up so many new things in your brain. I think that's like a very engaging hands-on way to start learning programming. You have to flash little floppy shirt. Yeah.
**Lane:** Flashing Arduinos with like
**Adam:** ski. Yeah. This is like a whole thing. Yeah. Yeah. It's fun. It is, it is very fun. Way more fun than React personally, I think.
But
**Lane:** yeah, you don't have, you don't have to deal with Webpack, so it's already been Yeah, exactly. This has been absolutely fantastic, Adam. Oh, I loved it. I love having this conversation. Maybe in the future we'll have to have you back chat more about some other stuff. Where can people find you?
Find you online. Yeah. Where can, where can we, yeah. So it's
**Adam:** funny, adam.dev. It's my username, but it's also my personal site. It has links to all my stuff. So adam.dev, that'll get you my Twitch, my YouTube, whatever, Twitter. Cool. That's your last
**Lane:** name, right?
**Adam:** Dot dev. Yeah, yeah, yeah, yeah. No, it's actually middle name dot.
Yeah. Last name [00:43:00] Dev, adam.dev. I
**Lane:** love it. I love it. Cool. Thanks so much, Adam.
**Adam:** Yeah, thank you, Elaine. This was great. All right. We'll see you.