298

November 4th, 2020 × #Accessibility#Teaching#CSS

Voice Coding is Really Good with Josh Comeau

Josh Comeau discusses how he codes by voice and eye tracking due to injury, the benefits of attending a bootcamp, adding whimsical touches to websites, and how he focuses on teaching development through interactive blog posts and courses.

or
Topic 0 00:00

Transcript

Wes Bos

to Syntax. This is the podcast with the tastiest web development trees. Today, we've got a guest that Wes haven't had a guest on in in a while. We've got Josh Komu on, who's here to talk to us, about a bunch of stuff. But the one thing I'm really interested in is, he is doing voice coding Wes he he can't use necessarily always be using a mouse and and typing on a keyboard. So that's all I know about it. I intentionally didn't ask any questions because I I want to put it on the podcast. So thanks so much for coming on, Josh. Wes. It's my pleasure. Thanks for having me. This is super exciting. Awesome. Today, we're sponsored by 2 awesome companies. First 1 is Sanity, which is a structured content CMS. Second 1 is Sentry.

Wes Bos

Sanity and Sentry. Sentry does all of your error and exception tracking.

Wes Bos

Scott Tolinski, as always, is with us. How you doing, Scott? Hey. I'm doing good. Just, living that cold brew life and, Getting coked up. Yeah. Well, we're recording on a Tuesday. We usually record on a on Monday, but yesterday was Canadian Thanksgiving. And, Josh, you're from Montreal?

Guest 2

Yep. That's right. It's a weird you know, like, family holidays in the time of COVID JS always a bit because it was kinda just like any other day. But, yeah, Canadian Thanksgiving.

Wes Bos

Cool. Happy Thanksgiving. It's funny because we've had other guests from Montreal as well, and we made a joke last time that we only have guests from Montreal on it. I think you're the 3rd.

Wes Bos

I've do you remember who everyone from Montreal was? It was the, the miss of folks, Etienne. Yeah. And there was somebody else that was from Montreal.

Wes Bos

I forget. But, anyways, we only have guests on that are from Montreal.

Guest 2

So why don't we get started? You just, tell us who you are. You've got, like, a a background of working on some some pretty cool companies, who you are, what you do, kinda what you're interested in, and then we'll dive into the the voice coding stuff. Yeah. So my name is Josh. I've been a software developer slash web developer for going on 7 or 8 years now in a formal capacity a bit longer than that just for me hacking around and doing stuff for fun. Worked recently for companies like DigitalOcean, Gatsby, Khan Academy, Unsplash.

Guest 2

And I recently left a job at Gatsby to pursue my own thing. So I'm excited about that. I've also, as mentioned, been using a microphone and an eye tracker as my primary input mechanisms for coding since about March or April.

Guest 2

So

Topic 1 02:30

Uses microphone and eye tracker for coding

Scott Tolinski

Cool eye tracker. And, yeah, we're definitely in support of doing your own thing over here. We're we're big fans of it. Yeah. That that's awesome. Congrats. That's a that's a big

Guest 2

leap to take. So, like, your own thing, you mean, like like, what is your own thing then? Yeah. I mean, pretty similar to what both of you do. It's been kind of a dream of mine to focus more on education. I should also mention from my bio, I've been teaching at a local boot camp for the past couple of years. I do the part time program, so I've been juggling that with my day job. And, I mean, I used to work at Khan Academy, which is like a super education focused organization. It's always been kind of a dream, but it's always been like, you know, I'm still getting experience in the industry, and it's it's always been like a thing in the future. So I I have a repetitive stress injury, which is why I don't use a keyboard. And that has kind of, like, flipped a switch in my head Wes I had the realization that even though what I have isn't supposed to be a long term thing, who Node? Right? Like, and who knows what else is around the corner? I don't have an unlimited amount of time to do whatever I want. And so if there's something that I want to do, I shouldn't assume that I have all the time in the world to do it. I should do it now. And I'm in a very fortunate position where I have enough saved up that I'm not under a ton of financial stress. So I have like, all of the circumstances are in my benefit aside from not being able to use a keyboard. So I figured, like, I also, I write on a blog.

Topic 2 03:46

Pursuing teaching through blog and interactive widgets

Guest 2

I do a lot of, like, experimental stuff where I create interactive widgets to help explain concepts, and I really wanna pursue that idea further. So it's gonna be kind of like a multimodality kind of thing where there's gonna be videos, but there's also gonna be interactive widgets, code snippets,

Wes Bos

just like ways to get your feet dirty or your hands dirty and play with ideas. You can get your feet and your hands dirty both at the same time. Yeah. Just get the whole body in there. Yeah. Yeah. We should say that you have, like, an awesome Twitter feed and blog, so, we'll do shameless plugs later. But right now, go follow me JS joshwcomeau, c o m e a u, on Twitter, and it's the same Scott.

Wes Bos

You got a really, really awesome blog. Lots of, like like like you said, lots of, like, good interactive examples. There's lots of animation stuff. Maybe we'll we'll cover some of that as well. Let's jump into the the coding with your voice. So you said you have a repetitive stress injury. Is that from just banging on the keyboard all day long?

Guest 2

That's the theory. It is it's kind of ironic where the initial thing happened. I had some I've been playing Beat Saber, which is a VR video game, where I was playing it. And I hurt my wrist, so I went to a physiotherapist.

Guest 2

I mean, I had been already seen Node for a couple other things. Yeah. And one of the exercises he gave me for my wrist wound up injuring my elbow, and it's that elbow injury that I'm still dealing with. I don't actually think it's the physiotherapist's fault, though. Like, what I think happened is I it's like a ticking time bomb. Right? Like, it was gonna go off at some point. And the reason I think that is that my left arm was the one that was injured. My right arm started acting up a couple months later. So You know, really interesting because I've been going to the physical therapist now for a little bit too for my back. And, like, one thing that I've learned greatly from what they say is that, like, the problems that appear are like, I'm dealing with similar issues. Right? I had a problem with the one side and one part of my back, and now it's like a whole another side and a whole another part of my back is hurting. And it's because

Scott Tolinski

your your body tries to accommodate for whatever thing is happening at that given time, and you fix Node thing. And while you're fixing another thing, it could lead to the uncovering of, like you said, like a ticking time bomb, something that was bound to be going wrong at some point anyways.

Scott Tolinski

It's fascinating to hear you having a similar experience.

Guest 2

Yeah. I mean, I think that part of it too was that I'm right handed, and it was my left arm that started acting up initially. So what it meant is that now my right arm, which is already doing most of the work, it was now doing everything. So I was doing everything in my right arm, and I think that was part of it too that I overused that arm and then, it started having the same issue. And, yeah, the issue is it's called cubital tunnel syndrome. It's the less known cousin of carpal tunnel syndrome.

Guest 2

It can manifest in a whole bunch of different ways. The way that it manifests for me is like a burning and tingling in the elbow. It it's gotten better and worse kind of fluctuating.

Guest 2

Where it is now is I can type for about 2 or 3 minutes at a time. But as you'd imagine, it's like super hard to get anything done with that amount of a limit. And if I if I have, like, maybe 10 of these 2 or 3 minute snippets in a day, the next day, I'll feel worse. So, really, it's like I can use it for, like, 15 minutes a day Oh, man. In small in small bursts, which makes it really hard to program. Right?

Scott Tolinski

