Episode Transcript
Transcripts are displayed as originally observed. Some content, including advertisements may have changed.
Use Ctrl + F to search
0:00
Welcome to Syntax and A Run
0:02
a Taco Bell Modern Javascript tool
0:04
chain. So there's been a lot
0:07
of movement in this sort of
0:09
area lately. A whole bunch of
0:11
new tools around Linters compilers transpires
0:13
for matters token I There's been
0:16
dollars, macros, all kinds of stuff.
0:18
crazy and. It's. It's kind
0:20
of interesting as you think like a party is
0:22
a god or do we really need all these
0:24
tools? like do need new versions of them but
0:26
then. Once. You hit. One of the
0:28
issues are sometimes you have like oh yeah
0:31
I've got fourteen tools all working perfectly together
0:33
and I got my Vs code set up
0:35
with them and if something breaks I will
0:38
cry I think these new tools are solving
0:40
both speed as well as for developer experience.
0:42
So we're going in Durham. Talk today about.
0:45
What? Are these different areas of tooling
0:47
like? what? Are we? What are we
0:49
working with right now? And what do
0:51
the new ones look like? There's a
0:53
couple that are very promising, and there's
0:55
a couple that are just like. Our.
0:58
Api in the Sky people playing with
1:00
ideas that I think are pretty pretty
1:02
nifty as well. So. Identities got
1:04
a do a good I my son
1:07
is home with pink eye. Ah so
1:09
that's great Who just like you know
1:11
hoping that the pink eye does not
1:13
spread? I am so that you know
1:16
that's how it is. But an odd
1:18
things could be worse. You know there's
1:20
I think there's worse. Kids
1:23
sicknesses than paying guy may be right
1:25
leg you know, vomit involved Hager? yeah,
1:27
no fever is involved. I think. I
1:29
think we're doing okay. So yeah and
1:31
doing all right over here yet none.
1:34
none, a whole lot neuron. Not a
1:36
whole lot to complain about. And specifically.
1:39
Ah, I don't have that much to complain
1:41
about because I'm wearing all kinds of new
1:43
stuff on the syntax. You to Gen Ed's
1:45
right, were on you tube folks are you
1:47
to.com for such at Syntax Fm. Check.
1:49
It out subscribe. We.
1:52
Have a lot of content going on there and fact
1:54
Cj has been doing a lot of great videos, really
1:56
getting deep into some of the topics that we've been
1:58
covering on the show. Like Has
2:00
or He's Ah, he's gone into
2:02
it to Docker, self hosting are
2:05
all kinds of cool stuff, so
2:07
check it out at syntax on
2:09
you tube. Tooling, You
2:11
know, and. I like you mentioned,
2:13
like do we really need to lane and that's
2:15
like a big. Topic. Of conversation
2:17
especially. I'm like tech Twitter where people
2:20
are always like Ollie Torr. They're making
2:22
my life miserable don't let to. And
2:24
I mean they're They're all fine, but
2:26
like. Sometimes. You know,
2:28
it's like the way I think about tooling in
2:30
the in the javascript ecosystem is like. All
2:33
right, we're Cottonwood, right? That.
2:35
Is a hands are gonna do just fine. Your hands
2:37
I will do the job. That. May
2:39
not do as good of a job. The end
2:41
result might be a little bit sloppy or ah,
2:43
it's gonna take more effort. And.
2:46
You know sometimes it's it's worth it to
2:48
go on. Have delivered a pain of researching
2:50
which circular saw you want and are finding
2:52
out the correct one and then just. Cheap,
2:55
nice, clean cut. so I mean
2:57
I think the tooling is worth
2:59
investing your time in to. And
3:01
like you also said about there
3:03
being new tools, right? well be.
3:05
I never know exactly the pinpoint
3:07
of your tools until you try
3:09
the new thing in the do
3:11
saying is hundred times faster. I
3:14
remember. In. The meteor days I
3:16
was like meteors build process is sas
3:18
know why would anybody complain about this
3:21
and then I'd read something house and
3:23
it was way faster and then I
3:25
tried meet eventually years down the road
3:27
and I'm. I. Can't
3:29
even take one step backwards from the
3:32
eat. Everything is so much faster. Nicer
3:34
was eat. I'm never going back to
3:36
Web Kid. I'm never going back to
3:38
my black or the at a Web
3:40
pack. Yes, I'm never going to back
3:42
to a giddy. They're never going back
3:44
to Web Web Pack a a hand
3:46
doing any of that stuff. So. Yeah,
3:49
that the tools. You
3:51
don't need need them, but they
3:53
can make your life a little
3:55
bit easier every step of the
3:57
way. Even the I do added
3:59
in. The mental amount of pain as you
4:01
go. I. And I also
4:03
think that. Yeah. The new tools
4:06
or little bit trickier to get set
4:08
up, but I also think that by
4:10
the time that the masses adopt them,
4:12
they become. Dead
4:14
simple like you think about like disease.
4:16
Like you don't set up the easy
4:19
to just run V and as it
4:21
at Html file and the whole thing.
4:23
rather there's no can say yeah you
4:26
can get into In can take some
4:28
stuff but it's largely can say glass.
4:30
you're not really installing a whole lot
4:33
of stuff. Detail and for stuff is
4:35
there's there's no can take file, it's
4:37
just it just works. And I think
4:39
that that's where a lot of these
4:42
tools are sort of gunning. For as
4:44
well as that, it just it just
4:46
works is really simple and that's it
4:49
makes the developer experience really really easy.
4:51
Because if you think back to light
4:53
like eight. Six. Eight years ago.
4:56
We. Were right and. Grant files
4:58
or web pack of figs that were.
5:01
A sundress and hundreds of lines
5:03
long for every single project. And
5:05
now I look at some of
5:07
my. My. Projects and it's just.
5:10
Like a like Mpm can vague,
5:12
you know, and that's not true
5:14
for absolutely everything, but it's It's
5:16
certainly getting that way, especially as
5:19
we sort of standardize on a
5:21
lot of these features are. yeah,
5:23
Under Features, yeah, Sam Css and
5:25
and I did that. That's a
5:27
whole thing for me, is he
5:29
guess I? I started out with.
5:31
What? Granted and goal been all those your
5:33
writings and sags and then I get good a
5:35
meteor were there was no conflict whatsoever even to
5:38
install packages you just added a string to a
5:40
file in Meteors build to was like oh
5:42
there's a changes file let me go get their
5:44
package for you. Yeah so when I saw people
5:46
using web pack in you have these like. An.
5:50
I don't know A massive concede
5:52
fall that's either. Ten feet long
5:54
and install. These devalue my legacy
5:56
loaders for absolutely every file type.
5:58
This is the wrong. Erection folks
6:00
I like I did not understand that
6:02
at all. Softening flag out to avoid
6:05
must have that us most folks did
6:07
come from can say configured vague and
6:09
things have gotten easier Been only things
6:11
getting easier conflict wise they're also getting
6:13
way faster in so what kind of
6:15
stuff controlling do for us? You mentioned
6:18
all these different words right? But I
6:20
gotta dig the core way of thinking
6:22
about the tooling here as they make
6:24
your code smaller, they make your code
6:26
look nicer, they may get run better,
6:29
they make it easier. To work in Did.
6:31
That's really what this tooling is doing for us?
6:33
It in those also my positives to me at
6:35
the end of the day and in. Like he
6:37
said, there might be some pain here and they're
6:39
getting this stuff up and running. but. In.
6:42
The pain is worth it if the
6:44
end result is that your process is
6:47
that much nicer. Totally. I
6:49
yeah big big fan of of all kinds
6:51
of death tooling and I'll on the type
6:53
a guy who are find the latest tooling
6:55
and just toss it in there are it
6:57
it's not ready yet or come back later
6:59
he know totally. At what will
7:01
let you know when they're when they're ready. yeah
7:03
you could think of. Syntax is like the. Timer.
7:07
On your microwave you're cooking a pizza and
7:09
your and that ready yet? We'll we'll let
7:11
you know where will they be be. Beep!
7:13
Aren't known to have to figure out which
7:15
I which of these tools to you? so
7:18
let's talk about some the existing tools that
7:20
exist in our workflows to day one Big
7:22
one that a lot of people did using
7:24
for a long time is Linters. Linters let
7:27
you know where this potential mistakes were, potentially
7:29
issues within your code or even just. Like
7:33
quality issues are potentially.
7:36
Accessibility issues and potentially of for
7:38
manning issues in some sort of
7:40
ways and Linters are. These.
7:43
People undergone some changes we had like J
7:45
As Hand and Jazz London all the stuff
7:47
but it really feels like for the past
7:49
ten years or so rebates been really kind
7:51
of settled on yes Lint as being the
7:54
lint or of choice for so long and
7:56
only now are we starting to see competitors
7:58
to Yasmin pop up. Nervous. The priest out
8:00
down for a while. Yeah yeah yeah
8:02
Lin is at. The reason why yes Lin
8:04
is is so popular is because it works
8:06
with. Your. For Ted, Sceptre works
8:09
with Javascript. it works with difference
8:11
like babbel code, and there is
8:13
a massive community of rules and
8:16
plugins that have been written specifically
8:18
for javascript. so you can run
8:20
and run it. smell that has
8:22
gripped tags and run it through
8:25
it and it just works with
8:27
everything. There's been some pain around
8:29
the. Can. Say eggs and there's
8:31
a new yes I can say that
8:33
has come out and it it works
8:35
beautifully A A you can also does
8:38
use your old can say with it
8:40
we had Nicholas act as on the
8:42
podcast this sort of talk about that
8:44
as well. So big fan of Linters.
8:46
They cats a lot of the possible
8:48
things and I honestly say that Linters
8:50
have made me such a better Kotor
8:52
because. When you turn it
8:54
on, you get all kinds of read
8:56
squiggles absolutely everywhere, but. You.
8:59
Don't necessarily know why it's frustrating, but
9:01
you look it up a there's a
9:03
squiggle under it is a wise up
9:06
potentially a bad thing. I I made
9:08
a variable here in a saying that
9:10
it is shadowing a variable that's up
9:12
higher or I'm using a variable inside
9:14
of a react hook and I didn't
9:17
pass it in. Why is that a
9:19
potential issue with what could possibly? hats
9:21
and linters are often stopping you from
9:23
shooting yourself in the foot? An Awesome.
9:26
I've learned so many. Really?
9:28
Interesting things about how to structure your
9:30
javascript well and it's much sums it
9:32
is. Go turn the rule. loss because
9:34
I'm Mike Anderson or Transcript Works. I.
9:36
Don't think that's gonna be an issue or I'm
9:38
going to be writing a whole bottom. Bunch.
9:40
Of extra code it's just to make the
9:43
squiggle go away. And. When
9:45
that happens is like. A
9:48
Now I'm just writing code just for the
9:50
red squiggles and not for i'm actual and
9:52
users are from my own developer experience but
9:54
you learn so much stuff as he just
9:57
dive into the all these specific rules and
9:59
see why. Somebody saying that this could potentially
10:01
be an issue. Yeah. And
10:03
I I see more and more people occasionally
10:05
being like maybe we shouldn't be using all
10:08
these different lynching new framework some libraries because
10:10
they're a pain in the bite. But let's
10:12
not throw the baby out with the bathwater
10:14
because I think there is, like he said,
10:16
a lot of really positive things to be
10:19
gleaned from That in, it's not like you
10:21
can't turn the rules off that you don't
10:23
want to follow. It's breezy.
10:26
To do that inside of the can say
10:28
to sell you know you don't have. You
10:30
had to be beholden to the red squiggles.
10:32
You gotta he master? Of
10:34
our goal, say or not it here. If
10:37
anything I say go aggressive on your lynch
10:39
her at first and then sort of back
10:41
at off from their lox. That's how
10:43
I've got to my own. Yes, like convicts
10:45
is that I just went. I went really
10:48
aggressive out of the gates. And. Then over
10:50
the years I've been hitting been hitting things.
10:52
I turn them off or I make them
10:54
little bit more lax and it's like One
10:56
example is I see of a call back
10:59
with an error variable. And. It's like.
11:01
You. Cannot have like I like to have the
11:03
signature where it's like the data and the
11:05
error even if you don't use the error
11:07
and relax unused so I can say are
11:10
it won't. Allow don't allow
11:12
and news variables but allow the
11:14
news variable if it is of
11:16
the following names and that's really
11:18
nice for me. Good like. I
11:21
don't care if I have variable, it's a news if
11:23
it's an error. Sometimes I need it. I don't want
11:25
to have this change. The function signature simply if I
11:27
needed are not. Word. Yes.
11:29
Compilers as the next one
11:32
A compiler. And maybe we'll
11:34
all say compilers and transpires.
11:36
A compiler will take your
11:38
Javascript code and turn it
11:40
into. Javascript code success I
11:42
in generally what you're looking at his
11:44
you you take your type script you
11:47
think babbel which is maybe some code
11:49
that doesn't necessarily have the features just
11:51
yet in the browser that you're targeting
11:53
or in the jobs for friend time
11:55
that you're targeting and it will turn
11:57
it into Javascript that simply works trends
11:59
Filers. Work the same way and
12:01
people use them interchangeably. What's the difference
12:03
between a compiler in a trance Pilar
12:06
and I do have with and it
12:08
was. Try to answer this a couple
12:10
times as on the podcast you have
12:12
any fresh ideas on how to explain
12:14
the difference between the two. Know.
12:17
And frankly I don't care how so I out.
12:19
Yeah, it's not a big deal to me. yeah,
12:21
but he night I think it is. It's one
12:23
of those things that a d So interchangeably this
12:26
point the demise or just be the same thing
12:28
yeah as a. As. A tie. It.
12:31
In. Out languages that are not. Runtime:
12:34
Interpreted you a compiler will
12:36
take your author language and
12:38
make it into a rubble
12:40
executable. Javascript needs to be.
12:42
Run. At runtime so you we
12:45
don't really have that unless. I.
12:47
Guess Dino has a little bit
12:49
of that And and know, Jaiswal
12:51
can allow you to do that,
12:53
but they're essentially the same things.
12:55
Knowing Like one thing that I'll
12:57
say is that the idea of
12:59
macros which is the compiler can
13:01
modify your code in such a
13:03
way that how you author it
13:05
and how it actually runs it
13:07
was like for example, spells is
13:09
a compiler Rights you cannot run
13:11
Spell to Kit. As felt code
13:13
directly in the browser, it needs to
13:16
be turned into something that can be
13:18
run and we're going to cover the
13:20
thing called macros in just a second.
13:22
And and that is something that in
13:24
my mind, a compiler would do where
13:27
it literally modifies how your code runs.
13:30
Word or for matters. Of.
13:32
For matters are basically the thing that
13:34
makes your code looks nice and in
13:37
a large parts he knows format based
13:39
languages like Python or something like that
13:41
where the format is very explicit for
13:43
manning has always been very important for
13:46
Javascript developers and always been Can I
13:48
knew you know? It's. The way
13:50
I authorize until pretty or team along and
13:52
pretty years I you know it. Here's the
13:54
standard way we're going to format and yeah,
13:57
you can. You can tweak it though these
13:59
following ways, but. Hey. And so prettier and
14:01
I'm just gonna snap your code into place. Personally,
14:04
Hey. I love a format. Ah,
14:06
I format. I'm save I I I
14:08
like my code to be formatted. One
14:10
thing they're forming does for me is
14:13
it ensures that. I. Have not missed
14:15
something like missing a brackets at a
14:17
common error that can be solved with
14:19
the format. Or there's so many these
14:21
little things that are or micro bugs
14:23
that especially new developers hit when you're
14:25
working with. Hey, why doesn't my code
14:27
work will So many of that can
14:29
be solved with Linters And for matters
14:31
because those show you essentially if your
14:33
code is snapped into place correctly, then
14:35
you know that everything is as it
14:37
should be. Yeah. And
14:39
it will also take a lot of
14:41
the like nit picking of like this
14:44
is the way we code you know
14:46
this is ah we must put into
14:48
teaching here or like you hire some
14:50
psycho that puts the function curly brackets
14:53
on the next line like all of
14:55
those things are. Gone when
14:57
you have a for matter because he
14:59
simply just. Run the for matter and
15:01
it. Puts. Your code with us
15:03
in the way that everybody has agreed
15:06
to do it via the settings and
15:08
Pretty Earth itself don't really have a
15:10
whole lot of settings on the some
15:12
things I wish it had settings for,
15:15
but it's intentionally opinionated about it and
15:17
I think that's been a massive massive
15:19
net positive to a set to the
15:21
code committee and javascript in general. I
15:23
also run it on save There are
15:26
people who only run prettier. Once
15:28
they're done. And. I find
15:30
that to be wild because you're the
15:32
when I have to like indent code
15:35
manually like sometimes you're running a project
15:37
and it's not working or your and
15:39
a project that doesn't have it. Used.
15:41
To manually indent her innocence.so frustrating
15:43
to me now that I've been.
15:45
I'm just so used to having
15:48
the. Pile. Of garbage that
15:50
I wrote in the hit Save and
15:52
Scale you to flee and dented and
15:54
all New lines and everything. Can.
15:56
You imagine being concerned. With.
15:58
Typing code with. Recommendations day. I
16:01
like that is not something we use
16:03
an airline. Know much about that? Yeah,
16:05
Yeah. And I'll do that ever. Prettier
16:08
is the big one. Are there are there
16:10
are other for matters out there? A jazz
16:12
purifier? Let not. There is a couple of
16:14
new ones which were going to talk about
16:17
and just a sec bias. Prettier is the
16:19
big big one. I took a nice years
16:21
and parsers. These are things that take your
16:23
code and split them up so that. The
16:27
For Matters and Linters and Trends Pilar
16:29
Skyn works such as actually got an
16:32
interesting that's a took a nicer and
16:34
a javascript parser is how all of
16:36
these different tools works. Acorn is the
16:39
really big one out there and then
16:41
the Took advisers are built with Acorn.
16:43
will not contact spend a whole lot
16:46
of top time on that saw. Move
16:48
onto bundlers. A bundle are generally. Will.
16:51
Do more than one thing is to
16:53
cede a generic tool that you use
16:55
bill often have a dev server involved
16:58
the last and do your transpire only
17:00
and compiling the deer buildings that the
17:02
your tree shaking the often integrate your
17:05
linters and for matters if you'd like
17:07
them to do that as well. and
17:09
there are several large ones out there
17:11
were packed is a really big one.
17:14
that's what Next Ass is built on.
17:16
Z is probably everybody's darling right now.
17:18
It just works beautifully. Parcel.
17:21
of another really popular one and like
17:23
modern one as it a seat and
17:25
parcel of probably that the two big
17:27
like modern ones and then. Roll
17:29
up his as what is the actually
17:31
uses under the hood. So if you
17:33
have something that we cannot do and
17:35
this is something I've had to to
17:38
dip into a few times you generally
17:40
have to you can still use the
17:42
but you have to dip into some
17:44
of the role upsetting to gets what
17:46
it is that you're looking for. but
17:48
the idea of. Most. Of
17:50
us are doing the same thing
17:52
which is building full stack javascript
17:54
applications. Almost. Always the the
17:56
defaults are going to work for you just
17:58
fine. Ah, Laughing,
18:01
we have years this idea of macros
18:03
I'm am able macros were a have
18:05
been a thing for a while. I
18:07
saw a parcel rolled out support for
18:10
macros just a couple weeks ago and
18:12
this is really cool In this is
18:14
kind of where I think like that
18:16
the difference between a compiler, an utterance
18:19
pilar is so a macro will. Free
18:21
run Javascript code that ten
18:24
be pre run. So let's
18:26
say for example, you have.
18:30
Ah, a function. That.
18:32
Adds to numbers together and
18:34
the output of that is
18:36
needed. It's
18:38
it's only needed once, right? And
18:40
you don't need to be run
18:42
that function absolutely every single time.
18:44
So what a macro do is
18:46
it will run that at build
18:48
time and simply just store the
18:50
output of that function in. A
18:53
variable So instead of saying like. Caused
18:55
total equals add one plus
18:58
one. You. You author it
19:00
that way but it will run that at
19:02
bill time and say cause totally equals to
19:04
and then it just takes out. All.
19:06
Of that generation and I do that
19:09
as well. I'm on my course platform
19:11
is I do a whole bunch of
19:13
looping over my different course packages and
19:15
I set up the the team packages
19:18
and I say I would see packets
19:20
for ten cost this much and it
19:22
has this many season team package for
19:25
fifteen cost as much and has this
19:27
many seats and. That
19:29
is. A function that runs
19:31
and generates maybe. I'll probably
19:34
a hundred different combinations. However, that doesn't
19:36
need to be run every single time
19:38
that I need. It could be done.
19:41
mad. At generation Time so
19:43
I could run that as a macro
19:45
and it would simply just took out
19:47
an object of all the different packages
19:49
rather than having to to regenerate that
19:51
in. That's how you can sort of
19:53
speed up A lot of this. Could.
19:55
Start or unnecessary running
19:57
and the a specific.
20:00
Macro. sorts of Kind of a a cool
20:02
feature as well. I'm gonna start looking at
20:04
different ways that I can use that and
20:06
my code bases. Yeah, I largely
20:08
haven't. Picked up Madras for any particular
20:10
reason that make you for explaining it like that
20:12
has scammers ones I see the word macro and
20:14
and always like I get. A
20:17
Macros in gaming I get macros in rust
20:19
him javascript were all of my like I
20:21
and no idea where this fits into my
20:23
life. So ah thank you for that. Look
20:26
at the new tools because that's obviously with
20:28
this episode is supposed to be about. Now
20:30
that we've explained all of the different tools
20:32
that we're using in the types of tools
20:34
are going to be diving into, some of
20:37
these new are tools that you can have
20:39
on your radar. Some of these are ready
20:41
to go. you can drop a man with
20:43
caveats, others are very like he said pie
20:45
in the sky. So. Less Let's
20:48
get started with the first one I
20:50
think one that a lot of people
20:52
has been hearing about for little bit
20:54
is Biome. And Biome does a few
20:56
things. It's a for matter in lynch
20:58
her and it's very fast and it
21:00
tends to be of eight. It.
21:02
Says thirty five times faster. And even
21:05
how are those little movie charts on
21:07
their side? So yeah, that as fast
21:09
as a that's a word of warning.
21:11
Sometimes when we say that it's a
21:13
little bit sarcastic because oftentimes these performance
21:15
benchmarks are are here to make their
21:17
product with good yeah they you married
21:19
take a specific situation. They'd cherry pick
21:21
a specific situation so don't always rely
21:24
on the things that said. I think
21:26
for all intents and purposes on Biome
21:28
is very fast and much faster than
21:30
any of the looting tools that we
21:32
have today. Snow biome is
21:34
very, very usable. That
21:36
said, There. Is some big
21:38
caveat: Sit here. No
21:40
reason why I'm not using by i'm
21:43
personally right now is that it just
21:45
now work in your entire application. One
21:47
of the cool things about Prettier. And.
21:50
He has lent. His as as a
21:52
tag team. It's. Gonna format my
21:55
cell tiles? It's gonna format my Css.
21:57
It's gonna format all of my stuff.
21:59
Not just. Javascript code, not just
22:01
my react code he i looked it
22:03
up earlier V M I think we
22:05
should maybe explain what Biome does is
22:08
it is. Everything. It's a
22:10
lint are so it as like yes land it's
22:12
a it's a for matter so that kind of
22:14
takes the job of prettier. It
22:16
does and pressure does macros as
22:19
well. So real and yeah
22:21
any busy just install the I
22:23
Use Biome in my last projects.
22:25
Ah I'm just gonna get a
22:27
feel for at noon. Saw the
22:29
Biome. Extension in eternal
22:31
on for that specific project and
22:33
it works pretty good. I've I've
22:36
never had issues with Pretty are
22:38
being slow so it's not something
22:40
that. I. Necessarily.
22:43
Care. Too much about. but you're
22:45
like you said, it doesn't work yet.
22:47
With everything, they're trying to get what's
22:49
called an Html parser and I think
22:51
they're trying to work on Css parser
22:54
as well. And then once you have.
22:56
A javascript parser, a Css parser and a
22:59
sumo parser. It's then you can start to
23:01
open the floodgates for building all of the
23:03
like our our it is felt kid is
23:05
is based on it's you also ira we
23:07
can now build assault kits extension for it
23:10
and I think once though those sort of
23:12
primitives arm place we'll start seeing a whole
23:14
lot of say different ones for it. What
23:16
I do like about is that it's just.
23:19
It's one thing. That. Just
23:21
works for absolutely everything and
23:24
I'm a big fan of
23:26
that. He. Eyes. I like
23:28
all that. I would like to replace all
23:30
the different piecemeal things with one thing that
23:32
just as all the thing the everything tooling
23:34
am I posted in the show notes and
23:37
image although we can just piling to this
23:39
him and if you're watching a video may
23:41
be Randy can throw up on video but
23:43
it really what what it is here is
23:46
his table of what's being supported right now
23:48
and what's on the way right now. They're
23:50
working on in progress Html parsing, They.
23:52
Haven't started working on for manning relenting, but
23:55
it's clearly on the table. View,
23:57
Salt and Astor all partially so.
24:00
Read: Css has ah parsing, but
24:02
not for manning and not letting
24:04
nothing for markdown Sauds is it
24:06
isn't the thing that's going to
24:09
replace everything for you right now,
24:11
which is why I'm not using
24:13
it today because yeah, straight up.
24:16
If. If if I have to have prettier
24:18
install it anyways in my project you know
24:20
next thing you know I as. Ah
24:22
I have prettier ib as land and
24:24
biome and that they i will too
24:27
much for me So during my answer
24:29
to get your vs towed to like
24:31
use the proper. For. Matter sword,
24:33
the different files and year. As
24:35
such a pain in the but
24:38
due to stress? Yes Yes! Go
24:40
to settle up Exactly Rights. especially
24:42
if you have. Often
24:44
what people do as will set up
24:46
globalists on their entire Vs code radius
24:49
area. I'm using Insulin and Prettier as
24:51
a global for every single project. However,
24:54
If I do want to switch that then
24:56
you have to like turn it off, project
24:58
my project and turn these ones on project
25:00
by project and the a it says to
25:02
get to be a bit of a pain
25:04
in the but so. I'm
25:06
I'm pretty stoked about by I'm No, I
25:09
meant it's amazing. Biome was wrong and. We.
25:11
Romas with talk about that made homeless shows
25:14
but the the pass of that but it's
25:16
amazing. To. To see all everything
25:18
coming out on looks like. They. Just
25:20
rolled out support for. Partial.
25:23
Support for Astros Felton View. To.
25:26
To do you do Or days ago. Partially.
25:28
Supported with some caveats. Yeah so as yes
25:30
of the stables up to date but yeah
25:33
it is. It's better than the the red
25:35
x that was here. With.
25:37
A month ago. so yeah I am
25:40
hopeful for Biome and he said you're
25:42
not gonna email pretty years never thing
25:44
it slow and your process but there
25:46
is something that pretty years doing by
25:49
being slower and it's taking up more
25:51
processing more battery. It's slowing your computer
25:53
down whether you know it or not
25:55
so you can etti more efficient tool.
25:59
Heck yeah. Computer might just last a
26:01
little bit longer. you know I don't. I don't
26:03
have you. You get this west. But like any
26:05
time I'm losing the rapid amount of battery feel
26:07
it gets always vs coat in his who knows
26:09
what it is envious code. It could be. That.
26:12
The format or is it could be any
26:14
sort of language library could be literally anything.
26:16
there's ways to to find that out. And
26:18
I did find. One. Of my
26:20
plugins was one of those things, but as if
26:22
you pin. A the way for
26:25
does have you listening. That plugin was.
26:27
Imports. Cost of you're using
26:29
the import Cost plugin. Go. Maybe
26:32
disable that thing because it is
26:34
a big batteries. The battery saw
26:36
to it is a performance Zoc
26:38
and it's. Yeah. Don't know
26:40
what's going on there but it's not
26:43
good so disable that as in in
26:45
you might get an extra realize that
26:47
of your editor at such as Death
26:49
of a Really Good at some point
26:51
is that was taking a big soft
26:53
of resources for you. and one of
26:55
the things that a lot of these
26:57
tools do is they. They. Do
26:59
the module tree because if it's something
27:01
imports something, Import something imports something sprayed.
27:03
It goes all the way down. You
27:05
could have. Like. Fifty or
27:07
imports all the way down, and
27:10
that is takes a lot of
27:12
computation. So these new tools that
27:15
are often written in low level
27:17
languages like Rust will be able
27:19
to parse that treats much quicker
27:22
than in Javascript, And that's probably
27:24
a really good use case for
27:26
one of these tools is you
27:29
can rewrite the import cost ah,
27:31
extension. Whoop! Using I'm not
27:33
sure which one of these but it's one of
27:35
them. Will will use it. Savvy.
27:38
Polling One other thing about like the
27:40
downside to the using these rust things
27:42
and we talked and Nicholas Axis about
27:45
this as well because with that are
27:47
you going to write Rewrite Eastland in
27:49
Rust and he says we've been looking
27:51
out rewriting parts of it in rust
27:54
forever. We'll never rewrite the entire thing
27:56
and Ross because the benefit of the
27:58
Isn't system is that. Literally anyone
28:00
in the community can write a
28:02
plugin and allow us to use
28:05
it, whereas not anyone can write
28:07
a rust plug in and aren't
28:09
even the by on has the
28:11
idea the concept of plugins yet
28:13
so. It's. Really important
28:15
to still have it a javascript bp
28:18
I where people can go in and
28:20
right plugins so that like. Like.
28:22
Where where does the javascript engine starts
28:25
is a tricky thing. Totally
28:27
or Net. Some analysts tear his
28:29
O X C yeah, this is
28:32
the javascript oxidation the compiler which
28:34
is again a collection of tools.
28:36
This would be kind of seen
28:39
as. A direct competitor to
28:41
Biome. it is written in rust.
28:43
It's very fast. Again, it's a
28:45
parser. A link her. It's
28:48
a result. Her: I don't know what resolve
28:50
our means that when I was just talking
28:52
about those Alvarez how it figures out that
28:54
dependency tree and resolving all of your modules
28:56
gotcha they say it's going to be a
28:59
for matter is going to be a transformer
29:01
him in a fire It is in our
29:03
as pack bundler and it is going to
29:05
be a roll down bundle air. This
29:08
one is interesting, but it's It's
29:10
been on my radar for some
29:12
time because obviously it is trying
29:14
to solve some of these same
29:16
problems and it is trying to
29:18
a do Sony very, very fast
29:20
way. Which gotta love that. That
29:22
said, they explicitly stated that Html
29:24
is not a mirror road map
29:26
in it's not in their plans.
29:28
They had no planning on adding
29:30
that type of thing, so for
29:32
me personally, I'm interested in it.
29:34
but if I'm looking at replacing
29:36
my set up with. Something they can
29:38
do everything than yeah I, you know,
29:41
I don't I feel about that. so
29:43
for me that does Definitely like something
29:45
to keep in mind with this project.
29:47
Regardless though, the performance Everything! If you're
29:50
looking for something that is fast, this
29:52
is a Drg to keep your eye
29:54
on for shirts. Here's
29:56
some some way to like. Position.
30:00
Why do these things really the
30:02
to be that much faster? Especially
30:04
like I don't work on stuff
30:06
that is so large that I'm
30:08
hitting these sets of things but
30:10
is is Jason Miller from pre
30:12
Act York. the shopify also listen
30:14
same city as me Ah had
30:16
person to listen to and performance
30:18
anything Yes so is as Ox
30:20
Flynn has been massive when for
30:23
us at shopify our previous lensing
30:25
set up took seventy five minutes
30:27
to run so we were saying
30:29
it out. Across Forty workers in
30:31
sea ice. So you send a
30:33
pull request and shopify. To.
30:37
I changed this one thing
30:39
in our and are dashboard
30:41
that. As. The run like one
30:44
of the steps of the pull requests
30:46
as you had a lint the entire
30:48
code be mixer. He didn't do something
30:50
that is going to throw a lensing
30:53
era so they had a run forty
30:55
miss scenes. At. Once.
30:57
Vs Seventy five minutes of
31:00
probably forty machines running for.
31:02
Two. Minutes each. In.
31:04
Order to simply just link your
31:06
code base whereas like, That.
31:09
That's that's wild and and yelling as
31:11
sometimes you're running a winter on just
31:13
url or a for matter just on
31:15
the current file. Wouldn't it be nicer
31:18
to run it on? save a task
31:20
of this setting as well? and Vs
31:22
Kobe can be kind of slow. run
31:24
on your entire code base and when
31:27
you get into the size of applications
31:29
that are some nice shopify, it's. Insane.
31:32
To think that it could take. Over.
31:34
An hour to simply says the late your
31:37
code base and talking about fanning out you'd
31:39
have to send me out. that sadist my
31:41
code base to go on to. School
31:44
and I will Power. So
31:47
it's as wild and. Even.
31:50
Just to think about the cost
31:52
savings of you're not paying for.
31:54
An. Hours worth of compute computer
31:56
yeah, Every single kind of Athens
31:58
Reporter plans. Yeah, an hour.
32:01
Like. How much as get her back since cost per hour?
32:03
Let's look it up. And saw it
32:06
sounds super cheap when you when you do a
32:08
whole lot with it in if you're using a
32:10
lot of good have actions. Can. Certainly save
32:12
you. glad. Only taught lot of time, but
32:14
a lot of money for sure. I
32:17
get have pro. Give. These
32:19
three thousand. Minutes.
32:22
A month. So. That's.
32:25
Sixty. Hours. And.
32:27
Like a badass shopify his fifties. City.
32:29
Pull requests a day at least. The.
32:32
Am I to am? I've no idea and
32:34
just talking out of my but by I've
32:36
it is mine just and like running tests
32:38
and stuff Cel speed is Usha when you're
32:40
trying to get you get her back Since
32:42
I have a theory that the get up
32:44
actions are so hard to get working with
32:46
the same way in a burn up there
32:48
your minutes is a such as a such
32:50
whole get hub is just as. It's
32:53
all a front for them to burn up years
32:55
the I minutes and so you buy more. Gave
32:58
they could simply make them easier, but
33:00
that would bankrupt them on their next
33:02
one is the Dino for matter? No,
33:04
I haven't done anything with Dino format.
33:07
Do know a little bit about dinner
33:09
for manner. Yes, I'd
33:11
it's a sick another. Nice.
33:13
For matter and I'm actually kind of bomb
33:15
that it It didn't catch on Legacy it
33:17
it's been around for awhile. Dino has some
33:19
winter in it's own format or kind of
33:21
that. The same ideas as a benefit of
33:23
that is that it being baked into the
33:25
language that they can. Write
33:27
it in. Rust because
33:30
that's what do you know is
33:32
written in and then you can
33:34
just simply exposed the other language
33:36
server. Any of
33:38
the as A D know extension so. It's.
33:41
Kind of interesting and I'm I'm curious are I'm
33:43
kind of bummed that it didn't like. Catch.
33:46
On for absolutely everything but
33:48
like maybe. Maybe. Part of
33:51
the like the long run of gas
33:53
are. An hour if were
33:55
all certainly you Csr maybe we'll
33:57
start using one of their for
33:59
matters. Yeah, so they kinda
34:01
that jazz our platform. United gets a
34:03
cool thing about the knows they are
34:05
taking lessons from rest in that regard
34:07
where you know rust has sunni these
34:09
things baked in the the platform itself
34:11
to be taking that same approach. Ah
34:13
yes, Build is also a new tool
34:15
that we've been talking about here. This
34:17
is a bundle or it will take
34:19
your code it's written in Go in.
34:21
It will very very very quickly bundle
34:23
your code for You will transpire, compile
34:25
your code, do all that sort of
34:27
stuff on. this is what V users
34:29
to be so fast. V is very
34:31
fast because of a couple things at
34:33
my skirt modules. and yes, Build our
34:35
our to the main reasons. But.
34:38
Move over Yes Bill that there is
34:40
a new fast bundle are in town.
34:42
Roll Down! Have you seen Roll Down
34:44
Last know what to say. What's despair
34:46
built on is this scissors as if
34:48
you see and yes build those are
34:50
like the two big ones. What's wrong
34:53
on will Roll down is the new.
34:56
The new high ticket in town plate
34:58
is it is going to be it
35:00
going to replace the as buildings eat.
35:03
It is written by divvied folks. It
35:05
is written ah in. it's written in.
35:07
Rust. And it's supposed to
35:09
be compatible with Roll up. So basically
35:12
would they said as we like Roll
35:14
Up. Lexus. Make a roll
35:16
up compatible rust based bundle air and
35:18
have it be our own. So that
35:20
way we have full control of the
35:23
direction of this thing and. It
35:25
is very. Very.
35:27
Very enticing. It is recently
35:30
announced. And. I'm excited to
35:32
see where this goes because. To.
35:34
Me This the seems like it's going to be the
35:36
future and it's probably not only be the future that
35:38
you need. To. Even think about ah,
35:41
beat because it's probably at some point
35:43
just gonna be beat. You know, just
35:45
swap it. Yeah, elected is. Some of
35:47
these things are so low level that
35:49
you don't really have to care because
35:51
you're just. Picking. Mpm
35:53
start and wherever the robots need to
35:56
do to make that. It
35:58
will do so if. The.
36:01
Route The parser and resolve are sober.
36:03
The two things we just talked about
36:05
in Roll Down is a waxy soften
36:08
the oh really? oh there are multiple
36:10
multiple levels deep right? Because Roll Down
36:12
is written in rust and their rust
36:14
parser and rust's yes I'm Resolve. Our
36:16
arch has taken directly from Ofc. you
36:19
know the be something to do a
36:21
really good job with that were like
36:23
that's what made V so great in
36:25
the first places. like a what if
36:28
we took his really sas to yes
36:30
build. In India for like a Dev
36:32
server. On top of that, we made it
36:34
Bsm. Everything's forward and that's you know what
36:37
makes it so fast? and. That's
36:39
really cool. Okay I didn't see that.
36:41
Yeah it's is that currently V relies
36:43
on to bundlers. Yes, build and roll
36:45
up in this kind of takes that
36:47
to bundler problem out of it. Sounds
36:49
interesting stuff. So.
36:51
Was in we haven't talked about here is.
36:54
Tie. Script and a lot of these
36:56
tools will do take script to
36:58
Javascript vs. stripping types right though.
37:00
They will compiler transpire your type
37:02
script in this and be just
37:04
fine the types and take them
37:06
out and then. but are you
37:08
have. Javascript. Clever as
37:10
there a way to southwest while you ever wanna
37:12
do that is intact. Get there to save me.
37:16
Yes, Well as it's your
37:18
type Script will not run ah
37:20
in any Javascript environments. ever in
37:22
were advertised script is running, it's
37:25
being stripped of it's type and
37:27
being run as actual javascript. However,
37:29
there is a it's a second
37:32
part of of type script which
37:34
is type checking sets actually making
37:36
sure that your code passes all
37:39
of the the taste tax and
37:41
is type safe. So simply by
37:43
it's running V with type script.
37:46
Is on actually checking that your your
37:48
your types are. Are. Type
37:50
safe rights. It just takes them
37:52
out of the only way right
37:55
now to actually. Type
37:57
Check Your javascript is with nodes. Tsc
38:00
are not node. It's written in node.
38:02
It's but it's written by the types
38:04
can project and that can be. A.
38:07
Little bit slow on very large projects
38:09
so there have been multiple efforts over
38:11
the years that have been sort of
38:13
like a band in and are not
38:16
necessarily not banned in because the the
38:18
efforts were just like let's see if
38:20
we couldn't write a type checker and
38:22
task of the self doesn't have a
38:25
spat. So. There's not anything to
38:27
write against which is part of the
38:29
troubles and. Selects as extremely
38:31
complicated process. yeah I try to
38:33
to do it so there's there's
38:35
been one that I've been sort
38:37
of watches golf as know. And.
38:42
It's a type script, type
38:44
checker. And. It's.
38:47
Really cool. So it's very very early.
38:49
But the the errors that it gives
38:52
you it's all based on static analysis
38:54
mean that it goes through your entire
38:56
code base. There's parts of taste of
38:58
that you cannot use because it cannot
39:00
be statically analyzed and the air's that
39:02
it gives you are much better than
39:04
the type skip air so you've you've
39:06
ever had the hovered over top or
39:08
something and Vs codes and scroll all
39:10
the way to the bottom defined. What
39:13
is the actual error? It can be
39:15
a little bit frustrating that does the
39:17
error messages. And task of are not
39:19
better. In the few examples that I
39:21
did with as know is. The
39:24
errors were much better in the formatting
39:26
was really nice and is really cool
39:28
for it doesn't work with like. Ninety.
39:31
Percent of side script so like it
39:33
cannot just run this on and exists
39:35
in touch your projects. you cannot even
39:37
run it on. Some simple examples like
39:39
I just wrote a cause of make
39:41
an interface and a custom type an
39:43
extended and burnt than work grade and
39:45
support even. That's the very fundamentals there.
39:47
but in the it's very simple examples
39:49
that hide done the air's rak sir.
39:51
Really really good. So. And. I
39:53
looked up that the author of this
39:55
is like a very young developer. Who's
39:58
just like out try to be. My own
40:00
ted skip type checker called
40:02
as know and it was
40:04
part of Oh Axes. They.
40:07
Took it out since then because
40:09
it's like it's It's nowhere near
40:11
being ready for anyone to really
40:13
use, but it's a glimmer of
40:15
hope. Wow. That's
40:17
really Wow. Wow yeah. the guy me
40:19
all the stuff give me height I
40:22
didn't know too much about that, you
40:24
know there? There's also beyond just like
40:26
even. Bundlers. Are tools. There's
40:28
like a bunch of like interesting projects
40:30
that are taking a bigger view in
40:32
terms of how you're doing your projects.
40:35
It's bundling a bunch of stuff together.
40:37
Making. Your debt process easier and like
40:40
we're talking about things like beat specifically right
40:42
V is a whole Dev server it is
40:44
handles a lot of stuff but then you
40:46
have projects expel kids that handle the whole
40:49
request to response I go for you and
40:51
one that has been kind of taking a
40:53
little bit of a little bit of the
40:55
deduce lately as his whole and J S
40:58
project and on Jay as seems to do
41:00
a massive amount of stuff. When I first
41:02
saw this I was like. Well.
41:05
I've not been paying attention to this.
41:07
This is a whole lot of thanks.
41:09
Say it. It handles a ton of
41:11
stuff for you. whether that is like
41:13
your ear dev server you're building or
41:15
whatever, even Amazon web socket support and
41:17
stuff. I mean that thinks pretty amazing
41:19
is actually what Powers knocks to serve.
41:22
You've heard of Next J S which
41:24
is the view version of Next J
41:26
S. This is the thing that powers
41:28
that but you don't have to use
41:30
Djs for itself or Mrs A a
41:32
new are dead tool that allows Edu
41:34
whole lot of interesting stuff for building
41:36
building sites and again from the folks
41:38
over on you know the V Jazz
41:41
folk so it is. I. Is
41:43
pretty cool project. Another
41:46
one all say is Lightning Css who
41:48
talked about the city times on the
41:50
show is this from Devon Gov it
41:53
who's great of parcels creator of all
41:55
that react are a I. Pretty
41:58
much everything other we should get him. The
42:00
show at some point. I.
42:02
Saw lightning Css his his see us
42:04
as parser, transformer bumbler and men a
42:06
fire so it it replaces something like
42:08
a Css nano or yes build for
42:11
your Css and it's only for Css
42:13
it's still on for is going to
42:15
be using it in there as part
42:17
of their to attain as well. And
42:20
I'm pretty excited about this one as
42:22
well, I think it's gonna again, I
42:24
don't know if you will have to
42:26
use lightning directly. A. Lot of
42:28
your tooling will probably picked us up in
42:30
the future. Aren't. That's all
42:32
of these new and upcoming it.
42:34
All the tools we talked about
42:36
are written in. Rust.
42:39
Roster video yeah says Wilde. Oh
42:41
yeah, yes. Builders written and go
42:43
right. Yes, Build is written
42:45
in Go Yeah buddy. You know it's
42:47
trend of not writing things in Javascript
42:49
in a know. Sure enough here is the
42:52
conversations Like is Javascript. You know good
42:54
enough to handle these tools and I think that you know. There.
42:56
Is pretty clear evidence that. Tools.
42:59
Can be better written in other languages.
43:01
So in idea I'm not. I'm not
43:03
the the right person the say that
43:05
you can't write superfast tools and javascript
43:07
but it is interesting trend in certainly
43:09
one that we're We're seeing a little
43:11
bit more and more these days and
43:13
I honestly don't mind because of the
43:16
in is a day I saw the
43:18
thing anyway. if there's a cadet bylaw
43:20
configured, there are no good values you
43:22
need to know to. Ah yes yes
43:24
yes. I like. School.
43:26
Or it looks get into some sick
43:28
picks. the of sick for me today
43:30
I do. It's a You Tube. literally
43:33
just a You Tube channel but a
43:35
You Tube video specifically in this one's
43:37
for my movie Heads out there on.
43:40
Man. This video was really super guide
43:42
so this isn't as an hour long so
43:44
the type of the you're you're gonna wanna
43:46
year and I want to pull up some
43:48
popcorn for but it's called see no Be
43:50
Get in the nineteen eighties ninja craze and.
43:53
This. Guy really breaks down like
43:55
filmed by film the nineteen eighties
43:57
ninja craze from. These.
44:00
Ebbing massively in films you've never heard
44:02
of. But things were there, like splicing
44:05
together like a certain director was splicing
44:07
together films from a bunch of different
44:09
films and then adding new scenes that
44:11
they are recording. They talk a lot
44:14
about, like the mustachioed. American.
44:16
Actors that appear in these films and
44:18
stuff they they talk about just in
44:20
general the the ebbs and flows as
44:22
the nineteen eighties they talk about like
44:25
cannon films and stuff. So this thing
44:27
was really deep dive in the type
44:29
of you tube video that I really
44:31
prefer where it's like wow exhaust as
44:33
it is really intense and this entire
44:35
channel is called the bad Movie Bible
44:37
is really great indo of the name
44:39
of your it's not like a ah
44:41
it's not like a how did this
44:44
get made type of thing though. do.
44:46
Things where it's like. Here's. An
44:48
hour long on. All. Of
44:50
the Alien that knock offs of the
44:52
Nineteen eighties, All of the James Bond
44:54
that knock offs and he'll just go
44:56
through an hour talking about all the
44:59
different actors, every different country that's producing
45:01
these things, the studios and it's so
45:03
so deep in. I've watched every video
45:05
on this channel multiple times and up
45:07
the she know be get in One
45:09
is my my favorite one is the
45:12
newest one so check it out! Tons
45:14
and tons of really cool stuff. Year
45:16
name on Elm Street knock offs die
45:18
hard. knock us. On just some
45:20
Nicole Things great. Great channel. I
45:24
am sick Fact: ah some it you
45:26
picked a while ago and I only
45:28
was recently able to acquire in Canada
45:30
and that is the up thought Balkans:
45:33
Ah Japanese barbecue sauce a hearsay fog
45:35
a little us to locked up the
45:37
sky. Yeah. So this
45:39
is sort of a. It's
45:42
soy sauce meets a barbecue sauce. On
45:44
or off I would. It's called the
45:46
Japanese barbecue sauce a new you can
45:49
put it on like a noodles and
45:51
on Me and I put it on
45:53
eggs and. It's. Gotten sick? they're probably
45:55
over a year ago and I've been wanting
45:57
to try it. And. Finally, my parents.
46:00
Couple months ago and parents on to the
46:02
states. I sent them some and they brought
46:04
back for me and was like this is
46:06
fan tacit so I just got back from
46:09
the seats again. I picked up every flavor
46:11
I could possibly find and I know Cosco
46:13
sell. They saw a huge bottle of it
46:15
as well. So there's a original, a spicy,
46:18
a zoo and a measles. Now I have
46:20
all four of them and it so good
46:22
I put her on. Absolutely.
46:25
Everything and I can't believe I didn't
46:27
get him for my kids. Love it
46:29
too! So. If you have someone
46:31
analyze that site. Is. A bit
46:34
of a sauce had. you should get
46:36
them a bottle of this are they
46:38
saw really cool gift boxes while on
46:40
their website. Really nice looking website as
46:43
well so. Highly, highly
46:45
recommend you check.on out. It's
46:47
super guides what will sit on my
46:49
Sam and will present stir fries. Word
46:51
money iracing. yeah it got a little
46:53
sweet to it's loop here Yeah t
46:55
little soy it's yeah knock knock quite
46:57
anything goes and your yeah but not
46:59
not too wild and that's also he
47:01
huge fan and their their logo is
47:03
don't see I want to get one
47:05
of these t shirts know as have
47:08
shirts. Hats off to the gotta hoodies
47:10
This is done well. Their website in
47:12
general is this a really nice looking
47:14
website. Very
47:16
cute! Call. Yeah.
47:19
Shameless Plugs. Check out the syntax you tube channel
47:21
eat with us that the dropped check out syntax
47:23
on all the So shows are you know get
47:26
us on Tic Tac before they make it illegal.
47:28
all that stuff. Come to Canada. We don't have
47:30
back and sauce but we will have to talk.
47:35
Aren't as everyday think they're seeing
47:37
him. We will catch you later.
47:40
His. Pace.
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More