Joyee Cheung @joyeecheung.bsky.social · 30/09/2026Food at @nodeconf.eu in Bologna is just another level 🥹 2141
Joyee Cheung @joyeecheung.bsky.social · 28/09/2026Managed to get my travel document back in time to make it to Bologna today…and sure enough they now check passports and visas even for flights from Spain 🤨 390
Joyee Cheung @joyeecheung.bsky.social · 05/09/2026Landed fixes in GCC & Clang for [expr.static.cast]/8 wrong-code bugs when investigating a V8 bug related to it. Previously: enum Flag : bool { kNo, kYes }; static_cast<Flag>(2); // kNo in GCC ❌, kYes in Clang ✅ static_cast<Flag>(0.5); // kNo in GCC and Clang ❌ 192
Joyee Cheung @joyeecheung.bsky.social · 04/09/2026Gem of my trip to Astorga: Palacio de Gaudí! Beautiful inside out and there is a very interesting epigraph museum in the basement 😇 Cathedral is great too, but if you put it next to Gaudí…😬 0100
Joyee Cheung @joyeecheung.bsky.social · 12/08/2026Weather was not particularly nice but I did see some of the eclipse :) 0190
Joyee Cheung @joyeecheung.bsky.social · 08/08/2026Added some new commands to the GDB & LLDB plugin for V8.. `v8 source`: shows the JS source of the selected frame `v8 isolate`: find the isolate address in the current thread, works from the coredump too (implementing that in LLDB was quite a bit of challenge!) 0153
Joyee Cheung @joyeecheung.bsky.social · 27/07/2026There wasn’t a heatwave in the forecast when I planned my vacation in Burgos but there will be one soon according to the current forecast 😅 Anyways it’s fun to walk around here and see the tomb of El Cid, who was the first Spanish figure I knew (from playing AOE2 when I was a very small kid)! 1100
Joyee Cheung @joyeecheung.bsky.social · 16/07/2026I haven't worn heels in ages and today I was on heels for a whole day to look formal 💪 (OK they are wedges. But still!) 060
Joyee Cheung @joyeecheung.bsky.social · 14/07/2026TIL `git history split`!! 😍 lalitm.com/post/git-his...lalitm.comThe git history command deserves more attentionWorking with lots of changes in parallel on git can be painful. You end up juggling branches and commits, and running scary rebase -i commands that can leave your tree in a half-broken state if you so... 4446
Joyee Cheung @joyeecheung.bsky.social · 10/07/2026Anyone using --use-largepages in real-world deployments? Just opened an issue about possibly deprecating it (if nobody is using it) to reduce the maintenance churn github.com/nodejs/node/...github.comFuture of `--use-largepages=on` · Issue #64408 · nodejs/nodeThis was added back in 2018, some background can be found in this issue #16198 - from what I can tell we opted into a user-land relocation to work around the fact that for most kernels in the wild,... 063
Joyee Cheung @joyeecheung.bsky.social · 08/07/2026Made the new debug helper plugins work for Node.js + bleeding edge V8 🌟 Verified it works in LLDB (Linux, macOS) & GDB (Linux), both in live and coredump debugging Going to backport the patches to Node.js when the object inspection is more polished and it stablizes bit more.. 0113
Joyee Cheung @joyeecheung.bsky.social · 07/07/2026Landed a few improvements to the error reporting for require(esm) with top-level await (behind --experimental-print-required-tla for now): - No longer need to run the code to collect the TLA locations, so it can be enabled by default soon - Added require stack and location metadata to the error 1378
Joyee Cheung @joyeecheung.bsky.social · 01/07/2026Somehow I find myself starving here again, this time sent by an ambulance to the emergency (two very nice people called the ambulance when they saw me in pain after spraining my ankle). Now that I’ve waited past 11pm, maybe I should just go to bed (if I can do that today) on an empty stomach.. 5130
Reposted by Joyee CheungNode.js @nodejs.org · 01/07/2026New to open source, or wondering how to get your first Node.js contribution landed and released? Check out our new first-time contributors guide, with practical tips and answers to FAQs about working with our volunteer-driven model. bit.ly/4avNtP2github.comnode/doc/contributing/first-contributions.md at main · nodejs/nodeNode.js JavaScript runtime ✨🐢🚀✨. Contribute to nodejs/node development by creating an account on GitHub. 1377
Joyee Cheung @joyeecheung.bsky.social · 28/06/2026Amazon: your external monitor will be delivered next Wednesday Me: okay Amazon on Saturday: hey are you home, your external monitor is here Me: oh no I am not, please come back on Monday Amazon on Sunday: hey are you home, your external monitor is here Me: you deliver on Sunday?! 0150
Joyee Cheung @joyeecheung.bsky.social · 24/06/2026A while back when I was sharing my screen my sister asked: why do you programmers use dark backgrounds? Last week I was projecting my terminal/editor to my team and to make it easier to see on the projector screen I switched to light themes. Now I start to wonder why I even use dark themes too 🧐 7240
Joyee Cheung @joyeecheung.bsky.social · 23/06/2026Had a great Igalia week last week, @lukel97.bsky.social, Cathie and I fed other Igalians some Zongzi, told them the story of the Dragon Boat Festival and taught them how to write Chinese words related to the festival! (Forgot to take a picture of our table but I have a picture of preps ^^) 1171
Joyee Cheung @joyeecheung.bsky.social · 11/06/2026Today I gave a talk JSNation about the life cycle of ESM in Node.js, how it differs in other environments and the new features that will affect these stages. Slides: github.com/joyeecheung/...github.com 13812
Reposted by Joyee Cheungpatak @patak.cat · 08/06/2026I re-watched last year Joyee's @webengineshackfest.org talk. I can't recommend it enough. There are many lessons on the require(esm) story. If you want adoption, meet developers where they are, build bridges for them to move to the future you want.m.youtube.comJoyee Cheung - Bridging CommonJS and ESM in Node.jsYouTube video by Web Engines Hackfest 0245
Joyee Cheung @joyeecheung.bsky.social · 06/06/2026Moving along with the debug_helper-based LLDB & GDB V8 plugins...this now supports basic object inspection! It was fun to write tests that deliberately corrupt the memory and make sure the plugin falls back gracefully, something I've never tried before when maintaining other plugins :D 0100
Joyee Cheung @joyeecheung.bsky.social · 28/05/2026I've been mostly working on remote servers as my "sandbox" via vscode remote ssh for a while, as local containers don't offer the build power I need. Two tricks that made it easier for me: 2181
Joyee Cheung @joyeecheung.bsky.social · 28/05/2026Taking minutes at 6am and neither my brain, nor my ear, nor my hands are working 🫠 0110
Reposted by Joyee CheungPhil Eaton @eatonphil.bsky.social · 20/05/2026I chatted with @duswnchl.bsky.social , based in South Korea, who works at the open-source consultancy, and worker-owned cooperative, @igalia.com. We covered her experience over the last 15 years working on WebKit and Chromium. There is no paywall; give it a read! theconsensus.dev/p/2026/05/20... 12710
Joyee Cheung @joyeecheung.bsky.social · 21/05/2026Sometimes I forget how inefficient public healthcare is in Spain that I make an appointment right before lunch time, then wait for two hours without seeing the doctor and looks like it might take another two hours. Maybe it’s better to forget about the doctor and feed my immune system instead.. 340
Reposted by Joyee CheungNode.js @nodejs.org · 19/05/2026Do you use Node.js on Alpine Linux? We are looking for volunteers to help us bring Alpine to "Tier 2" where it would be built and released through the normal CI process. If you can help, let us know: bit.ly/4v03NiWbit.lyPromote Alpine Linux out of experimental to be a tier 2 platform · Issue #62764 · nodejs/nodeWhat is the problem this feature will solve? We currently have a significant number of users of Alpine Linux (Linux using musl as its libc implementation). For the direct tarballs from the unoffici... 13611
Joyee Cheung @joyeecheung.bsky.social · 18/05/2026Lately I've found myself repeating the same explanations to different people about how Node.js and V8 build/test/stay in sync with each other. To reduce the parroting, here's a blog post about the workflows, challenges I see, and some hands-on tips joyeecheung.github.io/blog/2026/05...joyeecheung.github.ioHow Node.js and V8 keep each other working - workflows, challenges and tipsRecently I’ve found myself repeating the same explanations to different people about how to test a V8 patch in Node.js, how to patch the Node.js fork run in V8’s integration CI, or how to get these pa 03311
Joyee Cheung @joyeecheung.bsky.social · 13/05/2026Walked into the kitchen to finish cooking with the marinated ingredients, found someone sent by the city council to repair the building facade standing right outside my window on a scaffold, looking at my messy counter 😅 020
Reposted by Joyee CheungAntoine du Hamel @aduh95.bsky.social · 07/05/2026Node.js 26.1.0 is out, with a new `node:ffi` module, `crypto.randomUUIDv7()`, and many more features and bug fixes. Full changelog and download links at nodejs.org/en/blog/rele...nodejs.orgNode.js — Node.js 26.1.0 (Current)Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts. 0379
Joyee Cheung @joyeecheung.bsky.social · 07/05/2026Landed a set of LLDB & GDB plugins in V8 to help inspect JS states in a live process/coredump together with native states ✨ The initial implementation just supports JS stack trace annotations in bt; support for object inspection is coming up! chromium.googlesource.com/v8/v8.git/+/... 2232
Joyee Cheung @joyeecheung.bsky.social · 05/05/2026For those who build or redistribute Node.js - as the V8 implementation of temporal depends on temporal_rs, this also means starting from v26 building Node.js fully requires a Rust toolchain. See github.com/nodejs/node/...github.com 1256
Reposted by Joyee CheungRafael Gonzaga | Node.js @rafaelgss.dev · 05/05/2026Node.js v26.0.0 is out 💚 Temporal API enabled by default, V8 14.6, Undici 8, and key deprecations as we keep modernizing the platform. Check it out nodejs.org/en/blog/rele...nodejs.orgNode.js — Node.js 26.0.0 (Current)Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts. 112735
Reposted by Joyee CheungNode.js @nodejs.org · 04/05/2026The 2026 Node.js London Collaboration Summit trip report is officially live! 🚀 We gathered 50+ contributors to discuss the biggest technical shifts coming to the runtime. Big thanks to Bloomberg for hosting! 🇬🇧 Check out the full recap and recordings here: bit.ly/3OHPLmzbit.lyNode.js — Trip report: Node.js collaboration summit (2026 London)Node.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts. 02110
Reposted by Joyee CheungJesse Alama @jessealama.net · 30/04/2026I'm happy to announce Thales, a TypeScript compiler and JS engine in Lean. Thales compiles a subset of TypeScript to Lean via a shallow embedding. Thales is a bridge for TS programmers into Lean's program verification toolset. Check out github.com/jessealama/t... to get started.github.com 74712
Reposted by Joyee CheungRob Palmer @robpalmer.bsky.social · 24/04/2026Node excitement 😉 Congrats to @targos.dev on landing the V8 14.6 upgrade in upstream Node, heading for Node v26 which will be released very soon 🎉 This is the first version of V8 in Node to support unflagged Temporal 👍 github.com/nodejs/node/...github.comdeps: update V8 to 14.6 by targos · Pull Request #61898 · nodejs/nodePR for previous version: #61681 77913
Joyee Cheung @joyeecheung.bsky.social · 17/04/2026Had a blast in London! Thanks @tchetwin.bsky.social, @legendecas.bsky.social and many volunteering Bloombergers for organising a great Node.js collab summit 😇 This was one of the most attended summits I’ve been to, so didn’t get to say hi to everyone, but very happy to see many new faces! 1192
Joyee Cheung @joyeecheung.bsky.social · 13/04/2026RFC: I have a new proposal to add new vm Module primitives and a SourceTextModuleLoader API to bring the `--experimental-vm-modules` out of experiments! github.com/nodejs/node/...github.comProposal: new `vm` module primitives & loader API for ESM customization · Issue #62720 · nodejs/nodeThis proposes new vm module primitives that aim to replace the existing vm.SourceTextModule and provide a high-level loader API for ESM (specifically SourceTextModule) loading customization. Consid... 0264
Joyee Cheung @joyeecheung.bsky.social · 11/04/2026TFW you have a meet up next week and you even have a session to facilitate but your tonsils are acting up and your voice is now broken 😅 150
Joyee Cheung @joyeecheung.bsky.social · 07/04/2026Just landed in London and planning to go to the GitHub social club in London this afternoon. Wondering if anyone here is joining too, happy to go say hi there! 080
Joyee Cheung @joyeecheung.bsky.social · 07/04/202630 minutes into sleep and I got woken up by iPhone’s bed time alert and I couldn’t fall asleep again. This must have been the most stupid feature ever… 050
Joyee Cheung @joyeecheung.bsky.social · 03/04/2026A few days in and I think my brain is gradually getting used to it. It’s amazing how a color scheme (or the familiarity of a particular one) can affect your speed of comprehension of the code but it’s useful to force yourself not to get locked into a specific set of schemes… 050
Joyee Cheung @joyeecheung.bsky.social · 03/04/2026Finally landed this PR that has been delayed for all sorts of reasons.. Hopefully this will help get rid of the "VSCode remote SSH getting stuck connecting to my server" problem caused by the WebAssembly memory allocation issue for most people when it flows into LTS! github.com/nodejs/node/...github.comsrc: do not enable wasm trap handler if there's not enough vmem by joyeecheung · Pull Request #62132 · nodejs/nodeThe first commit is a backport of https://chromium-review.googlesource.com/c/v8/v8/+/7638233 This complements --disable-wasm-trap-handler and allows users to keep wasm functional in an environment ... 2122
Joyee Cheung @joyeecheung.bsky.social · 30/03/2026Just updated vscode and now I am not sure if I should just get used to the new default color scheme or set it back to the old one... 3100
Joyee Cheung @joyeecheung.bsky.social · 25/03/2026This must've been one of the most challenging things I've worked on in a while. Thanks Bloomberg for sponsoring my work on this, and everyone who helped shipping a fix in time! 15713
Joyee Cheung @joyeecheung.bsky.social · 25/03/2026Wrote a blog post about how this works: joyeecheung.github.io/blog/2026/03...joyeecheung.github.ioTeaching gdb to Unwind V8 JIT Frames on x64Recently I landed a custom Python-gdb unwinder in V8 that allows gdb to unwind through V8’s JIT-compiled frames on x64. During the process, I ended up digging into gdb’s internals to figure out how to 0183
Reposted by Joyee CheungJames @43081j.com · 21/03/2026new post on my personal blog. i think these three areas often go unexplained, so hopefully this explains why some of these packages exist. these are fine to exist but the majority of developers shouldn't have to pay the cost for them.43081j.comThe Three Pillars of JavaScript BloatA brief look at the three main causes of bloat in our JavaScript dependency trees, and how we can start to address them. 1315045