Sign in with Twitter

Username:

Mathias Bynens @mathias Munich, Germany

I work on @ChromeDevTools & @v8js at Google and on ECMAScript through TC39. ♥ JavaScript, HTML, CSS, HTTP, performance, security, Bash, Unicode, i18n, macOS.

918 Following   69,729 Followers   21,454 Tweets

Joined Twitter 1/4/07


Introducing Rome: A linter for JavaScript and TypeScript. The first in a suite of tools for frontend languages that… https://t.co/u6aS647lz2
Retweeted by Mathias Bynens
8/9
2020
@wycats @chicoxyzzy @rdvornov @mraleph @bmeurer Run your app with the --trace-turbo flag, e.g. `node --trace-turbo… https://t.co/EezI2Uhpz3
8/8
2020
If you love IEEE 754 (who doesn't? 😅, you're going to love Herbie - a tool that tells you how to rewrite your maths… https://t.co/qPoe72vreC
Retweeted by Mathias Bynens
8/7
2020
@Jack_Franklin Nah-ah! new Set('foο'); // → Set { 'f', 'o', 'ο' } U+03BF GREEK SMALL LETTER OMICRON 4 lyfe @bramus @belgac The intellisense use case you describe sounds like an editor feature request (rather than a request… https://t.co/CArMZFut9z @bramus @belgac The current syntax matches destructuring syntax, where the destructured properties are listed on th… https://t.co/Q6LnLNuoz2
8/6
2020
"content-visibility enables the user agent to skip an element's rendering work, including layout and painting, unti… https://t.co/d8bcri86WN
Retweeted by Mathias Bynens @PKodmad @JecelynYeen @ChromeDevTools Sure: puppeteer.launch({ executablePath: '/path/to/chrome' }); https://t.co/xWOH2Oau5i @JecelynYeen @PKodmad @ChromeDevTools Here's how you can do what you want with Puppeteer: https://t.co/6LAl1kq4Gl I… https://t.co/8Mri9VZbPh @garethheyes @aemkei Ah, good one! Also, the semicolon at the end of " (or ") can be omitted: https://t.co/ZRWYmk3LyL @aemkei @garethheyes If you wanna code golf: window → self " → "
8/5
2020
@FrannnGomezzz This does not sound like a language-level feature, but rather something you'd want to implement in your own code. @NicoloRibaudo @TechAtBloomberg Cool stuff Nicolò! Very excited to see this.
8/4
2020
@littledan So sorry to hear that, Dan. Safe travels!
8/1
2020
It's time to enable modern JavaScript npm libraries. This post by @GaryLChew explains the current state and ways f… https://t.co/1QThen24gW
Retweeted by Mathias Bynens @KevinLozandier @mgechev @v8js @webkit Indeed. V8 had implementations for both flavors (implicit proper tail calls… https://t.co/UvQSk6pzxj @DasSurma Sounds like Promise.any is even closer to what you want! https://t.co/HrkRGVn202 Promise.race short-circ… https://t.co/pif04r5Svb @hashseed These Unreal Engine 5 demos are getting ridiculous
7/31
2020
@tomayac @othermaciej @pizlonator @bmeurer V8 has the same goal. In practice however, bugs are A Thing and performa… https://t.co/dlEh9AsiU1I'm always using percents in CSS, but often have to stop and ask: "% of what?" hint: it's probably not what you th… https://t.co/fEkhqgvtQs
Retweeted by Mathias Bynens @billticehurst https://t.co/LU6CjdJ1sn @matt_pratta @Una Are you talking about the DevTools dark theme? Here’s how you can enable it: https://t.co/1AFDNF3C3v Works on Linux too.
7/30
2020
@cbirdsong @zachleat @supports That's what the linked tweet is doing?
7/29
2020
@zachleat Using images for wide-gamut colors instead of falling back to sRGB. https://t.co/hTpxkW5Nkz @tomayac @pepelsbey_ Should work if you wrap the YAML string in quotes @tomayac @rob_dodson @simevidas @samthor https://t.co/iYmACRzQl9 definitely contains a few HTML entities (e.g. `&ns… https://t.co/yyIVn9Navq @tomayac @rob_dodson @simevidas I see. So then is this is a bug in how we generate dist/en/algolia.json (not decodi… https://t.co/TzXOtn5y3X @tomayac @rob_dodson @simevidas Are we sure this is what happens in search? How can I repro this? I tried… https://t.co/ij0FgU2nbw
7/28
2020
@jaffathecake @MucknFluff @ChromiumDev @_developit Not as far as I know, but I’d argue you don’t need it: all major… https://t.co/wy8JMJFoVp
7/27
2020
The `item` method for indexables like arrays hit Stage 2 a few days ago. Finally you can get the last item from an… https://t.co/rI11IhKHkN
Retweeted by Mathias Bynens
7/25
2020
@ambrwlsn90 @ChromeDevTools I can’t find where it’s mentioned 🤔 Anyway, just want to make sure we understand the re… https://t.co/mNnaeDrqLO @ambrwlsn90 @ChromeDevTools https://t.co/9GBvpKrysQ @ambrwlsn90 Hi Amber, did you use “Filter: show all” when testing in @ChromeDevTools?
7/24
2020
Excited to announce our USENIX Security'20 paper: “Timeless Timing Attacks: Exploiting Concurrency to Leak Secrets… https://t.co/ESAuIq47KP
Retweeted by Mathias Bynens @_shu @littledan other aliases include💲, 💰, 💸, 💵, and ₿ @_shu @littledan I propose using the global $ for this. It’s not like anyone is using it #WebCompat @Una Happy birthday Una! @littledan proper tail callsNew JavaScript language features in V8 v8.5: ➡️ String.prototype.replaceAll ➡️ Promise.any & AggregateError ➡️ log… https://t.co/kK7Nx67F6u
Retweeted by Mathias Bynens
7/22
2020
At Mozilla, we want the web to be capable of running high-performance applications so that users and content author… https://t.co/wVbjEI5O2f
Retweeted by Mathias Bynens @JakeMorrison24 I wrote https://t.co/MU0wtkOBa3 to explain it — hope that helps! @ThisKatha @GoogleDE @gdg @WomenTechmakers Congrats!!!🔥 What’s new in V8 v8.5? Promise.any, String#replaceAll, logical assignment operators, WebAssembly multi-value and… https://t.co/WlUq0whirx
Retweeted by Mathias BynensNew JavaScript language features in V8 v8.5: ➡️ String.prototype.replaceAll ➡️ Promise.any & AggregateError ➡️ log… https://t.co/kK7Nx67F6u @kennethrohde @v8js @CharlieCroom Thanks for the intro, Kenneth! Hi Charlie, would you be able to help? The suspen… https://t.co/5jpoUUxpPA @echwa @v8js @hl_bowen Thanks for the intro, Damien. Hi Heather, would you be able to help? The suspended account is @leszekswirski.Do you work at Twitter? Would you like to help a @v8js engineer re-instate their account after a wrongful suspensio… https://t.co/4g4I1hi9Kj @brianloveswords Still bummed out we had to match this behavior for replaceAll 😞 @LarsdenBakker18 …but if you want to include it (e.g. so that you can copy-paste the data URL to view it as a separ… https://t.co/l9dyV58YNC @LarsdenBakker18 This is the same as import("data:text/javascript;GiBbeRiSh,console.log('♡');") which is the same… https://t.co/yT46aA2pYf @LarsdenBakker18 If you open the first example in a new tab you’ll see that it doesn’t get decoded as UTF-8. @LarsdenBakker18 The code snippet gets the encoding wrong (missing `charset=` and missing hyphen in `utf-8`): data… https://t.co/9FTVtwY4N8
7/21
2020
@addaleax @v8js @camillobruni cc @tverwaes
7/20
2020
@brittanystoroz Congrats!
7/19
2020
@bradeeoh Often the only feedback I get on my bug reports is a radar reference that I cannot access. That's if I ge… https://t.co/KxiYkamgJZ
7/18
2020
@wesbos Same trick but for luggage wheels! 🛹 @srl295 Congrats!
7/17
2020
Performance tip: if your app delivers to the client a *large* JavaScript object (configuration or state), consider… https://t.co/khbrVXhEDR
Retweeted by Mathias Bynens
7/16
2020
@rob_dodson @petele @a11y_mmo @ChromiumDev @orKoN recently did some work in this area @evaferreira92 🥳🎉🎊
7/15
2020
@gsnedders @Apple Congrats! Apple is lucky to have you![1/2] Feedback needed! 👋🏼 Want to disable local() src in font-face rules for better testing during development? C… https://t.co/Ef5lNZamUG
Retweeted by Mathias Bynens
7/13
2020
@sephr “This repo has x stars” @littledan No, title case is a disgrace. Sentence case 4 lyfe @JecelynYeen @drag137 @ChromeDevTools @Jack_Franklin See https://t.co/7ZnEEwmPji for the answer 👍 @argyleink 🔥🔥🔥
7/12
2020
@heydonworks I had not! That surprise M.I.A. cameo 😭🤩 @heydonworks Absolutely lost it at the Steps sample. This is a masterpiece. Bravo!New in @ChromeDevTools Canary, emulate `prefers-reduced-data` 🙂 Flip that experiment flag on and give it a prototy… https://t.co/jMRoWNSBml
Retweeted by Mathias Bynens
7/11
2020
@umaar @MikeRBailey Sure. Does anyone know of any published papers around how to best simulate keratoconus in a phy… https://t.co/PqNKgi7HhA @addyosmani @LNplum @ChromeDevTools Thanks for flagging! Will fix.
7/10
2020
✨ Perf Track ✨ Ever wanted to know how many Angular sites aren't compressed, or how many Vue pages are "fast", or… https://t.co/42uESksEOK
Retweeted by Mathias Bynens @aerotwist @nicolabortignon @addyosmani https://t.co/SdXwzmBZWt
7/9
2020
@cjamcl Using kB to mean 1000 bytes was an upgrade for DevTools, since we were previously using the kB label incorr… https://t.co/LDv4Lbs6qu🎉 Blog post just went live! 😎 Learn about some really powerful and concise lines of code that bring zen and clarit… https://t.co/BcsaLpJ6Fj
Retweeted by Mathias Bynens @Jack_Franklin Where’s the link?! @dcefram @maxibanki core is also missing from 4.17.15, which is what I based this release on. If you know the prope… https://t.co/6TlN2JEOvn
7/8
2020
@whimboo Congrats! @devdevcharlie So sorry to hear. Sending you all the hugs and sea otter cams! @jaffathecake @ChandyTech @DasSurma Per @han_changhao, these outputs are equivalent! In general, I’d lean towards… https://t.co/apGWKuvNsd
7/7
2020
@girlie_mac @Microsoft Congrats! @fox @WojtekSmajda He somehow failed to rip off your proper use of typographically correct punctuation 🤦 @mgechev JavaScript sets (and maps) are ordered! @samccone @evanwallace I’d loop in script streaming expert @leszekswirski but since his Twitter account got suspend… https://t.co/x52R0CBOnS
7/6
2020
@itsashis4u @DasSurma @jaffathecake @bedouard This video explains it (and more): https://t.co/SdXwzmBZWt @LarsdenBakker18 @DasSurma @jaffathecake @bedouard It applies to those cases. When using plain old objects, if a lo… https://t.co/gPxUventdk @mariusschulz @DasSurma @jaffathecake @bedouard Fair. Why would you want to use Object.create(null) over a map thou… https://t.co/FOtZtFsjHh @DasSurma @jaffathecake @bedouard For dictionary use cases, maps are inherently faster since they cannot trigger prototype chain walks.🎥 New talk! Let's make images smaller… ➡️ How lossy & lossless codecs actually work. ➡️ Each codecs pros/cons. ➡️… https://t.co/NXbv4DXVJO
Retweeted by Mathias Bynens @Jack_Franklin I wanna re-watch it today @csswizardry Congrats dude!
7/4
2020
@petele @jeffposnick @Jack_Franklin 🤯 feeling all the feels rn @samccone The story doesn’t end there: the built-in JS Promise API since got extended, (soon) completing the set of… https://t.co/AJpgquf7Qi
7/3
2020
Puppeteer v5 is out! This release contains a few small breaking changes based on previous deprecations so should be… https://t.co/vXQzemowJa
Retweeted by Mathias Bynens @troublete Every now and then screen recording comes up as a Puppeteer feature request. We should add native support at some point!Now you can right click on a node in Elements panel and capture the node screenshot! 📸 Like it? Freshly landed on… https://t.co/iOIHmD2kDf
Retweeted by Mathias Bynens @hardkoded ¡Claro que si!🔥 What’s new in Puppeteer? This #webdevLIVE talk gives an overview: https://t.co/z9rF9g5fyX @kaganasg @tomayac No, that only returns `true` when the query matches, i.e. when it is currently active. I want to… https://t.co/9c3LBVM7uy @_shu 😍
7/2
2020

0