- 88
- 90 602
Adventures in Nodeland - Matteo Collina
Приєднався 28 жов 2011
Views expressed are my own.
Fastify v5 is HERE!
Fastify v5 is now generally available! You can now install it with `npm install fastify`!
Here is the migration guide, listing all the deprecations: github.com/fastify/fastify/blob/main/docs/Guides/Migration-Guide-V5.md.
Here is the migration guide, listing all the deprecations: github.com/fastify/fastify/blob/main/docs/Guides/Migration-Guide-V5.md.
Переглядів: 2 063
Відео
What's new in Node js v22
Переглядів 3,1 тис.6 місяців тому
In this video, we walk through the Node.js v22 (and v22.1.0) announcements, and we analyze: 1. Novelties in recent V8 releases. 2. Potential startup speed improvements due to maglev 3. MASSIVE startup speed improvements due to NODE_COMPILE_CACHE (v22.1.0) 4. node run 5. new stream default HighWaterMark 6. glob 7. improved performance of AbortSignal and Web Streams We have also opened a few issu...
Improving Node.js fetch() by 10% - From flamegraph to implementation!
Переглядів 1,6 тис.7 місяців тому
In this live stream, I performed a simple optimization to Node.js fetch(). I started by analyzing a flamegraph, identifying a bottleneck and then removing it. PR: github.com/nodejs/undici/pull/3095
The Alleged 'End' of Node.js isMuch Ado About Nothing
Переглядів 8867 місяців тому
Despite the exaggerated claims about its decline, Node.js is thriving. Its continued evolution pushes the boundaries of what the modern web can do. We'll start by debunking myths about Node.js, showcasing its recent enhancements and robust performance in the tech landscape. The focus then shifts to Node.js's current role in server-side programming and cloud-native applications, emphasizing the ...
How I combined node:test with TypeScript!
Переглядів 2 тис.8 місяців тому
When using the new node:test library, I wondered how to integrate it with my TypeScript flow. However, I was baffled by the options. So, I had to build something new! Borp is a new runner for the `node:test` library. It combines support for code coverage and typescript pre-compilation while avoiding most overhead. It's the perfect testing companion for Node.js. Take a look at it at github.com/m...
Should you contribute to Open Source?
Переглядів 7739 місяців тому
Should you contribute to Open Source to land a job? You should contribute to hone your skills and give back.
Should Node.js remove npm from its bundle?
Переглядів 1,2 тис.10 місяців тому
The Node.js TSC is discussing the merit of Corepack and if it should remove the npm client from the bundle you all downloads. Specifically, there is no consensus on enabling corepack by default: github.com/nodejs/node/issues/50963. Learn more about corepack at github.com/nodejs/corepack. Do you use corepack?
How is a vulnerability adressed by Node.js!
Переглядів 38610 місяців тому
In this short video, we go through the various stages a vulnerability goes before arriving in a Node.js security release.
We fixed the Node.js watch race condition moving it to uv_fs_event! LliveStream 2024-01-15
Переглядів 31910 місяців тому
We did it! In this stream, we patched a Node.js bug that adds a race condition when recursively watching files on Linux (github.com/nodejs/node/issues/48437). Do you want to know how? Check out github.com/nodejs/node/pull/51406 ;).
LiveStream 2024-01-09 - Turns out removing a race condition from Node.js core is not so simple...
Переглядів 38110 місяців тому
In this stream, we are patching a Node.js bug that adds a race condition when recursively watching files on Linux (github.com/nodejs/node/issues/48437). Follow along the work at: github.com/nodejs/node/pull/51406.
LiveStream 2024-01-09 - Let's remove a race condition from Node.js recursive watch on Linux!
Переглядів 72110 місяців тому
In this stream, we are patching a Node.js bug that adds a race condition when recursively watching files on Linux (github.com/nodejs/node/issues/48437). Follow along the work at: github.com/nodejs/node/pull/51406.
What's going on with @fastify/vite?
Переглядів 2 тис.11 місяців тому
In this video, we go throught the evolutions of fastify-vite.dev/!
My 2023 in review / Happy Holidays
Переглядів 42611 місяців тому
In this vlog, I review my 2023, the things I've achieved and what I look in 2024!
Why I always include tests and docs when I release to npm
Переглядів 1 тис.11 місяців тому
Every week, somebody opens an issue about removing tests from one of my modules. I've decided to explain why.
NODE_ENV=production is a lie
Переглядів 4,4 тис.Рік тому
In the beginning, there were configuration files. Each environment had one committed to our repositories. Then, we discovered the light of the 12-factor applications and having environment-specific values set as environment variables. Then, NODE_ENV came along, and it broke our idyllic world. Libraries with millions of weekly downloads check for NODE_ENV=production to enable optimizations, chan...
The easiest way to deploy Fastify is...
Переглядів 2,2 тис.Рік тому
The easiest way to deploy Fastify is...
Generating Types without Climbing a Tree
Переглядів 1,5 тис.Рік тому
Generating Types without Climbing a Tree
How to make your Node.js API 5x faster!
Переглядів 11 тис.Рік тому
How to make your Node.js API 5x faster!
The first time we met was 2012 - My talk at Nodejsconfit 2023
Переглядів 566Рік тому
The first time we met was 2012 - My talk at Nodejsconfit 2023
LiveStream 2023-09-21 - Generating the test harness for Platformatic applications - Part 6
Переглядів 130Рік тому
LiveStream 2023-09-21 - Generating the test harness for Platformatic applications - Part 6
LiveStream 2023-09-07 - Generating the test harness for Platformatic applications - Part 5
Переглядів 172Рік тому
LiveStream 2023-09-07 - Generating the test harness for Platformatic applications - Part 5
LiveStream 2023-09-04 - Generating the test harness for Platformatic applications - Part 4
Переглядів 239Рік тому
LiveStream 2023-09-04 - Generating the test harness for Platformatic applications - Part 4
Why should not use EventEmitter for Asynchronous Operations
Переглядів 4,5 тис.Рік тому
Why should not use EventEmitter for Asynchronous Operations
Implementing Usage Metering with OpenMeter, Fastify, and Platformatic
Переглядів 954Рік тому
Implementing Usage Metering with OpenMeter, Fastify, and Platformatic
LiveStream 2023-08-07 - - Writing tests for Platformatic applications - Part 3
Переглядів 123Рік тому
LiveStream 2023-08-07 - - Writing tests for Platformatic applications - Part 3
LiveStream 2023-08-03 - Writing tests for Platformatic applications - Part 2
Переглядів 121Рік тому
LiveStream 2023-08-03 - Writing tests for Platformatic applications - Part 2
LiveStream 2023-07-31 - Writing tests for Platformatic applications - Part 1
Переглядів 288Рік тому
LiveStream 2023-07-31 - Writing tests for Platformatic applications - Part 1
LiveStream 2023-07-27 - Platformatic OpenTelemetry, Platformatic Wizard and many releases
Переглядів 141Рік тому
LiveStream 2023-07-27 - Platformatic OpenTelemetry, Platformatic Wizard and many releases
Thank you !
This is awesome Matteo, looking forward to giving V5 a spin! great work :)
It's fine that YOU have decided there should be a way people can reproduce a repo, but you can't mandate others to do so. Hence you adding ALL the files, regardless of their usefulness to 99% of the world, when you clearly plan to never delete the repo in a mute point.
Thank you Matteo and collaborators. For any devs new to the Fastify ecosystem as I was 2 weeks ago, it may take a couple days to get your head around needing to add a plugin to do anything (/multipart for any file upload, for example), but once you get into the swing of that mindset, just leave npm website open and search, and there is of course a plugin for most everything. Code size stays lean! Forward with Fastify5!
Will update immediately! Long live fastify!
well how to fix fastify-plugin: @fastify/sensible - expected '4.x' fastify version, '5.0.0' is installed
It never is ok i already had some libs failing :D
💚🔥💚🔥💚
I'm confused whether he's on cocaine, weed, or drunk.
He is on work 24/7 thing. This man a hard working developer who brought very much value to js ecosystem.
Thank you and the Fastify team so much for the excellent software that you make!
Fastify!
🔥
Might want to add a cut from 3:18 to 3:25. Seems like that slipped through!
When coding I believe the best practice is: anytime a function is marked as deprecated then act immediately recoding it in the new way. Deprecated should not be seen as "use it until the code won't be working anymore", but "it's just a favor that it's still working"
🎉
🔥
How do you learn English? Can you give some advice on this?
Thank you Matteo, your kindness and willingness to share expert knowledge is so welcome! Had you thought perhaps to put a link to this vid on your fastify npm page? New and existing @fastify users are sure to benefit from watching.
Beautiful! <3
The more I follow you, the more I think Linus is to Linux what Matteo is to Node. Wonderful job (congratulations to everybody)! Proud user of Fastify
wow
Hey Matteo! Pino is great but How can I send logs to cludwatch using transport? is there any libraray available?
So the event emitter is designed for async purpose, not async usage?
when try to find just "how to run" but yet, another dude with another js package
I prefer the composer (php package manager) approach to letting you as a consumer decide if you want the tests and the docs by passing through a flag. Let's the downloads be fast but if you as a consumer want the whole thing, you can go ahead with it.
you rock dude
This project looks amazing, but I am stuck at the getting started part because there is no TypeScript getting started formula. I cannot figure out if I have to use tsc or when to use tsc to use fastify/vite.
I have the same problem
Just discovered this channel and it's amazing! Thank you.
Thanks Matteo
Hey Matteo, loved your streams nodejs video. Curious to know how you got into contributing to node and just creating your own thing essentially?
I got into Node.js because I started to find bugs, and I chased them there!
I wanna know, if in the feature, Typescript would be supported by Node Js ?
Most important stuff in this video: you take paper note, I'm on your team :)
is the WebSocket stable?
Not yet!
hi is there a way to contact you.
yes! What do you need?
What tool did you use for such a nice flamegraph ?
github.com/clinicjs/node-clinic
Hi wonderful video! I was just wondering if I use typebox typeproovider, will typebox be used for schema validation and serializarion too? From what I understand from docs is that fastify uses ajv under the hood for schema validation and that it is very fast, is typebox similar in performance if it's used rather than ajv?
Am I the only one who noticed this weird drop in downloads at the end of the chart? How could this happen
It might be due to holidays
Great video! Thanks for making Node.js more approachable for developer
Thanks for the video
It's not about execution speed. I think making JavaScript simpler and more consistent is super important for its ecosystem, there are just way too many tools, linters, build systems, package managers, different ways to import modules, type stuff, and low quality npm packages out there-it's a lot to handle! While other platforms are also tackling this issue, I gotta say, Node is doing a pretty good job of supporting the growth of the ecosystem.
Your sound is a bit low.. or is it just me?
thank you!
great talk Matheo, tks a lot
I like the glasses, make it a regular thing ;p
haha
I used Nodejs and Bun on the same code, and I was able to get 761k requests in Nodejs and whereas in bun 1.8 Million requests in the same duration. The workload was login, where we provide email and password in json to the server, search user in postgres, store the session in redis and return session in the cookie. Why would I use Nodejs when I can use the same code to get better results in other JS runtime?
Is benchmark code open source? What NodeJS framework you use at that benchmark? Can you share more info? Thank you very much
I feel like it doesn’t really matter on a real production environment where you are not limited by the processing power of the runtime but rather by the bandwidth or other factors that are out of the development scope.
Great new module!
19:30 Let's pooop! :DDDD
You should try to use SWC with ts-node ;P
Thanks for sharing. Luckily I'm programming since 8 years old. So 27 years of programming experience ;P
Does this only work with promise.all? How about if I send same request out of promise.all? will that also return from cache ?