Pod Insights Syntax - Tasty Web Development Treats 970: Why Did Anthropic Buy Bun? About this episode Wes and Scott answer your questions about whether Git GUIs beat the terminal, balancing accessibility with experimental web projects, blocking malicious traffic, smart home setups, why Anthropic bought Bun, navigating tricky team dynamics, and more!
Show Notes
00:00 Welcome to Syntax!
00:51 Why did Anthropic buy Bun?
07:33 Should you use Git GUIs or the terminal?
lazygit
12:54 How to make better coding videos
v_framer
Recut
DaVinci Resolve
Shure MV7+
20:31 How do you handle a difficult dev teammate?
24:16 Brought to you by Sentry.io
24:41 Creative and experimental code vs accessible code
Using luminance instead of lightness
Color contrast checker
Auto color
31:51 Smart home setups we actually use
35:37 How do you block bad bots and ISPs?
Bad ASN list
38:02 What is SAP UI and why is it everywhere?
SAP UI5 Demo Kit
41:28 Sick Picks + Shameless Plugs
Sick Picks
Scott: Inside Archaeology
Wes: ProfessorBoots
Shameless Plugs
Syntax YouTube Channel
Hit us up on Socials!
Syntax: X Instagram Tiktok LinkedIn Threads
Wes: X Instagram Tiktok LinkedIn Threads
Scott: X Instagram Tiktok LinkedIn Threads
Randy: X Instagram YouTube Threads
Transcript Speaker names marked ? are inferred from speaking time and the show’s known hosts — they are not voice-verified.
0:00 Wes Bos? Welcome to Syntax. We've got a Potluck episode for you today where you bring the questions, we bring the answers. Today, we've got really good questions on why did Anthropic buy Bun? What UI are we using for Git? Are you using the terminal? Are you using lazy Git? Are you using the VS Code GUI? Are GUIs better than the terminal? We're going to talk about that. Do all web experiences need to be accessible? Somebody was saying, "I love accessibility, but I want to... I'm building these crazy experiments and not everything is 100% accessible. Should I be putting this stuff out there?" Another question on how do we block malicious requests? So like bad ASNs. What is an ASN? How's that different from IP addresses? Really good questions. Keep your questions coming, by the way.
0:44 Wes Bos? Go to syntax.fm. There's a button that says Potluck. Ask us your question and we'll answer on a future episode, but let's get on into it. First question from Brett Peery. Why did Anthropic buy Bun? So if you didn't hear the news, a couple of weeks ago, Anthropic bought Bun, Bun, the JavaScript runtime. Why would they do that when they can just ask Claude to make a JavaScript runtime? But this was, this is a pretty interesting move. And the reason that they did this was because the Claude code SDK runs on Bun and they want to be able to ship the Claude code, not going to say binary, but like the app itself.
1:26 Wes Bos? And they want to ship it ideally with the JavaScript runtime. I'm pretty sure that's what they do right now as well. And in order to make that thing as small and as fast as possible, and I'm assuming get the features in that they necessarily need, it's great to bring Bun under their wing and have them continue developing that.
1:47 Scott Tolinski? Yeah, it was, it was interesting to me because it's like Bun is such a unique case where everything about Bun feels just a different approach than, than like whether that is the fact that it's written with Zig or the fact that they're unapologetically adding features that JavaScript, Node.js.
2:07 Wes Bos? Non-standard APIs.
2:08 Scott Tolinski? Yeah, non-standard APIs, just because they should be there. I personally, I do like using Bun. There are enough mysterious times when I'm using Bun where something isn't working quite right and I have to go back. But if I'm throwing up a script here and there, I'm using Bun every time. And I do feel like that plays well into their entire, beyond the fact that they they use it. I think it plays well into them wanting to be the authority on vibe coding there, right? Building scripts, building kinds of stuff. It Bun is so much less effort to get set up with than these other ones.
2:49 Wes Bos? There's sort of like another aspect to this that is probably going to happen is that when you ask ChatGPT or Claude, what is it, just called Claude, their chat apps? When you ask them to do a lot of stuff, they're literally just running Python scripts behind the scenes. You know, the AI is just running code and spitting out the result for you. So if that can be as fast as possible, or if they can make this amazing little nucleus that you can just throw code into and have it spit out exactly what you need, that's probably another use case. Like, there's the, obviously, the Claude code use case where it runs on your machine,
3:30 Wes Bos? but some sort of compute that's running somewhere is probably the other use case. It will do calculations, it will do actually running code for the LLM when it's needed.
3:45 Scott Tolinski? Yeah, it's interesting nonetheless. You know, I'm not surprised that someone bought Bun, honestly.
3:52 Wes Bos? Yeah.
3:52 Scott Tolinski? I don't know if I would have predicted Anthropic, but I do think it's fascinating.
3:57 Wes Bos? We had predicted that Bun would put its own hosting competitor together. And like that, like the other player in this space is Dino, right? And both of these first came at like at Node being like, we're going to be a better node. And the uptake has been good, but like not amazing. I think most people are just fine with Node. So there's this other use cases like, oh, well, maybe we can have like hosting or maybe we can have like a, like an app that we run. And those things haven't, haven't really picked up for Dino either. So they're probably looking at it being like, we probably are not going to like crush Versal or AWS or anything like this.
4:40 Wes Bos? So our other option to like, obviously Bun is, has been VC funded and they need to get their money back at some point. The other option is to like sell to a larger company who has the cash to help them out.
4:54 Scott Tolinski? Yeah, you know what? I wonder about Dino and all of this. Like, this just seems like crazy to say, given how much of a change Dino was when it was first dropped. But do you think Dino is too much in the mushy middle between Bun or Node JS to really stand out? Right? Because Dino now feels like Bun is kind of the the hyper-performant. It is the YOLO, just add SQLite to the thing, you know, kind of thing. Where Dino feels so much more measured and so much more like Node JS 2.0, that maybe it's not poised to break out as much.
5:36 Wes Bos? I think the the reason why Bun got so popular was because they did non-standard stuff. And if you're going to use something that's not Node, I think a lot of people sort of looked at that and was like, well, I'm going to use the thing that has all these like weird APIs built in. So like, if you're not sure what we're talking about is like Bun shipped like a SQL database adapter built in, right? Now Node, Node has that as well. They also are like competing with V in being like a bundler. But then they also have like a router and they can also just import HTML and like return it and it will will serve it up. And like, that's, that's kind of cool. Those are kind of nice APIs for especially for things that are need to get up and running very quickly,
6:20 Wes Bos? which often is these tiny little vibe-coded apps. So I don't know. I don't know what the process is. I was hoping that Dino would go into the space of like web GPU, because like so much of this whole data science, ML, AI world is all written in Python scripts. And a lot of that is because they had some of the really early libraries like PyTorch. But also a lot of it is because like the stuff comes out of academia and academics love them some Python. So I was kind of hoping that like Dino would go. Like maybe in the model training world with all this GPU stuff.
7:01 Wes Bos? They just released support for web GPU in Dino. So I don't know what the move is there. The whole like better standards thing for Dino and unfortunately is not working out. Because they released JSR, which is the NPM competitor. That didn't really work all that well, you know? They had several other sort of forays into this world. But it's just so hard to beat the monolith that is Node.
7:28 Scott Tolinski? Yeah. It's actually, it is, we're in an interesting situation. All right, next question here from git commit struggler. What do you use to commit your changes on your editor? I have a weird struggle where I am using external terminal to run my commands, but I always use the internal editor to run my git commands. Git commit, git push, etc. I am looking for a better way that feels natural. Hey, I do this as well. I run all of my terminal commands on Ghosty, on my terminal, external, like no matter what it is. I'm running all my processes starting up there. I code in my editor, but then I do use my editor
8:09 Scott Tolinski? and usually just straight up the editor's UI for all git operations. Why? I like clicking the button that says track all files. And I like maybe like clicking and seeing the diff on the files and kind of browsing it that way. And that was one of the reasons why I didn't move to the Zed editor for a long time, because their git tools weren't there. But Zed actually is really good. Git diff tools and you can do everything that I was doing in VS Code before. So me, I'm still using that. And VS Code even has like using AI to generate commit titles and stuff like that directly in the editor. There's like a lot of nice little features that you can have via the UI that I just prefer to do it that way.
8:52 Scott Tolinski? Now, there is other means to do this. There was, what is that, Git?
8:59 Wes Bos? Like different UIs here. You look it up. I'll tell you where I'm at right now because like forever I've been like a get in the CLI guy. And everybody for years has been like, you gotta use a GUI, you gotta use a GUI. And I've been, I switched over mostly to using the one that's built into VS Code, Cursor, whatever. And it's honestly, it's better. Like having a GUI where you can literally click on and, and like stage the files. You can, you can click on them and see the diffs. It's honestly better for, for that. Whether you like the AI commit messages or, or not.
9:32 Scott Tolinski? Yeah, yeah.
9:33 Wes Bos? I find that to be really, really nice. I'll still every now and then use, I, I am so hardcoded in the terminal. If I need to do anything like change an origin or list out all of those things, I'll just write back to it. But the simple adding, committing, pushing, those big three are, are happening mostly in my editor these days. And I also, I want to move a lot of my terminal usage into the editor as well. I just can't, can't do it. I just, it feels, I don't know what it is, but it's just, it doesn't feel good. I like the separate terminal.
10:06 Scott Tolinski? Well, uh, I mean, that does, it might not feel good because did you see that whole drama about the VS Code terminal over the past?
10:14 Wes Bos? Yeah. Every 50 characters, they're delaying it, what, five milliseconds?
10:18 Scott Tolinski? Yeah. Yeah. So I, which is funny. So by the time you're hearing this, this is old news, right? This happened in the last year. Uh, because we're recording this ahead of time, but there was like a race condition that when you pasted text into the term, there would be a sleep because of when something on Windows, apparently. And because of that, if you were to paste a lot of text into the terminal, it would just take forever. Now, what's funny, people are really ragging on this and I understand why. But this is a problem that only rears its head in a vibe-coded world where we're pasting a ton of stuff into the term, right?
10:56 Scott Tolinski? Like in the past, how, how often were you ever pasting in 20 line, you know, 30 line, 40 lines and of code into your terminal? You were never doing that, ever.
11:06 Wes Bos? No. Yeah. Very rarely ever doing those things because like at most a curl command that's several hundred has characters. Yeah, right?
11:19 Scott Tolinski? Yeah, so very funny. The thing that I was thinking of was Lazy Git. Lazy Git, which comes on Omarche as well as... It's like a... It's a TUI, a terminal UI for Git. And I... I'm gonna be honest. I think Lazy Git, people really seem to love. But to me, this is definitely like a weaker experience than what I get out of VS Code or whatever. And I think it's nice if you're the person who likes a terminal UI. But ultimately, the learning curve was pretty high on this overall. But it is a terminal-based UI if you want, kind of to ride that line.
11:55 Wes Bos? Man, I love the terminal, but I do not support trying to... Everybody trying to make a UI for absolutely everything in the terminal, man. You know what is good at making UIs? HTML and CSS or whatever native UI, you know? If you want to put a button somewhere, you want to click it. If you want to be able to select text by word by word.
12:20 Scott Tolinski? I want to be able to resize the window without everything kind of getting all angry at me all the time.
12:27 Wes Bos? Yeah, yeah. Some of these terminal UIs are great, and I love them for little utility tools. But some stuff is better as a GUI. Even the Open Code folks just released a GUI for that because they realized, yeah, the terminal is the best. But if you want like normies and regular people to use your software, you gotta give them a button.
12:49 Scott Tolinski? Yes. Yeah, just a button. Just one button.
12:54 Wes Bos? Frenchie says, "I would like to make YouTube videos for code tutorials. Was wondering if you could give us your setup, tools and software to make good videos with code at an affordable price if possible. Maybe it's more Randy's expertise right now, but when you guys were already doing a good job, any tips would be appreciated." Yes. What are your tips, Scott?
13:14 Scott Tolinski? Oh, yeah, my tips. So I think a lot of it will come down to beyond just the software that you're using. The fundamentals here are truly making sure the code is big enough to read, making sure that your windows are organized, like it is pleasant to watch, that you're not making people struggle for it. Making sure that your audio sounds good. You can get a decent Shure microphone that's USB powered for 150 bucks that's gonna sound endlessly better than what so many people try to use. You got that. You have your code nice and clear, and then you cut out the dead space with editing and stuff like that will
13:56 Scott Tolinski? get you way further than really like futzing around the edges. So as far as like recording goes, if you want the easiest possible setup, I still think something like ScreenFlow is the easiest possible setup because it includes, you can record everything, you know, you can record any screens or video that you want, audio, and then edit it right in there. I personally use DaVinci Resolve. It is free. It is a professional linear editing software, but it is very powerful and it is very free. So if you don't want to spend any money and you don't mind a bit of a learning curve and you can gain a skill, DaVinci Resolve
14:41 Scott Tolinski? is fantastic. Now, if you want my pro setup, the pro setup is to record all of your sources some way. People use OBS, it's a pain. I made my own app, Vframer, that I'll post here. It's not available, but it will be by the time you're hearing this, that records all individual sources. My pro setup is to record all your sources, you drop them into an app called Recut. Recut then finds all of the blank space where you're not talking, and it makes a cut. You can then go right from Recut to DaVinci Resolve. So I can do a first past edit with Recut to say, hey, remove all of the blank space, maybe the ums,
15:22 Scott Tolinski? the ahs, whatever. Makes it really nice and easy for many layers at once. And then you say, from Recut, send to DaVinci. That sends it to DaVinci, and then I just finish it off there where I do all my fit and finish and polish there. So that is my, my current flow is Vframer to Recut to DaVinci.
15:41 Wes Bos? Yeah, recording sources and not screens is something that has been doable in the last, I don't know, couple of years. And it's, it's a game changer because what I have done previously is you just try to have all of your windows open. And then what I'll duplicate the tracks and then I'll just cut each one. I'll have a one-track terminal, one track for code, one track for the browser. And that's great because
16:06 Scott Tolinski? Yes.
16:06 Wes Bos? If you can record the app, if you tab away or you bring over something over top of it, you don't have to show that. And that's, that's sometimes very frustrating when people tab away and you have to try scrub the video back where they were, or if something is over top of them. Or, or the really annoying one is like when people's face is over top of the part that you want.
16:29 Scott Tolinski? Hmm.
16:30 Wes Bos? Also, think about captions. That's something as well as I try not to put important code in the bottom, like maybe 20% of it. Because people who have captions on, lots of people, everybody watches with captions now. It's just covers over top of the, the important bits. I'm actually thinking about my course platform is just moving the captions off the video.
16:54 Scott Tolinski? Yeah.
16:54 Wes Bos? You know, just put them, just put them in a div underneath the, the video player. Wouldn't that, that seems like a better idea. I'm probably gonna do that.
17:02 Scott Tolinski? Yeah. I, I, I will say what's I gotta get you Vframer because you can just grab as many sources as you want. Whatever the sources are, you just spit those out as MKV. There's no processing time. And I did my last, one of my last videos with it and it was like you said, you get to then focus on the, when you're trying to record your screen, you're, you're doing your, your performance, you're speaking, you're talking, you're coding, while trying to manage and move around the windows that a way that makes sense. Instead of like focusing on what you're doing and then assembling it later. So, recording the sources, I think is like you mentioned, a huge boon. Is boon a good thing or a bad thing?
17:45 Wes Bos? I think it's a good thing, yeah.
17:47 Scott Tolinski? Okay.
17:47 Wes Bos? It's really good. And like audio wise as well. Scott mentioned this as well, get a decent mic, figure out how to, how to like make it work well. Put a freaking t-shirt under your keyboard or whatever. The most annoying thing is when you, somebody has vibrations in it, like understand how sound works, but if you're banging away on your keyboard, not like, like mechanical keyboard sounds. A lot of people like that, but they're just like,
18:16 Wes Bos? you know, like just coming into the microphone, that is so obnoxious to hear. And as well as like, if you hear people's like mouth sounds or whatever.
18:24 Scott Tolinski? Oh, mouth sounds.
18:25 Wes Bos? Or the, like when you're breathing in every single time.
18:29 Scott Tolinski? That's me.
18:30 Wes Bos? Are like plosives and s's, all of that stuff can be taken out with software or hardware, but don't, don't go down the rabbit hole too much of just hardware, software, learning, video editing as well. Focus on like making a good video first. Like the content is really what matters at the end of the day. Some of my stu-, like worst quality videos ever have been, been like our highest views. And then some of the stuff we spend forever on get no views. So it's, it's all about the content, right?
19:01 Scott Tolinski? Yeah, content and then the 80/20 stuff, like audio that's not going to make your viewers turn away.
19:07 Wes Bos? Yeah, exactly. Get that stuff just like dialed in and then, and also make it easy as well. So that you could just hit record and go, you know, it's not like, oh, I'm going to spend some time. Like I know people that have separate rooms for recording or they have to book a conference room. You're never going to make content if it's that, if there's that many hurdles.
19:25 Scott Tolinski? I'm going to throw out a mic recommendation here. We just got this mic for Courtney and it's a Shure MV7 Plus. It has USB-C into the microphone, but it also has a dyna-, like it has a compressor in the mic. It has a pop filter. It has like digital D onboard DSP. It has all kinds of stuff so that way it like has like gating and, and those types of things. So you'll sound good. Just plug it in USB. Yeah, this microphone is effortlessly easy, so.
19:55 Wes Bos? My wife is sitting outside my door right now and listening to me. She says, she texted me, "Not you complaining about breathing sounds. Tell them about how you had to get a tent when you were camping." Yeah, I went camping. My poor sister has asthma, so she would sit in front of the campfire, have asthma attacks, and then I would get so mad at her for breathing because I cannot stand the sound of someone breathing makes me want to go batty.
20:21 Scott Tolinski? That's me for eating and, and
20:23 Wes Bos? Oh, yeah. The mouth sounds when people are eating. Oh.
20:25 Scott Tolinski? It just, oh, like gives me the
20:28 Wes Bos? Sounds of life.
20:30 Scott Tolinski? Yeah.
20:31 Wes Bos? Sir Jason Yamal 3 says, "How do I go about a disagreement with another developer who's been at the company longer than me? My coworker crashed three of our apps because they did a big database production without telling me and without testing it. They deleted my feature branches, changed deploy settings,
20:53 Wes Bos? which caused more prod downtime. They can, they cannot take feedback. They seem to just do whatever because they've been there so long and we can't come to an agreement on change of jurisdiction or communication. They get angry and snippy whenever I bring up major issues like this and it turns into a back and forth matter of the cause." Oof, that sounds awful. First of all, you probably shouldn't be in a situation where somebody else can just nuke your entire thing. So I guess ideally you'd have, have like a local implementation of something like that. What do you think, Scott? Like, somebody, is this awful? I don't know. I've never, never worked with awful people like this.
21:32 Scott Tolinski? Yeah, that it is tough. I've never worked with somebody this awful. But
21:38 Scott Tolinski? there has to be some kind of, so managerially, there has to be some kind of process in place where this isn't just a, like, fighting back and forth kind of thing, like, oh, don't do that, do this, do that. Like, there needs to be some process in place where you work, whether that's from top down or whether that's from something you're getting agreement upon from your boss. So that way, when these things happen, you have a sign to point at that says, "You can't do that. You're not allowed to do that." And then if they're breaching that, then it becomes an on them type of thing. But if this is just kind of ethereal and like, Oh, we're just kind of just drawing code at the wall here and there and oops,
22:21 Scott Tolinski? they deleted my thing. Then, yes, it sucks, but your amount of actual control over the situation becomes way more immature and way more like less process-based. So I would push for some kind of actual structure here, whether that is from above. I would talk to their manager and let them know this has been happening and document these things.
22:53 Wes Bos? Yeah.
22:54 Scott Tolinski? The one thing that I think always comes in handy in these situations is when they happen, document them very clearly. And when you speak to your manager, when you speak to somebody, the best advice I got was like, be honest. Don't pull any punches. Be honest. This is how it is. This is how it's been going. These are the things that have happened. And it's not acceptable to me. Like, what's the path forward here? But if you're just like, ah, it's been bad. This person's been a jerk to me, then the resolution's just not going to happen.
23:33 Wes Bos? There's a pretty clear way forward here. The fact that they crashed the app three times and caused almost like what is like, it's hurting the business, right? I think you just go forward and be like, look, we need to put processes in place so that this does not happen again and that we don't have an even more expensive loss of data or something like this. It's pretty, you go, whoever is this manager be like, look, I'm trying to make it so that we don't have this anymore. We don't crash our apps and have prod going downtime and me wasting a week of my work. This is what I would like to implement and I can't get this guy to come on board. So how do we fix this?
24:15 Scott Tolinski? Yeah, right. And if you want to see all of the errors in your application, you'll want to check out Sentry at sentry.io/syntax. You don't want a production application out there that, well, you have no visibility into in case something is blowing up and you might not even know it. So head on over to sentry.io/syntax. Again, we've been using this tool for a long time and it totally rules. All right.
24:41 Scott Tolinski? All right, next question here from Sarah. "I'm an experienced web dev specializing in design systems and accessibility for the last six-ish years. I feel like I've been typecast as an accessibility engineer, and I'm struggling with an identity crisis on how to portray myself on my personal website. Lately, I've developed a strong passion for more experimental and creative coding projects. I'd love to showcase this side of my work—WebGL, game dev, interactive art, generative projects—on my personal site and attract new opportunities to break out of my role that I find myself stuck in. The problem is, creative coding often includes visual experimental projects that are not and sometimes cannot be easily 100% accessible. My professional work, however, is deeply rooted in promoting and implementing accessible
25:26 Scott Tolinski? web experiences. My question is, am I fundamentally jeopardizing my professional reputation in design systems by pursuing and sharing inaccessible creative projects? How can I showcase my wider skillset and passion for experimental coding without undermining my credibility I've built as an accessibility expert?" You know, this one is so fascinating to me. I think it's all in how you package it. I think if you're labeling things like, "This is a creative exploration. This is a creative project." I don't think people are expecting a WebGL visualizer to be accessible to blind folks, you know, vision impaired folks, right? That's actually something that bothers me with some—not all accessibility folks—but
26:07 Scott Tolinski? some accessibility folks will look at any experience and be like, "Oh, you made a music player? Well, what about hearing impaired folks? They can't use it."
26:16 Wes Bos? Yeah, you hate blind people?
26:19 Scott Tolinski? Yeah, like, that drives me nuts. Not every experience can be the exact same for all-abled or disabled people. Just straight up, it can't be. So... I think it's all about how you package those explorations and works. And by all means, I think this is a cool avenue for you and I think you should lean into it. But just label your stuff. Say, this is accessibility work. This is creative coding. This is that. This is this. And, and just make that very clear. I don't think if you put a creative coding project and, and label it as like, this is a creative exploration or whatever on your site, I don't think anybody's gonna care about that.
26:58 Wes Bos? I think that is a, a kick ass way to get a new job because I'll tell you, I'll tell you what, as someone who's hired several people, you know what the Slack room looks like when people are going through resumes? Check out this sick website. That's all it is, is if there, somebody's portfolio has a list of really cool things or check out this tweet of somebody that built this wild thing. And also I think the accessibility stuff can be like a bit of a Trojan horse into the company. Because you can like win them over with all the interactive, all the, the artistic, all of the next level JavaScript stuff you've been building. And then bam, guess what? Also care about accessibility once you, you get into the, the company.
27:41 Wes Bos? So I don't think, I think, I think absolutely go for it. This is like a great way to expand your career, especially right now. We said it on our predictions, 2026 is the year of web GL. It's the year of 3D. Everybody is going to care a lot more about the design and the like wow experience of a website. Cause every single website currently looks exactly the same and we're all sick of it.
28:05 Scott Tolinski? Yeah, right. Just think about like that Lando Norris side, people saying that's not accessible. That's like an art piece, that Shopify's thing, that's an art piece. And like those types of experiences are so stinking cool. And if you can get in on some of that territory right now, I think it's a great time to do so.
28:24 Wes Bos? By the way, Scott, I can hear you typing your, your is going into your microphone. You need a shock mount.
28:30 Scott Tolinski? I'm trying to get this, the, it's actually, my microphone's way over here on a shock mount. My computer's right here. I think it's just the clickies are too close to where the microphone.
28:37 Wes Bos? Oh, I see.
28:38 Scott Tolinski? I need to move it over here a little bit more.
28:41 Wes Bos? I was talking to Killian, who works on Polypane. That's a browser for web development. It was amazing if you want to check out building responsive and accessible and everything. But I tweeted something out about like, you know, like if you look at the Chrome Dev Tools, if you put like white text on a red background, it'll be like, that's not accessible. And you're just like looking at it being like, that's extremely easy to read. Why are these accessibility contrasts algorithms so crappy? You know, and it turns out, we talked to Jen Simmons from Apple as well. We talked about the color contrast function, why that's not going on.
29:20 Wes Bos? He was telling me this whole world of, there's like this new color contrast algorithm that's being worked on that is way more, I don't want to say permissible, but it's like, it's better, you know? It's like you look at something where like, I can read that. I think most people could read that. It's a lot better. But he was telling me about all the like drama going on in the accessibility world as to if this is good or not, and it's, it's cool. So I'll tell you right now is like the, the rules are still like the color contrast stuff is still, still sucks and a lot of people still have to follow those because they, their company will get sued. But hopefully soon we will have better algorithms for calculating color contrast.
30:05 Scott Tolinski? There's a really good blog post from Lea Varouw on this, talking all about some of these different strategies, but also outlining how to be using modern CSS. And it's funny, I actually took some of her work and I'll, I'll share my code as well. I took some of her work and like reapplied that with some clamps and some light dark functions and have what I think is a pretty dang good, like 90% of the time auto color.
30:34 Scott Tolinski? Color contrast CSS where you can just do like auto contrast on this and it works with transparent backgrounds. It works with any colors and I'll share the code for this thing, but like I think we're getting closer to being able to like, I think that's like one of the big things, especially with with automatic color contrasting in the browser is that like, you're not going to be able to usually apply a blanket function right now that just takes care of all situations. But if you can, if you can fix 99% of situations and then like do the rest by hand, that gets you a long, a decent way. Yeah.
31:11 Wes Bos? Killian actually has a website colorcontrast.app and there's like three levels of color contrast, right? There's WCAG2 and you can, you either have to be AA or AAA compliant. And those are the ones that are like, oh, we can't put white on red button. That's, that's annoying. And the new one, which is, is not a standard yet, but it's what they're working on is called the APCA. That one seems to be a lot more purposeful. So check out colorcontrast.app from Killian.
31:41 Scott Tolinski? Yes, the APCA. Yes. And the APCA is also talked about quite a bit in the slave or blog post. So you can,
31:49 Wes Bos? Perfect.
31:50 Scott Tolinski? Pick some of that up too.
31:51 Wes Bos? John Ray says, what are you using for your smart home? I have an old open HAB, open HAB 2.4 from 2018, but I really need to migrate to something newer. I'm on Home Assistant, running it on my Synology. I've talked about that in the past, but you don't need a lot of heavy hardware to run this stuff is it's, it's just handling MQTT streams and setting variables across the, the world. So that is a very good one. I also run Google Home as well. Just because I love having the screens all over the house and being able to just talk to it. But for most of my like scheduling automation, I use Home Assistant.
32:31 Scott Tolinski? Yeah, I use Home Assistant as well. I have it running on a Home Assistant OS that just runs on a Raspberry Pi that I just always have on over there plugged into that. I have like a Zigbee adapter into that directly. And that's what I run. I like it a lot. I actually just recently just wrote a little automation the other day that automatically turns on my bathroom exhaust fan when the humidity gets too high in the primary bathroom. It was nice and easy, took no time at all in Home Assistant and that's just the kind of stuff you want with a smart home, right?
33:01 Wes Bos? Yeah.
33:02 Scott Tolinski? Yeah. Now I don't gotta turn on the exhaust.
33:06 Wes Bos? Home Assistant is not for the faint of heart. I think they need to figure out some better.
33:11 Scott Tolinski? It's gotten a little bit better.
33:12 Wes Bos? UI and some better, like what happens with Home Assistant is you add like, like a light bulb. And then it'll be like, here's 600 sensors that this light bulb can do, you know? And it's just, you get to a point where you add, like I have, I have probably 40, 50 smart things in my house. And then each of them have seven or eight different things. You have to spend some time really culling it down and getting it to as simple as you want. So hopefully, I don't know. I don't know. That's the thing with any of these Swiss Army tools. You let people do literally anything. And then it gets to be a little bit overwhelming. That's your Home Assistant dashboard?
33:50 Scott Tolinski? Yeah, it's pretty nicely tuned. And one thing that I like about mine is on this homepage. Like the homepage, I have like a bunch of just like presets where it's like, uh, watching a movie.
34:01 Wes Bos? Yeah.
34:01 Scott Tolinski? Eating dinner or whatever. And a lot of those are on timers, but at any given point I can enable one. And then on any given room, I just have all the individual lights and whatever set up. Or like, my office is a little bit different because it's my office where I can have like master toggles with everything in there. And all of my studio lights at once.
34:21 Wes Bos? I have one for my office as well. And I have it hooked up to my stream deck as well, where I can turn the lights on and off.
34:25 Scott Tolinski? Yeah, love that.
34:27 Wes Bos? I really want to build some sort of like family hub. Um, and on Marketplace the other day, somebody had one of those Samsung fridges with a TV in it.
34:36 Scott Tolinski? Yeah.
34:36 Wes Bos? And it was had like a blown compressor. And I was like, oh, I could take the screen out of the door. But he wanted like 500 bucks for it. So.
34:45 Scott Tolinski? That's absurd. You could just buy a little tablet for like 70 bucks.
34:50 Wes Bos? Yeah, yeah. I'm waiting for him to like, that thing's trash. Nobody wants your broken fridge, you know? I'm just waiting for him to come down and realize that. And I'll give him a hundred bucks for the, the door or something like that.
35:03 Scott Tolinski? Instead of buying, instead of buying a $50 tablet that works just-
35:07 Wes Bos? No way. What $50 tablet? I want, I don't want a tiny tablet. I want a huge ass screen that has all of our appointments, all of our buttons, everything, you know?
35:18 Scott Tolinski? The problem for me is I have nowhere to power that. Like, so what, like you're running power through the wall and then-
35:24 Wes Bos? Oh yeah. Easy. And the stuff runs on low voltage, so you can, you could probably even do it over PoE.
35:33 Scott Tolinski? Probably. I don't have-
35:34 Wes Bos? Ah, maybe not. The screen, those screens are pretty hungry. We'll see. Soul Azoo says, "I'm listening to Putt Look 946 and Wes mentions he blocks a large number of ISPs for bad hosts from all of his sites. Where does such a list come from that he curated himself?" So there's a GitHub repo called Bad ASN List. So an ASN is, you can go deep into what an ASN is. It stands for Autonomous System, but typically a hosting provider or an ISP, which, which a hosting provider is, they'll all have their, a unique number that's attached to it, you know?
36:11 Wes Bos? Comcast is 7922, Digital Ocean is 14061, and depending on the type of site that you're operating from, it makes sense to simply just block all people that are coming from, or all requests, not even people. So like, if you're getting requests to your website from like a shady ISP in Russia that are like, wha, th- this is not people's homes, you know, this is not like a cellphone network. This is like, somebody is making a request from a data center somewhere. And if that's, why is that the case? Either somebody's on a VPN trying to hide something, or, or somebody's running some sort of bot farm and they're, they're sending requests your way. So instead of blocking
36:56 Wes Bos? individual IPs or, or, or blocks of IPs, you can simply just say, "Requests from these ASNs are going to be either totally blocked," or you could throw a captcha at them. I think that's what I do right now, because it's like, there is a case where somebody would be using a VPN that's running on one of these, but in my case, I've never heard from a single customer saying, "Hey, your website's blocked." That's never been the case. It's, it's, it's only blocked- Shady people and shady bots. And the same thing with like, the way that you implemented is you go into your CloudFlare and you can create a rule. And it's just this massive rule where he says, if the ASN is XYZ, you can block it.
37:39 Wes Bos? But you can also block like countries as well, which you probably shouldn't block countries, but you can block everybody who is from the XX country or the, I think of the Tor country. And anybody who's, who's visiting your website via Tor is probably doing shady stuff as well, trying to hide their tails. So you can, you can hide those.
38:02 Scott Tolinski? All right. Next question from Siddiq. Hey guys, a big fan. I really enjoy the podcast. In my daily job, I work with modern web technologies. But over the last year, due to a new direction in our company, I've had to start learning SAP UI 5. It's basically a web world inside SAP. Have you ever come across this technology? I'm still surprised how big the ecosystem of languages and frameworks is inside of larger enterprises and how little it's talked about. It feels like a hidden world with a lot of potential. Wes, I'm going to say, I have zero clue. I have no clue. Nothing.
38:40 Wes Bos? Yeah, I thought this was an interesting question because when I was in school, a big thing that we had to learn was called ERP. And like these large companies who do accounting and inventory sourcing products. Like I remember the one example we had to do for SAP was somebody was making granola. And you had 18 vendors from around the world to get all of the pieces to make your granola. You know, you had to get almonds from Mexico and you had to get, I don't know, chocolate chips from Canada. And like, they all had different prices and they all have different lead times. And in order to make a simple granola, it was a very complex thing.
39:21 Wes Bos? And then you had accounts payable, ledgers, all of that stuff sort of built into it. And these huge companies are built on SAP. SAP is a massive, massive company. And I remember hating my life doing that. Because it was a Java app where it was just looked awful and you never knew where to click. And nothing ever worked and it was errors out the wazoo. And you had to do it on a desktop. And I was thinking about that. I was like, I want to where SAP is at, you know? So this guy says that SAP, and I just looked it up. There's this thing called SAP UI 5. It looks like they moved everything over to their own custom MVC JavaScript framework.
40:04 Wes Bos? And that's cool because like, obviously this stuff needs to be able to run everywhere. This is why you should bet on the web. This like massive company which was built on Java is now.
40:13 Scott Tolinski? Yeah.
40:14 Wes Bos? The entire UI is all done in JavaScript. I went to the docs and I thought it was hilarious because they have a chart of like how things work together. And that chart is done in a PNG that's probably exported from Photoshop or something. So I just thought it was so funny. Like these big companies are just like, they can't even make labels and boxes with text.
40:35 Scott Tolinski? Right. Yeah, yeah.
40:36 Wes Bos? Have to export it.
40:38 Scott Tolinski? Yeah, right. Yeah. Why does this have to be an image? What in the world?
40:44 Wes Bos? But it's kind of, they built their own, like it's not built on React or Angular or Svelte or anything. They made their own MVC framework. Probably makes sense for how big of a piece of software this is. But that is certainly an area where you can, I remember in school, everyone's like, you can make a bank. If you know SAP, similar to like SharePoint as well, you know, where it's just like, I'm specializing in this odd thing. And I know, I guess React is the same way. I know all the ins and outs of this thing. And I'm going to make bank charging these massive companies who just want to make granola on how to implement it.
41:21 Scott Tolinski? Yeah, crazy. Yeah, this is a whole world where I am just completely out to lunch on. Cool. Well, now's the part of the show where we get into sick picks and shameless plugs. Sick picks, for those of you who don't know, are the things that we just like and enjoy in this world, stuff that we've been feeling. And you know what? Before we do this, we don't ask people to like and subscribe. Like and subscribe to Syntax, y'all. If you're listening to this, you enjoyed this show, like and subscribe, hit that button.
41:47 Wes Bos? Yes, please.
41:48 Scott Tolinski? Do all that stuff for us. That'd be great. We love a little subscriptions here and there. I am going to sick pick a YouTube channel, and this is a YouTube channel that I just found out about last night. You know, there's always like, when you're like, discover a YouTube channel, and you're like, wow, this is really high quality information. I wonder how long they've been doing this. And then you go and you see it's like, oh, they have a video that's 12 years old. They've been doing it for a long time. And this channel has 45,000 subscribers. And they've been, it was really, really good. This is called Inside Archaeology. And it was just really nice archaeology information. Sometimes it's like new archaeological discoveries
42:29 Scott Tolinski? in October 2025. Fascinating burials, you know, the hunt for Queen Cleopatra's lost tomb. And like, the hardest thing with this kind of content on YouTube is that so many of the accounts that blow up is like this like, hyperbolic, like, was the pyramids built on giant tubes underground? Like,
42:50 Wes Bos? Yeah.
42:51 Scott Tolinski? Like, just idiotic Joe Rogan brain kind of stuff, instead of like, actual information. So Inside Archaeology, really great channel, and it just no nonsense, real stuff. So check it out if you are like that, if you like history, or archaeology, or any of that kind of stuff. This is my ideal type of YouTube, honestly.
43:10 Wes Bos? I'm gonna sick pick a YouTube channel as well. And this is a guy called Professor Boots. And this guy makes 3D printed, like, RC cars. And it's just the most beautiful thing to watch, because he goes through the, like, the 3D modeling of these RC cars. Like, he's, he makes like a skid steer, and a bulldozer, and a log truck, and a, what else? Basically, any, any vehicle that is in like, heavy equipment. He's building it, he's modeling it, 3D printing it. Then he's, he's making the electronics to make it work with like, an ESP32. And then he writes the software to control it. And then he puts them all into these very, like,
43:56 Wes Bos? Digestible, fun to watch YouTube videos. And then he also has like a, like a workshop. You can subscribe for 15 bucks a month and you can get access to all the guides on how to build them. And I was like, oh, over Christmas, I am going to be building. I'm going to be building a bulldozer or something fun like that. Cause I have experience with all of these things, you know? I can 3D design, I can code, I can do hardware. And I would love to make like a custom syntax bulldozer or something like that.
44:25 Scott Tolinski? Wow, what a five-year-old brained sentence. Oh, I got syntax bulldozer.
44:32 Wes Bos? And the other thing is that like, I watch it with my kids and they're just like, we gotta do that. You know?
44:38 Scott Tolinski? Yeah.
44:38 Wes Bos? Like they actually work, you know? They can, you could pick things up and push it around.
44:42 Scott Tolinski? It looks pretty dope.
44:43 Wes Bos? Yeah.
44:44 Scott Tolinski? Yeah, I'm into this. All right, I'll try this out. Sick. Heck yeah, cool. Shameless plugs, check us out on YouTube. Syntax YouTube, check us out. We're doing all kinds of stuff on there. We're doing crazy stuff. So as always, we'll catch you in the next one. Peace. Ace.
Previous 969: This guy is nuts (TypeScript Doom) Next 971: Stackoverflow and Firefox are Dead? Page updated October 31, 2026 · transcript and summary are machine-generated