So so, like, carpal tunnel, is it is it like a inflammation of, like, tendons or something that's causing

Guest 2

nerve nerve pain, nerve damage kind of thing? Yeah. So there's a a tunnel. There's 2 tunnels in your elbow that a nerve runs through. And, essentially, what happens is the nerve gets irritated if it rubs up against whatever that tunnel is made of cartilage or whatever.

Guest 2

So, yeah, it's a nerve inflammation issue. And the idea is, something like 15% of people. When you bend your arm, something shifts out of place, it dislocates. That's the nerve moving. And it happened to me. And if you if you are one of these 15% of people, it makes you more prone to have this happen. I should also say that something like 85% of people who get this issue, it recovers spontaneously in 6 weeks. So, like, if you are one of the people who has experienced signs of this, please don't get too panicked. For most people, it doesn't actually become this, like, months long saga. It usually goes away on its own in a few weeks. But in my case, I'm in that unlucky 10%.

Guest 2

Which it turns out is really frustrating because you always go see these professionals and they're like, oh, yeah. That'll go away in 6 weeks. And you're always given this, like, false hope of like, oh, okay. I must be right around the corner then. Mhmm. Yeah. It's not I mean, it's still it's still supposed to go away on its own,

Wes Bos

at some point. But there's also a surgery they can do, which essentially just moves the nerve so it doesn't get as aggravated. Oh, man. I'm getting Dang. Yeah. And then I'm getting the melts over here. I whenever anyone talks about nerves or organs or anything like that, I'm just, like, if I fall over, that's why.

Scott Tolinski

Probably should've thrown a warning in there. I feel like we were talking about something a couple episodes ago, Wes, when I was, like, mentioning an injury Landon had, and I could tell you were getting a little melty with something over on the other end. I was like, okay. I'm not gonna go into any more detail.

Wes Bos

That's fine. You guys go into it for the sake of the podcast, but if I fall over, that's what.

Topic 3 08:30

Can only code couple minutes a day due to injury

Wes Bos

Listener discretion is advised. So you obviously write code for a living. So, like, tell us about this is the most interesting part. Like, how do you do that when you you can only code for a couple of minutes every single day?

Guest 2

Yeah. So that's where and one of my coworkers, Amberly, mentioned this. Essentially, like, there is a community that has either similar issues or other motor issues that use this as their primary input mechanism, and it's powered by a software called Talend, Talend Voice. So the idea is Discord has a speech recognition engine. You can use its own built in Node or Dragon or any of the other ones that, it supports.

Guest 2

What it does differently because like most voice recognition just transcribes what you say. And that's great if you're writing a letter, but, like, as you would imagine, it gets super tedious when you have grammar and different casings and stuff. So it comes with a bunch of built in commands. So for example, if I want to write in camel case, you just say camel hello world, and it'll camel Scott it'll output hello world with the w capitalized and smooshed together. You can do snake hello world and it snake cases it. So it has all these built in formatters.

Guest 2

It also has built in syntactical things. So I can say dub arrow and it'll put, like, an equals and a greater than sign. Oh. Yeah. Greater than sign to make a double arrow.

Topic 4 09:32

Talend Voice coding software features shortcuts and commands

Guest 2

So there's a bunch of these, like, little shortcuts that spit out common common things that you need. I can go, like, much deeper into all of the things that it can do. Is that is that worthwhile? Should I go in there? Let's do that. Yeah. I'm very interested. Cool. So well, actually, the first thing is you have to learn, like, an alphabet.

Guest 2

Because English is like a really annoying language. Right? Like p and z and t and b. Like, all these letters sound way too much alike. And that's why, like, whenever you're on the phone, it's always like, okay, t like Thomas and v like Victor. And it's always like, it's so hard to understand.

Guest 2

So it has its own alphabet. And all of the words that it uses are single like, most of them are single syllable. So it's like air, bat, cap, drum, each. It's like all these short words that when you say this word, it puts that letter there. And granted, like, usually, you're not just you know, like, it's it's rare that you need to reach for that because usually you just say the sentence that you want and you don't go letter by letter. But, of course, like, there's times where you have, like, a weird word or some technical thing that the dictionary doesn't know. The next thing about it that's really cool is navigation.

Guest 2

So you can say go left, go right, go up, just to move the cursor by a single position.

Guest 2

But you can also use ordinals. So if I say go left 5th, it goes left by 5 places. And, actually, the ordinals work for any command. So, like, if I wanted to say the number a1000, I would say 1 0 third because it's Node Deno, and then the third means, like, repeat the 0 character 3 times. Oh. So you'd wind up with Node zero zero zero. That's cool. Lots of, like, little tricks like that make it it makes all the difference in the world because it would be way too tedious otherwise.

Guest 2

So the other thing too is that all of the stuff that I've mentioned, like all of the commands are Python scripts that come with the software. So you can change any of them. You can add any additional ones that you want.

Guest 2

So being a JavaScript React developer, I've added a whole bunch. So I can say Elm image, and it'll make a JSX image tag. I can say styled image hero image, and it'll say const image with a capital image equals styled dotimg tick tick, and it puts like it does all the formatting for me. So I say, like, 3 words, and I get, like, a styled style tag ready to go. So is it almost like snippets for voice? Yeah. It it can be thought of that way. And in fact, I already had some Versus Node snippets. And so for those ones, I've just left them alone. And I'll just, like Mhmm. Say the letters that I require for this snippet and then say the word tab, and it drops that in, which is actually kinda like an easier Yeah. The one thing that's kind of annoying about that is it takes Versus Code a couple seconds to, like, evaluate that.

Guest 2

One of the things Talend Vercel gets right is they understand the difference between, like, 300 milliseconds and 100 milliseconds is huge Wes you're trying to rattle off a bunch of rapid commands. So, like, small intervals in time make a much bigger difference when you're voice coding than when you're typing.

Guest 2

So,

Wes Bos

I've tried to move most of them even though it's like much faster just to add a snippet in Versus Node because I don't I'm not super comfortable with Python. Yeah. And it's like you have to touch more file. It's like more work, but you get this, like, super snappy response when you do it. Interesting. Man, that's that's really cool. It's it's almost like you are like, you're talking about all these little, like, tricks and stuff that you have, and I'm like, that sounds a lot like like JavaScript and or any programming language in general is that, like, as you get better at this thing, you just, like, learn lots of little, tips and tricks to be able to be be productive and whatnot.

Guest 2

Well, I was initially super skeptical of this because you just think, like, all of the experience I've had doing voice TypeScript. First of all, it gets it wrong half the time. Yeah. And I just I couldn't imagine how this would be anything but a super frustrating experience. And, like, truthfully, it is frustrating sometimes. There are times where it's like, I'll try to say something and it gets it wrong, so I'll try to modify it, and then I I say the modification wrong and I get this big Wes. And I'll just wind up, like, pulling out a keyboard and, like, angry typing it in and then keyboard away and then trying it again. Yeah. So, like, that's totally something that happens. But overall, like, 80% of the time and it it's getting better and better the more I do it. It's pretty smooth sailing.

Scott Tolinski

This is fascinating to me. I do a lot of, voice typing. I I I suffer from a a dyslexia. So, like, for me, writing is very challenging in general. So it's not like a mechanical issue. It's a it's like a processing issue. So I do a lot of voice dictation overall. Pretty much any text message or anything I send is voice dictation. And so I I have, varying degrees of experience and tolerance for levels of accuracy in voice dictation, as I'm sure you've really experienced. This is just, so I've downloaded TalendTalendvoice.com.

