Skip to main content
View on YouTube to comment and like!

over 1 year ago Syntax Podcast

The State of JavaScript

Wes Bos

Wes Bos Host

Scott Tolinski

Scott Tolinski Host

Topic 0 03:27

Dynamic imports useful but tricky with bundlers

Scott Tolinski

Jamboree.

Wes Bos

This will allow you to search an array beginning at the end. So, previously, you would first reverse the array and then find it. So that's that's really handy. To reverse will reverse it.

Wes Bos

So, like, if you were to run, like, a a JavaScript file from the command line, you can instead of saying node Oh, that's good. Yeah. That's you really need this with when you're using, like, either just like a fetch API or if you're using a,

Scott Tolinski

Vue. Js at number 2. Yep.

Scott Tolinski

strappy.

Wes Bos

number 2 at 98.

Scott Tolinski

Hilarious in that that 98 people responded that they used no runtime, which React. Okay. And this is just front end frameworks?

Wes Bos

a whole bunch of gotchas, variable title is

Scott Tolinski

which is a bundler SWC or no Node oh, stale no. I I I no. There's a SWCSWV,

Wes Bos

behind me on the shelf, it knew that it was slightly or not nothing.

Scott Tolinski

50 something. It's my mouse isn't letting me hover over it. 50 something percent in 2024. So that went down a lot in terms of positivity.

Scott Tolinski

but not nest. Is it nest JS? It's nest JS.

Wes Bos

Library received the most comments.

Scott Tolinski

an 84%

Wes Bos

a not to have to to fuss with that. Right? You're not having to transpile

Scott Tolinski

all the way down to

Wes Bos

a a little library.

Scott Tolinski

So I I use this feature, which I wouldn't have said last year. New Yarn, new me. Right? somewhere within the JavaScript, not at the top of the file, and you're Yeah. Not JS in promise to import that code. I'm redoing my my website right now, and

Wes Bos

Yeah.

Wes Bos

Yes. I hooked it up to my receipt printer.

Wes Bos

Most commented library.

Wes Bos

And then BUN,

Scott Tolinski

man, it feels like Nintendo 64 Mario Party in the best way. There's enough, like, new stuff. But our kids are just the perfect age Wes on New Year's, Courtney and I, in the past, we would just play Mario Party. We would do a long Mario Party thing. That's the, that's what Courtney and I would do instead of going to parties or whatever.

Scott Tolinski

Increase in, usage and in positivity is always such a great sign. Everything else went down.

Scott Tolinski

C sharp

Wes Bos

run times, Deno and BUN? That's probably more than I woulda guessed, so I'm I'm happy about that. Oh, serverless. Where are people running it? I know we're getting a little long here, but let's let's do this one real quick. 28% using Lambda, And array dot from a sync, Is it Node? Yeah. Number 3. Yeah. XOD is that's 36%

Scott Tolinski

as HTML from the initial call, or is it coming in as JSON from a a fetch request somewhere? I mean, those are the yeah. Yeah. The the 2 different ways to go about it. I I think the the Next. Js approach

Wes Bos

lit.

Wes Bos

bigger. And, like, if I can do that in the browser with JavaScript, like, imagine

Scott Tolinski

for what goes to the deal. It's super powerful. It the fans never come on. It's a great laptop. But in the same regard, if I'm doing, like, some crazy Twitter Sanity football?

Wes Bos

lots of little edges, and,

Scott Tolinski

an interesting trend. Not a sharp decline as Angular had from 2016

Wes Bos

kinda sad to see that go, but I think it's funny to see Astro, So I asked Like, I had I have this issue with when I did the receipt printer with, Man, taking over all of that. Although, I I still think we're gonna we're gonna have, like, a along the way.

Scott Tolinski

Totally. Can we now do? You know? Yeah. I know. I remember leaving my computer overnight just to have, like, a preview render and be like, alright. Oh, Oh, it actually looks bad. Let me redo it and wait another 8 hours.

Wes Bos

the webpack to TurboPack

Scott Tolinski

Yes.

Scott Tolinski

I I do have some wonder about the the hard lean into server.

Wes Bos

and I'm able to get, like, any game backup so another example is splice. Splice will modify the original array, whereas splice will not. So now we have dot to splice, which is number 4 at only 20% of people using it.

Wes Bos

I know I have a very fast computer, but Mhmm.

Scott Tolinski

positivity

Wes Bos

build commands and dev commands and stuff. So Yeah. Yes. I think it that that stuff's hard regardless. No matter how good the tools are, some of these monorepo stuff is is tricky, you know, and tricky to get set up. So it's probably why it's in b tier because it's it's a fantastic Web GPU. Which means that you can render

Scott Tolinski

Definitely.

Scott Tolinski

Puppeteer

Wes Bos

yeah. I don't know. I like all that stuff. Yeah. Yeah. I'm I'm trying to look at it. I'm a big fan of everything. Like, out of this list, I'm probably biggest on it that I already own. And then I downloaded

Scott Tolinski

the thing is is much larger, and you don't wanna have to import it until you need it. Number 3 on here is private fields and classes. This is a class based thing. You know what? Since I've started using classes more often, I'm using private fields. I'm using this. So I'm on here as somebody who's added classes to their their skill base, I guess. I don't know. I use classes now. Classy guy, Scott. I got classy. And I like my private properties.

Wes Bos

Angular application.

Scott Tolinski

of each matched capture group. Have not used this, but that sounds useful. That sounds useful to me. What is

Wes Bos

audience.

Scott Tolinski

C tier.

Wes Bos

So tell me, what is the highest paying framework?

Scott Tolinski

Fastify.

Scott Tolinski

I honestly don't know. Yeah. Yeah.

Wes Bos

but they're they're pretty close there. Yeah. I don't know. Cloudflare Workers, man, they're easy to use. That's what I reach for. That's so good. Yeah. I'm I'm trying to host my next site on Cloudflare

Scott Tolinski

if you need it, then somebody's got some specialty there. But, also, too, less respondents. Right? And the less respondents there are, the the the higher likelihood of

Wes Bos

assignment? Number 2, I'm gonna say

Scott Tolinski

is top level await. Node. I'm surprised by that. I've used top level await. People? 13 people.

Wes Bos

How how does Veet keep getting more year over year? Every year, baby. Just oh, it's sheer it's probably not percentage or something. It's sheer numbers of people. Yeah. That makes sense. Yeah. Yeah. Yeah. Okay. 30% Real quick. We're going through build tools here. I think this is kinda interesting JS Vite and Webpack are at par with what people are using at work. That's and I just run through and import every single file in there. And

Scott Tolinski

splicing. So here. Let let me open up my But what I would do, like I said, is I would create a new event. Yeah.

Scott Tolinski

Temporal. I use Temporal. It's the new date API. It's wonderful. Excited. It's very exciting, which is funny. I I I forget who somebody was posting on Twitter being like, this is the thing that people are excited about. I'm like, yeah. I'm very excited about it. I've I've read a lot of date stuff, and I don't wanna write anything anymore. Like, once temporal hits, it's gonna be a while before people really understand the benefit. I think it's gonna be similar to, like, a like, a CSS grid. People are not gonna understand that this is such a killer

Wes Bos

14% using Cloudflare Workers.

Wes Bos

it's almost one of those things where it's it was amazing when it first came out. But now with, like, 11 labs and whatever Sure. It's like, oh, this is actually not very good anymore, because I still I have a video where I I had Ricky from Trailer Park Boys insulting me. I had an app where a robot voice goes

