Back to overview

Exploring the Weird Web with Alex Anderson

In this episode, Alex Anderson, creator of Thorium Nova and a Salt Lake City-based web developer, joins Kent to discuss pushing the boundaries of web technologies. Alex introduces his talk, "The Weird Web," which dives into underutilized APIs like the GamePad API, Web Serial API, and Web Audio API to create innovative experiences on the web. They also explore how these technologies can provide practical benefits for both games and user-friendly web applications.

Alex Anderson, a local Salt Lake City developer and creator of the spaceship simulation game Thorium Nova, shares his passion for pushing the limits of web technologies. Alex previews his Epic WebConf talk, "The Weird Web," which showcases creative uses of web APIs such as the GamePad API, Web Serial API, and Web Audio API. These tools allow developers to build interactive, user-friendly, and immersive experiences.

Alex explains how these APIs can be leveraged in both creative and practical ways, from video games to more accessible web applications. He also highlights the value of in-person conferences, emphasizing the connections and inspiration gained from engaging with the developer community.

Watch this episode.

Meet Alex at Epic Web Conf.

Guests

Alex Anderson
Alex Anderson

Transcript

Kent C. Dodds (00:01.207)
Hello everybody, I am Kent C. Dodds and I'm joined by my friend Alex. How are you doing, Alex?

Alex (00:06.38)
I'm doing well, how are you?

Kent C. Dodds (00:08.114)
I'm super Alex you spoke last year at Epic WebConf. Yeah. So you know, one of my favorite things, one of the like the best compliments that somebody can give you. I say this as a speaker is like to ask you to come again. That's like people can say, you did a great job, but if they want you to come again and now they really mean it. And so I really did feel like you did a great job last year. And then like on the flip side, I've just been realizing I have a couple of people who are

Alex (00:11.136)
I did! Yeah, it was great fun.

Kent C. Dodds (00:37.215)
are coming to the conference again as an attendee. We have Dev who came as an attendee and now is coming as a speaker. And I realized the reverse is also true. The conference wasn't so bad. I guess you want to come again. So that's a good thing. So anyway, Alex, I really appreciate you wanting to come to Epic Web Comp.

Alex (00:50.158)
Absolutely, yes.

Alex (00:57.55)
Thank you, I'm Flattered Kent.

Kent C. Dodds (01:00.041)
Yeah, okay, so for those of you who did not get to meet Alex last year, Alex, can you give us a little intro to yourself and who you are?

Alex (01:09.26)
Yeah. I live here in Salt Lake city. So this is a local conference for me, which is nice. I make fancy websites, the fancier the better. So the fanciest website that I make is my spaceship game. It's called thorium Nova. And the idea is you play as the crew on the bridge of a futuristic sparship going out into space and doing missions, exploring that kind of thing. So

That's all built with web technologies and it is what gets me into my biggest trouble when I'm trying to do weird stuff with web browsers.

Kent C. Dodds (01:44.843)
Yeah, you know, I've played around with it. It is pretty cool. And one thing that I think is pretty interesting and underappreciated for those, for folks who are into the sci-fi stuff a little bit is how big space is and like how far, like we're navigating to these different planets and ships. And it's like, yeah, that's gonna take like, you know, a million years or whatever to.

Alex (02:11.874)
Yeah.

Kent C. Dodds (02:12.555)
to get there. So yeah, it's pretty interesting. How do you deal with that?

Alex (02:16.694)
bending the rules of physics. Anywhere where I am doing that in the code, I'll say, this is space magic. And that's just, that's just what I have to do. it's, it's necessary, but, but still fun. I'll give a small example. I can't remember.

Kent C. Dodds (02:27.754)
Yeah.

Kent C. Dodds (02:32.396)
Hmm.

Alex (02:38.19)
The speed of the fastest object which humankind has ever made is the Parker space probe. It is currently visiting the sun. It orbits around the sun and as it gets to the closest part of its orbit, it goes really, really fast. And it's able to go 692,000 kilometers per hour. Yeah, it's really fast.