Scott Tolinski

It looks really interesting here.

Scott Tolinski

Talon is is the primary tool. Do you use this for everything or just coding specifically?

Guest 2

Yeah. It's so I use it for everything. It's honestly not the best for just doing straight text. I probably should get a second thing when I just wanna, like, you know, write a blog post or tweet something. Like, you wind up having capitalizing the starts of sentences. You have to do that all manually with Talend. But it works just fine. And it's, like, good enough at this point that I've just stuck with it. That that makes me think about, like, I wonder how

Wes Bos

AI will will play into tools like this. Because, like, you would imagine after doing it for 300 hours, it would it would like, well, like, what's the the Versus Node extension I'm using? Kite. So what Kite does is it it went out they went to GitHub, and they downloaded every line of JavaScript ever. And then they also, as you're coding, it will suggest things that, like, hey.

Wes Bos

Given your past and every line of JavaScript ever put on GitHub, you maybe you want something like this. And I I just think about that or even, like, like, just voice to text when you're doing, like, Siri or something like that JS it will go back and correct previous words based on words that you've written in the future, and it gets better as it has more context. I'm like, oh, that's kinda interesting. I wonder if AI will start to play into tools like this to make them even better. You have to imagine it will because especially because, like, Google Google Vercel dictation is way better than the Apple Node. And I would imagine they have a little bit more juice there involved in, like, natural language.

Guest 2

There is, like, a lot of room for improvement, and I I should say that I'm a super big fan of Talon. I'm very I've talked to the person who's written it. You know, I I so I should also say that it's a paid software. There's a free version and a paid version. In the paid version, you get the latest version and there's a lot of, like, other little things.

Guest 2

So I'm a big fan of it, but it doesn't really, as far as I know, do anything like what we're talking about. Like, it it'll make the same mistake over and over and over again, and it never learns from the fact that I keep auto correct or recorrecting it in the same way. But it's totally like, it's going in that direction. Right? It has to. And it's exciting to see how it's it it kinda feels like we're very early into this thing, and and it's there's, like, more potential. There's so much more potential ahead from where it is now. I wonder, like, too, like, how far brain

Scott Tolinski

signal processing would help in those regards too because there's a lot of those, like, experiments where you see, you know, nodes connected to different spots of your brain measuring your electrical signals in your brain. So, like, like, at what point does it become you're not even speaking, but you're you're thinking about things or you're you're moving windows around that way, and it just becomes a little bit more, you know, sci fi Wes your your mind is controlling everything in addition to your voice.

Guest 2

Yeah. There was I mean, I tweeted about this a couple days ago, and a couple people mentioned some company called Neuralink Neuralink, and they're essentially working on this. And it does seem like that would be even better. So, hopefully, they, they hurry up with that.

Scott Tolinski

Yeah. Right. Yeah. I remember seeing a TED Talk a while ago. It's just like, just think about moving a box, and the box moves. And it's like, wow. That's amazing. Yeah. That's really cool.

Guest 2

One other thing I should talk about too that I neglected to mention is it also features eye tracking. And the way that works is you have to buy a separate thing. So I have this bar that just sticks at the front of my computer.

Guest 2

And it essentially just reflects light off your eye so we can tell roughly where you're looking.

Guest 2

It's not super precise, but they account for that. So the way that it works is you make a popping sound with your mouth like a and it essentially zooms in on roughly where it thinks you are. So, like, your entire screen becomes, like, maybe 4 inch a 4 inch box. And then it's, like, super accurate because, like, you know, you it can tell, like, within maybe an inch of where you're normally are, but when it blows it up. So you pop once to open the window roughly where you're looking and then you move your eye slightly to, like, pick the specific area. You make the popping noise again ESLint clicks on that thing. And you can make you can say righty if you wanted to right click. You can pop twice if you wanted to double click.

Guest 2

And that works super super, like, surprisingly well. Wow. I still haven't found a way to click and drag. So, like, that's the only interaction I don't have a workaround for. I have to pull up the mouse when, like, I wanna drag a file from 1 window to another or whatever. But, yeah, it's pretty cool. Like, if you wanna, like, move your cursor or select some text or,

Wes Bos

like, anything you would normally do with the mouse, you can just

Guest 2

and it you can move around. That's unreal. That's so cool. Yeah. It's pretty cool. It uses a device called the TOBI five.

Guest 2

I think it was, like, a few $100. The irony is the device.

Guest 2

It's like a Windows device that is meant for, like, Windows Hello. Like, it's not actually meant to be a mouse replacement, but Talend Voice built their own drivers for it. So it's controlled by Talon even though when you go to the Tobi website, it doesn't mention any of this stuff. It's just like a Actually, it has, like, a couple little tricks it can do. So, like, but Yeah. It's like eye tracking for PC games.

Wes Bos

Mhmm. Because yeah. Because I've I've a Windows computer, and you just open it, and it looks at your eyes and and logs you in, like, kinda like face ID. Right? And I was thinking, like, how does that work? And, like, I don't do you know what the technology is under the hood? I don't. I have no idea. It's like a like a Bos Kinect, I guess, was, like, the the very early version of that, and it seems to be be getting better. That's so cool. I love that.

Scott Tolinski

This says infrared optical sensor, so it's using something infrared.

Guest 2

And I know that you can it does have a video camera in it because you can toggle it on to see what it sees, and it's just like this low Wes, monochromic, monochromatic thing.

Guest 2

But, yeah, it works, like, it works better than I expected it to.

Wes Bos

Wow. And how much was the the ESLint software? Like, I I kinda wanna get an idea of, like, how much money do you have to to get into this. It's

Guest 2

I think it's $20 a month. Okay. So you join the person's Patreon. Oh, yeah.

Wes Bos

I'm just looking that up. That's, that's surprisingly affordable to to get into something like this. Like, I'm I'm just wondering myself, like, even if you don't have any issues, like, is this something you could just layer on top of all of the other workflow that you have just to add a little bit more productivity? It'd be kinda cool to try. Yeah.

Guest 2

I would say so. I know that there are a few tasks now that definitely feel faster with voice. Like, I mentioned the styled component snippets Yeah. And creating elements. Like, it's so much faster just to rattle off a couple words. So I could totally imagine that. Yeah. Yeah. That seems like a really neat

Scott Tolinski

neat avenue to explore, especially if you, like, haven't explored that kind of avenue before. I I've never I've never even considered something like this, and I think it's it does seem to be a little bit, like, less barrier to entry than I had, probably assumed.

Guest 2

Yeah. Will also say that, and I'm struggling. I'm blanking on his name, but there was a conference talk given a few years ago by someone who uses because Telen voice has been around for a while. It's not brand new. Mhmm. And he was saying that he developed, I think, the same issue I have or a similar issue. And he got used to coding with his voice. His injury healed, and he still spends about half his time voluntarily coding by voice just because I mean, maybe it's that he wants to prevent a future issue, but I the impression I got was that he actually enjoys it enough that it's and has gotten productive enough with it that it's kind of a wash. Like, he's happy to do that instead of using a mouse and keyboard. I watched that one. One from using Python code by voice, Tevis Rud.

Scott Tolinski

Yeah. I think that's it.

Wes Bos