Scott Tolinski

I'm I think I will hold out That's that's the context in which I've used it before. Svelte, Vue. Js, As much as there are benefits to it,

Wes Bos

roll that out.

Wes Bos

Detection. Wes Boss. Oh, you did? AI depth detection. Oh, yeah. That was the coolest. Man. I built this depth thing. So this is an AI model with transformers. Js, and you feed it a Pnpm.

Wes Bos

at your desk, I have to use dynamic imports to import the markdown what these, like, self driving cars have

Scott Tolinski

where you know, how people are feeling about it's interesting that React

Wes Bos

if something is a falsie, which we just talked about. Right? So their example is if a, everybody's like, you're using Broadcast Channel API. And you know what I was using? Local storage.

Wes Bos

Believe so. You know what's wild is I went back to

Scott Tolinski

React was still the most positive are really happy with this one. Yeah. Well, since the and since we started doing async await and try catching everything, it's like it feels more necessary.

Wes Bos

between them is is key, oh, you're going to need this not at build time, but on demand. So they have to figure out which parts you need. And if the name the part of your dynamic import is like a variable, And now there is this whole usage and progression, which will j s? Yeah. Moment coming in at number 4, 27%.

Scott Tolinski

No. That's considered considered JavaScript, I guess. I know. Well, it doesn't it doesn't count con con Not to GitHub? Yeah. Not to GitHub. Right? Yes. That's the, the joke. Okay. So, It was just that, like, his m one still rules, but Yeah. The the video stuff was enough to make him go there. I I still

Wes Bos

It's been in every browser for a long time. Wow. I'm very surprised I had never heard about that's why I love going through these things JS because even folks like us whose whose job it is to stay on top of the stuff, there's there's things you never come come around.

Wes Bos

or multiple windows of an application. You used this, didn't you?

Scott Tolinski

if you look at something when you're starting out, the first question to me is, like, what needs to be server rendered and what doesn't? And if it doesn't need to be server rendered, to me, adding server rendering is just adding unnecessary complexities to it. And But then you just don't use it, though.

Wes Bos

I don't believe I did Oh, yeah. Yeah. Yeah.

Wes Bos

Yeah. That's true. But what is it a sign of literally everything else went down in positivity? Do you think that's just the industry in general

Scott Tolinski

Not Koa. Koa is number 6. Okay.

Scott Tolinski

for people out there who like nineties R&B.

Wes Bos

I see what you mean here. Let's let's do a quick example right here. So Scott people is equal to hey. Look at this. I already got 1 in my Nice. My dev tools here. So we have Scott. We have Wes, other languages don't have this amazing data API,

Scott Tolinski

and then Svelte passed it in 2023.

Wes Bos

all of these things are Electron based JS amazing. Obviously, the the downside to that is there's a huge that I've I've hit Then we got Claude, Gemini, Cursor. Only 11% But We'll see. See? So 11% of people are using Svelte in what items are in both of them and which items are are not in these ones? You know? Or Yeah. Or you have, like, a whole list of

Scott Tolinski

Viteast? Viteast. Alright. That's fine. Yes. Vite number The Wes speech API. I did use this. I've used this a couple times. It's cool. There's a lot of there's voices you can pick from. You can get it to,

Wes Bos

anytime you do something that needs to be deterministic,

Scott Tolinski

That would be nice. That's something that I would like. But, yeah, I I think I think that's a feature that people will start to use. Totally. You Node? It it makes modules really nice to await things without having to create a function and run that function. So, yeah, top level await feature that I would like to see,

Wes Bos

I'm assuming that that's what this is under the hood. It's kinda similar to Urvi uses Wes build and roll up and Vercel So it's it's amazing.

Scott Tolinski

And it was always a lot of fun. And this year, we were like, let's buy the new Mario Party and play Mario Party with the kids on New Year's, and we did that.

Wes Bos

String features, replace all. That's a Match all. That's a killer one. Right? Match all. That's a killer one as well. And match indices.

Wes Bos

that was really interesting to go through. Kinda gives us a good look into the JavaScript world.

Scott Tolinski

yeah. I don't know about that one. I'm surprised

Wes Bos

So I'm I'm surprised at how much I like this thing. And I would say if you're cold I just use the Yeah. That are are they're using The number 2 framework. Man, what's the Express one that people used? I know what it is, but I can't think of the name.

Wes Bos

3 notches from 10 to 7. That may just be because speedy web compiler.

Scott Tolinski

all of my annoyances and I and maybe even Wes to an ESLint, like MoCA,

Wes Bos

alright. I just built everything client side, and now all of a sudden, everything is is server side by default, and you gotta put use client and everything. That, like, sort of burned a lot of people because Yeah. Like, I I think it's I think it's great, the the server side. It makes a lot of sense to me

Scott Tolinski

now that we have a built in test runner? I don't know. I don't do enough testing. I'm sure there's, experts who do enough testing that could answer that for me. But Yeah. Well, now that Node supports,

Wes Bos

like like, a silly, silly example AI. Oh, Python. Java Java number 3 and Python number 1. Yeah. So Yeah. Almost almost half of people are also using Python. Where's Swift on this list, or is it on this listed off Swift.

Scott Tolinski

like, what is a React issue? What is a Next. Js issue? Yeah.

Wes Bos

piece of, Array dot width I don't know. That's more for, like I every now and then, I've used that, but that's more for, like, c and and bash scripts.

Wes Bos

node bundle that comes along with it. Right? These these Elektron apps can be very large and I feel like the move for and you hold it down. Hold on.

Wes Bos

number 1. Still justice. Still number 1. Yeah. That's gotta be Stockholm Syndrome. Or Yeah. Well, just you don't want it. Last thing you wanna do is move your test router No. Thank you. To over. You know? If it's working, it's working. Don't fuss with it.

Scott Tolinski

I think you do make a choice, because for, like, async components.

Wes Bos

It's similar to Koa.

Scott Tolinski

Yeah. I don't know TypeScript.

Wes Bos

modern React rendering now or web no. Deno has WebGPU

Scott Tolinski

meta frameworks,

Wes Bos

aside, but I I I keep thinking about it every single day. Deno has put, like, a little box with a console Scott log Hashbang grammar, 20% of people using it. This is

Wes Bos

The funny thing about a lot of this stuff is Rust

Scott Tolinski

Wes. Of course.

Wes Bos

replace an item of an array that's amazing that Vite has climbed. I wonder what it is over year year over year, but I think Let's get into the actual stuff here. Alright. Let's start off with the features, Broadcast channel allows you to there's just so much in Next. Js. There's so many little things that they have to support, and now there is also a turbo pack. So there's 2 different ways to build it locally.

Wes Bos

I don't know, man. Like, I my m one has been is, like, really fast. I'm kinda tempted to do it because of some of the the video editing speed stuff.

Scott Tolinski

Oh, React. Next JS React. Nest

Wes Bos

Okay. So that's really handy if you want to And everything. So so if you are if you're like, well, I think this is pretty heavy, React, or Yeah. I think it's whatever.

Scott Tolinski

WebGL.

Wes Bos

that people bring into their projects.

Scott Tolinski

of React, in

Wes Bos

Podcast number 1,

Scott Tolinski

I've used WebGL,

Wes Bos

