Yagiz Nizipli - Node.js Performance

Durée: 74m17s

Date de sortie: 04/12/2023

This week we talk to Yagiz Nizipli about his work on Node.js performance. We discuss his journey into Node.js contribution, the challenges of URL parser implementation, the impact of competing runtimes, and more. We also discuss the current state of backend javascript's competing runtimes, and his views of VC Money and Open Source Funding.

Episode sponsored By Raycast (https://www.raycast.com/)

Become a paid subscriber our patreon, spotify, or apple podcasts for the full episode.

Tooltips

Andrew

Justin

Yagiz

C'est extrêmement difficile de dire que mon code est plus rapide que nous.
Et je respecte le courage de ces gens qui peuvent dire cela publicement.
Mais je ne peux pas, même si je sais que l'Ada est le plus rapide que nous avons fait dans le monde.
Mais si vous regardez l'application de l'Ada, vous ne verrez pas ce que ça dit.
Bonjour, bienvenue à la DevTools FM Podcast.
C'est un podcast sur les tools de développement.
Les gens vont faire ça.
Je suis Andrew et je suis le host de Micah.
Salut tout le monde.
Nous sommes vraiment excitées de voir Yagas sur le podcast.
Yagas est un membre du comité de la commission de la technologie de la technologie de la no-js.
Vous êtes aussi sur la foundation de la foundation de la no-js.
Vous êtes un membre de la vote pour ça.
C'est pas correct.
Et vous avez fait beaucoup de travail sur la no-js,
notamment sur la sécurité, c'est-à-dire un grand truc ?
La performance.
Oui, mais surtout sur la performance, j'ai élu plusieurs features différentes aussi.
Mais je me souviens de ne pas faire de nouvelles features.
C'est cool.
Nous sommes vraiment excitées de vous parler de votre involvement en code
et d'autres works que vous avez faits en performance.
Mais avant de nous dévier,
est-ce qu'il y a d'autres choses que vous voulez dire à nos listeners ?
Je suis un ingénieur avec d'environ 10 ou 13 ans de expérience.
Je l'ai récemment gradué par mes maîtres.
Quand je suis allé à New York,
c'est pourquoi j'ai commencé à contribuer à la no-js.
Je l'ai récemment été un père.
Et c'est-à-dire,
Aida est le nom de la no-js et aussi mon nom de ma fille.
C'est le plus important.
Je l'aime quand les programmers appartiennent leurs maîtres.
La chose que j'ai récemment apportée par ce qui m'a emmenée
était le créateur de MySQL.
Les choses qu'il a fait, MySQL, MariaDB et MaxDB,
ce sont tous les noms de ses enfants.
Il a sa première fille nommée de MySQL.
C'est pourquoi il s'appelle MySQL.
C'est pas un truc totalement faux, mais c'est vrai.
Ça me rappelle que je suis le nid d'Horwell,
le nid de sneaking,
les filles et les filles qui sont dans le code linéaire.
Si tu as le temps de l'épreuve,
c'est un peu de reboot.
Je pensais que GIT était son nid.
Je me disais que c'était terrible.
On va au travail actuel.
On a touché le travail un peu,
mais comment est-ce que tu as été involvement de NoJS?
Comment as-tu commencé et à quel point
tu as été un membre de la grande projet?
Je suis maintenant un membre de la commission.
Je l'ai trouvé et je suis toujours un membre
de la campagne de NoJS.
Il y a un mois,
j'étais le champion de la stratégie de la stratégie.
Je suis le champion,
je suis le responsable de l'imprisonnement
de NoJS.
Ça a commencé à l'époque de l'année et demi.
À l'époque de l'année 28-29,
j'ai commencé à m'évoquer avec ma fille.
J'ai été un maître.
J'ai été un maître de la compétition de science.
J'ai aussi été un maître de la compétition de science.
Ça a été très facile.
J'ai dû sélectionner un projet de gradation.
Je n'avais pas envie de faire un liste,
un appareil mobile,
un produit simple que je pouvais faire dans quelques jours.
C'est comme ça que je suis allé
faire des issues de NoJS.
J'ai voulu sélectionner un travail
qui était le temps de ma vie
et qui a été produisant quelque chose
pour que mes deux ou trois mois
soient bénéficiaires pour les autres.
J'ai donc commencé
mon travail sur le travail de NoJS.
J'ai commencé mon travail sur le travail de NoJS.
C'était le travail.
James Nel,
de NoJSTSC,
a ouvert un problème
qui a dit qu'ils avaient envie
de réévaluer le travail de NoJS
dans le web-assembly de NoJS.
On peut le faire dans C++
ou ROS,
et on peut utiliser le web-assembly
afin d'avoir un plus de performance
sur le parcel URL.
J'ai spenté
une montagne d'heures
pour commencer
de la réévaluer le travail de ROS
et de l'évaluer le parcel URL
de scratch.
J'ai écrit
30% ou 40% de passages compléants
et puis j'ai compilé le Web-assembly.
J'ai réalisé que la performance
est plus importante que
ce qu'il y a maintenant.
C'est-à-dire que
quand je le dévile, je réalise que
il y a beaucoup plus de surface
de l'un des plus enlèvage
pour les synchronisation
de la operation
pour la communication,
la sérialisation et la sérialisation
de la code texte et la code texte.
J'ai
spenté deux mois
en réévaluant tout en JavaScript
et j'ai réalisé que
V8
s'est dévoué.
J'ai fait
réaliser que je dois
dévouer de la façon dont V8 est implémentée
afin de
optimiser.
J'ai eu beaucoup de temps
et
j'ai
réalisé que je suis arrivé à la limite
en enlèvage en JavaScript.
J'ai
rencontré
un professeur
d'Université de Contraire
qui s'appelle Daniel Lemmeray
qui est aussi le professeur
de SimGCM et de SimUTF
et on a commencé
à écrire le parcours de l'aéros.
Il a été en train de faire
six mois.
Et en faisant ça, je contribue
à plusieurs autres choses.
Mais c'est tout de même
les dernières années
en novembre
j'ai
parlé dans le compte
de comment écrire le parcours
d'un professeur d'Efficient Purel
pour le JavaScript de Node.
C'était le point de tourner.
Il y a beaucoup de temps
à l'impact.
Est-ce que
les Wazm en Node.js
sont dans les autres parts de Node.js ?
Mais pas d'autres projets
dans les autres parts de Node.js
n'ont pas de Wazm.
Mais c'est vraiment facile
à faire.
Il n'y a pas d'autres contributions
qui ont été écrivées
et qui ont été contribuées.
Mais si quelqu'un l'a fait,
ça serait très facile.
C'est cool, je n'ai pas réalisé
que c'était assez long d'être
en cours.
Il y a des casques
qui sont à la base.
Vous pouvez les contrôler
et vous payez
pour ce cost.
Mais ce que la plupart
n'ont pas réalisé c'est
que V8 a fait un très mauvais
jopin
pour les encodings et les décorations
de la string.
V8 est écrivée pour browser
et pas pour server.
Ils ne sont pas optimisés
pour l'exécuter et encoder
une fonction des millions de fois
sur un device single.
Si l'exécute est écrite
ils ont assume que ils utilisent
une des machines
pour browser Internet.
Il ne se optimise pas.
C'est le code pour les encodings
et les décorations.
Quand vous rencontrez des situations
comme ça,
peut-il y avoir des gens
qui ne sont pas contribués
pour V8 et tentent de débarquer
ou est-ce que c'est difficile de faire ces issues?
Il y a beaucoup de gens
qui contribuent
pour V8
mais ils sont beaucoup plus
payés pour ça.
Je l'ai regardé
et j'ai même championné
une des issues mais je n'ai pas eu
de temps pour m'enborder
sur le site de V8
pendant que le Node.js
s'est réellement réellement
contraint que le Node.js
aussi contribue à V8.
Et vice versa.
C'est très probable
pour un V8 développeur
pour contribuer à la Node.
Au moins ils sont payés
par Microsoft et d'autres
grandes corporations
pour fixer un temps de tour
ou une issue spécifique.
Ça fait du sens. Ils sont différents
codes et des choses
très différentes.
Je peux voir comment ça fonctionne.
Il y a quelque chose que vous avez dit
que je veux un peu
vous avez mentionné
que vous avez des problèmes
sur V8. Je suis curieux
de voir
ce que c'est de V8
qui n'est pas idéal
ou difficile à travailler
parce que j'ai l'air de les choses
plus positives.
Mais je n'ai pas parlé
de beaucoup de gens qui ont fait
un V8. C'est un très intéressant take.
Toutes mes takes
sont toutes les commentaires
des V8 qui sont des performances
pas des features parity
ou d'autres choses.
Je n'ai pas beaucoup d'expérience.
J'ai une expérience spécifique
qui pourrait avoir
un impact huge sur un range
d'utilisateurs.
Les problèmes que j'ai tendus
sont les problèmes qui sont très difficiles
mais quand ils se solvent, ils affectent
des millions de utilisateurs.
Donc,
crossing the boundaries between C++
and JavaScript is one of them.
V8 has support called
V8 Fast API
which means that instead of
exposing an actual
C++ function, you expose
a fast patch to that function
called a C function
to it
which reduces
calling that C++ function
but it has really
extreme
limitations.
So like if a function that takes a parameter of string
and it does some operations on it
and returns a boolean
for example you can use that function
but if you have a function
that takes a parameter of input
it allocates certain things
and then returns a string
then you can't use it because you can't
allocate new stuff
in the fast API because they don't
they want to make it as simple as possible
so that it doesn't
it doesn't get garbage collected
and so on so forth.
So this limitation I think
it's okay, it makes
sense. What doesn't make sense
and makes it really hard to
use fast API in V8
is if you have
a string that concatenates
by two other strings. Let's say
you have a string called
process.pwd and then you append it
with Slash and Audmojus.
Then this string becomes
un unflatten
not a flat string
and there's no way for you
to use that parameter and trigger
the V8 fast API
because V8 fast API
has a requirement of having
one byte strings
that needs to be
like unflat strings
so these kinds of things
makes it really hard to find work around it
and
with a project with a size of note
it kind of pushes
us to
find creative solutions
that's not always applicable
to every problem.
Once again we'd like to thank Raycast
Without our sponsors, Deptools FM wouldn't be possible.
Raycast is an at-for-mac
that's like spotlight but with superpowers.
Besides being able to do
all the things that spotlight and Alphard can do
it has a host of other features
that are supported by community made extensions.
The extension API
is super cool.
It's actually built on top of React
and if you have a written react
you can get into writing extensions
super quickly.
One cool extension that they came out with this week
is actually one from the CEO Thomas
and Pedro
who also works at the company.
It's a quick way to turn on your camera and take a picture
it just shows the ability
of Raycast to hook directly into your Mac
and provide a unified interface
for doing a whole bunch of things really quickly.
You should also check out Raycast Pro.
With Pro you can take advantage of Raycast AI
and do a whole bunch of really cool things
on your computer.
From translating text to summarizing text
to having a full blown conversation
with the chatbot. You do a lot with it.
Raycast Pro doesn't stop there
has a whole bunch of other features that will get you up
and going really quickly.
Such as syncing your profile across your devices.
You want to advertise with Deptools FM?
Head over to Deptools.fm
slash sponsors to apply.
Do you want to not hear these ads?
You can become a member on one of the various platforms
that we offer memberships on.
If you do get one of those memberships
make sure to join our discord where
we might not talk all that much but if you're there
maybe we will.
If you want more DevTools FM in your inbox
head over to mail.devtools.fm
to join the mailing list.
With that let's get back to the episode.
So is that why
of all things you chose to
rebuild the URL parser?
Or originally
an in browser feature
that because of performance implications
it just wasn't a good way to use V8?
So
V8 doesn't have URL parser
implementation in it. Chrome has it.
This is mostly
I don't know. They're trying to
make the V8 code base
as small as possible
and that only contains JavaScript
implementation.
Language problems.
It was previously implemented by James Nell
which was
the TSMM
that initially
created the issue to replace
URL parser. He's also a really good friend
of mine so I can talk about it
easily.
So I forgot what
the question was.
The question was really just like why
the URL parser first.
I was getting at like maybe it was
because of that intermingling
of your code with V8
but what it sounds more like
I'm just interested why would you
choose that? Does it touch a lot of different
parts of Node.js and a lot of performance
could be gained out of it?
For my point of view I don't parse
URLs all that much in Node.js.
Yeah so the issue is
when you ask someone why
you chose that task and they will always
say that we assume that
it will be easy.
That was my reason.
When you look at the URL parser
URL specification
and if it takes
around 10 minutes to read the actual
specification
you say that yeah it's pretty straight
forward because it's the implementation
specification.
So it actually tells you like there's a function
that needs to take this and then
if the parameter
starts with that character then call
this function and blah blah.
So I assume that it was easy and
I had the same
expectations that everybody in the internet
has and URLs are extremely
easy and like yeah
it might be impactful
but when I dive into the specification
itself I realize that this is not the case
and even though you are not parsing
a single URL at all
if you call fetch on the
she's fetch right now
it calls URL
maybe four times before
returning a response
or if you just
say node index.js
it calls the URL parser
five times just to parse
the actual patch of index.js
So without knowing it you are paying
a lot of price and we assume that
it's extremely small
that's why nobody in the last
decade worked
on URL parsing in the whole
world and that was
a place that I
thought that we could shine
and we could write
a library about it and effect
millions and billions of
users worldwide.
Yeah it's cool I wouldn't have assumed that
the URL parser is called five times
when just parsing your index file
and I can definitely resonate with
thinking that a problem that small will be easy
and you can attest
it wasn't easy it blew up into three different
implementations across three different languages
and spanning eight months so
definitely a harder challenge
What were some of the challenges
that were involved in creating that?
So creating
and writing was
not a challenge
but optimizing and writing the fastest
one is. There are lots of HV
cases in URL parsing
parsers that you need to optimize
for and most of the URL parsers
out in the
industry used by really big
corporations they are not optimized
and I can give you a small
exemple that while I was investigating
and benchmarking I realized
that if you have a URL
let's say called
htps.wgoogle.com
and if you have another URL
that you have htps.wgoogle.com
flash that ends with a flash
it performs
two times slower than the initial one
on curl
and this was this is fixed
definitely of course but
this shows
the complexity of the state machine
that was initially
implemented
that initially written as a spec
because whenever you see a slash
specification then it says that you need
to go to the path state which
the path name of the URL contains
and path name has this initialization
saying that okay if it starts
with a slash and if it ends with this
if it has a state override
and blah blah and those kinds of things
then it makes it really hard to optimize it
and not everybody
if you're not looking directly for
that specific optimization could see it
then so we basically
spent a lot of time finding those
age cases and
also optimizing
and finding
how to
speed up the happy paths
in the URL parser
so for example your specification
states that the URL
whenever you see a hashtag
character the URL
will immediately go to the fragments state
but most of the usual cases
you don't ever see
a hashtag
because most URLs doesn't have fragments
if you are working on Node.js
so we basically optimize it towards this
and it contains several
different age cases and
things as well
and that's why we like initially
we implemented a pretty straightforward
parser which is
Aida URL version 1
whenever
we are seeing a component in the URL
let's say path name we are allocating a new string
we are making it
like a path name std string
whenever we see a query we set it to query
and then we were allocating lots of strings
and as a result
in Node.js we were returning
this whole array
which contains protocol, username
password, host, port
and those kinds of things in an array
and then we were
converting that array
to the properties of the
URL class
and because
there were lots of strings and because
v8 is extremely
slow on serializing and
des serializing strings
we written the whole
implementation from scratch
spent 2-3 more
months on it
and came up with a solution
that only returns
the starting and ending
in
indexes of each component
instead of returning whole
so if you have a href of the URL
the whole input string
and if you have a protocol and
which is the index that returns
the protocol which htps
and it's like 5
if you have a username and
which is equal to 5 again
this means that you don't have username
and so on so forth
then you can actually have 7
unsigned integers
and one
std string
to just cross the boundaries of C++
and JavaScript and this actually resulted
in maybe
70% improvement
so yeah
so there are some optimizations that we did specifically
for the other person and there are some
optimizations that we did specifically for
runtimes that have a cost
of crossing the boundaries
like not just yeah
I can really do this all night long
because not everybody is
interested about URL parts
I don't get
my wife is kind of bored about
talking about URL parts
I can imagine
my fiance has similar
gripes about me talking about coding
so
before we get on to like talking
more about perf
let's talk about some of the other
features that you've implemented for Node.js
have you implemented any other like
non perf related features or champion
Denny? yeah so
couple of months ago I implemented
.m file parser
one of the TAC folks
were interested
in adding that because
eventually we're thinking about adding
a Node.js configuration
file to the Node project so that
instead of having this huge
CLI with lots of arguments
you can just use that and
use that. One of the challenges
was that like we needed to
have a .m parser that supports
mode options so that you can
configure everything. So this is
what I did. Let me think
I recently added a navigator
and broke lots of packages
because I added
hardware concurrency
but I didn't add it user agent
so everybody was checking
if type of navigator
is not equal to undefined then
get me navigator.user agent
but user agent didn't exist so
yeah this was
pretty recent
yeah I think that's mostly
it. I mostly
hold myself to not add any
features because I don't like
discussion around adding those features
with benchmark
it's pretty easy, it's numeric value
I don't need to convince anybody
I just need to convince
compiler and benchmarks
but even
apparently even benchmarks
has lots of
drama around it
which made me question
my life
from time to time I can say that.
Yeah yeah, there's always the challenge of
like is the benchmark
really representative of the performance
as a whole, is it like an artificial slice
of something. We see that a lot
in framework comparisons.
So what they can say, let me tell
small thing about it
like
in the case of your outparser
I care about the name
that I put behind it which is my daughter's name
and Daniel
is a professor
that has respect behind it
so we
literally spent
couple of months on top of
actually implementing to just create
the appropriate benchmarks
and we
for example we crawled
the 100,000 websites in the world
and had a database
of a million or 2 million URLs
just to parse them as a dataset
we crawled BBC
because it's the most used
website in the world and produced like a
dataset of BPC URLs
we created a virtual machine of Linux
and we booted every patch
that
newly installed Linux has
to create a file URL
and so on so forth
so it's not about
producing the fastest one and it's about
also creating the most reliable one
because if someone comes and says that
your benchmark is wrong because if I put
a slash at the end of the URL
then I can make your code
like your code is extremely slow
so we didn't want to do it
so that's my take
on the whole benchmark stuff
that's happening all around
the JavaScript ecosystem right now
Yeah, I think
typically, and correct me if I'm wrong with this
but it seems like something like URL parser
which is a little bit
probably a little bit more deterministic
and like you can give it a
you know a finite defined set of inputs
it's just really about getting a large enough
sampling size of inputs to really test
performance and some other things
are more subjective
it's like how fast
does a page render
it's like well, you know, what do you mean
it's like how fast is the first element on the page
how fast is it complete
how fast is it visually complete
what does it mean, you know, there's a lot of like
subjective stuff that can start
going into some of the benchmarks which makes it
harder to. So most
people don't realize that there's
there's a
magical part of
benchmarking even in
um
problems like URL parsing because
with like
SIMD which is like single instruction multiple data
you provide hardware specific
performance improvements and on a
different machine that doesn't have a neon architecture
which is like in those or any other device
then your code might
be slower
so
it's extremely hard to say that
um my code
is faster than yours and I
kind of respect
the courage
of those people that can say that publicly
but I can't
even though I
know that
Ada is the fastest what we
do in the world right now
but if you look into Ada's website
you won't see that claim. Yeah, I've followed
some of the issues you're on with like the performance debates
and it's it seems rough where like
there is less argument
but it's very easy for someone to come and going
like well on my hardware
this is slow and it's just like
yeah and
and like if you if you have any
file system operations then it's
extremely hard to benchmark
this well because if you delete
and add the file million
times then you're not benchmarking
your code you're also benchmarking your
hard disk you're also benchmarking your operating system
and so on so forth so
it's extremely hard. Yeah
largely an unsolved problem like
a simple thing that I want is just like
I want some way to test that
my website is performant in the ways
I know it was one day
it's just so hard to do that in today's
modern computing world like you can't just say
oh here's a farm of servers
go run performance test
it's always going to be off by a little bit.
If you use performance
countens it's not so
if you use hardware
performance countens that are specific
like there's some solutions
that like M1
M2 machines are providing
using Xcode it will
always give you the same amount of
instruction count for
the same operation and
then the question becomes like how can
I reduce this number
from 12 to 11 and
if you do that it has direct implication
on the execution time as well.
So we are always
comparing the execution times
but execution times
might vary depending on the conditions
but the amount of instructions that
gets run it's not but because
we are benchmarking on Google Chrome
on top of Node.js
runtime on top of
another Go
written bundler
so there's lots of things that you have to do
and it's nearly impossible
to benchmark them with
100% confidence.
Yeah, yeah
it's hard. The more
abstractions you have between
what you're running and where you're
expecting it to run I think
the more sort of side effects you have to deal with
and everything.
So
you've
sort of been a pivotal part
of the Node performance team
so
how does that team
how do you decide what work
should be done
I mean yeah like who sort of
makes that decision what's the prioritization
how do those things come up
So
actually before answering that
I'm going to answer who decides
what needs to get implemented in Node.js
and there's an item
in the
onboarding document in Node.js
repository I'm not really quite sure
I'm not going to quote it I'm just going to say it out loud
Nobody
decides what needs to
get implemented you are the owner
of the project and you are the owner
of the thing that you are writing
so
you define the agenda
and the future of Node.js
The only part that Node.js
TSC interferes is that
if two different collaborators
are not in line about
adding a future about a change
or any other thing then Node.js
TSC comes in and makes
that
decision about
which one is right and which one we should go with it
So the same applies
to Node.js performance
theme as well there isn't any specific agenda
there is some agenda
for some people
because we see that
actually I see that
the internet and
other runtimes are performing really fast
and it's extremely
easy to spot what Node.js
likes it
and this kind of gives me the motivation about
where to look
because in order to find that optimization
I also need to spend a lot of time
to look into that so
if somebody, if a competitor
meaning other runtimes
do that
then they are actually helpful to me
because I am always looking for challenges
big or small and
if someone comes in
and says that then that defines the agenda for me
there are some questions
there are some challenges that I can't
contribute to
because of lack of my skills
or lack of my knowledge or lack of time
but putting them on the agenda
and putting on the performance repository
as an issue is also
motivating for other
engineers as well because
eventually we want to have a free
and open source
library
and we want it to be
we want it to be existing
in the next 5-10 years
et on a tout ça pour répondre
à la question
oui absolument
tu as mentionné les compétitifs
et cette performance inspirée
et je voulais juste vous demander
comment vous ressentez
des autres runtimes
qui sont en train de sortir
vous ressentez que c'est bien pour l'écosystème
comme vous l'avez dit
des improvements en performance
ont-ils été des challenges de cette phase ?
quel est votre perspective ?
je pense que c'est bien
d'avoir
des opinions, pas des opinions
je pense que c'est bien de avoir des différentes
des différentes tournes qui font le même
exactement
mais
d'autres runtimes qui sont en train de sortir
où l'EGIS est
en train de sortir des gens
et d'avoir plus d'argent
et d'avoir une source open
et non profit de l'organisation
a des défauts et des avantages
je
je suis
c'est
de la philosophie et de la science
en philosophie
quand vous l'avez appris
vous avez dévoilé le premier et vous le mettez
vous le répliez tout le monde
mais dans la science, nous n'avons pas besoin de ça
nous avons le knowledge que nous avons
et nous avons mis plus d'informations
et nous l'improvisons et nous le restons
pour que ça s'improvisera
ce que je n'aime pas de la situation
et ici c'est
le code
pour l'EGIS est open et personne
comme moi peut venir
et être un partage de cette organisation
et faire des décisions
et faire des décisions pour les TSC
et avoir l'admin de l'EGIS
donc
j'ai vécu que
ils ont tous contribué au EGIS
donc nous avons beaucoup plus
de performances
que toutes les trois runtimes
mais nous n'avons pas
et c'est la beauté
de la liberté et du capitalisme
et de tout ce que vous appelez
ces choses
je respecte tout le monde
mais
la question
avec le problème qu'ils tentent de
se solider est que
si je suis un employé payé
je ne contribuerai jamais
à ces runtimes
et les gens comme moi
ne me sentent pas de la même manière
et c'est un blocage
et c'est quelque chose que
le ménage ne peut pas
acheter plus de ménage
j'espère que c'est...
expliqué
c'est vrai
on a entendu des réponses
de la tension entre
la mode
d'être un source ouvert
qui est vraiment ouvert
et qui est en train de faire des projets
vers
Dino & Bun
d'être des organisations de VCs
et comment
les runtimes sont
vraiment difficiles
à faire dans le modèle de VCs
c'est comme, finalement
je pense que la chose logique
qui va arriver est que
si ces runtimes vivent longs
ils vont arriver à la même place
où ils sont mis à la foundation
parce que c'est des entreprises
qui ont des bouts
et qui veulent
avoir un futur de projet
vers
si nous regardons
Dino's case
ils sont
en train de faire des choses cloud
comme un stock de vallées
et des systèmes de queue
et des ad-ons
qui sont des produits cloud
qui sont des services
mais c'est un peu différent
d'être ouvert par le projet
de la première fois
c'est en ligne
ce que nous avons entendu
oui, donc
ça implique des gens de Node.js
la seule différence entre ces runtimes
et ce que Node.js est
un seul gars qui veut
faire le travail
et la plupart du temps
ce gars n'est pas payé
ce gars, les filles, les pronoms
ils ne sont pas payés
et ils sont en train de faire
l'effort
il y a un public PR
pour ajouter des supports locales
qui sont des supports de la vente
avec les compétences
de la vente
il y a un autre request
qui s'ouvre
pour ajouter des supports de FFI
pour réduire la stabilisation
et remettre la utilisation
de v8 dans l'équation
il y a beaucoup de choses qui se sont en train
et
les autres runtimes ont la luxe
d'expérimenter avec eux
et
essayer de faire des différents
libraires et des outils pour l'équation
et parce que
Node.js se met plus lentement
mais ça ne veut pas
que la technologie que nous avons
à développer
et que nous aimerions
maintenir Node.js n'est pas pas pas pas pas pas
je comprends le côté d'autre
où vous voyez un grand projet
qui veut dire que je voulais
contribuer à Webpack et changer
quelque chose super fondamental
je ne pense pas que, d'un aspect
d'une perspective ou d'un aspect, je peux faire ça
et je peux voir la même chose avec ces runtimes
j'ai l'impression que Jared ne l'a pas regardé
et que je ne peux pas changer
ça, on peut faire un truc de gris
si vous allez au Sean
qui est la maintenance
de Webpack et si vous dites
que je dois avoir un problème avec Webpack
et que nous devons faire ça
pour avancer Webpack
je suis 100% sûr
de ça, pas parce que je le connais
personnellement, je communique avec
il sera
ouvert à l'heure
si vous faites
des changements de breakage
qui break millions de futures
et qui cause beaucoup plus de pain
que ce qu'on va mettre
c'est ok
donc le même applies pour Node.js
tous ces
des autorités de runtime
ils contribuent à Node.js
mais c'est difficile
d'être
un bon engineer et de communiquer
et c'est le problème avec
l'écosystème
si on communique vraiment bien
je pense que
nous pouvons tous être
un partage de ce
partage de la runtime
il n'y a pas de Node.js
ou Dino, ou Barn
ou autre chose
il sera beaucoup plus bénéficiant pour tout le monde
j'ai le droit de dire ça
pour exemple, je vais vous donner un exemple
il y a
un de nos collaborators de Node.js
qui réjouis
les partages de Node.js
et Rust
et ça se démarre
plus vite que la implementation de la déploie
mais ça veut dire que nous devons ajouter Rust
dans notre CI
et
j'ai récemment été un membre de la déploie
c'est à dire
que je sais que les devoies sont
30 machines différentes
dans un range
de places
dans un range de compilers
et dans un range de systèmes de opérations
et avec ça
je sais que c'est très difficile
d'adresser un Rust tool
pour notre équation
parce que nous pouvons ajouter
ça va prendre un temps
mais nous pouvons l'adresser
et nous devons augmenter la chaine de Rust
pour le prochain verge
et nous devons faire le tout de suite
ça veut dire que
quelqu'un doit faire le travail
et mettre quelque chose
pour le projet, le réveiller
et contribuer à quelque chose d'autre
et aussi pour la prochaine fois
pour quelque chose d'autre
donc ce sont les déchets
et quand vous regardez de cette façon
vous allez faire un travail
vous allez faire tout de suite
et vous dites que je vais faire
ce que je fais le meilleur
ce qui est en train de faire
ça peut être plus facile
mais c'est le problème
10% de l'ensemble de l'Europe
ça prend le 90% de la vie
je ne sais pas si je le raconte correctement
mais c'est le problème
que tous les runtimes sont en train de faire
oui, je pense que c'est vrai de
d'autres projets de software
mais en fait, c'est le plus facile
c'est que
il y a toujours une chose plus facile
avant que vous êtes en train de faire le détail
et que vous comprenez les traitements
c'est toujours plus facile
parce que vous voyez le
de la façon de faire le travail
c'est le genre de choses que nous devons impliquer
il y a tous ces traitements que vous ne voyez pas
et puis
la maintenance est très difficile
surtout si vous vous êtes en train de
faire des plateformes de hard work
et que les gens s'estiment
des projets comme la note
donc c'est comme si vous allez
faire quelque chose comme la note
sur un pi, par exemple
c'est comme, qu'est-ce qui a à faire
et parce que
beaucoup de gens ne sont pas
en train de faire la boudre
ils travaillent à des niveaux de construction
ils disent que ça va juste travailler
et c'est comme, non, en fait, quelqu'un a
dû faire du travail pour faire ça
si vous regardez
si vous allez
à la note
sur la boudre vous verrez toutes les machines
différentes que nous soutenons
et
si vous allez à la note
sur la lait, vous verrez tous les tests
que nous avons et avec le projet
de note, le site, qui est à peu près
5000 tests maintenant
un seul test de la note
a un grand
implication pour le projet
et il y a beaucoup
de contributaires aussi
donc
et si vous regardez de différentes perspectives
on ne l'a pas oublié de la maintenance
et on ne l'a pas oublié de mettre des nouvelles
on ne l'a oublié de
nous nous ferons de
de la tenir et de la refusation
Nolges est à peu près
100, 200, 200 différents benchmarks
on a une machine dédicée
juste pour faire des benchmarks
mais
on a aussi beaucoup de régressions
Bum a beaucoup de régressions
Dino a beaucoup de régressions
donc ce n'est pas pour faire des choses plus vite
mais pour faire des choses plus vite
pour mettre des nouvelles refusures sur le top
et ne pas faire de régressions
et d'effectifs sur
d'autres plateformes
et je peux
certainement dire que je
brûle beaucoup de machines et beaucoup de utilisateurs
dans l'année dernière
je peux donner un de mes
les meilleurs exemples parce que
je suis super heureuse
que j'ai eu la chance
de
brûler beaucoup de
machines en même temps
dans un de les releases LTS
de la année 2018
on a élevé le partenariat de l'URA
tout était parfait et
j'ai élevé une optimisation pour les paramètres de l'URA
tout était parfait
et puis
quelqu'un a ouvert l'EPR, a ouvert une issue de la question
que si on utilise port 0
il s'arrête
parce que port 0
est une valeur falsée
donc j'étais basé en vérifiant
juste recently on a eu
une autre issue
en disant que
si on crée un URL
si on le set
à un host invalid
et puis si on le set
à un port valid
pour ce valeur
tout le processus est crêche
donc
ce sont ces choses qui se sont apportées
et ce qui est vraiment
fréquenté et aussi excitant
c'est que
Ada, le partenariat de l'URA
a plus de 1000 tests
je
a single-handedly élevé peut-être 100 tests
pour tests web de l'URA
pour augmenter la coverage
Ada a
un énorme impact sur l'éco-systeme
et l'éco-systeme
a converti
les tests de l'Adres
et ont trouvé 6 bugs
dans leur URL par rapport
par rapport à nos changements
et on a environ 80 %
de la coverage test
parce qu'on utilise github oss
mais sur tout le monde
on a écrit le plus vite
de toute façon
il y a un user qui s'arrête
c'est vraiment excitant
parce que
personne n'est pas safe
je peux dire
je suis 31 ans
et avant la note
j'ai toujours travaillé
avec des petits startups
les meilleurs users
que j'avais étaient 10 millions d'activistes
pour un mobile app
ou quelque chose
je peux facilement dire que
avoir cette option, avoir cette expérience
pour causer ce mal de honte
et aussi d'un peu d'adres
parce que l'Adres
a éprouvé la profondeur
de pas avoir une URL par rapport à 400 %
500 %
c'est une expérience
unique que les engineers
ne comprennent pas
ou ne rassent pas l'idée
c'est pourquoi je suis contribué
oui
si tu es dans un autre discipline
causant un bug dans votre bridge
c'est mal
tu n'as pas de crainte
c'est un endroit spécial
je sais
je peux le dire maintenant
parce que
quand ça se passe
je le fixe en moins de 24 heures
c'est pourquoi je peux le faire
mais en ce moment
c'était extrêmement stressant
parce que 20 personnes
ont des problèmes de opening
et on a piqué ces problèmes
juste pour s'assurer qu'ils ne ouvrent pas de nouvelles problèmes
et personne ne dit
que
tu as appelé tous ces problèmes
tu dois le fixer
personne n'a même dit un mot négatif
ils étaient tous heureux
et des notes positives
et les gens étaient tous bon avec ça
j'ai même brouillé le prochain
ce sont des choses qui se passent
et tu n'as pas de
trouver ces gens
à autre place
et ce que je peux aussi dire
c'est que
j'ai environ 170 comites
dans le code de note
j'ai
ajouté environ 100 000 lines
sur le code de note
et je le fais
en mon temps
pendant 4 mois
parce que quand je ouvre un PR
il y a une personne plus
plus intelligente que moi
pointant mes erreurs
ou mon code
et j'ai essayé de m'aider
sans me connaître
et c'est quelque chose qui est vraiment difficile
de faire en vie
je pense que c'est une partie
d'un part d'un part en source
qui est juste
la sort de mentorisation
l'aspect de la communauté
qui est vraiment valable
c'est vraiment cool
j'ai appris que je serai un père
dans le Nordconn
et quand j'ai appris
j'ai appris que je suis allé
à la barre et j'étais
j'ai l'air de chier
parce que j'ai voulu être un père
j'ai parlé à James et
Mathieu et Collina
et ils m'ont dit
ok, arrêtez tout, on va
vous acheter un whisky
et on va vous décevoir
et je les ai vus pour
c'était la première fois
le Nordconn était la première fois que j'ai rencontré
et c'était tellement valable
on en a parlé sur internet
et sur note
je pense que c'est pour ça que les friendships sont faites
j'ai eu la chance
de le faire
et de l'expérience
avec un projet de ce type
je pense que c'est un truc
motivationnel
pour notre artiste
je pense que
c'est une chose importante
pour le highlight
parce que dans le cours du podcast
on a parlé beaucoup de la source d'opinion
et les défis de la source d'opinion
sont quelque chose qui arrive
relativement continuement
de comment c'est bon pour en faire des liens
de la base
de la course
que la source d'opinion peut avoir
etc.
mais il y a une raison
pourquoi on a pris beaucoup de temps
et c'est un vrai côté
de cette connection humaine
de la mentorisation
et de la façon dont vous le sentez
ce sentiment de s'en faire partie
de quelque chose de plus grand
de faire un impact qui s'efface
beaucoup de gens
il y a des
fortes, positifs
culturels et de soins sociaux
et
c'est vraiment
un grand highlight pour sûr
c'est le final
les gens sont vraiment bienvenus
je ne sais pas d'autres projets d'opinion
mais non, parce que c'est le plus grand projet
que j'ai contribué dans toute ma vie
mais
c'est extrêmement réveillant en termes de friendships
et
expériences
on a parlé un peu de source d'opinion
on a parlé des aspects culturels et sociaux
et je l'ai mentionné
j'ai allumé des conversations que nous avons en passant
sur des des côtés des sourds
et puis on a parlé un peu
des différences
dans les rondeaux de JavaScript
et comment Dino
et Bun
sont basés sur la VC
et les notes sont en fondation
les aspects monétaires
ont un impact
sur comment les gens contribuent
et qui veut contribuer
il y a des choses
quelque chose qui serait vraiment intéressant
et j'aimerais entendre votre opinion
si vous avez des pensées
sur
l'opinion d'opinion
ou peut-être
ce que l'avenir est
ou votre expérience
ou quelque chose que vous voulez partager
parce que c'est toujours intéressant
de parler aux maintenance d'opinion
de l'argent
parce que vous avez eu beaucoup de temps
pour faire quelque chose pour vous
donc
à l'époque de Montague
je n'ai pas pu faire un compte de sponsorship
parce que mon résumé
au Unité d'Etat
n'a pas le droit
de me faire payer
d'autres que la compagnie que j'ai travaillé
et à cette compagnie
même si je n'ai pas utilisé le GSM
et que j'ai maintenu beaucoup de services micro
ce n'est pas la raison
que je contribue au GSM
le problème que nous avons
à voir maintenant est que
il y a beaucoup de choses que les gens veulent faire
ils veulent
ils veulent m'aider
publiément
mais quand le temps arrive
ils ne font pas de quoi
et je pense
mon récent exemple
c'est vraiment
mon récent expérience
c'est un grand exemple de ça
pour les gens qui ne savent pas
je vais en summariser
après le flash
de moi déclinant
un blog post de la compagnie
entre les expériences
parce que je n'ai pas payé pour ça
je t'ai envoyé un tweet et dis que
si j'ai ouvert le GSM
pour moi
et j'ai eu un taux
de plus de 100$
je n'ai pas payé
et je n'ai pas payé
4 solutions
4 sélections
et le temps a passé
et j'ai eu mon carton gris
juste recently
j'ai ouvert le GSM
et j'ai tweeté
et les amis m'ont aidé
j'ai ouvert le GSM
c'est presque la même impression
en termes de tweets
dans mon poste
même si
20%
de ces
50% de ces 800 personnes
qui correspondent
à 200 personnes
ils vont me sponsoriser
maintenant je n'ai pas
39 sponsors
et ils sont plus
plus petits
plus petits sponsors
donc ça me donne
l'idée que
ça prouve quelque chose
ça veut dire que les gens veulent les plus grands choses
mais ils ne sont pasOK
ils ne sont pasOK pour les payer
parce que
si vous sponsorisez
pour 100$, ça va bénéficier
mais ça va bénéficier des milliers
et ça vous donne
la question de
si ça va affecter
beaucoup plus de gens
pourquoi je suis le premier
qui a pris le temps ?
et que personne ne le fait
et nous allons
se terminer avec la même situation
que nous voulons avoir
c'est
extrêmement difficile
de monitiser
j'ai eu un couple de entreprises
qui m'ont personnellement
voulu trouver une solution
pour moi
de faire
ce que je fais
mais sous la
company
je n'ai pas envie de le faire
parce que
c'est trop pressant
si je peux le faire
c'est quelque chose d'autre
si c'est mon travail de temps
pour trouver des improvements de performance
je pense que je peux le faire pendant 3 ou 6 mois
mais après tout
mon manque de créativité
va me faire
et je suis fiers
que je ne peux pas trouver des optimisations
donc
la question est
il y a des entreprises qui veulent payer pour ça
mais ils veulent corriger ce travail
avec leur travail et il y a des entreprises
qui sont des produits qui sont dans cette équipe
mais c'est très
malheureusement
un ingénieur
qui va laisser leur travail de temps
et faire tout ça
donc
ça devient un problème
ça devient la situation de l'Education
des entreprises
comme IBM, Igalia
ou Red Hat ou Google
qui ont dédicé les gens
dans les services de l'Education
ou dans les services de l'Education
qui
ont pu leur propre agenda
par exemple, incluant
des supportes en Windows
et des supportes en ARM
et en le faire pour Tier 1
ou en approchant AEX
SmartWise
et des supportes en OSS
et tout ça
si on ne fit pas dans ces équipes
c'est très difficile de
trouver la raison pour
les entreprises
et puis le problème
devient
est-ce que je suis bien développé ?
est-ce que je suis bien dévralé ?
si je suis bien dévralé
je me suis appris
et je me suis reçu pour plus de gens
et peut-être 10 gens
me donnent 10$ par mois
c'est un système de travail que nous vivons aujourd'hui
juste d'ailleurs, je suis
regardé mes sponsors GitHub
et je l'ai remarqué que j'ai eu
et j'ai un total de 7$
pour tout le travail que j'ai fait
pour une source d'open source
c'est un
très bizarre feeling
c'est comme si quelqu'un s'intéresse
mais pas vraiment
pas assez pour moi d'actuellement
faire attention à cette chose
oui
le bon problème c'est que
les gens qui
m'ont dit
que mes sponsors GitHub
si vous me sponsorisez je vais prioritiser
ce que vous voulez que je vous optimise
ce qui sera bénéficial parce que
j'aime les optimisations
et ça va faire votre agenda
et il y a des gens
qui ont commencé à faire ça aussi
mais c'est pas
un bon nombre qui fait le travail
ou au moins
un travail partage
c'est une bonne chose pour avoir un certain sort
d'argent
mais oui, c'est pas feasible dans le long
ronde mais on va voir
je pense
il y a
un threshold
où quelqu'un
t'a pris 8 heures
et quelqu'un t'a pris 2 dollars
pour faire
ce genre de choses
et tu sais, j'apprécie
le sentiment
j'apprécie que tu fais quelque chose
mais peut-être que tu ne dois pas
ok, une dernière question
avant de nous changer
ce n'est pas sur le doigt mais j'ai été
adressé à tous les guests
qui sont venus
alors, quel est votre dévité le plus spécifique ?
fais-le-vous, et laissez-le
pour les pensées de collecteur
les urls sont les plus récits
que j'ai eu
j'ai appris
la performance
c'est pas juste de la salle
c'est quelque chose qui est très bas
c'est une solution
qui se fixe
dans un problème particulier
et si tu ne le fais pas
c'est de la salle
mais le go est aussi de la salle
et le go est aussi de la salle
ma plus récente
pas la plus récente mais la plus
impactuelle est ce que
à l'époque
je n'ai pas vu de la salle
je l'ai appris
peut-être 10 ans à l'école
mais je n'ai pas utilisé le temps
donc mon goût 2023
le goal de l'année de New Year
c'est de l'éloir de la salle
et c'est pourquoi j'ai appris la salle
et avant de ça, en 2022
c'était Rust
et c'est pourquoi j'ai appris Rust
et c'est tout ce que Rust et C++
ont fait
Rust est mieux que C++
et tout ça
tout le monde utilise Rust
pour faire des nouvelles choses
c'est extrêmement délicieux
parce que Rust
donne des choses très bonnes
et c'est vraiment bon pour la salle
de la sauveture et ces choses
mais en termes de performance
en enregistrant quelque chose
si vous commencez un projet
vous pouvez
enregistrer 2 fois
l'amount de temps que l'on prend
dans Rust
c'est très facile de l'éloir
mais vous allez toujours atteindre
la performance limitée
mais si vous enregistre
la function C++
qui, quand je l'ai 1er
j'ai écrit Aida
et c'était 0.1
c'était 10 fois plus lent
que Curl
parce que c'était vraiment facile
de faire des erreurs
mais si vous n'avez pas des erreurs
si c'est limité c'est extrêmement difficile
d'optimiser et de apprendre
ce que ces erreurs sont
et c'est tout
ce que la salle de Rust
et nous, la plus récente
c'est ce que c'est
donc nous avons évoqué un API
à Aida
et nous avons commencé à ajouter les libraries
nous avons une version Python
qui est peut-être 2 ou 3 fois plus
plus facile que Python's default journal
on a un Go1
qui est extrêmement facile
nous avons une Rust 1
version de Aida
qui utilise la code C++
mais par la C API
c'est 3 fois ou 6 fois
plus facile que le journal
et donc
je l'ai publié
et puis j'ai ouvert le PR
pour un de ces grandes libraries
pour remplir leur propre version
avec Aida's version
c'était beaucoup plus facile
et j'ai eu le benchmark pour le prouver
mais c'était
la main raison que l'un des
les maintenance me répondait
et m'a dit que la main raison
que nous sommes en train de réévaluer
c'est parce que, pas parce de la vitesse
mais parce de la sécurité de la mémoire
et la solution de la fast
et la solution pour
Rust
donc tous les developers de Rust
utilisent la vitesse et la sécurité
et ces trucs
comme un moyen
d'enmarker leur langue de programme
mais c'est
vraiment facile de faire des erreurs en Rust
mais c'est extrêmement difficile de optimiser
le Rust code
c'est un bon petit take
mon premier tourneur de la semaine est un doux
c'est facile
c'est juste de me mettre sur le feed
cet homme
a écrit
c'est difficile de expliquer
il a écrit un entier
en type script
types
donc ici dans ce blog
il a un petit bird
code avec type script types
et puis il a
je pense que je vais avoir ça, c'est vrai
un compiler Rust
qui compile
les types
dans un
type code
qui règle les jeux
et puis il a écrit un zig
règle le temps
pour règle cet output
et ça règle le jeu
je n'ai pas lu trop beaucoup
mais le nombre de magie qui est
ici est absolument fou
c'est un de mes préférés talks
que j'ai vu à type script comp
et vraiment un de mes préférés talks est
josh goldberg guest
de podcast
code tic tac toe et un peu d'autres choses
dans le type système
avec ça, vous pouvez jouer ça
et avoir comme un jeu
j'adore la
bizarre wizardry qui va dans
le type script type
et je suis sûr que les gens
en des langues typiques est
un gaffe au fur et à mesure
je pense que dans le background
il utilise le
parcer
c'est pure magie
pour moi, juste pour
lire et comprendre
ça semble
donc vous avez besoin de tout ce extra
pour le jeu, pour le jeu, pour le travail
c'est comme si vous étiez en train
de prendre un port dsl
pour jouer les jeux de cette manière
super
la question n'est pas
si on peut, si on peut
et on a répondu
oui on peut
si on peut
si vous êtes en train
d'avoir des codes bizarres
pour le devin, vous pouvez
vérifier le tivm
par zack overflow
il a un cool post sur cet appareil
ensuite on a audio flare
oui
donc
Cloudflare a élevé
ce
AI
comme
un product
computationnel
où vous pouvez faire
des models d'envoi
qui sont vraiment intéressantes
audio flare est un projet d'open source
qui est
comme un playground
à l'aéroport
utilisé Cloudflare's AI workers
donc
il vous permet de transcrire
des choses, faire des analyses audio
comme ce que vous voulez
mais
c'est un
intéressant utilisation
d'un cloudflare
AI workers
si vous êtes intéressés
à ce que ce soit et à quel point
vous pouvez faire des choses
je pense que
ce projet est un bon point
c'est assez intéressant
je ne sais pas vous
mais je suis un grand fan
de Cloudflare et des produits
qui se développent
comparé à la UIS
Cloudflare est beaucoup plus
et comment ils progressent
contre un produit stable
comme un petit step à la fois
c'est
intéressant
Andrew et moi avons parlé un peu
de productionnés des models AI
et de ce que ça pourrait faire
de construire un produit sur ces produits
c'est non trivial
dans les cas de
faire quelque chose
de productionnés
mais ces AI workers
sont vraiment intéressés
pour un set de cas
il y a
des limitations et des restrictions
mais pour un set de cas
c'est un moyen
de prendre un peu de models AI
des models ML
qui ont été réellement réellement réellement
pour utiliser un produit
donc
on ne peut pas dormir sur ça
on aime Cloudflare
ils ont fait beaucoup d'interessants
c'est cool
juste pour voir plus de productionnés
de la functionalité ML
d'ailleurs
qu'il y a un peu d'internet
un autre issue
je ne comprends pas
de Cloudflare
depuis que vous parlez de ça
comment
les pages, maintenant
Cloudflare workers, ont encore
un limitation de 10 megabytes
de déploiements
je veux déployer mon bloc
pour ça
mais ce n'est pas possible
oui, j'ai des
pages
et les pages et les workers sont un peu réellement réellement réellement
mais je pense qu'ils sont aussi tentant de travailler sur ça
pour le unifier
je l'ai posté
c'est un problème
très common
avec les parents
j'ai une caméra
que nous avons utilisée
pour faire sure que
il y ait un petit monitage
quelques semaines auparavant
nous avons entendu un bruit
de l'actualité
on nous a dit, comment est-il possible
c'est 2023
comment est-il pas
éclairant la communication
entre le délai et le transmettage
et apparemment ils ne l'ont
il y a un protocole
qui s'appelle
en fait, en invité la communication
l'actualité
les monitages de bébé
changent la fréquence
que ils sont transmettant
donc de temps en temps ils changent la fréquence
donc ça fait que c'est très difficile
de garder la fréquence
et de
avoir une compréhension
de l'instant
de l'entraînement
de toute la session
mais si vous avez un délai
d'un spectre très grand
et si vous écoutez un spectre
d'une grande range
de fréquences, de l'audio
de la radio, c'est très facile
donc je me suis regardé pour des solutions
pour trouver un hardware
seulement
une caméra qui n'est pas
élevé à l'internet
et je l'ai utilisé
un routier de dream
d'UQT
et j'ai trouvé ça
basicement, si vous avez un internet
et si vous avez un routier de dream
vous pouvez ajouter un 1 terabyte de micro sd
pour l'actualité
que vous avez en maison
et si vous avez une caméra de wire
qui est à 100$
dans ui.com
qui est beaucoup plus cher que ce que j'ai payé
pour cette chérie de bébé camp
vous pouvez avoir
une sécurité
et une caméra
je n'ai pas entendu de bonnes choses
sur unify
ce n'est pas le final niveau
d'automation de maison, il y a un rack
et on se loader avec un bunch de produits
je n'ai pas le rack
il y a un routier de dream
qui est
une solution de 200$
et on peut faire le même chose
cool, c'est génial
mais c'est le rêve
d'avoir un rack en maison
et je peux faire le même chose
je vais regarder
et voir comment je viens de mon
Raspberry Pi
ok, donc
ceci a aussi été pop-up sur ma tête
ceci est un replacement de viet
en russes, parce que nous savons que russes est le plus rapide
dans le plan
c'est un projet que vous avez
juste à savoir
qui est venu, si
un rs pack existe, quelque chose comme ça
doit aussi exister
je suis juste excité pour les billets
et j'espère qu'on a un bon
communiqué
si vous regardez
un replacement viet
qui est plus rapide
je vais vérifier le farm
il est en début
d'un projet
mais il fait des choses cool
pour les plugins
qui existent pour viet
et pour le rs pack
c'est un très grand difference
entre l'un des viet s'est étendu
je pense que la partie la plus
de ce produit est
que les supports sont
très fortes pour les viet
et les viet
qui sont dans un project rs
si ils ont trouvé la solution
je suis en train de lire le code
c'est vraiment intéressant
donc le vt team est
leur ré-routes
et je me demande
quel part de farm
ce farm est-il
aussi en faisant ça
ou en réplantant
la partie de la build
ou la glu
entre les choses
je ne sais pas, c'est intéressant
je ne sais pas vous
mais quand je vois un projet
je vais voir
les collaborateurs
et calculer
les facteurs de la build
avant d'avoir des décisions
on va voir où ça va
il y a beaucoup de compétition
mais comme vous avez dit
le plus triste
de la nouvelle façon
de la tooling JavaScript
c'est que les plugins ne sont pas plus
plus les plugins
et c'est le fait que le fait
d'avoir des tools qui
ne caresent pas les plugins
ou nous donnent l'obligation
pour que la build soit plus solide
c'est vrai
et aussi
j'ai envie de avoir
des nouveaux produits
pour que les components
puissent s'y réagir
d'une réelle application

réplantation
si je faisais
ce projet, c'est un bon call out
je vais probablement
replacer les calculs
pour que les components
puissent s'y réagir
et que les components
puissent s'y réagir
d'un exemple intéressant
qui est récentement réplanté
un ingénieur de Discord a évoqué
les réels de webpack
et ils ont vu un increase de 70%
de la vitesse
donc
il y a des exemples très intéressants
je suis très fier de l'RSPAC
je veux intergrer ça
mais je n'ai pas pu le faire
ils sont en train de faire un très bon travail
j'ai été en contact avec eux
avant que c'était public
et c'est vraiment bon
de voir une solution
100% compatible avec webpack
et de la solution de la vitesse
c'est incroyable comment ça se passe
notre webpack config
n'est pas simple
j'utilise des types
j'ai des loaders custom
j'ai des plugins custom
et j'ai pu les mettre
juste par replacer
un webpack avec un RSPAC
c'est déjà très long
ok
ensuite on a un sky silver
des guitars de PR
Paul Reed Seed
est une des entreprises
qui ont les meilleures guitars
après Fendash
et je n'ai pas oublié
c'est une série de signatures
par John Mayer
c'est signé
pas signé
mais électroniquement
signé par John Mayer
c'est une bonne résonance
j'ai récemment
l'année dernière
si vous regardez
une bonne guitare
avec un range de prises
100% sûre
que c'est la meilleure guitare
si vous soyez
des sounds similaires
comme John Mayer
je ne suis pas en train de regarder une guitare
mais c'est une belle guitare
oui
le bord est un Stratocaster
qui est un signature de Fender
mais oui
donc en fait
en fait John Mayer
il a été à PRS
et a eu la série de signatures
il y a deux versions
un de ces est un sky silver
un de ces est un sky silver
c'est une belle version
je pense
c'est génial
j'ai besoin de la guitare
et la dernière, on a WinterJS
de Wassmer
oui
c'est un projet
intéressant
il y a
WinterCG
que vous avez mentionné
je pense
je garde mon yeux
sur cette compatibilité
la story de Wassmer

Winter
est
un service de JavaScript
un service en russes
je pense
et je ne sais pas
c'est un part de
ce genre de JavaScript
exécutable
on peut presque penser à un model de la mode
de la mode de la mode
de l'exécution
on déploie
un
service en russes
c'est un service en russes
c'est la même API
c'est de Wassmer
c'est
en sphère
c'est intéressant
c'est un projet cool
je n'ai pas vraiment le temps
de le faire
mais
je n'en sais pas
je suis un peu de folks
de mon travail
de contribuer
et de
avoir un nom
simile de WinterCG
mais de WinterGS
c'est
un take de marketing que je ne pourrais pas faire
ils
s'en appellent
et je pensais qu'ils étaient relativement
je n'ai pas réalisé
mais je pense
je pense que c'est le point
de sélectionner un nom simile
de WinterCG
je n'ai pas même parlé de technologie
je suis juste en train de parler de la page de marketing
parce que ça définit le futur
de toute la technologie
qui le réclame et met leur nom sur cet article
ils vont définir le futur de la technologie
pas moi, pas tout le monde
il faut que tu réponds
les clés si tu dis que tu es le plus rapide
ok, ça fait des petits tips pour la week
merci pour les gens
merci pour les gens
c'était un épisode très fun
pour les gens de comment les J.S. ne travaillent
et comment tu as effectué la map de la route
merci pour les gens de parler
merci pour les gens de m'en parler
c'est une prévolution pour vous
et je vous remercie de tout le monde
merci beaucoup
c'est vraiment intéressant de entendre
toutes les choses
et surtout la part de la chambre
c'est cool
merci pour les gens de m'en parler



























Episode suivant:


Les infos glanées

Je suis une fonctionnalité encore en dévelopement

Signaler une erreur

devtools.fm:DeveloperTools,OpenSource,SoftwareDevelopment

A podcast about developer tools and the people who make them. Join us as we embark on a journey to explore modern developer tooling and interview the people who make it possible. We love talking to the creators front-end frameworks (React, Solid, Svelte, Vue, Angular, etc), JavaScript and TypeScript runtimes (Node, Deno, Bun), Languages (Unison, Elixor, Rust, Zig), web tech (WASM, Web Containers, WebGPU, WebGL), database providers (Turso, Planetscale, Supabase, EdgeDB), and platforms (SST, AWS, Vercel, Netlify, Fly.io).
Tags
Card title

Lien du podcast

[{'term': 'Technology', 'label': None, 'scheme': 'http://www.itunes.com/'}]

Go somewhere