Yeah. Emax. Yeah. He, like, made his own little commands where he could, like because I think he was using Vim at the time. Emax. Emax. I'll I'll post something. Badass.

Guest 2

I may be mister like, maybe he wasn't using Helen Boyse. But, yeah, that's that's the guy, and that's the top. Cool. And and, like, how long have you been doing this? I started in well, my injury happened in March.

Guest 2

I probably started in May or so. Like, I you know, because I spent a couple of months just trying a whole bunch of other things, like seeing an occupational therapist and, various specialists and various keyboards and various mice, and I Scott the standing desk. So it took me a couple months to, like, work my way to that in my list of alternatives.

Guest 2

But yeah. So it's been probably about 4 or 5 5 or months 5 months or so now. Wes would you say your your productivity is at right now versus where you were before? Yeah. So there's a couple thing. I Wes. It's hard to estimate. Right? Because I don't have, like, doing the same task. I would say my typing speed is about a quarter what it was, but my overall development speed is probably up 50%. Because, you know, like, all the time where you're thinking about things, that's still the same speed. Yeah. You're right. Yeah. The typing is only a small portion of it. It doesn't slow you down as much as you might think based on typing speed. The issue though is I'm not you know, I'm an introverted person that's worked remotely for years. I don't spend 8 hours a day speaking.

Guest 2

So my throat is bothering me, and I have to take breaks for that. So it's like, you can't put that much pressure on your voice. At least, I can't yet. Maybe GitHub rough practice, I'll get to it.

Wes Bos

Yeah. You should start a podcast Wes you do 2 episodes a week, and, you can hang on all day long.

Wes Bos

What about, like, things like, I'm not sure if you use any of these, but just like TypeScript typed language, does that make it any easier because the editor possibly knows what you want to type as well? Yeah. So I haven't

Guest 2

in the past few months, I've just been working with plain JavaScript. I have worked a fair bit with both TypeScript and Flow, but I haven't tried it with this. I imagine it would be. You Node, I mean, even with just straight JavaScript, it's Versus Node has gotten better. Yeah. It is. You import an object, it knows the key. So often, it's like I'll say the first word and then just say tab, and it'll fill it in for me. I imagine that would help quite a bit. Cool. Man, you gotta do a a YouTube video of you building something without like like, tie your hands around your back or something, like, hilarious like that just to show how how cool is this. Houdini Deno. Yeah. Yeah. And what about, like, switching to the browser and refreshing the browser or things like that? Do you does that cover that, or is that just coding? Yeah. So the cool thing is that it's not actually specific to any program. So there's a folk yeah. I say focus Chrome, and it moves me to Chrome. Okay.

Guest 2

I do command tilde to move between Windows, command tab to move between. Like, all of the same keyboard shortcuts, you can just vocalize them. So, like, if I wanna refresh, it's just command red, and red is the word for r. So, yeah, you get it gets pretty convenient with that. If I wanna open the dev tools, it's command option SIP because SIP is the keyword for I. That's cool. Very cool like one of our sponsors today. Nice. I don't know. I don't know. It's not it's not good. It's not my good it's not my best work here. And I'm talking about Sanity. Sanity Scott I o is the BYO

Scott Tolinski

front end. Point.

Wes Bos

I always said

Scott Tolinski

bring your own front end to, structured content in the back end. Wes, do you wanna talk more about Sanity here? I every time I say BYO, I wanna do BYO content. And then I realized, while technically correct, it is, not really that

Wes Bos

that doesn't really make that much sense. So Yes. So Sanity is a structured content CMS. You probably know what they do by now, since they've sponsored so many of our podcasts. So I thought I would use this sponsor spot to talk about one of their most recent they're just they're cranking out features.

Wes Bos

Like, I wonder how many developers work at Sanity, because it seems like every couple weeks, they're they're bringing out some sort of new feature. And, a lot of the features lately, because I I think they have a lot of the developer experience nailed, they're rolling out a lot of the end user UI updates. So things like multiple people can edit things or review things. Like, they have an example. If you go to their blog post, you can see a visual example, but they'll say, like, oh, no. Cross out this word and use this word instead, or I wanna add a comment on this thing. And just like an awesome editing experience at the end of the day because when you're picking a, like, a headless CMS, there's a lot to think about in terms of, like, will it work with Gatsby and and things like that and and is there a GraphQL API? But then there's the whole other side of it JS, is the person who's gonna use this thing at the end of the day from marketing or or my client gonna actually enjoy this thing? And they pnpm all the I think JS much time on that as they do the developer experience. So highly recommended. I used it in my latest Gatsby course as well. Sanity.i0forward/ syntax. That's gonna get you double the free usage tier. They already have a really generous free tier as well if you wanna try it out on any of your your next projects. Thanks so much to Sanity for sponsoring.

Guest 2

The one thing I did wanna talk about was the perspective that it's given me. Like, you know, we talk a lot on the web about accessibility. Yeah. And it's it's so so easy to think of accessibility as something you do for other people. Right? Like people who are blind. And you tend to think of people who Yarn, like, in a separate category permanently.

Guest 2

I know that, like, Jen, Luca and others have talked a lot about this idea that most people will experience a disability at some point in their life. And so it's not like something you do for other people. It's something that you do for everybody. It's something that benefits yourself and a lot of accessibility stuff. This experience has taught me just how inaccessible a lot of things are. Now that I have the eye tracker, it's it's you know, I I can have a mouse replacement, but before I got the eye tracker and after my right arm started, had to use tab navigation to get through things. And it made me realize just how inaccessible so much stuff is. So it's been like a really interesting

Wes Bos

involuntary case study Yeah. Just to, like, see what that experience is like a little bit. There's a con I like, I wanna see a conference talk from you, a YouTube video on like, I think there's so much to be learned from from this type of experience just because, like, you're the guy who makes the stuff, and JS well as you're now the guy who had to experience it all yourself.

Scott Tolinski

That's really cool. I'm interested about maybe, like, the eye tracker. Like, I wonder how good those eye trackers could be. You Node, it'd be my dream to be able to look at something, make a pop noise with my mouth, and have it read it to me, because I'm I'm terrible at reading. Right? So, like, that is a challenge of mine is that I'm frequently trying to find ways to have the web read to me in better ways. Like you mentioned, people, they don't think about many of these disabilities until it hits them, and then then it becomes a priority. We talked about it in our episode on accessibility that, well, there Yarn several categories of disabilities, whether it's temporary and whatever. I mean, even just holding a baby in Node arm is a disability for that given period of time. So definitely, we'll make you you reevaluate things once once it hits you like that. You know, one kinda cool thing is I saw the other day is that the AirPods have

Wes Bos

accelerometers in them, and somebody figured out how to pipe the data out of the AirPod into a WebSocket.

Wes Bos

And you just turn your head, and it it knows where you are. So I'm I'm thinking, like, man, I think the AirPods are gonna are gonna start disrupting the whole hearing aid industry. Like, my OPA has a hearing aid, and, it's, like, $3,000.

Wes Bos

And here I am with my AirPods, which is probably better for $300.

Wes Bos

I'm thinking, like, man, like, this consumer technology is gonna be huge for for accessibility devices.

Scott Tolinski

My dad has a a a hearing aid, and his hearing aid is pretty sick.

Scott Tolinski