things that people are being are using at work? slow you know, sometimes, oh, this database query is being fine, but all of a sudden, boom, this is taking 3 seconds to actually run. Might be something going on there. Session replay, really cool, which gives you a video like replay of what the user was doing to hit a specific bug as well as code coverage. Now it gives you some stats on are your Wes covering all of your Node? Check it out. Century.io forward slash syntax.

Wes Bos

Node and 83%

Scott Tolinski

Wes you would get items being graded on, and you'd have s JS being the best. But it is it is it does originate from, video games, where s was the highest rank. Yeah. So we have v v test v and v test are always just dominating these things. I have an official answer here. S stands for

Wes Bos

singletons,

Scott Tolinski

this year even though I have in the past.

Scott Tolinski

Once they're aware of it.

Wes Bos

Unless it's next year, then I'll buy it in. Yeah. Or they put a webcam in the middle of the screen or something like that. Yeah. I I think, like, it's crazy to say that, like, if you're just a developer and you're not doing video

Scott Tolinski

So I will say Lodash is first. Lodash, 43%,

Wes Bos

Preact, Copilot.

Wes Bos

Most adopted technology awarded to the technology with the largest year over year of people using XOD.

Scott Tolinski

And then in 2024, I don't know, this interesting thing where people always feel like you gotta lean really hard to one side or the other. And I think there's just very specific use cases for both. I think they're real fine. Yeah. I I think, like, being able to

Wes Bos

we are now competing with the YouTubers Alright. Let's take a look at Scott of JS. First thing we have here on the left is

Scott Tolinski

meta frameworks pain points. 12% of respondents said Next. Js issues.

Wes Bos

improvement That gives you 2, 3, and

Scott Tolinski

I I I didn't get a a heated vest, but Courtney did get me, like, one of those, So, you know, little surprised that sentiment put it in the

Wes Bos

67%

Scott Tolinski

Express.

Wes Bos

out of it? So they they give ranges.

Scott Tolinski

So did you use WebSockets in 2024?

Wes Bos

JS surprisingly almost like Node

Scott Tolinski

Storybook and Webpack. I'm I'm floundering on these. Most loved library, Vit. Vit or Vitest. It is Vit. Yeah.

Wes Bos

And, entirely just as, like, a to see how well you can do it, and it's it's going well so far. Yeah. I everything I do

Scott Tolinski

10 plus testing tools on this ESLint. And I wonder how many of these will go away the more that people use the built in Node test runner. Now I'm not sure. You know, you have things like mock service worker. That probably won't go anywhere if you need it. Yep.

Wes Bos

data heavy

Scott Tolinski

Like, some of these things, it's like, do these need to exist anymore

Wes Bos

that we're gonna be able to use. So I'm excited for it.

Wes Bos

So I was working on my my website, and I had a array of blog posts. And every time I saved the file, it would reverse the blog posts. I said, what the hell is going on? And it's because I was Seventy megs. Oh, that's 70 that's I I actually download it. Well, maybe it's because I downloaded n 64 too. Yeah. Yeah. Not n 64, but, like, every NES emulator ever or every every ROM. Seventy megs. Amazing. And, like Amazing. Of course, so you get, like, the GameCube or whatever. They're they're much bigger. But I put it on there, and I was like, what games do these kids even play? So we're just playing NES games. But Mario Party, is that on the Wii? I I did a video on this, and now I'm I'm blanking on what it is. Returns a new array with the This

Wes Bos

element at a given index.

Wes Bos

when somebody has done that. So I yeah. It's ValleyBot for unknown data with confidence. ValleyBot is an open source library for Tazod bundle. Oh, okay. Similar to Zod. Yep.

Wes Bos

import, they have to try to figure out,

Scott Tolinski

stuff like underscore.

Wes Bos

16% and Deno, 12.

Wes Bos

it's a pain. Dynamic imports are really tricky because like, partially because, like, when you deploy something to a

Scott Tolinski

a massive ESLint. But now it's it's Scott a little boat shape. Yeah. It's got it's got a little boat shape. Popped up 3 I just I the more I think about apps I use every day,

Wes Bos

for me. Yeah. I used it in a couple talks. I had a couple nice little syntax.

Wes Bos

swath of

Scott Tolinski

Sentry doesn't need server side rendering. Why would it need that? Right? It's all client side. I don't know if they do use server side rendering. Honestly, I have no clue. But it it feels like, you know, there there was such a shift that everything needs to be rendered server side. Now, like, I look at the things I use daily, and it's like, alright. I look at an app, and I say, alright. Server side. And I look at another app. Alright. This one needs to be client side. And and you get this, like, this, ASTRO.

Wes Bos

So we had table. I'm like, no.

Wes Bos

and it's used by Next, Parcel, logical

Scott Tolinski

yeah, top level await. Yeah. It does say it's supported, but, hey, man. I couldn't get it to work no matter what I did Really? With Safari. Safari specifically, there's a there's a there's an open issue about it on GitHub, and there's not a whole lot you can do.

Wes Bos

having your core nice and heated is amazing. And it's just ESLint Library, and SvelteKit

Scott Tolinski

Let's do, I actually wanna do more client side stuff.

Scott Tolinski

Yep. Big fans. The a tier, we got mock service worker, which I used in the past before, which allows you to

Wes Bos

But, also, it's been around for a while. So hey. Yeah.

Wes Bos

WebGL

Scott Tolinski

Yeah. It's all content. Next time, vote for us on Video Creators then, folks. I know we're on that list, but you gotta you gotta vote for Syntax on all of it. Down. Yeah. Just put just put in syntax for every single,

Wes Bos

that you can't use a singleton in in Next. Js because there's Jeez. If you call a server action from the server or you call the the depth of what I'm doing. The it's a depth map. Yeah. Yeah. And then I pipe that into Three. Js,

Scott Tolinski

great that it gets so hot. But yeah, man. It's cool. It just charges. You wrap it around, and you you get cooking. I might actually use that in my office to heat up. I'm going to sick pick

Wes Bos

Number 2, which is funny because we're almost at a spot now where We don't need either. Yeah. Other libraries.

Scott Tolinski

Wow. Vitast and Vit. Their partner stopped. That's like the the biggest that's the funny thing. Alright. Most write ins. Yeah. A word to the item with the most amount of write ins, I'm gonna say Scott Tolinski. No. I have no idea. This one, I have no clue. Maybe roll down because Like, shouldn't that just be the case? Well, that's what I'm saying. You look at it. You Scott, and you say, alright. Does this need server side running or not? Yeah. That that is the choice. That is the choice you have to make. But yeah. I I mean, but the trajectory before was pretty much going up and up. Major

Wes Bos

We are posting lots of videos, serverless

Scott Tolinski

Yeah. Node number 4 is where it gets really tricky for me. You Node, it could go a number of ways. I might even say,

Wes Bos

Or they're trapped in an 11 year old,

Scott Tolinski

you know, mental I don't know. That's the way I've always done it. Right? Yeah. Yeah. You just in splice. It's like, well, now I gotta remember these other ones even exist. But, yeah, it makes sense.

Wes Bos

stuff, you've you've got lots of arrays of of either numbers or comments or things like that or or data visualization.

Wes Bos

Yes.

Scott Tolinski

and I built, like, a speedometer with it. And, like, that was that was 15 years ago that I built that. Like, it's been in the browser for a long time. Jeez. And, yeah, Node that many people. I mean, when you it's one of those things. When you need it, you need it, but you don't always need it. Yeah. Web animations, Wappy. I use Wappy. I put it in some of my demos. Yeah. I'd I'm also the one that I Wappy.