Kent C. Dodds (03:02.689)
Wow.

Alex (03:06.617)
192 kilometers per second. In order to maintain the narrative structure of a game so that you're not bored traveling between places, you need to be able to travel really, really fast to get even from the earth to the moon in just a couple of minutes instead of in hours or days that it took the Apollo astronauts. So the cruising speed for one of these ships is 1,500 kilometers per second.

Kent C. Dodds (03:26.784)
Yeah.

Alex (03:35.266)
which is an order of magnitude faster than the fastest thing humans have already created. So just a little bit of space magic, just for fun.

Kent C. Dodds (03:40.757)
Wow. Yeah, yeah. Well, you know, we've got to do things to make it enjoyable for us regular humans who are impatient. Yeah. Yeah, very cool. Well, I have been really impressed and actually I selected your talk before you submitted it. So for that fun backstory, Alex.

Alex (03:50.574)
Absolutely, yes. Mere mortals.

Kent C. Dodds (04:08.202)
presented at the, I think it was the remix meetup, not the, yeah. And I was just blown away by the cool things that you can do with the web. Alex's talk is titled The Weird Web. And I always am impressed by the cool stuff that the web can do. That it goes beyond just the little boxes that we typically are doing on the web in our day-to-day jobs. But pushing it further, like 3D in the browser or working with serial ports or whatever, Bluetooth and.

Alex (04:11.278)
Mm-hmm.

Kent C. Dodds (04:37.461)
all of that stuff, this stuff that we don't typically do. And so Alex gives this really cool presentation and I say, hey, how about you do that at Epic WebConf and we can like do some really, I don't wanna spoil anything, but we've got some interesting plans. I think that if it works out, it's gonna be pretty exciting for folks who are there. anyway, don't you tell us a little bit about what you're planning on for the weird web without giving away too much.

Alex (04:56.428)
Yeah, I'm excited.

Alex (05:03.766)
Yeah. I mean, people have seen Three.js and WebGL stuff before. It's pretty common these days, which is awesome. Same with the Web Audio API, which lets you play different audio streams and manipulate audio in real time in the browser, which is great fun. And then there are some other APIs that are kind of buried in the spec. Like these are spec compliant APIs, not just random stuff that's been added, that let you use things like

game pads in your web browser. Yeah, fun fact, your web browser has information about the Xbox game controller and its layout and how it works embedded into its code. Like it knows what an Xbox controller is. Yeah, it's so weird. There are a couple of other APIs, like you mentioned the serial API. I saw Wes Boss did something where he plugged his robot vacuum into his computer.

Kent C. Dodds (05:34.991)
Kent C. Dodds (05:45.579)
That is so crazy.

Alex (06:00.182)
and then use the Web Serial API to send it commands, which is just bananas. You can control a robot vacuum with your web browser. Who does that? Well, we do, and it's great fun. So we'll talk about different things that you can do with these weird APIs that are a little bit more uncommon, why you might use them, have some really cool demos, hopefully really, really cool demos if, again, everything pans out, and talk about why the heck I'm doing it.

Kent C. Dodds (06:08.555)
Yeah.

Alex (06:29.154)
with these web APIs in the first place.

Kent C. Dodds (06:31.991)
I'm very stoked about that. You mentioned how you might actually end up using some of these APIs. Can you give just a couple of ideas of how is this practical? There may be some people watching right now who are like, yeah, I want to go to the conference, but I want it to be professionally enlightening and stuff. How is some of what you're going to be talking about practical to the engineers who are just web developers?

Alex (07:00.61)
Yeah, it's all about the users, really, and providing a great user experience. I'm doing it for my video game, and so there's a lot of video game things that these APIs are helpful with, like the GamePad API for being able to use a gamepad to steer your ship around, or for adjusting the pitch of sound effects. So every time a sound effect plays, it isn't the same pitch, which makes it sound a little bit more interesting and not boring and same thing over and over again.