Like Is it? He Bluetooth he Bluetooth into the TV. He Bluetooth into his phone. Really? It's just like oh, yeah. Oh, yeah. Yeah. They're fancy.

Guest 2

I didn't know that. That's cool. I know Adam Savage from Mythbusters has talked about how he has hearing loss. And the hearing aids he got are fantastic, but they were, yeah, like, $8,000.

Guest 2

And he's you know, when he was looking into it, he he was very aware that, like, he has the privilege to afford these things, but there's there's you know, you there's no reason that it shouldn't be an order of magnitude cheaper because it's not like there's any special it's not super expensive hardware. It's just that it's so specialized. They don't make that many of them. Yeah. Right. I think that that same same ESLint point could be applied to just about 1,000 things in our our health care,

Scott Tolinski

situation across the globe right now. Yep.

Wes Bos

Alright. Let's switch topics.

Wes Bos

What do you let's ask you. What do you wanna talk about?

Guest 2

I would say that the thing that I'm, probably most known for online is whimsy and animation, so I'm I'm happy to talk chat about that. That's, like, right up my alley.

Scott Tolinski

Your whimsy is very on display.

Scott Tolinski

You're a little 3 d guy. Love your little three d avatar. Did you make your 3 d avatar? I did not. I I have experimented with Blender, but I very quickly realized that, goodness, this is like you know, it's a whole skill that I don't have the time to do everything. I know. I I bought a course on doing 3 d with Blender with the anticipation of doing it, and I, it it remains unwatched in my my queue still.

Scott Tolinski

But, actually, it's funny. I I did a course on three d using, 3 JS, and was it React 3 Fiber? Have you played around at all with because you have your 3 d model. Have you played around with making that 3 d model, like, actually rendered in browser? That has been the idea.

Guest 2

The problem is that the so I I commissioned an artist in Spain to do it. And from what I understand, I don't I don't actually have the model assets. Okay. But what he explained is that, like, the rendering takes like half an hour and all of the lighting in that. Like, he could send me the model, but all of the environment stuff like, there is certainly a way to do it, but I have Scott, not gotten to that. I will say that I have used React 3 Fiber quite a bit. One of the things I made was a beat saber editor, so you can, like, import your own song. And for that, all of the editors that ESLint, you know, it's a simulation of the game. So you have blocks moving in 3 d space and you have a grid and you click to place them. And, like, all of that immediately was like, this is gonna be, like, a bit of Wes show if I try to do it with the Dom, like, just with the games and that.

Topic 5 30:21

Uses React 3 Fiber for 3D animations

Guest 2

So, yeah, I I I reached for React 3 Fiber and found it super, super cool, and that was part of the idea. Cool. It's very cool. We have all these, like, amazing tools for animating models, but you need those models in the 1st place. So yeah. It's totally like, there's so many things. Whenever I talk about, like, animation and whimsy, I have to, like, add the disclaimer that there's, like, a 100 different subcategories.

Guest 2

Like, it's huge. Right? Like, there could just it could just be CSS animation. It could be Wes stuff. It could be 2 d canvas. It could be WebGL. It could be 3 JS. So there's, like, all kinds of, like, directions you can go with it, and they're all super interesting. Not enough time.

Scott Tolinski

Yeah. One more thing. You know, on your site, you have that neat little, like, mouse follow thing where it's just as simple as so to to describe for the listeners, it's what lines and as your mouse moves, they they move towards your mouse in in sort of like a grid, and it it is it's these small little touches like this that I I think they do a lot for an application. And I don't know how long that took you to put together, but I can't imagine it's much more than just looking at the mouse position and rotating an object in a grid. Right? So, like, the amount of, the amount of effectiveness you can get out of that is is pretty impressive.

Scott Tolinski

Do you wanna go in a little bit more in-depth about that that whimsy style?

Guest 2

What your approaches are to even, like, dreaming up, like, fun little whimsy things to add? Yeah. A lot of the time a lot of the questions I get are like, why would I do this? Right? Like, what is the what is the goal? What is the purpose? Yeah. Because a lot of the times, I think people, like, they remember the animations of the early web and all of the, like, dark UX patterns, like the the shoot the monkey game that, like, vibrates around your screen to get your attention.

Topic 6 32:37

Website animations and details create emotional connection

Guest 2

It's important to recognize why you're doing something. And that, like, that animation you're describing, I call it, like, the iron filings because it reminds me of, like, when you have a magnet and you move it over the iron. That's exactly that's a perfect way to describe it. After that. It took me, yeah, like, a couple of hours, like, a good maybe, like, you know, 1 morning.

Guest 2

And it adds so much of, like, a little unexpected spark. And I I'm like a big believer of this, like, idea of emotional design. Right? Like, you can build something that can elicit an emotion and that emotion will make your product slash website much more memorable and much more engaging.

Guest 2

This is like you know, there's like the dark version of this, which is why everything on your Facebook feed is frustrating and enraging Mhmm. Because that's what people click on. Pnpm there's, like, the happy version of it too, which is like if you can do something that sparks a bit of joy or catches someone by surprise, they will become more engaged in your thing. So there is there is a strategy to this, right, which is that, like, I I want people to come and enjoy my website and these little details really help, like, sell that as a thing and make them remember that my site exists when they're looking for something to do next week. I know that, Sarah ESLint had an article in defense of fussy websites, which talks a lot about this and I was super privileged to be featured in this article, which is just like she really enjoys when it's clear that the website creator puts time into these kinds of details. And it it it it like, yeah, it could and I do this because I am totally this person as well. That if I see someone has put time and attention and care into those little details, it's so much more engaging. Like, I just enjoy the experience so much more than just someone throwing up, like, a a standard theme. And even if the content is the same, right, like, it it enhances the content in my opinion. Yeah. I frequently am shoving interfaces in my my wife's face saying, look at this. How cool is this? And she's just like, okay.

Wes Bos

Yeah. How cool. That I love that. That's like like, why would you do that? Because it it adds up. Like, we're we're talking before the show how you have a yellow microphone cable and you spray painted your your, monitor on pink. Yeah. And, like, people would be like, why would you do that? Like, it doesn't add to any functionality, but, like, I'm gonna remember that now. And I think that's really cool, and it adds just a bit of, like, extra fun to your day, I think.

Guest 2

Yeah. And that's the thing JS it doesn't take long. Right? Like, neither none of the things that I'm talking about that we're talking about. Like, I find that it's one of the great frustrations of my life as, an I see an individual contributor is we're working on some feature, and inevitably Wes have underestimated how long it takes, and now we have to cut some stuff from scope.

Guest 2

And the thing that always gets cut from scope is the, like, little details and polish.

Guest 2

So, yeah, it's just I'm I'm a big fan of advocating to doing that stuff even if it means yeah. Like, even if it means shipping a little bit later or putting in you know, like, maybe just like pushing it to post launch, but then still actually doing it. All those little details make a huge difference.

Scott Tolinski

Do you have, an app or apps that you would say are your favorite, for those small touches? Goodness. Is there any off the top of your head that you can be like, oh, yeah. I loved when I,

Guest 2

popped open this app and it did this little thing? I will say that mobile apps tend to get this better than web apps. And a lot of the time, it's nothing that you would necessarily like, it's not necessarily whimsy, but it's like transitions between screens. Right? Like, in pretty much like in the calendar Bos app. When you click on an event, like, 5 different things happen all at once that warp all part of, like, 1 giant structured bit of motion. Right? Like, the the header gets shorter and the thing slides and something else comes up.

