about 5 years ago Syntax Podcast
ShopTalk x Syntax
- 00:01 Intro to podcast episode 374
- 02:07 Guests introduce themselves
- 03:26 Discussion on being fans of each other's podcasts
- 04:16 Wes and Scott aim to get people excited about web development
- 05:24 Scott's background is more CSS/HTML than JavaScript
- 06:45 Even HTML has a lot of depth to discuss
- 08:23 Scott building Level Up Tutorials site in SvelteKit
- 10:32 Stack: SvelteKit frontend, Fastify backend, GraphQL
- 12:02 Impressed with SvelteKit developer experience so far
- 14:08 Wes likes using Next.js recently
- 15:03 Next.js becoming a stable platform
- 15:42 Stack: Next.js, React, GraphQL, Keystone CMS
- 16:40 GraphQL avoids repetitive code of REST APIs
- 17:32 REST won't completely go away, URLs won't die
- 18:21 KeystoneJS provides nice CMS on top of Prisma
- 19:48 SvelteKit very fast due to Vite build tool
- 20:33 Astro seems interesting for SSR, components
- 21:24 Lots of great options currently in JS ecosystem
- 22:03 Next.js will benefit from React improvements
- 23:26 WordPress lacks dev experience of JS stacks
- 24:05 Sentry sponsor spot
- 25:09 Prismic sponsor spot
- 26:36 Generated GraphQL helps avoid React query boilerplate
- 27:43 Keystone provides good permissions model
- 28:37 Permissions important but difficult to implement well
- 29:53 WordPress is still a good system for many sites
- 31:27 Working on WordPress can be limiting after using modern JS stacks
- 32:40 Speculation on why WordPress acquired Day One journaling app
- 34:29 Goal of podcast is to help understand the world of web dev
- 35:25 Important to learn new tech occasionally for career growth
- 36:16 Don't adopt brand new tech too early
- 37:07 Vue.js shoutout
- 38:22 Chris exploring Astro for CodePen use case
- 39:50 Balancing not needing to learn everything but keeping up to some degree
- 41:07 Hard to stay away from web dev as a hobby even on breaks
- 42:31 Learning fatigue if feel like just another thing to learn
- 43:39 Fundamentals same across frameworks
- 44:59 Fun of new tech is syntax and improved DX
- 46:53 Full migration to Next.js eventually for CodePen
- 47:20 CodePen too big for static site generation
- 48:04 Possibility of just editor section in Next.js
- 49:35 Next.js provides server rendering at sub route initially
- 50:51 Cloudinary sponsor spot
- 51:15 Transition to picks section
- 53:21 Dave's anime pick: Haikyu volleyball anime
- 55:32 Dave's other pick: Nintendo Garage game builder
- 56:50 Wes lawn care YouTube picks
Fun of new tech is syntax and improved DX
Wes Bos
rid all this stuff. You don't wanna go down the route of rolling your own server side rendering in React. We yeah, we need to get some better jingles for it.
Guest 2
No. I'd be well, that would be a whole interesting thing to think about. But, no, no. I'm I'm sticking with PHP for that for now. Yeah. But think of the the the CodePen editor, the pen editor itself, the the simple one where you just write HTML, CSS, and JavaScript, and you see the thing. That is 1 page on CodePen that is still
Wes Bos
Rid Specifically for your blog or just
Guest 2
on CodePen as far as being rewritten, knowing that it's so vitally important to CodePen that when we rewrite it, we're Gonna rewrite it with a bang. You know? And it's one of those pages also that there's some pages of CodePen where I don't really care if they're not static Sveltekit, Mercurius, Yeah. We'll get later when we when we make the whole full site react, and that's okay. It's just a trade off. You know? So, like, there's some areas of the site. This is, like, deep in the weeds, and I'll rid up in a sec. But if you go to, like, the challenges section of CodePen, you click around the months weeks and stuff. That's a, like, React router sitting there doing that routing, and you can tell how fast The page transitions are
Guest 2
That they are stat server side rendered today because it's Ruby on Rails.
Guest 2
But as soon as we switch to over to a React stack our React stack, we haven't crossed the
Guest 2
and there's some jQuery still on that page. And it's an older area of the site just because it's very, very complicated, and we, on purpose, didn't, like, port that page to the new stack as the very first thing we did with the new stack.
Guest 2
rendered by Ruby on Rails templates,
Guest 2
So it's a straggler
Wes Bos
What are you exploring next for?
Guest 2
rendered at all, like your settings page or whatever. Like, who cares? You're logged in. It's just for you. I just could care less if that's static generated or not.
Guest 2
But when something is public facing barrier of server side rendered React On CodePen. Yeah. CodePen isn't a Next app yet. So I'm playing with it because what if it was? You know? Then we would buy Like, anti Just hundreds of millions of pens, which we have.
Guest 2
and that Google crawls it and has SEO implications and all that stuff, for example, like
Guest 2
Yeah. That cannot be a div on a page. It needs to have all the metadata. It needs to have Code that people wrote so that it can be indexed and reindexed quickly and all that stuff.
Prismic sponsor spot
Guest 4
and it's all working, but it's very, like like, manual, I guess. I don't know. Like, I'm not I'm just using REST APIs because that's what it has by default. To get the GraphQL server, that's what I would need something like Keystone in front of it for. So,
Guest 4
You do need a server kind of in there in front of your database or next to your database or something.
Wes Bos
getting it to run. So it's built on Next. Js as well, really the thing that rid. Really won me over to Keystone over a couple of the other,
Guest 2
I think that'll be the the baby bear porridge as we move on in web development. Be like, yes. Static front ends are a good best practice. There's lots of advantages to them, and you should have access to a server.
Wes Bos
and they are working on getting it to
Guest 4
the like, the database stuff always gives me I I need to check out Keystone,
Guest 4
Because I what I was doing in the or I am doing in this Nuxt app is, like, just using
Guest 4
as a serverless function,
Guest 4
it's a node server of some kind somewhere, right, like, in between the database and your client? Is that kind of what it ends up being? Yeah. It it yeah. It's a node server or, Next,
Wes Bos
be able to run it
Guest 4
So but what's the deploy story with Keysight? You you have to, like
Wes Bos
on things like Vercel so you can run it in serverless functions, it'll work out. You don't have to follow all these rules, and you sorta just do this. So I really like his style. And then another one is rid. And, Noren, he's the he seems to be more,
Wes Bos
Which is pretty nifty.
Wes lawn care YouTube picks
Wes Bos
Why yeah. I need I've needed this for years. Mhmm. Myray? Rid. Super good. That's I have, like, a little function in my every WordPress install called pre underscore r,
Guest 4
at shop talk show, and syntax is at re Syntax FM. Am I right? You got it.
Guest 2
Nice. Yeah. It reminded me of the
Guest 2
Thanks for those picks. I'm gonna do a web development pick. Sorry. That's no fun, but I just happened to be what I wrote down.
Wes Bos
which makes people say it's cringey, anytime I get into and I just looked at it briefly, but I was like, okay. Like, I I get this. Like, you and the client can be editing the same thing at the same time, or you can see where the the client's cursor is. I was like, is the next step that they're gonna roll out some sorta, rid. CMSs that are built on Prisma or just GraphQL.
Guest 2
backpack topics, but then I'm like I unsubscribed because I was like, okay. Like, But they really are still all backpacks. Right? Like, there's kind of, like, a limp a limit to how much backpack talk you could listen to. And Chase Reeves is a really good
Guest 2
WordPress
Guest 4
a whole PHP object in an h one tag. I just
Guest 4
You know? Thanks, Wes, for coming on.
Wes Bos
anything, I I do the whole But currently,
Guest 2
crap to the thing to print the variable or whatever. Because you refresh the page, and it'll also output 98 lines of Stuff that the rendering thing is doing. I don't know what. But, like, I just despise having to use the command line to debug things. I think it's an embarrassing Yeah. Exactly.
Wes Bos
But, I've learned all I can learn. So the the 2 channels are Connor Ward, he's
Guest 2
Whatever you throw at Ray,
Guest 4
I I never get that. I never understand volume. Like, that's not a skill I possess, so I don't know.
Guest 2
Peace.
Wes Bos
dump it into the menu. But you gotta put it in the template, you know, and then and then look at it, render
Guest 2
But I have this like, to preface rid One of the things I hate about web development, and I'm probably alone in this, is just the command line not using the command line, but needing the command line to debug things.
Guest 2
on this thing,
Guest 2
So, like, there's this app, and this is not the only one. Because I think people like Xdebug for this reason, and there's other stuff. But this is called My Ray dot app, And I think it's it's has adapters for all kinds of languages, but for whatever reason, focus is kind of on PHP and WordPress. Oh. Just by virtue of you having it installed on your machine, Then you are when you're writing PHP, you can just type Ray parenthesis
Wes Bos
And it's so thin air, so so short, and it just looks amazing.
Guest 4
drone. Just Yeah.
Guest 2
about backpacks
Wes Bos
exactly.
Guest 4
Scott, There should be no one behind it. It's almost like you need, like, a also.
Guest 2
Yeah. Is this the guy? I can't I can't get into this again. No more backpack videos.
Guest 2
Yeah. I really don't like that. Or, like, you put it somewhere that is only, like, a 100 pixels wide for some reason. And You got a rid Horizontal scroll. You're not you're not a real developer
Guest 4
rid You're just not a real developer. You know? Oh my god.
Guest 4
ready.
Wes Bos
Kinda over that for the next 10 years. You know? Like, I'm not gonna buy another one. Sort of yeah. Sort of set. Sort of good.
Guest 2
it outputs really super nicely in this dedicated app. You know? So So if you are in this mode, you probably won't need it every day. But if you're, like, working on WordPress and need to do a bunch of blogging of your queries and crap, I had it the the day that I played with it,
Wes Bos
watering.
Guest 2
and probably put a pretag around it so that it, you know, like, has some formatting and stuff. That's unacceptable to me too. Like, oh my god.
Wes Bos
every single YouTube video out there, Rid
Wes Bos
he he's got this, like, front lawn that's like a golf course,
Guest 2
is even worse kind of in that you don't even with PHP, you don't even really have a command line. Yeah. Rid A print r
Guest 2
So it's like, you better be ready. You better be so pissed at your debugging scene like I was that You're ready to spend $50
Wes Bos
lawnmower.
Guest 2
Is that 1? Or, like, edge g Consistency,
Guest 4
Follow us, unless you've outputted
Wes Bos
Rid It's a little frustrating because they're all American, and they dump all these chemicals on their
Wes Bos
cutting, There's a lot happening in a JavaScript land right now, and
Guest 4
Okay. There it is on the Twitter's You got your own outro that you rid are required to do, Wes? Yeah. Let's Wes Wes can take it over. We just say peace,
Wes Bos
by the book and do everything a 100%
Guest 2
But we still do it. Oh, I think it's amazing. I like it. Let's just end on that. Shoptalkshow.com.
Wes Bos
Seriously? $2,000
Guest 4
thanks for coming on. Sometimes you have to buy a house in the podcast. We understand it happens.
Guest 4
but thanks for, coming on and doing this. We we appreciate it. And, yeah, thank you, dear listener.
Guest 4
Two liter. Wait. That's that's a 12 11 and a half 2 liters. That's a lot. That's a lot of ginger ale. What are you drinking? There's a lot of ginger I'm really good at two d things, less good at three d things. What do you got for us, Chris?
Guest 2
but I did, and I love it. That's it. Sick pick.
Wes Bos
I've been getting into lawn care. Something flipped in my brain. I've had a crappy lawn for my entire life, and something flipped
Wes Bos
And he's pretty cool because he's I think he's more like my Style with web development, he's kinda off the cuff, and,
Guest 2
parenthesis you know, Ray is your new console dot log, essentially.
Guest 2
Totally. Is it bad? Like, at least get some syntax highlighting in there. At least could you put some fences around errors or Something. Use some ASCII art. Do something. I hate it. Anyway,
Guest 2
this one I started listening to
Wes Bos
where it just dumps a pretag and then dumps the It's it's not I I really like, like, that it will generate all the GraphQL for you. I've certainly been in a situation before where I've Had to hand code a lot of that GraphQL stuff myself, and it gets really repetitive
Wes Bos
bag YouTuber.
Guest 2
in our it was a recommendation kind of in our Slack, and it's good. They are high good high quality videos. They talk about you put Next at the root, and it it Handles everything, but, like, you don't we don't have to do that on day 1, and we probably shouldn't because then we're not kind of, like, learning as we go and finding the edges and stuff.
Wes Bos
lawns. And just in Canada, you can't buy any of that stuff. It's just not allowed.
Wes Bos
Just consume
Guest 2
Don't leave your Ray commands in your code, though. I think they'll probably fail on production, but This is also $50.
Scott Tolinski
Head rid over to syntax.fm
Guest 2
failure of web development. I know some people probably read it like the matrix, and they just are so used to seeing it that they can see the stack trace in there, and they love it or whatever. But I'm just like, As somebody who likes UI tools
Scott Tolinski
for a full archive of all of our shows. And don't forget to subscribe in your podcast player or drop
Guest 2
Like, when you're in a Ruby and you have to print Write something like that off for a minute knowing that if I use those tools, it's gonna spit out some HTML, and the server's gonna serve it, and there's gonna be some data somewhere or something. Like, it's not gonna be so fundamentally different. I'm not
Guest 4
We'll just thanks, listener. If you're listening to this on, Syntax or ShopTalk, we just, I think, go safe for everybody.
Wes Bos
What are the important topics? Is it, like, consistency? and it's like one of the best Show is like the most listened to.
Wes Bos
over the last, like, couple weeks, I've just been consuming lots of YouTube videos. And there's some high quality channels. They're like they're like, take it seriously.
WordPress is still a good system for many sites
Wes Bos
how nice it is, and then you move like, I know that there's people that have much nicer PHP setups rid For their applications, there's a lot of Laravel developers that are really good at that, and they've they sort of look at some of the WordPress templates that I sling and think that's That's child's play. But that's that's the type of PHP that most WordPress developers are are working with. Yeah. Yeah. I agree. I have this, like, limit where I'm like, actually write a decent amount of PHP for my site, but then have is open to the public now, so I am also very excited about that. Yeah. It's pretty
Wes Bos
and then, like, I can't leave WordPress. I still have a couple WordPress sites because,
Wes Bos
Probably about a year ago, there is a prettier PHP plug in. It's not Yeah. Yeah. But, like, 23
Guest 2
dev
Wes Bos
You can't do away with it. And also, like, rid I was listening a couple of your podcasts. It it sounds like the all the new WordPress stuff that they're moving on, like, the features are becoming really, really nice. You know? Yeah. I mean, I think so. I don't think it's like, oh, it's this tried and trusty old is really, really nice.
Wes Bos
DX help. Yeah. Yeah. Exactly.
Wes Bos
Like, it it's the best CMS. There's people that love it. There's people that have sites that have been built for 10 years on this thing.
Guest 2
hammer, and I just use it because I use it, Which is you know, that would be an acceptable way to feel too, but it's not stodgy.
Guest 2
I think it's it's pretty it's pretty good these days. But what's not good is, like, Authoring PHP templates with no and nice. It's been around forever. I used to use that. That's the thing that you can kind of trust to write, like, I had a sad day.
Guest 2
moments where I'm like, but I really am not actually a PHP developer. You know? Like, I don't really actually know what I'm doing in here, and this spends so long, and there's so much of it that it needs auditing
Working on WordPress can be limiting after using modern JS stacks
Guest 4
Like, just kinda
Guest 2
My crush told me I'm stupid or whatever, and not it does it absolutely does not go anywhere except for for you to see.
Guest 4
I don't know. More more casual Whatever happens. So,
Guest 4
so you could just kinda, I don't know, bring back LiveJournal or whatever.
Guest 2
oh,
Guest 4
Oh, for Gen z.
Guest 2
So I don't know. I mean, the the literal reasoning is from Mullenweg.
Guest 4
Yeah. Maybe.
Guest 4
too much. One interesting thing this, like, WordPress news is WordPress bought,
Guest 2
and stuff, and I end up usually trying to hire out for that kinda work because,
Guest 4
Why did WordPress buy them? Well, I wonder if there it's a native app play to make blogging more I mean, the writing angle makes sense, but it's not about publishing.
Guest 2
and and reorganization if Webcap gets leapfrogged in speed by something, which is probably, I think, is kinda happening
Guest 4
acquired day 1, the, like, Mac journaling app, Which is actually pretty smooth and pretty cool
Stack: Next.js, React, GraphQL, Keystone CMS
Guest 2
after a while. Well, you both agree on GraphQL. Now you probably agree on more than that, but is that are you thinking that GraphQL is, like, the thing? Is it because it's it's it's relatively new. It would there could be something that replaces it. It
Wes Bos
Yeah. Yeah. They have Same with the session.
Wes Bos
personally have been really enjoying,
Guest 2
You know? But what do you think? Is, you know, is it is REST dead? are news, but, you know, you're not you you're not, I'm a little embarrassed to say I've never heard of it. Oh my god. The the repo is, rid Of Mongoose? That's what I use on my, There might be breaking changes, so I can't promise that, but that that's it's a possibility that Gotta Google it.
Wes Bos
And I I the API stayed exactly the same, which is awesome. You didn't have to update any of your actual code. Rid. But behind the scenes is actually
Dave's anime pick: Haikyu volleyball anime
Guest 4
and Prisma
Guest 4
But I downloaded it. My son's ready. Making games. He's 7.
Guest 2
figuring out some That's cool. And Here's here's I'll read 2 boys Who are bitter volleyball rivals in middle school join forces on their high school team to take on other schools with a vengeance.
Guest 4
and it's kind of like, you know, it'd rid Probably be in the no code realm since you're doing it on a switch. You know?
Wes Bos
Yes.
Guest 4
Nintendo Switch,
Guest 4
If you have Netflix, it's probably on, like, Crunchyroll and stuff too, but, there's a manga as well, but if you,
Guest 4
really cheese ball in the way that, like, You know, like, a whole episode will be, like, 1 single point of a volleyball game. You know? Like, he's gonna serve. He has the power serve. I must counter the power serve by using my power spike. You know? Like, it's like, all these, like, kind of, like, Mental mind games for a whole episode, and then, like, mid serve, there's, like, 10 flashbacks and stuff like that to, like, when they were boys in junior high, and they played against each other. You know? ale in there, rid But then and they're like, how many clothes can I fit in a 2 liter bottle? Anyway, so just like Good. Sick pick. Well, we should wrap it up.
Guest 4
and that's what I'm getting from it. Like, finding people's specialties, what they're strong at, what they're weak at,
Guest 4
a preemptive pick. Nintendo Garage is like a video game builder
Guest 4
and join the,
Guest 4
it's
Guest 4
So it's very sappy and silly in in that way, Discord.
Guest 4
Uh-huh. So I got some sick picks. Tell me if I'm doing this right, Wes. Ready. So my 1st sick pick is a shonen anime, young young boy anime called Haikyu, And assembling teams and
Guest 4
okay. Okay.
Guest 4
which is about the
Guest 4
and then my other rid which is sort of like a, like,
Guest 4
so it's like a game where you build games, For
Guest 4
but it's it's really good, and I will say it's really good because it's about, like, Teamwork, working on something
Guest 4
boys volleyball team,
Guest 4
That's it. And
Don't adopt brand new tech too early
Wes Bos
we just talk about The stuff that that we are interested in and that we have time to check out, rid I feel like that was worth it just for that. Scott does that where he he's got loves trying new stuff,
Wes Bos
and then all of CSS and all of HTML
Wes Bos
Like, I'm not gonna check out literally everything
Wes Bos
out there. Like, I can't. There's not enough time in the day. Rid. But and and we get, like, heck from people for not talking about Angular and things like that, but
Guest 4
Yeah. I forget to mention Amber all the time. Hi, Melanie.
Wes Bos
So,
Wes Bos
and that includes usually React, some other frameworks, The object in there, and then you you it's, like, in some, like, weird font that you're using for, like, the h one tag. Yeah. Exact
Permissions important but difficult to implement well
Guest 2
Right. And and the trick then is to because you then if even if you could pull off all those features, Did you do a good job pulling off those features such that they're they continue to be understandable
Guest 2
The DX I have set up that's just given to me on the next site. And to to compare the DX, but I have worked a long time on trying to make better on the WordPress side and have be so poor. There's no prettier for a PHP. There's no live reloading. There's no They'll keep the camera clear. Thanks, Dave. Wasn't prepared for that one. Say I'm ever prepared for what you're about to do at the beginning of a show, but that was a good one. We got a we got a we got a was it a wrestling reference because we're gonna invite 2 other to the ring. Oh, yeah, brother. It's connected toe to toe, head to head, 360
Guest 2
You know? Or is it just a, you know, 10,000 if lines or whatever? Have you ever and, Wes, just to switch gears a little bit because you you had to all talk about WordPress a little bit too because, like
Guest 2
It's funny to work, like, all day and next and then go have to do, like, a little bit of work on a WordPress website and compare So it's gotta have a Node server behind it. Site with a 100,000,000 pages.
Guest 2
Working on that side. And it's not, like, awful. I get used to it. I get it done. But isn't that funny that it's, like, this platform that's, like, can't do you think it will get there? Do you think anybody's even rid trying, or am I just behind the times?
Guest 2
Active sites that I work on that are literally in WordPress, and I am, like, happy about that. I think they do a good job, and I think it's the right technology for the job a lot. Although,
Guest 2
there's all this stuff that just sucks
Guest 2
and extensible and,
Full migration to Next.js eventually for CodePen
Wes Bos
But still, like,
Wes Bos
re It's it's tricky.
Wes Bos
we did an entire show on how rid I was frustrated with it, Now is the time that I can spend an hour or whatever. And I think it's fun as well. Like like, don't you feel Like, learning something like Astro is just, like, renews some of your excitement for web development?
Impressed with SvelteKit developer experience so far
Scott Tolinski
I I don't know if I would have said the same thing a couple weeks ago, but now I feel that way definitely. So, Wes, are you I mean, you did a thing where you used Apollo and are you kind of
Scott Tolinski
anything for you. It's not saving you a ton of time, but it is saving you rid maybe bloat in some of your files where you just end up having, like, the same thing you find at the time. Say, oh, hooks. That's too much boilerplate. You know? Hooks were kind of like, woah. This is easy.
Scott Tolinski
So we moved off of Meteor onto the Fastify Mercurius, and then now we're ripping out the front end. So, After that, we'll actually get to iterate on some features, believe it or not.
Scott Tolinski
Woo. Yeah. And it's it's it's pretty hot. I like it. I mean, my the site's been on Meteor forever and ever and ever.
Scott Tolinski
So if I had to choose, that's a stack I've I well, which I have gotten to choose. That's the stack I went with. Yeah. That is exotic.
Scott Tolinski
inside of like a GQL function and then pass that into the useQuery hook. Rid it just saves that step where you don't have to have that live in your code somewhere. It doesn't save, like, a crazy amount of steps. It's not like, in OR. It's not it's not taking, like, doing, like, what Prisma
Wes Bos
rid React Apollo, is that your fave? Or Yes. That's that's yeah. I've I've been dipping into Svelte as well because Scott won't stop gushing about it.
Scott Tolinski
the previous way you do it with, like, Apollo or something is you would write that query, Then you'd either import it or use it as like a string,
Scott Tolinski
Yeah. It's it it feels it feels like it's overengineered
Scott Tolinski
Ready. Yeah. I know.
Guest 2
They're not hooks. They're generated mutations and stuff. Oh, what if you don't? Like, you've you've never needed to, like, write your own mutation or or, like, Change a mutation to be like, no. I don't. This generated one is not right. I want mine to be like
Scott Tolinski
the hosted CMS. Yes. So it's it's not what confusing. It's not what Prisma is doing where it's it's it's not writing any any,
Scott Tolinski
or is it Prisma or Prismic? Prisma. Prismic is the hosted,
Scott Tolinski
is doing Also, they do video too. So if you're into video or images, check it out at rid. Cloudinary.com.
Scott Tolinski
So you would still write a dot GraphQL file that is like rid The GraphQL mutation side of things, but the like, in in,
Guest 2
I wanna ask Quest the same question, but I do have one curious about these generated these generated.
Even HTML has a lot of depth to discuss
Guest 2
Yeah. Yeah. It's it's that's a that's a weird one. It's I even think it's weird that it's like, there's been no evolution to try to bring together
Guest 2
But I am curious about, like, what your current, like, date you like, if you're gonna sit down and build a website of of of significance, you know, like, Scott, you're working on level up tutorials .com or whatever, like your bread and butter stuff. And maybe you could even rewrite it from scratch. Like, you're Free of the existing technical debt or whatever
Guest 2
or and and both of you, really. Like, like, what's like a hot what's like a hot rid Stack right now. What would be and not because it's popular, but because you like it.
Wes Bos
Yeah. We we have notes on a show on the link tag, like like like the actual link tag. And, rid There's just so many different attributes, and it does so many different random things.
Scott Tolinski
I am currently rewriting the entirety of the front end of level up right now
Guest 2
scripts and CSS? Like, why are those 2 different tags? You know? You know, I had a day the other day where
Scott Tolinski
Just just a timely conversation or question because,
Scott Tolinski
Mostly just because I I tried it,
Wes Bos
Yeah. Yeah. That's true.
Scott Tolinski
Mhmm. In SvelteKit,
Scott Tolinski
And the and I was just like, oh, oh, crap. This is so good. I'm gonna have to do it. And then,
Scott Tolinski
This is an oddly,
Scott Tolinski
and I'm not you know, I was always joking that, like, oh, oh, gosh. This is so good. I'm gonna have to rewrite all of my rid stuff in it. And then I started thinking about it, and I was like, well, maybe I'll just hack together something here just to see what that would look like. And the next thing I know, it was, like, 3 hours in, and I had most of the difficult problems solved in it. Like the hot stuff.
Dave's other pick: Nintendo Garage game builder
Wes Bos
Did he do it right? Was that a sick Can I do it right? Evaluate my You did you did the sick pick right. Rid Double you double picked. So that's you're you're you're up there. That's a good job. Hey. Wes is up. I am going to,
Guest 4
but, yeah, anyway, that's my sick Nice.
Guest 4
anyway, so I'll probably have to make something,
Wes Bos
sick pick rid 2 YouTube channels.
Guest 4
just to get him, like, Interested, The thing when the more you use Knox, I I feel like the more you feel like, oh, I would like this to be on Vue 3 and Vite
Guest 4
Oh, I'm into that. Kinda cool. Like, just I don't know. Like Yeah.
Guest 4
Where you, like, drag little blocks around. I I want that. I don't know. Can we make that? Some
Guest 4
I want this for websites. I don't know.
Guest 4
Even from, like, a coding perspective, I I'd like
Guest 4
So,
Guest 4
Yeah. You just, like, drag. Like, you click this button. Oh, he jumps, you know, stuff like that. So,
Guest 4
Kinda build a game and just see where it's at, but I think it's a lot of reading, and so he peaces out. You know? Yeah. Can you write an if statement? as a team,
Guest 4
yeah, Nintendo Garage. So, you know and then there's, like, a whole, like, state machine for, like, making a character walk and, you know, just like Oh.
Guest 4
Wow. He has not really gravitated to this, so I might have to go ahead and and, like, But then you'd have to go back and cease and desist, like, rid 200 episodes or whatever. That would be it. Yeah. That would be a bad bad day. So,
Guest 4
I think you can. I think it's kinda like Scratch style Yeah. Oh, this looks cool. Blocks.
Fundamentals same across frameworks
Guest 2
And so then when I look at Astro, I'm like, oh, it has that too. It has that Same requirement, but look how it handles
Guest 2
There's HTML and Cores. That's all you have to know.
Guest 2
out of the box, it does
Wes Bos
and you gotta put it in HTML and listen for a click.
Wes Bos
rid the DOM and event delegation and, like, you learning all of those things for the first time is is tricky. But then once you understand that, yeah, you're fetching data, rid There's Cores,
Guest 4
Of course.
Guest 2
Yeah. But it's, yeah, but it's still Fun. Right? Like, even though the thing does kinda the same thing, what's fun is, like, the
Guest 2
static rendering. And to me, I'm like, That's what I wanted. I don't really care about the tech. I wanna make sure that the thing that I use has that.
Guest 4
90% of all the pain.
Guest 2
data fetching. Wow. They made that like a first class citizen. They made that a very primary thing of how they do rid Oh, that's nice.
Stack: SvelteKit frontend, Fastify backend, GraphQL
Scott Tolinski
We're like with the the React version of the same thing. It would give you a React hook, like a a use, get user, or a use user hook that you then have to call another rid function that calls a function that eventually gets to your data. But this is just a a function that could either return a promise or an observable depending on what you want. Rid. And, oh, so some it does some real time y stuff? 40% less on every single component,
Scott Tolinski
rid like, the the Fastify GraphQL package, and it comes with a whole ton of stuff to make GraphQL
Scott Tolinski
to basically scoop up our our schema and spit out,
Scott Tolinski
servers a little easier. SQL server somewhere, and then it does more rid Stuff like does it, like, CDNIs your API or something? Yeah. And it gives us, like, built in support for things like loaders. Ready. So to avoid the n plus one thing that you get with GraphQL where you can end up accidentally doing a 100 database calls instead of
Scott Tolinski
Rid. And, then we use something called GraphQL code generator
Scott Tolinski
the 5 that you went to. Rid. So it has all that stuff baked in, so it made it really easy to to get going. So we have the Fastify API, and then the SvelteKit site hits that API.
Scott Tolinski
Yeah. So it ends up basically, it just scoops up our schema, scoops up our our GraphQL queries, and then rid Bits us out of function, and I just import the function and say, hey. Give me the thing. It gets me thing, and then,
Scott Tolinski
I render it either server side or client side, however I want.
Scott Tolinski
Okay. All of the mutations, all of the functions. And in SvelteKit, they end up just being a function, so we don't have to deal with, like, a React hook.
Scott Tolinski
Mercurius is basically just the Fastify GraphQL,
REST won't completely go away, URLs won't die
Guest 4
Redwood, I guess. And Mhmm. It was it was like, oh,
Guest 4
Yeah. Dave Stack,
Guest 4
ORM,
Guest 4
I'm using a lot of Nuxt. Kinda went all in on Nuxt using Prisma, Some kids who go to high school
Guest 4
you know, I think my ideal is, like, maybe nonexistent right now.
Guest 4
it it's cool. It's got quirks, But it's cool. I picked it up like learning
Guest 4
which we talked about. It's
Guest 4
basically. It's it's like but you do a little compilation step, but it's, like, a really nice, like, way to interface with your database,
Guest 4
even like a REST API or a REST database. So I just was like, this is what I want.
Guest 4
like, This it's the Rails,
Guest 4
Like,
Guest 2
No nobody mentioned Vue at all, but I know Dave likes Vue. Would that be in your kind of an ideal Dave Stack these days?
Next.js will benefit from React improvements
Wes Bos
MongoDB, But, all of the the sort of that stuff they talk about is learning about different types of grass is is helpful. Rid. And I'm I'm almost at a point now where I'm gonna unsubscribe from them just because I've, like I feel like I I get it and I don't need this to be my like a hobby,
Guest 4
should trickle down, hopefully, you know, unless you're stuck on some,
Wes Bos
or you could use I think it was Prisma. And then they basically what they did is they ripped out
Guest 4
like, I guess, Nux 2 or something like that. But, you know, Wes. Segue us into sick pics. How does it work?
Wes Bos
rid What's the data store in Keystone? What it is it some Keystone was they initially wrote their own adapters where you could either use, this is initially made by TJ Holochuck, which Mhmm. He's the author behind,
Guest 2
build server and client build server. You know? You might do nothing. You might update your package dot JSON, then it just you just get it all. You know?
Guest 2
their work under the hood, you just benefit from Naturally. Yeah. It just seems like we're in, like
Wes Bos
Their entire adapter, But, like, I bought a bag, and it's gonna last me, like, 10 years. So I'm kinda
Wes Bos
using Prisma, so you get all the benefits of, But like it genuinely comes from a place of
Wes Bos
the GraphQL and and all the rid The hosting, and it it runs on,
Guest 4
I don't know. There's a few established players right in the scene, and, you know, any benefits that
Guest 4
Like, I think, like, eventually, it'll get better. You know? I'm curious. Like,
Wes Bos
SQLite locally, which is just like a file on your computer. So, like, there's no rid Like, as, like, a tutorial creator, I'm so happy because, Oh. Woah.
Next.js provides server rendering at sub route initially
Scott Tolinski
anything you want. Here's a killer use case for Cloudinary here. You upload your stuff, you don't even worry about the size of the image that you're serving. Why? Because Cloudinary can transform it into whatever format rid. On the fly and cache it that the user can receive and accept giving your users the best quality,
Scott Tolinski
just no effort on your part, to be honest. It it's so very cool. We've been using Cloudinary over at level up tutorials since long before we started this podcast. Always been one of my favorite services. It saves me so much time never having to worry about picture fill elements or how we're gonna be serving up 8 different sizes of images for all the different formats and Different things that exist. Not only that, but you can transform your images using, like, auto detection of faces and stuff like that. There is a rid Ton of really neat little tools involved in Cloudinary.
Scott Tolinski
Now Cloudinary is the perfect place to hold all of your images, and It holds them, and it does it so nicely because what Cloudinary does is it allows you to upload your images. And you can do so programmatically, or you can Put a little scoop up URL on that image, and it does it itself. It's so cool. And once those images are in Cloudinary, that's when the magic happens because Cloudinary can transform and and make your images into absolutely
Scott Tolinski
This episode is sponsored by Cloudinary.
Scott Tolinski
smallest images possible at absolutely, making sure that these things are taken care of, and really just
Vue.js shoutout
Wes Bos
We are sponsored by Prismic, Especially, like, Moving to TypeScript and having all of those
Wes Bos
rid is going out there with this thing called slices. Slices essentially are
Guest 4
Only for Melanie.
Wes Bos
syntax. Thank you, Prismic, for sponsoring.
Wes Bos
a person
Guest 4
That's just for Melanie.
Wes Bos
and Prismic
Wes Bos
a component, meaning that you create a slice in Prismic,
Wes Bos
and let me tell you, they get it. Stop thinking about your website in terms of pages And what goes on that page? Because your client wants something a little bit more flexible. You need to start thinking about your websites in terms of components,
Wes Bos
Slice. So let me take that person data and render out the person component.
Wes Bos
Oh, this is a map slice. Now let me render out my map component. Think of building your website in terms of components and the data that is related to them, which is what Prismic calls slices. They're going all in on slices, so check it out. Prismic.ioforward/
Wes Bos
And that allows you to have all the fields. Maybe you have an image, a title, a description,
Balancing not needing to learn everything but keeping up to some degree
Guest 2
But I would say that it it does Kinda, like, depend on my mood a little bit and other things that are going on in my life. And that if what's going on in your life is, like, I just don't have the brain space for that, Then that's the part that's like, okay. But when you're in that mood that, like, this sounds a little fun actually to try it, Yeah. It does. It gets your brain spinning in this very kinda, like, cool, positive way.
Wes Bos
There's certainly lots of frameworks and one that fizzle out, but this is not one of them. So I think it's pretty easy to know, When you need it, the routing is built in. There's lots of lots of libraries available for React, which is pretty cool.
Guest 2
It does.
Guest 2
Like, you know, here I am doing me. I'm a little engineer. Look at me. You know?
Wes Bos
don't don't go. Like, we're we're checking stuff out pretty early and telling you about it, rid. But then, like, when you hear us talk about it over and over and over again like Svelte, I keep hearing about it. I'm like, okay. Now is the time. I this is something that rid is not going away, obviously.
Wes Bos
It's like it's not a terrible stretch to check out some tech. Rid No. No. It it's good for for your career, I think, to be able to check out new stuff. We we always tell people on the podcast, when you've heard us talk about it 11 times, rid Then it's your turn to check it out. You know? Like, properly. So both of those, good Good sick pics for YouTube.
Scott's background is more CSS/HTML than JavaScript
Scott Tolinski
my JavaScripting only really started heavy with, like, Angular one, really. Rid I mean, I j queried it up a whole bunch. But, you know, if if we're talking right in full apps or doing anything like that, I I wrote some backbone here and there. But For me, it was, like, always foundational
Wes Bos
I think we called it the surprisingly Big fans of Shoptalk over here.
Wes Bos
interesting world of HTML, because
Guest 2
that it's just like that the topics of, like, vanilla HTML and CSS are just Okay. Sick pics. What do you got, Dave? Tell me. Sick pics.
Guest 2
Mhmm. You could never do one. I mean, it's it's really deep. The the the amount of HTML like APIs is, I'm sure it's not quite what JavaScript is, but it's it's far. So if especially if you're not just talking tags, because tags is one thing, but attributes are all, you know, a whole other universe.
Wes Bos
rid done a show on HTML, and I was like, well, what's there to talk about? You got tags and couple attributes, and and then we went into it. We're like, holy smokes. This goes deep.
Speculation on why WordPress acquired Day One journaling app
Wes Bos
Like a building block of the Internet, and it's really cool to see automatic just, like, putting money towards that type of thing. I had no idea.
Guest 2
So back to, you know, the fact that we both have podcasts here. Dave wrote this, and I like this. Like like, you have a lot of people that listen to your show. Us, not so much. But combined, we're even bigger. You know?
Guest 2
Wow. A lot of companies do it too. This thing,
Wes Bos
Yeah. You look at,
Guest 2
re Berkshire Hathaway of the Internet, which means, like, buy a lot of stuff. Doesn't I don't I think. This is Berkshire Hathaway's Warren Buffett's
Wes Bos
Stylus and,
Wes Bos
rid. And Automattic maintains that, and they pay people to work on it. And, like like, why? I'm not sure if they have apps that use that, but, like, that is a, rid Not that interesting to a and not you know, for better or worse, just not talked about. It's stuff that, like, is constantly changing too. Like, it's It's kind of exciting. Like we did a show on HTML a couple of weeks ago,
Wes Bos
Express and literally everything in early Node. Js days.
Guest 2
rid Fun. Certainly, we do too to to have a podcast. But do you do you think about, like, what would be better for all these people? Oh, yeah. Yeah. It's kinda interesting. You get messages all the time from people who are, like,
Guest 2
He says, for many years, I've talked to anyone who will listen about my vision of making automatic the
Guest 2
thing where you just, like, buy stuff a lot. Companies. Yeah. He's like, oh, shipping liner. We'll take it. So I think the part of the idea of purchasing wasn't necessarily its Perfect alignment with the WordPress vision. It's a perfect alignment with the automatic vision, which is buy stuff.
Guest 2
What what do you, like, want for them? Like, what what is the message? What do you, like do you know? Like, I'm sure you think it's
Wes Bos
rid Like Mongoose, which is a adapter that you use in Node. It's, like, the most popular adapter to use in Node for MongoDB,
Learning fatigue if feel like just another thing to learn
Guest 4
I it just came out yesterday. So I feel like when it feels like it's another thing you have to learn, like, you're you're, like, Stuff you have to learn less goes big, that can become
Guest 2
so that you're, like, well suited to
Guest 2
demoralized. Yeah. But you're, like, really been around web a long time, and you're really smart, and you And you kinda, like, know what
Guest 4
astro experience and stuff like that, and you're just like, man, that's not.
Guest 2
necessarily. So there there's that kind of Yeah. That that's a really good Somebody else do it for you. You know? And for us, we we can't static generate it either because, you know, Hundreds of millions. Like I said, that's not happening.
Guest 2
the paradigm of what a website is hasn't changed under my feet rid
Guest 2
you know the basics. You know that some craps gotta make some HTML that goes to browsers, and you gotta put some data somewhere, and there's probably should be a permissions model or something. Right? There's, like, these fundamental aspects of web development that never change
Wes Bos
point. You can you can skill up on these things very quickly once you've done 2 or 3, Once you've been doing it for a couple years, like, the first thing I built in JavaScript was extremely hard because I didn't know what events were and,
Guest 4
That's another thing. Oh god. You know? Yeah. And it's gonna be on the LinkedIns, and you need 10 years of it or whatever, So it's like for every little change, I have to send a statically typed deal. You know? I I can't just riff on my queries and mutations. You know? Yeah. The the Keystone gives you just like an admin dashboard.
Hard to stay away from web dev as a hobby even on breaks
Wes Bos
That rid in my my brain, and I'm super into lawn care right now. And,
Guest 4
rid. I think there can be a problem when it's like We appreciate that.
Wes Bos
Rid Building stuff. Yeah. I could. It's really like, oh, I could actually build a full blown app. You know?
Guest 4
when it when it feels like it's another thing you gotta learn. Like, oh, you know what? I didn't learn Svelte, For me, they they're like all those, I've because I bought a backpack, rid. I think last year, but it was, like, thinking I would leave the house. But, they, you know, they're always like, well, it's your standard 23 liter backpack. You know, everyone knows. Like, what is that? You're putting, dude, putting ginger ale in there? Rid we we took out the server, right, like, with serverless, but now you but I feel like anytime you want that data layer, you do need
Wes Bos
I say, ah, like, now I'm interested in some of this new stuff. And rid It's true what you say about just being in the headspace for that. Sometimes you're just completely overwhelmed. You're not interested in web development at all. But then I find, personally, as soon as I have a bit of a rest from this type of stuff, I start getting that itch to check something new out. Yeah. It's, like, deep it's too deep in our brains at this point. Like like it or not, like, we all wanna, you know, have dreams about and all of vanilla JavaScript. Mhmm. Mhmm.
Guest 2
Yeah. Even when we take breaks.
Guest 2
living in the woods and, I don't know, being a basket weaver Oh, that's like, it's fun to think about other hobbies, but, like, I hate to say it. We have hobbies, and they're those hobbies are gonna draw us back Mhmm. Build and stuff. They should move to it because that's what
Wes Bos
for the entire summer, and then we take, like, a month or two off of the podcast, rest. And I slow down my work. And then every September, inject
Guest 4
and now there's Astro.
Guest 4
a
Guest 2
That's nice.
Guest 4
I think as for me for me,
Wes Bos
It's this happens, like, pretty much every summer. Scott and I, editing thing,
Wes Bos
I I get that as well when I like
Lots of great options currently in JS ecosystem
Guest 4
you know, in the new React changes that Wes was talking about,
Wes Bos
jQuery to these frameworks.
Guest 2
it's all awesome stuff. Yeah. Yeah. What are you thinking about, Dave?
Guest 4
Oh, I was, you know, I was thinking about
Wes Bos
a a renaissance right now where, you know, when everybody switched over from and we had to scrap it because they rolled out a whole bunch of new changes to making it easier.
Guest 4
Like, static builds and suspense and all this stuff. You know? I just
Guest 4
next For, like, a React project just because, like, all that stuff's just gonna get better. Like, they're gonna handle it better. Right? Like, you don't have to it's really it's really good. And, It sounds
Guest 4
Crunch your own static very it's on Netflix.
Guest 4
like, I think I would still choose
Wes and Scott aim to get people excited about web development
Wes Bos
Oh, good. Yeah. We we were actually just talking about that the other day on the podcast, how, like, we don't wanna be the rid This thing sucks podcast because there's certainly enough of that out there. We wanna be the people that are excited about Like, that would be tough. Tough. Tough.
Wes Bos
new technology and, everything we we do in in JavaScript world is sort of like, well, PHP did that, like, 12 years ago.
Guest 2
maybe a little similar to us. There's not it's not like you I mean, you do you've done a bunch of shows on just, like, Vanilla CSS stuff. You know? I just listened to the Miriam show. It was great. Oh, gosh. My god. What a fountain of knowledge. But but that's just you know, that that stuff Has nothing to do with React. Even though maybe that's a topic that learning the new syntax to some degree and seeing how much easier it is to do the thing or how well it matches some requirement that you have. Like, to me, I'm exploring things like Nuxt because runtime dot minjs line 392, and you're just like, I don't know why that That means nothing to me. I hope these dev tools stick with that. That, like, speed is so vital. I don't even think Next uses anything exotically fancy beyond webpack. In fact Yeah. They just moved to Webpack 5. Which is great, but, like, I got the perfect stack for for Scott out of there, which was full of all kinds of exotic buzzwords, so
Guest 2
and, like, praise the things that are doing well in our community and and the tools that we like to use. Yeah. And you've but you've been around long enough rid In in your the variety of stuff that you talk about is
Guest 2
that hits your show a lot because I think you both Write it a bunch and have a lot of experience in it and literally sell courses. It's like your life's work. Yeah. Sell Yeah. Stuff about it. So maybe that's appropriate that you hit that topic and center around it to some degree. I think it helps that that's our foundation too. I mean, my foundation is is very much CSS and HTML more so than JavaScript. And
Important to learn new tech occasionally for career growth
Wes Bos
there's that. And then, like, rid Also, anytime we have an episode, we'll spend sometimes we'll spend an hour or whatever researching it and diving into it, talking to people, tweeting about it.
Wes Bos
and it seems to be gaining some some serious traction. So we want to help people
Guest 2
you have to learn new stuff in a way that other people don't
Wes Bos
re Svelte because Scott's talking about it,
Guest 2
for that in a way. Like like, I wonder if you well, I mean, Scott's literal career is selling tutorials Also, so I guess it kind of goes for both of you, but
Guest 2
that
Wes Bos
Because your job is to teach it. So, like, you can't just be stuck and Yeah. Do you feel the FOMO real hard, or do you Not rid Really. Like, I I'm always excited about new stuff, so I'm always getting into it. And then I do make a point of checking. Like, this morning, last day, I've been building a little Keystone is one that I used in my last course, which I'm a big fan of.
Keystone provides good permissions model
Guest 2
you you can do a sloppy job with permissions that it's secure and fine, but isn't very extensible and isn't very Interesting and doesn't match with what people expect. I mean,
Guest 2
I was just, like, so happy. Yeah. Yeah. It's a big deal. We talk about it all the time at at CodePen, you know, because we have to I don't know.
Guest 2
I think Google Docs is whatever, like, kind of a canonical example of how what the where the bar is For permissions where you can just be like, oh, this is private, but I can make it public at the individual document level. And I can invite this 1 person, rid Or I can invite my whole team or what I you know, there's all these, like, options for it. That crap don't code itself. No. That's rid That's tough. You imagine being, like, a new dev be at Google, and they, like, sit you down and be like, okay.
Wes Bos
Like, here's, like, 40,000 lines of permissions.
Guest 2
Like, That's you know, we're busy, like or, you know, like, the the vibe was like, don't have FOMO because That's cool. So I I I was gonna ask him and you, though. Have you seen Astro? I feel like I'm a become a dev evangelist for it. It's like some next next gen stuff. I haven't, tried it out yet. I just saw yesterday that it
Possibility of just editor section in Next.js
Wes Bos
That's nice.
Guest 2
Part of a monorepo
Wes Bos
next step. Like, just that 1 page is served by Next. There's no problem with that. You can do that. Totally. Yeah. And you don't even necessarily have to use rid The routing part of Next. You can just use the
Guest 2
Yeah. But then if you click over to a pen, you know, you get the big Slow.
Guest 2
But if you're not sharing the router, then you're it's you you know, it'll be limiting. You'll you you won't This thing, like, kicks butt for it. Oh, man.
Wes Bos
Right. Nice server side rendering bits and and whatever other bits you want.
Wes Bos
so much nicer than a Ruby on Rails transition, I think. Oh, yeah. I'm on it right now. It doesn't it keeps the scroll position.
Guest 2
How you know, it's a you'd know it. It's been around forever. It's a very solid project. Right? Trustworthy project.
Guest 2
get the the smooth page transitions.
Guest 2
its own
Guest 2
You know? Wouldn't that be nice to switch over to that and have it be instantly fast because it's re Preloaded and, you know, all that stuff. That you know, that's a UX thing that where I wanna get there, and it's probably next that will get us there because it's just of how Craft Purell, Fastify.
Guest 2
Here, I'm gonna load up the editor now. Ruby on Rails app is happening.
Transition to picks section
Wes Bos
We say, now is the time where we do sick picks, which is things that we pick that are sick.
Wes Bos
M three u playlist, is that what they were? Yeah. Something like that. I think Anyway. I think Spotify is doing that with podcasts right now so that they can get rid. They can Scott and I are really excited about this type of stuff, they are
Wes Bos
Perfect.
Guest 4
Hey,
Guest 4
I dig it.
Guest 2
Fair enough. Usually, you're gonna see some desist. You won't go right to court. You know? Yeah. Yeah.
Wes Bos
Man. We've been we've been, like, needing to get a jingle,
Wes Bos
No. Which
Guest 2
Yeah. Play them in order. Go. Yeah.
Wes Bos
And I think, oh, yeah. They they detect my cut height,
Guest 2
It be nice if the audio tag in HTML took, like, a comma separated list of MP threes so you could, like, stitch together?
Wes Bos
And we I even found some guy on Fiverr that would record us, like, a Blink 182 knock off song, rid But Scott thinks we're gonna we're gonna get sued for it, so we're not gonna do it.
Guest 2
Me? I basically watch everything Dave tells me too. So
Wes Bos
rid have run into legal issues with large companies before for knocking off their logos, so maybe it's best we don't do that.
Guest 4
This. This is 1, 2, whatever you want here, 3, 4. There you go.
Guest 4
Needs a jingle. Do y'all have a jingle?
KeystoneJS provides nice CMS on top of Prisma
Scott Tolinski
It it's too fast. Yeah. It's it's it's updating before you can finish typing or or thinking. It it's it's so very fast, And, we we were, like, doing full production builds of our server
Guest 4
Rather than, like, Webpack and Vue 2,
Guest 4
js
Guest 2
when you're using a tool that has that fast of compilation, you're like, oh,
Guest 4
which I think that's all coming in Nuxt 3. But but you start feeling it as it goes, you know, and,
Guest 4
But I think I
Scott Tolinski
in the past. So, I mean, ES build to me is Which is what are you using, did you say? Oh, you are using ES build. We are using ES build, and we're just using that to compile our TypeScript, But,
Scott Tolinski
just because
Guest 4
You know, you get an error on runtime
Guest 2
Yes, please. Yeah.
Scott Tolinski
on the server side, it is it's very good.
Scott building Level Up Tutorials site in SvelteKit
Scott Tolinski
and the API is GraphQL using something called Mercurius.
Scott Tolinski
Amazing. The amount of code I'm having to write for each of my components is is probably like a good amount. Like, maybe, let's say,
Scott Tolinski
Netlify. I I mean, there's adapters for a lot of stuff, and it's still brand new. I mean, the thing's in beta, but How do they got that kind of dev muscle on this brand new thing? It's cool. I you know, begin.com, they wrote their own adapter for rid. I'd have to assume they're they're fairly trivial to get going, but I I haven't looked at any of the adapters myself. Why it's maybe it's easy. Yeah. The dev experience for it, though, is is just Yeah. That was one of the things that when I was first starting, I would always reach for the wrong one, and then you'd, oh, I gotta Google which one it is. Right? it was just that fast. We didn't have to even think about it. It was still faster than what we were doing,
Guest 2
so it's not just Svelte. Svelte, we know as kind of JavaScript framework that's an alternative to something like React review because it it's still component based. It's still I don't know. You can make a Single file click button and stuff. Yeah. But it has some it has some great stuff. It has cool animation stuff. It has cool CSS stuff. Like, I I under few people, you know, that I can't say that I Get it as deeply as you do, but that's the category of thing that it's in. So what's SvelteKit on top of that? It looks like the marketing says it's kinda like Next, first of all.
Scott Tolinski
and it's extremely effective. So we're we're using that with a, a Fastify compared to what we're working with now, though, which is CSS HTML, and that that was my bread and butter. So, you know, man, that's that's my my favorite stuff to talk about, to be honest. That's cool. Right? Because you you could imagine a a show that's, like, so newfangled
Scott Tolinski
I I presented it to some of the guys we work on on the site with and is expecting them all to be like, no. That's a terrible idea. And at first, they were like, yeah. It's a terrible idea. I was like, well, let's just let's Maybe just, like, hackle a hunt on it for a week and see how it goes. I think everybody was so impressed with it that,
Scott Tolinski
Yeah. That's really it. It's, you know, full stack for building server side apps, but what's cool is that you, like, don't have to think about the output of it. There's, like, little adapters, so if you wanna output to it, I know side mean you gotta put do you have to put node behind it or no?
Scott Tolinski
Server to power our API,
Scott Tolinski
You don't have to. Rid. They they have these things called adapters where you just install an adapter and say, hey. Give me the Node adapter, and then it spits out a Node app. Or give me the static adapter or the Cloudflare Workers adapter, whatever you want, and you can basically output to any of those. What? There's a Cloudflare Workers adapter that rules.
Cloudinary sponsor spot
Scott Tolinski
So check it out at cloudinary.com.
Scott Tolinski
Use the link in the show notes.
Scott Tolinski
and let them know that you heard about Cloudinary from Syntax. Again, this is the perfect place to edit, transform Any of your images, whether it is for performance or personalization.
Guest 2
Okay. I talked about myself enough. Maybe we should do sick pics.
Scott Tolinski
Use the link in the show notes,
Intro to podcast episode 374
Guest 2
For web developers, I think I have that right. But it's mister Westbost and Scott Talinski. What's up, guys? Thanks for coming on the show. Hey. Yeah. Rid Thanks for having us. This is gonna be exciting little crossover episode.
Announcer
You're listening to Syntax, the podcast with the tastiest web development treats out there. Strap yourself in and get ready. Here is Scott Talinski and Wes Bos. Everybody,
Wes Bos
thanks for tuning in to the show. This is me cutting in after. We did a little collab with the folks from Shop Talk, So shout out to Chris and Dave for doing that. I think it was really cool. We are sponsored today by Prismic, Century, and Cloudinary. We'll talk about them partway through but enjoy the show.
Guest 2
you're listening to another episode of the Shopify Show with Dave. Rupert.
Announcer
You're listening to Syntax, the podcast with the tastiest web development treats out.
Guest 2
East versus west. Yeah. Canada versus America. React versus view. Okay. Well, sorry about that, everyone. But this is a crossover show a very exciting one zero one that's been taking too long for us to get going, but we got it going now. We have the fellas from Syntax on another podcast with the tastiest treats
Guest 2
Chris, rid degrees.
Guest 2
This is Dave Rupert. You're listening anything, really. You're you know, you've it seems like you do a lot of work in React. Maybe, Scott, you're doing a little more these days. But they're you know, that's, like, modern that's what the front end development kinda is these days, like, or not. So you don't you don't you don't, like, talk about it like it's this newfangled thing. You talk about it, like, rid The reality that it is, which which which I appreciate.
Announcer
Strap yourself in and get ready. Here is Scott Talinski and Wes Bos.
Generated GraphQL helps avoid React query boilerplate
Wes Bos
they have a really good, we rerecord
Wes Bos
So
Wes Bos
rid Like auth and and permissions,
Wes Bos
or or how you build your app, it's just like a an actual CMS. So it has, like,
Wes Bos
ones that are out there, which is there's tons of really good ones, is the and then I'll have a pretty good idea of the, like, surface area of this topic. So,
Wes Bos
You can upload files, make your own custom inputs. It's like a like a CMS that sits on top of Prisma. That's cool. It like, that's pretty much what it is. It's not like a it's not a front end thing. It doesn't care what your front end is,
Wes Bos
way to sort of manage access to things. Like, you should be able to create
Wes Bos
something, but you shouldn't be able to update that. Like, you should be able to create an order, but you shouldn't be able to update how much you paid for that order. Right? There's all these, like, rid Little nitty gritties. And, like, permissions is such a slog. And if you screw something up with permissions, you could potentially be opening up a major security
Guests introduce themselves
Guest 2
honored. Yeah. If you end up this, I it'll be awkward that I welcome you to our show because, really, it's not the same. We'll welcome you. Thanks for coming on the Syntax podcast.
Wes Bos
I I pushed a couple updates here and there, but, Wes is the real powerhouse rid that website. Oh, you guys have a nice website as well. Haven't you guys redone it, like, a couple times? And you've been doing it. Like, how long have you been doing a podcast? We just constantly do it. Rid That's gonna be I I know because I've written a couple times. It's gonna be 10 years in January, so we're at nine and a half years. Yeah. I remember listening to shop talk at my 1st dev job.
Scott Tolinski
Welcome to Syntax.
Guest 4
I think every week,
Guest 2
It's it's my great pleasure and honor to be on the show.
Wes Bos
So,
Guest 2
rid of web development podcast. I'd say they have, like, a nice website and stuff, and they record more often than we do. So it's just kinda better, I'd say.
Guest 4
Yeah. It's 10 years flies by y'all, so it's fun.
Guest 4
Right on. Wow. Sweet. That does not make me feel old. It does.
Guest 2
I think there's a lot of crossover listeners between our 2 shows, but if you didn't if you've never heard of these fellas, head on over to Syntax FM. They do, they're the they're the
Scott Tolinski
I think Wes gets all set up for the nice website.
Wes likes using Next.js recently
Wes Bos
all the apps that I've built rid. And and kind of the stack that I like is, Yeah. They've got, like, a, like, a drone and, like, a little, like, a cut sequence coming in of the guy cutting the lawn Okay. This thing is gaining some momentum, and it's becoming pretty stable.
Wes Bos
are coming down the pipe when we get the Rack server components.
Wes Bos
But, like, it's it's becoming a nice stable platform.
Wes Bos
It's nice that you can just dip in and get serverless functions
Wes Bos
is Next. Js. It it seems to be coming pretty stable these days. Like, they just announced Next 11 a couple days ago,
Wes Bos
big changes. I think the the big changes that will come
Wes Bos
And I see I see where he's coming from. It's like I'm I was just working with it this morning, and I was like, oh, yeah. Like, there's just little things like the Templating and working with forms and the API
Wes Bos
and there wasn't any, like, fundamental
WordPress lacks dev experience of JS stacks
Scott Tolinski
Well, that's the type of bug that hopefully your system will catch. This is just a purely hypothetical situation, not related to this episode at all. But let's say that type of situation were to happen, well, hopefully, your error and exception handling system is handling this, and I'm talking about Sentry, which is who sponsors this episode. Sentry is the perfect place to capture all of those errors and exceptions and make sure that everybody's on the same page Potentially when they're closing on a house, that would be really great. And I really wish that some people were using Sentry for that kind of thing. So head on over to Sentry dot I o. Use the coupon code at Hasty treat, all lowercase, all one word, and you're gonna get access to Sentry's just absolutely famous for their their quality tools
Wes Bos
Like, there's none of that. It's just here's a file. And, also, if you wanna give people starter Don't necessarily feel too too much FOMO. I feel like we do a pretty good job at keeping up with what's going on. But even then, like, I was tweeting about Salt yesterday, and rid. Someone quote tweeted it and was like, I've been talking about it for 2 years, and finally, Wes is is taking a look at it. And I'm like, okay, bud. You know?
Scott Tolinski
Nest does something on a website, and the scheduling for the house happened 2 hours earlier.
Wes Bos
like, then there's that one left to go to this thing. Sign up for a rid Sudo, npm. Don't put your credit card in.
Scott Tolinski
Data. You just give them the file, and there's all this data in it already. Oh, that's awesome. Yeah. This episode is sponsored by Sentry. Let's say this is a purely hypothetical situation here. But let's say, you are closing on a house and, the person who is supposed to schedule that,
GraphQL avoids repetitive code of REST APIs
Wes Bos
I I don't think REST is dead. I, like, I still reach For just popping a quick endpoint in. If I have a Next. Js app
Wes Bos
and I want a serverless function, I'll just make a new serverless function and then rid Just dump the JSON a couple other pieces of information about that. And then from Prismic, you query all of your slices. You can loop over the slices, and you can say, alright. Well, this is a,
Wes Bos
Yeah. Indeed. Look. I don't know. Like, I I think GraphQL is is
Wes Bos
like server rendering? You you might just start be seeing people doing SQL statements right before they render. The good old we we were joking on the last podcast how, like, We're sorta
Wes Bos
from that. And, I think especially if we start seeing a bit more of a swing back to,
Wes Bos
definitely for a big project, that's That's the way to go right now, but I don't think REST will go really anywhere. And it's just a URL. Right? It's not like URLs are gonna die.
Chris exploring Astro for CodePen use case
Guest 2
covered in guilt all the time for not coming up with stuff. Overall, I think it's a good message. But then I looked at my day, and I was like, you know what? Like, That could, like, maybe lower the cognitive load of this this code based kinda thing.
Guest 2
it wasn't that much of a stretch for me. It wasn't at Odds with anything else I was doing to have a look at some technology. You know? Like, I think there's a little bit of balance there that says, like, I don't think you the the message is right to Tell people, like, never learn anything. Like, don't worry about it. Just use your existing tools.
Guest 2
dev work on our regular stack and just knocked out stuff and wrote documentation and closed tickets and answered emails and did all that stuff. And then I was like, I'm gonna do something different. And then I played with Astro for, like, an hour. You know? And then I probably went back to some more normal work and went home for the day.
Guest 2
looked like I got into work at the normal time, and I, like,
Guest 2
Did some serious
Guest 2
And it would happen to be a day where there was some definitely some Twitter vibe of, like, We can put next at a subroute,
Guest 2
my day as a whole
Guest 2
you don't have to keep up with this And I kinda like that message overall. Like, that's okay to be telling people that you shouldn't be
Guest 2
you don't have to learn new things.
Guest 2
With this Apollo thing, this is the one I'm excited about recently, and I'm, like, almost, like, looking for excuses to use it because I think it's so cool.
Astro seems interesting for SSR, components
Guest 2
Server side rendering of some kind, you know, if it's Yeah. For the for the content y parts. So I need that, but Nuxt already has that. Rid. So Yeah. It's I I feel like we're in a a bit of
Guest 2
move a create react app to Astro, it's gonna be a bunch of work, but probably not As bad as it seems. I don't know what it would buy you over next because one of the advantages that it builds this, like, static HTML, right, which is a big deal to me. I'm not gonna launch NoSite without Rid Yeah. So that we could just find and replace in your website. Like, oh, the 6 pic thing, just remove that from that thing. Yeah. That's actually not a bad idea.
Guest 2
you just can. You know what I mean? Like, you don't have to learn all this new stuff. Like, The Dot Astro components are cool and our JSX also and have some, like, cool superpowers,
Guest 2
but, like, it you can just I think porting won't be so bad. Like, if somebody really wanted to
Guest 2
Like, even if you just like JSX and just wanted to stay and react,
Next.js becoming a stable platform
Wes Bos
because they have Production ready. And, like, I I tried it about a year ago, and it, like, blah. It, like, it literally broke the code. So I was just like I was that's I was like, man, I am so spoiled by this, like, JavaScript stack,
Wes Bos
They just announced this, like, real time
Wes Bos
rid both like a data layer for React as well as, and $40,000
Guest 2
Rid It's nuts. I I I hate to admit how much I like Next, but it's just so good, isn't it? It's so good. I the only thing I wish that they would do is, real powerhouse of
Guest 2
some sort of CMS of, like, a client editing. Maybe. You know? Isn't it interesting how Netlify I never got into data, really, they're like, oh, you just go somewhere else to store your data. It's either markdown files in your repo or or you're on your own.
Wes Bos
and I I kinda wonder if they're gonna do this because I wish that they would make a CMS
Goal of podcast is to help understand the world of web dev
Wes Bos
and we're gonna try to explain the stuff that we are learning and excited about. Yeah. Do you have to
Wes Bos
But kind of the like, the the side effect to that is that people buy Our courses, we can sell platform, we can sell sponsors on it. Like, that's nice that we can make money from it as well.
Wes Bos
And by tuning in once or twice a week and just listening to what we have to say, you're sort of just, like, keeping up with what's going on in web development, learning a new here and there and and finding out some interesting new things in in JavaScript.
Wes Bos
6 weeks into a coding boot camp, and they just listen to rid. 300 hours of of past episodes or or something like that. Yeah. Yeah. I think, like, at the end of the day,
Wes Bos
Understand this crazy world of web development. Things change so quickly. You don't necessarily know what everything is.
SvelteKit very fast due to Vite build tool
Guest 2
rid Everything. Like, he's written rewritten his course platform probably 4 or 5 times since we've started on that path. Isn't that cool? Like, if he does that, then he has real world experience Using it and then can make learning material about that thing, it's kind of a sickle pool bonus thing. Right?
Wes Bos
and he has no problem dropping and rewriting IP address, And then they deliver me this compiled m p 3. But, yeah, wouldn't it be cool to just send a couple m p threes down the line?
Sentry sponsor spot
Scott Tolinski
and use the coupon code tasty treat. Sign up, and you'll get 2 months for free.
Scott Tolinski
diving into your errors and exceptions
Scott Tolinski
logging, cataloging,
Scott Tolinski
in a lovely interface. Not only that, but they give you performance tracking tools as well. All the types of things that you need to know if you're running any type of web service that literally anyone is using, rid a family who's closing on a house. So that would be really great if you could head on over to century.io Yeah. There's a Vercel adapter, Cloudflare Workers,
CodePen too big for static site generation
Guest 2
So there might be a day. I don't know if this is how it will play out, but that that the editor itself is just
Guest 2
like a slash. This page is a next app, but this other page isn't still. You know? Like, that's the kinda architectural stuff that we're gonna have to face. And then maybe someday,
Wes Bos
Netlify ads that are a lot of people a lot of podcasts I listen to, they give me Canadian specific ads for, like, rid Banks and investing apps that are only in Canada.
Guest 2
build will take No. 3 days. Server it is. You know? And this is not done. You can't explore this. This is early days, But we're we are having some success with it, and then and then it becomes interesting. Like, because we're a big, long, old app, Make time
Discussion on being fans of each other's podcasts
Guest 2
What I like about you 2, among many things, though, is that you Feel very modern in what you do and what you talk about. So the topics are
Guest 4
we get a request that we should do a shop talk or a show together. So this is I I feel like we're fulfilling a lot of user requests because, not a week goes by. I don't see a tweet, I feel like. We're we're closing we're closing about 20 GitHub issues right here putting this together. Yeah. Yep.