Wes Bos

paying at the 90th percentile is Preact.

Wes Bos

it still has quite a bit of usage.

Scott Tolinski

So Mario Party is like a board game. And you you roll a dice, and you go around the board, and the board has various elements that do things. And then after everyone does a turn, it does a minigame. You all do a minigame, and the winner gets a certain amount of coins. 2nd place get and then you use those coins to buy stars, and this person will buy stars at the end of it. Yeah. Oh, and this is on Switch? This is on Switch, and it is so it you know, you could use the the little sideways controller, so you only need, like, 2 sets of Joy Cons. And,

Wes Bos

JavaScript, You shouldn't have to syntax highlight in the browser

Scott Tolinski

Next. Js went from 77%

Wes Bos

to what people want. And then the ability just to hop into a client component piece of equipment. TurboPack is compiles everything to common JS. And you

Scott Tolinski

this Yarn. But, you know, CJ released a video about Yeah. Using sets and maps. And, it's a really good video.

Wes Bos

every single I put a NES emulator on there. Guess how big every single NES game ever JS? Forty gigs? Man.

Wes Bos

on I used Playwright quite a bit this year. Obviously, FEAT, I use quite a bit. PMPM, I've been on for a while.

Wes Bos

Yeah. SWC is the Rust based, like, I guess, like, bundler or or parser,

Scott Tolinski

I need I don't I can't I can't think of what number we need. 2, the word is kind of like next,

Wes Bos

possible values, So this is a heated Real quick, before we get into it, let's talk about Sentry, at sentry.ioforward/

Scott Tolinski

rendered, server side. Right? Reddit still is I believe it's I mean, it might be using web components these days. I forget what it was because their React rebuild was so rough.

Wes Bos

We've been able to do this a 100 years for table. No. You don't understand the benefit of And I think temporal JS gonna have the same thing I I sure did.

Wes Bos

it's all just, like, WebGL you would think that go like, Microsoft is shutting down.

Scott Tolinski

to 2019,

Wes Bos

React.

Scott Tolinski

Man, I I've always played Mario Party, you know, as a I've been playing it since middle school or high school or whatever. Love Mario Sanity, I might put

Wes Bos

of respondents using React.

Wes Bos

17% using Vercel,

Scott Tolinski

JS, it's only surprising because I think, you know, when you first try h t m x, there's something magical about the simplicity.

Wes Bos

either. I was pretty when, like, the video stuff came out, I was into it. And then the web WebTorrent was also built on WebRTC.

Scott Tolinski

Electron, surprisingly in here. You know, you only hear people talk negatively about Electron. Every time I've used it, it's been more than fine. You know, it's one of those libraries that people complain about, but at the same regard, it's super handy and useful.

Scott Tolinski

killer trajectory all over the moon. Yeah.

Wes Bos

assignment.

Wes Bos

oh, yeah. Yeah. Yeah. I've I've used this,

Scott Tolinski

Not a ESLint.

Scott Tolinski

has been, over time, since 2016 with monorepos

Wes Bos

in in the new Yarn, so check it on out if you wanna, of course, watch the podcast. But, also, we've got just dedicated videos coming for you, so check it out. Syntax And it's a great way. But and it would draw lines between the windows.

Scott Tolinski

in 2022 which I I'm more of a fan of SWV API also

Wes Bos

Oh, that's great. Cool. Well,

Scott Tolinski

the the testing tools if you look at the testing tools, what there's, like,

Wes Bos

2 and 3.

Scott Tolinski

did not use, but I should. I'm a big,

Wes Bos

Analog.

Scott Tolinski

Cool. Yeah. I you know what? I never think about these. For some reason, I just always use because it's like you you have so much, I don't know. I'm I'm saying Svelte just because I like it. But it's the thing that's probably Vit. If I'm gonna say playwright, in another regard, you use something like Sentry.

Scott Tolinski

and orchestrating,

Wes Bos

and they are they're aggressive

Scott Tolinski

Yeah. It'll be interesting to see too with the roll down stuff. Man, Vite is such a such a I like that. Oh, likewise, array features, we have you know what? It's so funny. We see these bars go all the way to the right, and you think, oh, a lot of people must use this. But it's only 40% of people who have responded actually use this array Scott to sorted. I have not used to sorted.

Wes Bos

And, as always, thanks to Sasha for putting this thing together.

Scott Tolinski

like, all these things. I don't even know anymore with the SWC. SWC is the at work in production. Eleven. That sounds right. You know what? I often hear people say, like, oh, I wish I could use Svelte at work, but I can't. And so Yeah. That's maybe what I was basing on.

Wes Bos

use? Oh, I don't know that. I've I've used this before. Let me tell you. I had the same reaction. I I haven't happiness. Equals? So logical assignment

Scott Tolinski

Nitro I don't see Nitro. Nitro is way below. It's below meteor on here. So Okay. Not many people using Nitro. Do you wanna,

Wes Bos

when you can just syntax highlight on the server and send the HTML is is quite amazing. So I would've thought that'd be significantly higher. That just goes to show the, like Oh, yeah. Sometimes the bubble that we we live in. You know? Like, Copilot has a 5 x what Cursor has. If if you were to just, like, ask me based on what people are talking about,

Scott Tolinski

And let they're just like the perfect age for it. So it was a lot of fun. We we've been playing it, and our kids really getting the hang of it. So Really? Maybe the browser should be number 1. A 100% of people, if you're writing web stuff I guess this is just JavaScript. Maybe people aren't writing JavaScript for the web entirely, which Yeah? Yeah. Hey. Maybe it's there's just Flash or you know what was crazy? This is totally

Wes Bos

then you can do pipe pipe equals, and that will set the default to 10.

Wes Bos

versus having to take it like Scott just said, take a copy and replace that item or spread everything before. Put the 1 in you want and spread it after. Man, I can't I literally have a video on this, and I was, like, blanking on what that was for. That's good. K. Only for some features. We're getting too much stuff. It's all great. Yeah.

Wes Bos

That's interesting. Have never 0, and nullish coalescing is really cool if you haven't used it before JS if you have a variable that is possibly null or undefined, like, what you're getting at here is that, like, a lot of it Be good. Build under the hood. It's, obviously, SvelteKit we're big fans of.

Scott Tolinski

VR person, so I could see myself using the WebXR API to do something fun. And it's one of those things that's always on my ESLint, like, yeah, I should give this a try. I haven't done it. Alright. Let's move into the library tiers list. This is kinda interesting. So the s tier what does s tier even mean? It's so funny that, like, we all just know this.

Wes Bos

Make a set instead, for each of the files.

Scott Tolinski

with details. I've used it to animate

Wes Bos

These things are a massive, massive improvement. Even the symmetric difference, have you ever had 2 arrays of data and you needed to figure out of people using Cursor. I would've thought good. Cursor is very good, and the amount that people talk about it

Scott Tolinski

like, data science thing? I'll tell you what. It's from video games. It's Okay. From, specifically, Japanese video games. It's, like,

Wes Bos

that will That is better

Scott Tolinski

Okay.

Wes Bos

I should've known that. Yeah. Strappy. What else is on here? Adonis, JS, Happy, Meteor,

Scott Tolinski

synthesize speech for you. It's cool. The web speech API, People are actually using network, front end frameworks. React number 1.

Wes Bos

It's just on a component by component

Scott Tolinski

coming in. Cool. Absolutely. Everybody loving it. I love all that stuff, except for maybe Nextiva's