Guest 2

And it just gives you the impression of, like, you Yarn by Moleskin, the binder the notebook company Yeah. That had, like, a bunch of these little details, but, I haven't actually used it in a couple Yarn. I just I I thought it was neat.

Guest 2

Sadly, I don't actually have that many examples that I can reach for because I do see this. Go for it. VLC puts a Sanity hat

Wes Bos

on, on their icon.

Wes Bos

Although, didn't Wes code put a Santa hat on something, and then people got bent out of shape.

Wes Bos

His iron celebrates Christmas, so they had to switch it with the snowflake.

Wes Bos

oh, gosh. I think that that was unintentionally a troll, but then someone took the bait, and then they actually switched it out with the snowflake.

Scott Tolinski

Definitely appreciate the, the whimsy in general. Totally. Totally.

Guest 2

And that's like I do think especially when it comes to personal sites. Right? Like, I can understand that when you're working for a company, it's it's the realm of the designers. Right? Although I will say also, like, having these skills like, I've been in so many conversations where design has an idea and the developer will say it's nontrivial. Right? That's the term nontrivial that we use. And what nontrivial means is, like, I haven't done that before, so it's gonna take me some time to learn how to do that thing. Yeah.

Guest 2

If you have these skills and all all kinds of things become trivial. So it's, it's totally worth investing. But I was gonna say that, like, for your own personal Sanity, I'm just every time I have, like, a wacky idea, I go for it because there's no I I don't have to worry about getting, like, a a an approval on anything. I don't have to worry about consistency. Right? Like, it doesn't matter if it doesn't fit. If it's a fun idea, I'm gonna do it. So, yeah, it's just I think personal sites are such a great way to experiment with that kind of stuff.

Wes Bos

I remember, Paul Irish in the background of his website with it just as you moved your mouse, it would just like it just gets the background of the website. And I was just like, like, that was like 10 years ago. And I still still, like, sit there sometimes. Be like, that was a good that was great. That was a good job, Paul Irish. Yeah.

Scott Tolinski

That's my my favorite types of stuff. I've used my personal site like this for a long time, like, just as a playground.

Scott Tolinski

Like, that animation transition between my pages right now, I was, like, just trying to see if I could do the transition from the video game Doom, like, the first one Wes everything, like, sort of melts on the screen. And, like, who cares? Who cares? Just go for it and and try to make stuff like that happen. And if it happens, then, you know, whatever. But it is your it's your personal side, and I think I think that always will reflect, positively on you even if it isn't, like, as polished as some other things. I think people love to see that kind of stuff where you're where you're going for it.

Scott Tolinski

I do wanna quickly move into a transition to Sanity, and my my my transition game Node on point today. It's just okay. But the, my errors and exceptions will be on point because they will be logged in [email protected].

Scott Tolinski

Node, Sanity is the perfect place to track all of your errors and exceptions. This is a tool that, both Wes and I have used for a long time. Node we personally use it in a way that allows us to track all of our releases to each bug. So if a bug pops up, I can see when this bug was introduced, potentially even who is really, you know, who who you know, most likely me, but who did it? So usually me. And if I did this bug, I can see what release I did this bug in and maybe even what commit I did this bug in. I could push this directly to a GitHub issue and track it along there. I could say, hey. This bug shouldn't even be here. Let me click it. This JS resolved. And then, watch in horror as I get an email 20 minutes later saying that there was a regression because a resolved bug had been found again. So if you want to have all of your errors and exceptions tracked and handled in this kind of way, head on over to [email protected].

Scott Tolinski

Use the coupon code tasty treat, all lowercase, all one word, and you will get 2 months for free. So thank you so much for Century for sponsoring.

Wes Bos

Alright. Let's let's talk about teaching now. So you are doing a part time boot camp, which is funny because that's how exactly how I got into the the whole teaching game as well. What sort of stuff are are you teaching?

Guest 2

Yeah. So I teach it's actually pretty cool because I teach at Concordia University. So I get to say that I teach at a university.

Guest 2

It's in partnership with a company called Journey Education. So how it started was there was a local boot camp in Montreal called Node MTL.

Guest 2

Yeah. And they they formed this partnership with Concordia Wes Concordia really liked as part of their continuing education department to, like, get into this space. And what's neat about it is it's a part time course that runs for 8 months. It works out to be, I think, a little over 400 hours. So it's about the same JS, like, 12 week boot camp, but it's, all of the same kind of stuff. So it's, HTML, CSS, vanilla JavaScript, React, Redux, Node, and Mongo.

Guest 2

So it's a really big, like, it's pretty much the full gamut. I was the I started by just being what they call a technical coach, which is you're there and you're just helping students one along with any questions that they have. Yeah. And then for the past almost 8 months, I've been the head instructor of that part time course, and I also helped develop some of the curriculum. And it's just been super satisfying and super fun. I mean, I know that it's I've heard you talk about this, Wes, how it helps you build that intuition for where the questions are and just what the frustrations, where the frustrations lie. Yeah. Because it is it's so hard to remember what it's like not to know something, especially, like, I learned React 4 or 5 years ago now. So it's been it's been in my toolset for so long that I forget just like how tricky props are at first when you're not used to them.

Topic 7 41:42

Bootcamp provides accountability and instructors

Wes Bos

Yeah. That that's awesome.

Wes Bos

One thing I get all the time people ask me JS, is it worth going to a boot camp? Because, obviously, it's a lot of money. Is it worth going to boot camp versus just learning Vercel? And is it worth going to a boot camp versus going to a traditional university? What what are your thoughts on that?

Guest 2

Yeah. Oh, I have strong opinions.

Scott Tolinski

So

Guest 2

I would say that the reason not to do a boot camp is for the curriculum or the knowledge that they have. Right? Like, everywhere has like, free code camp has an amazing curriculum, and it's free. Yeah.

Guest 2

The 2 benefits I see to doing a boot camp, Node is accountability. So, like, you are with a bunch of people. You have invested a lot of money in it Mhmm. And you Yarn, like, held when I do, we actually have grades.

Guest 2

In order to get the diploma, you have to submit all I think we allow you to miss 6 or 7 of the assignments, and you have to do all the projects.

Guest 2

And they have to be, like, at a certain standard. If you are the type like, I am this kind of person myself Wes it's just so hard to motivate Vercel, you know, it's like you're at home, you have the option of, like, I can go play rocket League or I can, like, work on my education.

Guest 2

It's so much harder to come up with that motivation. So that's 1, accountability.

Guest 2

2 JS staff. So, like, the technical coaches and the instructor, you have a person who is paid that you can ask questions to. And the students who I think take advantage of this the most are the ones who are getting the most value out of it. So they're like I'd say like being we I I teach a class of 25 and there's probably like 5 or 6 students that I hear from nonstop and then, like, 5 or 6 students that if I don't reach out to them, I would just never hear from them. I think, you know, like, it's totally like everyone I I'm not saying that either of those is better or Wes. Just that the people who aren't afraid to, like, ask a bunch of Wes, for sure, are getting more value out of it because that's what I think the main value proposition is is when you're doing online courses or online tutorials, it's just hard to come up you know, if you're stuck somewhere, you can ask online, but no one is dedicated to helping you with that. Yeah.

Wes Bos