Kent C. Dodds (07:29.878)
Hmm

Alex (07:30.092)
And those things can apply to regular websites too. Like if you have some kind of sound user feedback, you don't want it to sound exactly the same every time. You might want to do that little bit of pitch adjustment just to make it so that it's interesting and not boring every time the sound plays. Or you might come up with a clever way to use the GamePad API to provide more accessible options for people to be able to browse and navigate your website, depending on what type of site it is.

Kent C. Dodds (07:58.871)
Yeah, think that can be one area of differentiation, right? Of just being able to say, look, my site has some sound effects, or it has some sort of integrations with your device that you are holding in your hand, or whatever. think it's something worth exploring, for sure. So I'm excited about that.

Alex, you have been to more than just Epic Web and more than just local conferences. What is it that draws you to the different conferences you attend?

Alex (08:37.87)
I think it has mostly...

Are you going to edit this? Now you are. Yeah.

Kent C. Dodds (08:45.845)
Yeah, yeah, can put a marker right there.

Alex (08:53.754)
I go to conferences because of the people. Some of my best friends that I've made, including you Kent, have been made at conferences and meetups where we talk in person and get to know each other in a way that's difficult over the web, especially over social media. And it's really awesome to be able to run into people again at conferences or meet new people at conferences that you've never met before.

and make those connections with people.

Kent C. Dodds (09:31.253)
Yeah, I think the primary goal of the conference isn't just education, because that's something you can get on the internet, you know, pretty readily if you're, if you find the right instructors or whatever. But the real benefit there is making those in-person connections. and then like it's useful professionally, but also just personally, I think that's what makes us human is the connections that we make with other humans.

Alex (09:53.219)
Mm-hmm.

Alex (09:57.902)
Yeah. And it's nice to be inspired. Like that's why I'm giving this talk is it is very aspirational. I don't expect everyone who comes to the conference to be like, Ooh, I'm going to put web USB into my app. Like, no, but now you know that it's a thing and that it's possible to do that. And conferences condense that, and concentrate it into a small section of time instead of just kind of getting little nuggets here and there.

So lots of inspiration, lots of connection.

Kent C. Dodds (10:27.113)
Yeah, absolutely, yeah. So when all those people do come to the conference and you're standing in the hall, just having a chat with somebody, eating a tasty cookie or something, and they wanna walk up to you, what's something that they could talk with you about that would get you really excited?

Alex (10:44.62)
I should ask me about my spaceship T-shirt, shouldn't I? Yeah, I can ask about my spaceship game. I'm really interested in local-first development. That's what I talked about last year at Epic WebConf. So we can chat about that. End-to-end encryption.

Kent C. Dodds (10:47.393)
Yeah, definitely.

Kent C. Dodds (10:57.503)
Yeah.

Alex (11:08.802)
Baking? I'll talk about baking.

Kent C. Dodds (11:10.975)
Yeah, yeah. I wonder, maybe we should see if we can have you bring some bread over or something for like sample plate. That could be fun.

Alex (11:17.694)
I absolutely could. Yeah, I could. I was going to offer, so great. I'll put it on my calendar. Make bread the night before.

Kent C. Dodds (11:25.783)
Let's do it, yeah. Sounds great. Hey Alex, thank you so much. I really appreciate you giving us some of your time today and looking forward to meeting you there and hopefully a bunch of other people coming to meet you and chat with you about baking and spaceships and all of that good stuff.

Alex (11:45.262)
For sure. Thanks Kent. Looking forward to it.

Kent C. Dodds (11:47.265)
Okay, thanks everyone, see ya.

Sweet episode right?

You will love this one too.

See all episodes

Featured episode

Beyond Code Assist: Driving Impact as a Next-Gen Developer with Mark Techson

Season 6 Episode 14 ā€” 10:01
Mark Techson