Wes Bos

Yeah. It just What Mario Sanity, which one's that? 8 hour render

Scott Tolinski

I didn't see roll down listed too many places on here. I'm gonna say BUN.

Scott Tolinski

So sentiment

Wes Bos

710 I think that is probably more of an audience thing because Totally. I think Alpine is probably at its at its peak, all all the cool stuff Caleb is doing right now. Totally.

Wes Bos

in is similar to array dot from but for async iterators.

Wes Bos

where you can get the pieces of the matched array.

Scott Tolinski

Exactly. Progressive Web Apps. I'm raising my hand. I use Absolutely. Yes.

Wes Bos

and then you have your your actual values. And you say, okay. Which ones slowdowns, and help you fix issues on that. So if you got a slow website, whether that's something on the client side, whether that's a database query that is abnormally some of my old demos where I did geolocation, what is the highest paying framework Oh, AI tools, Number 1 I'll say it's I'll give you one word, validation.

Scott Tolinski

I don't know. I know JavaScript people like to say things like go and Rust, so those are gonna be on there. Yeah. Go, number 6, 18%.

Wes Bos

but the UI to the client. It's not even HTML, though. Right? No. It's not. It's not. It's all take an array that is a generator, Oh, yeah. Maybe the m one, which is, what, 3 years old Node, is

Scott Tolinski

usage has gone down for the 1st time from 2023 to 20. It only went down 2%, either you know, they're the same thing. You know? The this is or because the boundaries have blurred between the 2,

Wes Bos

cooked. It's more than enough I've been in Next. Js world for, like, the past month or so quite heavily moving my own site over, and I've hit like, as I'm I'm a huge fan of Next. Js, and I still think it's the best way to do Run the numbers, brother.

Wes Bos

we we we had the same thing last year. More people are using the browser than than Node? That doesn't make any sense. How does it not make oh, you mean Node more than the browser?

Scott Tolinski

The WebXR device back recovery y things Wes you, like, strap it to your back and it has Oh, I've seen those. Yeah. Yeah. Yeah. And, man, that thing really cooks. It gets really hot. And then I'm not that's not a negative. That's perfectly,

Wes Bos

Wes. My sister got it for me for Christmas, Sentry's gonna help you figure out

Scott Tolinski

yeah, our our kids went nuts for it. There's there's motion ones where you're you're doing stuff, and there's there's platforming ones. And even Brooklyn has a great time. Landon even won. He won, like, 2 times ago, which JS, like, the the transformation of our kids, like, not being able to to play the most basic video games to winning a round of Mario Party happened, like, overnight. It was kinda basic. Our our kids too. You know, we a couple years ago, we bought a Wii. Yes. And they played it in. It it was it was okay.

Wes Bos

It's it's not really, an issue as these computers get so much faster and as the processors and as you get more memory on your devices.

Wes Bos

every time I see the Redwood not getting any love Yes. Same. Yeah.

Wes Bos

and

Scott Tolinski

Lerna, not surprising that it's this low. I don't like Lerna. Workspaces has kind of solved all those problems plus Turborepo, whatever. Yeah.

Wes Bos

oh, entirely on the server. So, like, server rendering and then just streaming the an AI to return JSON ups. Yeah. It Wes, like, 10% every year, and then this year, it finally went down than using a ternary higher than Cloudflare Workers, like nothing, That's really Sanity. If you've ever tried to Cloudflare Workers got a they got a write in. I guess, only 30 people, but it wasn't an option.

Wes Bos

because Next has been around for so long I I hacked it,

Scott Tolinski

Yep. And the next one here, error Scott cause, which allows you to specify,

Wes Bos

and Deno use SWC.

Scott Tolinski

Gatsby continuing to go down. What what JS increased in positivity? I just I saw your tweet about this. I knew this was coming.

Scott Tolinski

Full support, beta. 95%.

Wes Bos

That's my, good future. Wes did note that, wow, it's the same as Webpack now.

Scott Tolinski

There is Mario Party for the Wii. Yeah. I'm gonna get that for them. There's Node that was actually pretty good, because I had the Mario Party for the Wii. I think it was Mario Party 9. Which one? Mario Party 8 was good. Yeah. I did Mario Party 9, not good. Mario Party 8, good. Yeah. Okay. That's good to know. I will, I will buy that on eBay.

Scott Tolinski

to 69%

Wes Bos

Same. Node 36.

Scott Tolinski

but they've always been like, the more modern ones have always been kind of iffy in various ways. We'd still buy them, but they're they're always kinda iffy. The latest one, it feels like, finds. That makes a lot. It a 1000000 times. Yeah. I I have a fun thing we wanna do here for the browser API section. The browser API section, beyond the amount of, percentages of people that have used these things. Let's go from the top to the bottom, and we'll each say if we've used these in the in 2024.

Wes Bos

48%, such a nice thing. And, of course, we can do that in in all frameworks now.

Wes Bos

Yeah. Yeah. It could just be 1. The cool thing about State of JS is they have query builders for Awesome. Talk about passkeys and and the actual tech behind it.

Wes Bos

using next year, we'll see Vite have a significant, what are people actually using? What are people building with? What is sort of coming up on the horizon? It gives you a nice little look on into it. So we're gonna check it out. This is the Scott of js survey at stateofjs.com.

Wes Bos

What? Day. Js is number 5. I think that's one that people like to use instead of date functions. And then we'll have temporal $90,000, environment up at the top.

Wes Bos

You can do that. If we ESLint from,

Scott Tolinski

like sure. Like Reddit, that's a perfect use case for server anything. Right? You want all that indexed. You want all that you want all that information,

Scott Tolinski

Yeah.

Scott Tolinski

position.

Scott Tolinski

Yeah. That's such a good sign, though, in terms of, like, more people are using it, and more people like it. Like, that says a lot.

Scott Tolinski

Speaking of, when are you going to upgrade again?

Wes Bos

video for that. Okay. Page visibility, did not use that. If the page is open, I believe it's Yeah. Like, if you've if you've tabbed away or you've minimized something, you can detect to the thing. Like, syntax highlighters are huge. And why are you loading all this JavaScript on the client

Scott Tolinski

It is not used a whole lot in the React community, but it's very popular.

Wes Bos

That surprises me. I woulda thought that the Vercel probably 8 years now. I know. Yeah. And,

Scott Tolinski

yeah.

Wes Bos

Is underscore second? Underscore. No. 7% still, though. Like, that just goes to show like, underscore has not been people said everything has to be server by default and Right. The, like, the hard switch

Scott Tolinski

Is it, like, El Eliza? SHU, bitter. Or they didn't use it at all and just heard somebody say, oh, Angular, bad. Yeah. You know, react good. And that's why. You know? The lowest one, Cordova. I don't Node lot of people even use Cordova anymore. Gatsby,

Wes Bos

Yeah. So that's it's it's it's a year. Highest retention. What is the technology with the highest percentage of returning users?

Scott Tolinski

better supported and, you know, better used throughout just the general landscape. There's a lot of new features for sets, Broadcast channel API. What is that? I have not used that.

Wes Bos

edge cases, which is kinda kinda tiring.

Wes Bos

Come on. What are the what are the 2 big languages that people use Oh, yeah. Obviously, PHP. Yeah. PHP number 2, 29.

Scott Tolinski

with a service worker so that way it doesn't actually hit a server. It's great for testing.

Wes Bos

year over year usage.

Wes Bos