Yeah. Oh, yeah. That that's that's a huge frustration even on mine right now JS that, like, I have this problem right now. I need somebody to help me right now, you know, and that's the huge benefit. But You go to the IRC room, and you start freaking out at everybody until they kick you out. Freaking out at everybody until they kick you out.

Scott Tolinski

Why why did you fix my thing? It's broken. Get out of here, man.

Guest 2

I do think that a lot of people look into boot camps because they think they have, like, special knowledge. Like, you know, like, you can only learn stuff there, and I don't think that's true. So I think that for plenty of folks, if you have that intrinsic motivation and you're resourceful enough to answer your own questions, might not be worth it. There the the other thing too is that, like, at our boot camp, we have career services. So after you finish, we pair you with a career coach. We help you do interview training and, LinkedIn reviews, all of the like, technical practice interviews. All that stuff is super valuable too. I I kind of think though that if you build a portfolio of projects and are willing to be a little bit more patient, I don't think that stuff is critical. I can just help you get there a little faster.

Wes Bos

Yeah. Yeah. We we did an entire show about that that whole thing, like learning in boot camp, but also the after, like, getting a job and interview prep. Mhmm. If you wanna listen to that, it's episode 246.

Wes Bos

Boot camp's getting a job income share agreements with Heather Payne.

Scott Tolinski

That was a pretty interesting one as well. Yeah. Node thing I wanted to just touch on real briefly is, one thing I really like. So I posted a link in the show notes of one of your blog posts on the CSS full bleed article.

Scott Tolinski

And one of the things I just wanted to draw attention to and have people go check out, especially, complimenting you on here JS your usage of, like, interactivity in teaching. So, like, one of the coolest things is that you have these content, resizable areas to show layout stuff in CSS.

Topic 8 45:22

Interactive widgets help teach concepts

Scott Tolinski

And I think that is just the most fantastic way in the world to show some of these layouts. Wes, I don't know if you've checked this out, but go to the article I have linked here. And so the the way he does it JS, basically, he shows, let's say, like, CSS script. One example has, like, a 1 fraction and then, a 65

Guest 2

character with then a, 1 fraction zone. And these zones are inside of a div that is content draggable. Is it what what is that property called? It's just resize. If you add resize horizontal, you also have to set overflow to something other than the default. But, yeah, essentially, it turns any HTML element into a text area kind of thing where you in the bottom right corner, you have a handle you can drag.

Scott Tolinski

Yeah. And so you do that in combination with colored zones.

Scott Tolinski

And it's so effective in teaching these layout things. I I just wanted to, like, draw attention to that for our listeners to go check this out because this is, like, one of the most effective, I think, articles I've seen on these types of layouts, these fluid layouts. I I think you just do a a really great job with that. I wanted to

Guest 2

to shout that out. Well, I appreciate that. Yeah. It comes back to like, I I think there's so much potential for you know, the nice thing about my blog is it's done in MDX, which means if I have an idea for, like, an arbitrary widget, I can just write a React component and then drop it right there in the blog post. So it it's trivial. Just gonna ask that. Yeah. MDX makes this possible. Like, if my data was in pure markdown, there's probably still ways to do it, but it probably wouldn't be as straightforward.

Wes Bos

I think it's so much smoother that it's, like, embedded rather than embedding, like, a CodePen or whatever. And, like, there's certainly Right. A good use cases for embedding CodePen, but this is just, like, just okay. I'm understanding how this layout works, and let me drag it to different sizes to see how it how it reacts.

Guest 2

It's not, like, overly engineered. Yeah. I think there's a big difference when it like, if it's just an article, it's passive. Right? You're reading, and it's, like, on the reader to do that work in their head to visualize it. If you have this thing you can drag, even if it you know, it's not it's not like this wildly interactive thing, but it makes it active. So, like, you're actually experiencing the thing, and I I find it really helps that concept. It's like Wes best way to build an intuition for something is to be able to play with it and see how it reacts when you do different things. There are so many goodies on your website. I just keep finding these things.

Wes Bos

Definitely have to go to his website and click around, folks. It's my favorite is the sound effects when you click on nav items. Yeah. Oh, I don't have sound up, so I have not heard sound effects. But I Wes

Scott Tolinski

and I, famously, both advocated for more sound effects and websites in one of our episodes where we were trying to disagree on things, and we both ended up agreeing on the fact that we like sound and websites.

Guest 2

For me, it is so so similar to what we were talking about earlier with, like, animations Wes so many people have just been burned by the, like, nineties where I have, like, a a media is playing in the background when you visit a website. So it's like no website uses sound. Actually, I published a package, use sound. It's just a React hook that lets you, like, drop sound effects really easily.

Guest 2

Oh, nice. It's super, super useful. And I find that this is another area that mobile apps. Right? Like, a mobile your phone will interact with 3 of your senses. Right? You can see it, you can hear it, and it vibrates. You can feel it. Whereas the web, you have 1. All you do normally is you can see what's happening. And the more senses you can reach out into, the more it becomes like a tactile real thing and not just pixels on a screen.

Scott Tolinski

Do you have a a Nintendo Switch? I do. Yes. And

Guest 2

Yeah. Do do you think I'm gonna talk about the haptic feedback? Is that or is that what you're gonna talk about all the little sound effects. Like, when you go to the store and it makes the, like, do do do do do sound effects like

Scott Tolinski

Yes. All that all that stuff's fantastic, but what I did wanna talk about was that, like, you mentioned that the the phone vibrates. Right? The haptic engine in the Nintendo Switch, Joy Scott is so good that you can, you know, shake a glass of ice in your hand and feel how many ice cubes are in the remote. Right? How many ice cubes are in this remote? Right. Like, we don't have anything like that. I I a lot of my studies in college were about, like, using accelerometers to pick up things and interact with them in sort of interesting ways. And it's just so amazing how many of these browser APIs go unused or ignored. Wouldn't it be really cool if we had some, like, 3 d haptic abilities on on the browser to do some really neat haptic haptic,

Guest 2

feedback stuff. I don't know. Just just got the wheels turning. There's a vibrate API, and I think it's only supported in Android, though. That was gonna be my thought JS there probably is some, like, really fancy API, but it's probably, like, not super widely supported. But yeah. I mean, it's I I played what I think what it's called. There's a game on the switch where it's like the controls are you have this plank and you move either side up and down and a ball roll and you have to, like, roll the ball. And detect it feedback, the haptic feedback makes that possible because you can feel it rolling down the log. And it yes. It totally changes the experience.

Wes Bos

The Vibration API is navigator.vibrate and is currently under recommendation and implemented in Chrome, Edge, Firefox, Android, and Samsung Internet. So just not Safari, which is cool.

Scott Tolinski

I'm gonna put a little snippet in the show notes here. Go just go ahead here. Actually, no. This isn't gonna work. I was gonna say head to your console and paste this in and check it out. But, of course, we're on, desktop.

Scott Tolinski

Your desktop computer is not gonna start vibrating, so that's probably the next

Wes Bos

part. There was, way back, like, 10 years ago. Actually, my very first YouTube video was there was a accelerometer API in the old MacBooks because, they had, like, spinning hard drives, and they would sense when you dropped it. They would suck the Yarn in on the hard drive so it didn't damage the platters.

Wes Bos

And that was always a fun little demo to show people that you could you could do it. And then they got rid of the accelerometer because all MacBooks have SSDs in them, so that was kind of a bummer. Anything else you you wanna