kinda animations while I was I was doing the talk. And what else did I use on? Oh, I built a,

Scott Tolinski

Chris Coyer had a really convincing blog post the other day why why he upgraded.

Scott Tolinski

the spiritual successor to Gatsby. It does feel like Gatsby could have become Astro. You know? It does feel like yeah.

Wes Bos

A very clear winner at number 1. Yeah. C sharp, number 4, Wes. But there's, like, a there's something 39%.

Wes Bos

windows open, and I had my video streaming in. And you could move the window anywhere you wanted, call stuff on this on the the server from the client is nice use case for that, but I need to I'm I'm sure the folks at Sentry

Scott Tolinski

Oh, so it's like value. Yeah. Yeah. So you can Selenium.

Scott Tolinski

30 seconds, and that's pretty cool to me. Yes. You can just talk to me. And you don't need Internet connection for that. It just works. I don't need Snoop Dogg to tell me that I have 30 seconds left. I I can have a robot voice do it. The Gamepad API, which allows you to connect, video game controllers, have not used. But, hey, that seems like something fun to play around with, at least.

Wes Bos

Redwood. Man, is client default and then opt in to server just for the sake of of making people not mad, and that's what what Tanner's doing with the 10 stack start. Yeah. But it's it just the ability to do either 1 or, ternary. I can never say it. Ternary. Ternary, some people it burned didn't have to be burned by it because they didn't actually need it. They didn't have those problems. Yeah. Right. That's the other thing. Wes you talk about all these amazing improvements, And it will for checking if data is similar to another piece of data, Angular, number 3? Yep. Exactly. 28%.

Wes Bos

And what it does is it gives you, out the other end, a a map where the black pixels are the furthest away, and the white pixels are the closest to you. And then you can feed that This image.

Wes Bos

ChatGPT, client, they're 2 different bundles.

Wes Bos

Sales, Wes

Wes Bos

what are people actually using at work, not what do people love and what what are what is hyped right now, but what are people getting paid to use? So tell me, what are the top 5

Scott Tolinski

special super it is funny because I don't remember if it's, like, if it Wes, like, RPGs or something

Wes Bos

I'm down to that. Alright. JavaScript run times,

Scott Tolinski

Yep. Yeah. What

Wes Bos

I think it's because of most people taking this is it's it's a pretty heavy if you can. It's not of course, it's not always totally possible because you don't know those things, or

Scott Tolinski

in SvelteKit is pretty much unless I wanna just throw it on my if I need a node, like a node app, I put it on my COOLIFY. But everything else, I throw on Cloudflare

Wes Bos

using browser. So more people Yeah. Or Cloudflare Pages or yeah. Can I get you to guess what other languages people use instead of Yeah? Or in addition to JavaScript? Lit, people writing JavaScript are probably not writing native Totally. Apps. You know? Like, they're probably using React Native.

Wes Bos

Cool. 70% using jQuery. Yeah. Yeah. Big fan.

Wes Bos

Wes should this thing be rendered.

Wes Bos

a ValleyBot. What's a ValleyBot? number 1.

Wes Bos

like, it's it's another reason

Scott Tolinski

You know, testing here,

Wes Bos

did not use. I was a user of it. I did not code anything with it, but that's the web authentication API is what passkeys are built on. And we had the specifically syntax features. Which of these syntax features have you used? over top of Webpack.

Wes Bos

Number 2 is find last.

Wes Bos

did not use that.

Wes Bos

by the import tree, they will figure out which pieces are needed, and they'll try to take the rest out and and tree shake it.

Wes Bos

JS. Angular.

Scott Tolinski

Validation.

Wes Bos

have gone down. I'm surprised to see Alpine.

Wes Bos

for hold on. That

Scott Tolinski

SWC,

Wes Bos

The benefit of being able to write desktop apps

Scott Tolinski

Does date f n s take over moment? Yeah. It does, thankfully.

Wes Bos

Peace.

Wes Bos

from async

Scott Tolinski

4 on this list with only 13 people responding have using it, which is 0.1%

Wes Bos

empty, how is that different than Sorry. One more question JS, Deno.

Scott Tolinski

Yeah. Yeah. Totally. It it just does feel like yeah. It it feels like that that transition burned a lot of people. And Oh, view transitions. View transitions API. That's not considered web animations, is it? It's not. No. Okay. The web animations API is like a JavaScript where you can specify to and from, and it interpolates values for you. It's great. It's really nice. I I use it actually to animate accordions, I You know what? Here's what I would do in the same situation. I would create a new array first, and then I would then replace the item at that index with the classic style. And I I don't know that this I didn't know this existed. So yeah. What makes it better? Is it a shorthand? It's probably just a shorthand, but still No. It's not. It's it's the mutating versus I did use geolocation.

Scott Tolinski

Well, if I know anything about this section of the survey, it's always

Wes Bos

your code to run it in, like, a different environment to make sure that it works. Right. So, yeah, it's let's see. If we look at rank,

Scott Tolinski

Oh, yeah. Yeah. We're talking year over year. I would say Veet for all of these, but if you ever Astro.

Scott Tolinski

Express.

Wes Bos

Okay. Okay. So average or or 50th percentile, not average, is syntax highlighting.

Scott Tolinski

So we used Wasm this year. Heavily. Yes. I did not use WebRTC

Wes Bos

in there. Right? That's that seems like a crazy amount of JavaScript to run. So that certainly should be server side. Right? I I think the And he said, it's just

Scott Tolinski

and Playwright and Cypress and Storybook, those are all certainly their own things. But, like, Jest,

Wes Bos

performance.

Wes Bos

But one of the highest, and we have what people are using. 67% at this time, probably It's Veet.

Scott Tolinski

I I I really like the way it feels, It's used a lot in Angular

Wes Bos

TypeScript, then we have Sunny. That's I always go for these. Right? Yeah. I do too. Yeah. So we have people dot with then it gets a little bit tricky, and and it's like webpack hell all the way down. So Yeah. Try to avoid dynamic imports which is taking the array and sorting it based on on whatever we had, but it would just every every single time, it was actually mutating the original array. So

Scott Tolinski

I think positivity is an interesting one all the time

Wes Bos

several times. And it is stable now, but there's still message between multiple

Scott Tolinski

It's it's basically the same as sort without mutating the original array. I I pretty much always just use sort, but, to sorted seems like much more up my alley considering Yeah. Most of the array methods I use are, you know, nondestructive.

Wes Bos

And a lot of those people used Angular 10 years ago, and they're still memory hungry.

Wes Bos

Rust, number 7. So Go and Rust. Yeah. 6 and 7. Just goes to show you hype and and on it.

Wes Bos

bundler HTML, CSS, JavaScript, like freaking Versus Code, Discord, just use Scott two sorted by default because you to provide a path to a specific JavaScript interpreter.

Wes Bos

are not in this array? You know? It's it's kind of annoying because you have to, like, take the 1st array and filter it down for all the items that are not in it. You have these sort of nested

Scott Tolinski

But Vite.

Wes Bos

it's all content, which makes sense.

Wes Bos

it should be, like, what's called, like, a pure function, meaning that, like, you always get the same result every single time. So dot two sorted is we had Anna Publitz on episode because a set is like an array. However, it has a bunch of really nice features around it. Right? They they can dedupe themselves.

Wes Bos

get one of these. It's it's great.

Wes Bos

Impressive.

Wes Bos

from the No.

Scott Tolinski