Guest 2

share? Or Node. Like, I think the main takeaway that I hope people have is this is a viable option. Right? So, like, I know I've heard from a bunch of folks recently, like, people have arthritis.

Guest 2

Whatever issue that you have that makes it difficult to use a keyboard or a mouse, there are alternatives that are surprisingly feasible and will only get better with time. So it's just it's cool to know that the stuff exists. Are there any good blogs or resources

Scott Tolinski

or or or communities

Guest 2

around this type of work that people are doing where you can learn more? So there is a Slack. The Talon has a Slack room, and I believe you can join that for free, as well. So that's where I've had the most, you know, I've spoken with the most folks.

Guest 2

There's also a conference talk by I know her first name is Emily. I forget her last name.

Guest 2

Okay. Maybe I can try to find that, and it'll show up in the show notes if I can. Yeah. Yeah. Because there's that was I mean, a lot of what we talked about is it overlaps, but that was my first moment of like, oh, this is a thing people do, and there's a lot of really good, really cool stuff you can do with it. Emily Shea? Yes. That's the one.

Guest 2

Cool. Well, I think that's it. Okay. Well, this is the part of the show where we talk about things that are sick. Josh, did you come with a sick pick? I did. And I struggled because, you know, this is I have one. I should also say I've been a syntax listener for quite a while, so I've heard a lot of the sick pick. And I I, you know, I there's all kinds of stuff that I've wanted to help share. What I will share is a book that I've, listened to on audiobook called the utterly uninteresting and unadventurous tales of Fred the vampire accountant. It's a mouthful of a title.

Guest 2

It's a science fiction book, and it's it's amazing. It's essentially an accountant who gets turned into a vampire, and all he wants he's like this quiet introverted person. All he wants is to have a quiet accounting life, and he keeps getting unwittingly pulled into adventures.

Guest 2

So it's like the opposite of every other kind of kind of story like that where, like, he, like, he has some friend that gets kidnapped by a werewolf and he has to go rescue them. And it's always like he solves things by becoming friends with people and using his accounting

Scott Tolinski

book. That's great. Cool.

Scott Tolinski

Wes?

Wes Bos

I am it's funny. You you mentioned Adam Savage earlier because I am going to sick pick his book, which JS, Every Tool is a Hammer. I'm gonna recommend that you do the audiobook of this. I do audiobook for every book I read, but I'm gonna recommend specifically the audiobook for this. He released this, like, I don't know, maybe a year or 2 ago, and I'm only just recently got around to actually, getting through it. I'm not totally done yet, but I've really, really been enjoying it. So Adam Savage is the guy from Mythbusters, and, I've always really liked him because of his approach to learning and and sharing what he knows and mastering his craft and putting it in a place where he can he can charge money for it. And just, like, understanding and hearing how he sort of went through life and and the obstacles that he hit. And just at the end of the day, he's just a maker, and he loves to share what he knows and loves to to be in in community. And I think, specifically, the best part I've gotten out of it so far is just, like, how does he tackle a large project by breaking it down into smaller parts and making lists and stuff like that? And think that I was listening to him, like, man, like, a web developers need to listen to this book because he really shows you how he can take something that is just mammoth, which is to all the projects on Mythbusters JS well as his own personal projects and be able to to tackle it and do a good job. So it's called Adam Savage, Every Tool's a Hammer.

Scott Tolinski

Cool. I'll check that out. I have a podcast that I am going to sick pick, and it's a fun podcast. I listen to a lot of comedy podcasts.

Scott Tolinski

If you, are have ever been a fan of Paul F. Tompkins, who JS the voice of Mr. Peanut butter on, BoJack Horseman. He has a podcast called The Neighborhood Listen, which is fascinating and awesome because there's a little intersection here with apps where they Yarn basically, what they're doing is they're reading posts from a neighborhood app, whatever JS most likely next door. They don't name what it JS, but, they're they're reading posts from next door, and then they're basically improving along JS if they live in the community in which that post was posted. So they have a fictional town that they live in, and they're just 2 citizens of this town. And they'll read a post about coyotes or whatever, and then they're just they're just elaborating on it. And pnpm every single episode, they have a Wes, who's another comedian, and that guest will play the part of the author of a specific post. And then so they'll get to interview the author of this neighborhood post to see exactly, like, what were you thinking when you were you, you know, you're giving away, used toilet paper or something. Who knows? But they're very, very funny, and I've been loving this podcast. So, check it out, The Neighbourhood. Listen.

Wes Bos

Beautiful. Alright. Let's get into shameless plugs now. The name speaks for itself. Do you have anything to shamelessly plug, Josh?

Guest 2

Yeah. So we talked a little earlier about how I'm kind of pursuing my own thing. I very quickly threw together a landing page. So the 1st course I wanna create is about CSS because I think that so many, especially JavaScript developers struggle with it. So you can find out more about it if you go to CSS 4 JS, CSS dash for dashjs Scott dev. So it's like a play on CSS in JS, and there's a bit of information there. You can also sign up to get updates about it, and I'll be sharing more about that soon. Very cool. And,

Scott Tolinski

the lots of touches of whimsy, I'm I'm seeing on this already. Just little little little drawing things and explosions and whatever. Loving it.

Scott Tolinski

I'm going to shamelessly plug my course that is going to be up by the time you're listening to this on another way you can add whimsy to your Svelte applications called animating Svelte is the name of the course, and we go through just showing you how awesome and easy animations can be in Svelte.

Scott Tolinski

If you've ever struggled with animations, let me tell you, we make it really super easy because Svelte makes it really super easy, especially because they can they they bake in so much functionality into core Svelte. So we cover a whole host of practical animation stuff that you need to do every single day in your job, building things like slide shows and draggable sections and menus and whatever. And we do so with ease in Svelte with animating Svelte on leveluptutorialsdot comforward/pro.

Scott Tolinski

Sign up for the year and save 25%.

Wes Bos

I'm gonna shamelessly plug my master Gatsby course. This is a course where we learn to build websites with Gatsby, React, GraphQL, a headless CSS sanity, progressive images, all that. I'm gonna read one quick review I got on Twitter the other day. It says, I'm about halfway through the fantastic Master Gatsby course by Wes Bos. Wes is always great at not only explaining the technologies and frameworks, but also including practical tips for efficient development in your local environment. So that's that's one thing I sort of went hard on this course is just, like, lots of extra little tasty treats, if you will. Lots of extra little tips, in building websites, local dev, things that that it's it's not related to Gatsby, but it's just things Wes developers should know. So check it out, master gatsby.com.

Wes Bos

Use the code syntax for extra $10 off.

Wes Bos

Alright. Thank you so much for coming on, Josh. I really appreciate it. This was super cool. I think this is gonna be a super popular episode that we can also just point people to when they wanna learn about voice coding. Yeah. It's been an absolute pleasure and a privilege. Thanks so much for having me. Alright. It's been Stash. Thanks a lot. Talk to you later. Peace. Peace.

Scott Tolinski

Head on over to syntax.fm for a full archive of all of our shows. And don't forget to subscribe in your podcast player or drop a review if you like this show.

Share

Play / pause the audio
Minimize / expand the player
Mute / unmute the audio
Seek backward 30 seconds
Seek forward 30 seconds
Increase playback rate
Decrease playback rate
Show / hide this window