Yeah. But I think that was was it. Web authentication, I already built my own. Top of temporal. There you go. Yeah. I've already built my own of just, like, functions that I need. You know? So I I can't imagine that there won't be some official one. Okay. So I'm missing number 3? Yeah. Is that oh, boy. This all surprised me. I don't know that.

Scott Tolinski

Oh. It's swapping the the 2nd

Wes Bos

It's a USB a plug, so you can use any it comes with a battery bank, but you can use any battery you want. I'm I'm assuming I could just plug it into my desk here, like, hardwire it. I'm worried I would just walk away Oh, yeah. Without unplugging. Node sound. And it lasts, like, I don't know, five, 6 hours, something like that, on a single battery, which is significantly long.

Wes Bos

people will be like, oh, I've been using it for forever, and people don't realize that the bundler is is actually doing a lot of the the heavy lifting under the hood. Like, I see this with Next. Js users all the time. People are like, I've been using ESM for a 100 years, and I can use all these features. And Next. Js is still common JS. Next. Js is

Scott Tolinski

you know, coming in

Wes Bos

seen that. Man, I feel like I'm pretty dialed on this stuff too. Same. Yeah. Wow. What's the the browser support for that? which in Japanese means excellent. So that's where it comes from. Alright. So s tier, we got v v test, Playwright, But with dynamic because it's Node like Yeah. But I I don't think that you need to, like, make a, like, a choice.

Wes Bos

Angular's getting bullied in all of these things. But what are people actually using to build, like, business stuff? because, I asked Sasha. I'm like, what's the deal with people that don't have podcasts in the podcast category?

Scott Tolinski

pretty much makes using it, rendered, which is cool. When, Ken Wheeler built a React and then at the end of his talk, revealed that the entire thing was being rendered in Canvas even though the code was all React. You're just like, crazy. Pnpm rolls.

Wes Bos

I'm assuming this is used in TurboPack.

Wes Bos

just to

Scott Tolinski

the origin of the cause of the error. And I didn't use this either. I'm interested in this, but I have not used this. Their example is when they're throwing a new error inside of a catch, they're saying that the cause is of the initial error. So that way, you can it's not like you're throwing an entirely,

Wes Bos

would be significantly it was very good. Like, even, like, the basketball HTML. No.

Wes Bos

and you're just like, I don't I don't care about this next next next done thing. I just want an array of the actual values empty string, and some people were like, hey. My app

Scott Tolinski

I can't say that I've used any of these this year, set dot union, set dot intersection, set dot difference. I don't think I've used a ton of sets,

Wes Bos

Node is very close to Cursor too. I'm impressed with that. Alright. Last section we have here, which is the awards. How quickly can you guess which project will take the top spot in each category?

Scott Tolinski

Angular. You know, I think Angular gets a bad wrap. I think it's cool. I don't use it, though, so maybe c tier is fine. Angular always gets destroyed in these things, and it's just that state of JavaScript Sanity football for anybody who cares. And I just wanna say, the Lions the Lions propelled me to an epic victory Vercel. And I I'm just gonna take them ESLint Node for any of the,

Wes Bos

the highest

Scott Tolinski

Preact. Yeah. So it's it's interesting to me that makes sense because they're more niche. You know? Maybe ESLint might be used I don't know if this is true, but they might be used more at Google. I could Yeah. Xmol, you know, or or those types of things. And same with, like, Preact. Preact is one of those ones that you get into when you really need Node. And, like,

Wes Bos

2%.

Scott Tolinski

community.

Scott Tolinski

Okay. So in that case, I will say

Wes Bos

Which ones did go up, though? Yes. Velcade went down by 1% Snickers,

Scott Tolinski

as as it says, it allows you to mock, is Hano. Okay. So close. So we you're missing number 4 and number 2.

Wes Bos

what's the new CSS?

Scott Tolinski

H t m x going down by 11%

Wes Bos

Astro.

Scott Tolinski

then it's like, oh, that's the limitation. I think it's great for what it does, but I'm not surprised that people initially might try it and be like, oh, this is really cool. And then they hit the the, oh, wait.

Wes Bos

build tools, config,

Scott Tolinski

moment

Wes Bos

about backwards compatibility, or most used libraries? So almost call these, like, utils with the graphics card on the server. And somebody built there's a YouTube video. Someone built a, like, a Spotify UI clone

Scott Tolinski

down

Wes Bos

heat the entire vest, including the collar. And I at first, I was like, oh, yeah. I've seen them before in, like, the Home Depot or whatever. I'm like, yeah. It makes sense if you're a trade. But, man, sitting at your desk, you're a little bit chilly, or if you just run around shoveling snow or whatever, but I don't know if that's Preact number 6. Number 4 is Svelte.

Wes Bos

I'll just make this a server component. I know that it's not the same thing, but I think server components are close enough, JS a little bit overwhelmed or or burnt out? Or Maybe Astra's eating them. I don't know.

Scott Tolinski

So up until 2023,

Wes Bos

Eliza is number 7. That's like a like a Hano alternative. Right? And then, like, there's probably like, Nitro is on there as well.

Wes Bos

Nailed it. 31%.

Wes Bos

the ability That's great. There also is there's a couple more, things we didn't go through here on resources. You can see,

Scott Tolinski

And, anything else to add? I got nothing, man. Wanna get into sick pics and shameless plugs. I know it's been the holiday. So Yes. Probably a lot of stuff happening.

Scott Tolinski

I mean, you are throwing a new error, but you're saying it originates from this other error, which I think is interesting. Yeah. I definitely need that because

Wes Bos

and seeing if things are are inside of each other. You might not be working on on these types of apps, but anyone who's doing, like, environment detect if something is falsy. And the difference between null and undefined and falsy values is that,

Scott Tolinski

Programming languages

Wes Bos

like, RPC and an entire theme and Gatsby, one of the lowest.

Wes Bos

and and that's that's how you Is this a meme, or is this an actual, like That's more info. Too. The Wes. Yeah. We need to do a CMS episode.

Wes Bos

shouldn't be mutating your original data unless you explicitly want to. So use all of the immutable I think I think as these processors get faster like, it's

Scott Tolinski

Super Mario Party to use. But then when I need to do certain things, certain client side things, if I'm not just loading, like, HTML from a server, not so much fun, in certain situations. So,

Wes Bos

courses and and newsletters.

Scott Tolinski

So let's get into front end frameworks over time and whether or not,

Wes Bos

in the podcast category.

Scott Tolinski

Fastify JS number 3. I I'm surprised with that. Yeah. Number 2 I'm gonna say number 4 is Node

Wes Bos

Angular.

Wes Bos

half the time, like, you you get a stack trace, and the stack trace is showing you where the error was logged. And it's like, no. I wanna know where the error was was initially thrown. I know you caught it so you could provide some nice 91% of people

Scott Tolinski

write in that you can.

Wes Bos

Map or mesh. I forget what the word is for it. But, yeah, here here's basically So this this is what I'm really interesting in JS, like, how many people are actually using these other 2 Have I got one for you? I hit them all. It's it's not a not like a like a a slight about it, but I think it's just that that happens. When things get so big and and and older, you start hitting these little you can use the double question mark to sort of provide a fallback.

Wes Bos

Wasm. We used Wasm on the syntax side. I used it for text recognition.

Wes Bos

Here. I guess I could open it here. Can I use 98%. Yeah. Just barely. Highest interest awarded to technology

Wes Bos

stuff inside of DaVinci Resolve, It Yeah. Grinds to a halt. And I I might like something that does not do that. Isn't it cool how JS technology gets better at Scott point, I guess, yeah, we're we're happy with it. It it's good enough. But now we're like, oh, what else can we do with it? You know? Like, what video stuff that you was never possible before without a

Scott Tolinski

I need to watch it 3 or 4 more times before I, like, reach for sets every time, and we've talked about them enough on this show. But it's one of those things where, like, my brain just doesn't go there enough. You know? How about you? Yeah. Stop yourself. Next time you make an array, stop yourself.

Scott Tolinski

positivity in 2016

Wes Bos

is while people are are sort of tired of it because it's server by default, I think it's a awesome way. I do think it should have been the opposite, Beautiful.

Wes Bos

and Alpine Nitro number 2 I actually didn't. So I did a I have a YouTube video where I had, like, multiple

Scott Tolinski

most of the things I work on could probably be either way, but it matters more to me in terms of, like, data loading. Like, where is the data living? How is that data being loaded? Is it,

Wes Bos

what? you think it looks like you're using ESM, but you're actually not. What I would like is top level await support

Scott Tolinski

Geolocation.

Wes Bos

FM on YouTube. Is that what it is? It's Syntax FM on YouTube. Yes. It is. Beautiful. Alright.

Scott Tolinski

Yeah.

Scott Tolinski

By a long shot, it's number 2. It's, the the next one, Fastify, is only a third of the respondents that said Wes. And then number 4 is masking,

Wes Bos

Yeah. Those are probably the 2 biggest one. Right? It's slow, and I hate having to fuss with it and and and make it work. Alright. Let's talk about libraries. I'm gonna ask you a guess. Can you name some of the top also in there. So I've been moving my site to Next. Js, and I've gone back and forth from is, gonna be handy for that. Async features. You know, number, And the reason I didn't do that is because I'm I'm using Next. Js, and I need, like, a listing of all the blog posts, like, initially. Right? So what I do is I run a big loop,

Scott Tolinski

So definitely Svelte and View passed it in terms of positivity.

Scott Tolinski

B tier. Let's let's pick a couple of our our favorites from from the b tier. Turborepo. Surprised that it's in b tier. You know what? I resisted using Turborepo because I just felt like I didn't need it. Like, what is this doing for me? And then I used it. I'm like, oh, wait. This actually solves

Wes Bos

Number 1, Number 12 at 5%. I think that's

Scott Tolinski

2024.

Wes Bos

tabs, that AI. I think Astro, PNPM, ESBuild, They don't share between the 2 of them as a singleton. There's just, like yeah. Edges. Lots of little Yeah. Because you parse that, and you hope it's there. Right? But you certainly should also if you really wanna be type safe, you should also check that the data looks like you what you want. Totally.

Wes Bos

I I would go as far to say

Scott Tolinski

Yeah. Okay. Cool. Alright. Let's do back end frameworks. What do you think is number 1 here?

Wes Bos

is is pretty killer Logical feature that the browser has. Like, I get I still get comments every single day on some of my videos about CSS grid being like, so it's tables.

Wes Bos

in terms of It's something you've used, and I think something that you're a fan of. Something I've used and I'm a fan of. It's for type methods

Wes Bos

server components.

Scott Tolinski

That's fun.

Wes Bos

can visualize the the depth of things, which is

Scott Tolinski

people like them are using them. There's different categories on this for usage, awareness, interest, retention, and positivity.

Scott Tolinski

So you know what it's funny is that in the other pain points, the number 1 was React issues. And I do wonder, you know, how many of these issues are

Wes Bos

Oh. I thought you were using Broadcast. Yeah. Because local storage is shared between between tabs. Right? Yeah. Alright. Node. Alright. Haven't.

Scott Tolinski

It's something that has been around, obviously, not as long as requests

Wes Bos

Yes. Angular meta framework. Oh, yeah.

Wes Bos

Alright? And I wonder if they're intentionally both purple because Astro's run times do you use regularly

Scott Tolinski

but not directly. I've used a library that used WebGL,

Wes Bos

can be run dot ts, you can just put the,

Scott Tolinski

up until from last year. Went way up. Wes way up, which is not surprising because Astro JS a delight in a lot of ways. And it's Mhmm. And Astro JS one of the only ones doing things different enough where you're like, oh, this is interesting. But that's just usage. If we get into positivity,

Wes Bos

will store the start and end positions switch

Scott Tolinski

Yes. A lot of fun. Yeah. Cool.

Wes Bos

basis of methods on an array.

Wes Bos

a a USB battery bank.

Scott Tolinski

I know you you've talked about it before.

Scott Tolinski

dialogue elements, all kinds of stuff. With the library, Yeah. Maybe. I used top level await this year. It's not super well supported. It's kind of obnoxious sometimes. It causes Safari to lose its mind. I will tell you, there is a long standing bug about Safari and top level await, and it's just like

Wes Bos

Wes written in.

Wes Bos

That's good. Alright. Check out the Syntax YouTube channel. We are posting videos 3 d visualizer

Topic 1 02:26

Syntax features - nullish coalescing, dynamic imports, private fields

Wes Bos

85% developers are most interested in learning once they are aware of it.

Scott Tolinski

Dynamic imports, surprisingly, a lot of people using dynamic imports, which I don't find myself using that much for some reason, even though I thought that I would before dynamic imports are a thing Wes, that import is a a way to do a a non static import and and, in fact, you're doing the import Isn't it,

Scott Tolinski

and several others are are also faulty, which is often not what you want. So Yeah. Knowledge coalescing seems like almost everybody's using it, which is really cool. Yeah. I like knowledge coalescing. I like to use it. The you know, I do find myself oftentimes just doing the double ampersand instead, but I I do use knowledge coalescing.

Wes Bos

of people using nullish coalescing Pain points in,

Topic 2 00:33

Sentry helps fix errors and performance issues

Scott Tolinski

any of the the the folks in the league who are listening to this Node, so thank you. Alright.

Scott Tolinski

I won. I won the whole thing. I won the championship. I won the playoffs. I never get anything other than last place in Sanity football, was great. I didn't need any of this. You know? I got enough stuff to do at work, then have to fuss with all these these changes.

Wes Bos

errors on your website, any performance, Angular.

Scott Tolinski

Yes. Tell me. Yes. I I know you don't care about fantasy football or football for a genre, but let me tell you. Thing I would like to hear about. I would rather play a board game. I don't think the audience cares either. But I just wanna say, for record here, I am terrible at Sanity football. I lose every time, and I lose specifically because I only pick Detroit Lions. Well, let me tell you. I joined a Sanity football league with, like, Ken Wheeler type craft, you know, Ian Landsman, Adam from Terminal, a bunch of, JavaScript dudes,

Scott Tolinski

and

Scott Tolinski

libraries. Sorry, Wes. Yep. Before we get into the actual state of JS, can I tell you about the state of JavaScript

Scott Tolinski

and I just wanna take this second to say I won the whole dang thing. So that is the in Svelte for 1 more iteration, or I'll hold out until they get rid of the notch. The first one without the notch will buy.

Topic 3 00:00

Transcript

Wes Bos

Welcome to SyntaxToday. We've got the state of JS, the state of JavaScript. This is a survey that goes out every single year, and what we like to do is kinda go through it and get an idea of where is the industry at. It's always interesting to take a look at,

Share

Empowering developers for over 286197014581 milliseconds!