Eric Portis
@ericportis.com
Web developer; used-to-be-a-printmaker; Let’s Share What We Know
Reposted by Eric Portis
Responsive typography is getting so much simpler. This already works in a couple browsers, and the fallback is minimal:
--progress: progress(100vi, 320px, 1200px);
font-size: calc-mix(var(--progress), 1rem, 1.25rem);
But that will get even better…
#CSS
codepen.io/editor/miria...
--progress: progress(100vi, 320px, 1200px);
font-size: calc-mix(var(--progress), 1rem, 1.25rem);
But that will get even better…
#CSS
codepen.io/editor/miria...
CodePen
codepen.io
November 6, 2025 at 9:55 PM
Responsive typography is getting so much simpler. This already works in a couple browsers, and the fallback is minimal:
--progress: progress(100vi, 320px, 1200px);
font-size: calc-mix(var(--progress), 1rem, 1.25rem);
But that will get even better…
#CSS
codepen.io/editor/miria...
--progress: progress(100vi, 320px, 1200px);
font-size: calc-mix(var(--progress), 1rem, 1.25rem);
But that will get even better…
#CSS
codepen.io/editor/miria...
Reposted by Eric Portis
I partnered with Fable to evaluate their pay-per-project offering. Its an amazing way to get insights into how disabled people actually use your service, and what they think about it. ericwbailey.website/published/ev...
Evaluating Fable’s pay-per-project offering
Get valuable insight about how your digital experience works for disabled people..
ericwbailey.website
November 5, 2025 at 4:17 PM
I partnered with Fable to evaluate their pay-per-project offering. Its an amazing way to get insights into how disabled people actually use your service, and what they think about it. ericwbailey.website/published/ev...
Reposted by Eric Portis
ECMAScript excitement 😉
Congrats to @manishearth.bsky.social on unflagging TC39 Stage 3 Temporal in V8 today. Heading for Chrome 144 🎉
By many metrics this new date-time API is the single biggest change to JS ever 🔥
V8 uses Boa's temporal_rs by @jason-williams.co.uk Kevin Ness & Manish 👍
Congrats to @manishearth.bsky.social on unflagging TC39 Stage 3 Temporal in V8 today. Heading for Chrome 144 🎉
By many metrics this new date-time API is the single biggest change to JS ever 🔥
V8 uses Boa's temporal_rs by @jason-williams.co.uk Kevin Ness & Manish 👍
November 4, 2025 at 7:49 PM
ECMAScript excitement 😉
Congrats to @manishearth.bsky.social on unflagging TC39 Stage 3 Temporal in V8 today. Heading for Chrome 144 🎉
By many metrics this new date-time API is the single biggest change to JS ever 🔥
V8 uses Boa's temporal_rs by @jason-williams.co.uk Kevin Ness & Manish 👍
Congrats to @manishearth.bsky.social on unflagging TC39 Stage 3 Temporal in V8 today. Heading for Chrome 144 🎉
By many metrics this new date-time API is the single biggest change to JS ever 🔥
V8 uses Boa's temporal_rs by @jason-williams.co.uk Kevin Ness & Manish 👍
Reposted by Eric Portis
Finally telling the story of what happened when some rando turned me into a meme coin and the Twitter community full of AI-generated art featuring me that sprang up to promote it. cloudfour.com/thinks/that-...
That time some rando turned me into a meme coin
"I think someone made one of my tweets into a meme coin." She said, "I'm not sure I know what those words mean." I replied, "I'm not sure I do either."
cloudfour.com
October 30, 2025 at 10:16 PM
Finally telling the story of what happened when some rando turned me into a meme coin and the Twitter community full of AI-generated art featuring me that sprang up to promote it. cloudfour.com/thinks/that-...
Casper’s spoopy but Casper (2000) Track 1 is: *spooky*. youtu.be/henyMRqMBws?...
Gameboy Halloween: Spooky Chiptune Bangers
YouTube video by 0xabad1dea
youtu.be
October 30, 2025 at 6:05 PM
Casper’s spoopy but Casper (2000) Track 1 is: *spooky*. youtu.be/henyMRqMBws?...
Well this is lovely! visualrambling.space/dithering-pa...
Dithering - Part 1
Understanding how dithering works, visually.
visualrambling.space
October 28, 2025 at 4:39 PM
Well this is lovely! visualrambling.space/dithering-pa...
For the last year+ I’ve worked with my little Supernote sitting on the desk in front of my big fifteen-year-old cracked-plastic Cintiq, pretending I live in a computing world that grew out of notebooks and whiteboards rather than typewriters. And it makes me happy.
Well, I regret to say that I *love* the Supernote. For the work I do and the things I need, the defaults are aces and egghh the pen is so good. eBay time for the Remarkable.
Notebook/tablet people, do I *really* want to switch from a reMarkable to a Supernote?
Imagine that I am somehow who hates change and also hates spending money, but also someone who writes and annotates an enormous number of words by hand and finds the reMarkable stuff difficult to keep organized.
Imagine that I am somehow who hates change and also hates spending money, but also someone who writes and annotates an enormous number of words by hand and finds the reMarkable stuff difficult to keep organized.
October 27, 2025 at 11:19 PM
For the last year+ I’ve worked with my little Supernote sitting on the desk in front of my big fifteen-year-old cracked-plastic Cintiq, pretending I live in a computing world that grew out of notebooks and whiteboards rather than typewriters. And it makes me happy.
If you use Cloudinary and VS Code, you should check out cloudinary.com/blog/cloudin...
Introducing the Cloudinary VS Code Extension: Manage Your Media Development Flow Without Leaving Your IDE!
Explore the new Cloudinary VS Code Extension (Beta). Manage and upload assets without leaving your IDE.
cloudinary.com
October 23, 2025 at 10:34 PM
If you use Cloudinary and VS Code, you should check out cloudinary.com/blog/cloudin...
Reposted by Eric Portis
Largest Contentful Paint (from Core Web Vitals) is now available in Safari Technology Preview.
webkit.org/blog/17504/r...
webkit.org/blog/17504/r...
Release Notes for Safari Technology Preview 230
Safari Technology Preview Release 230 is now available for download for macOS Tahoe and macOS Sequoia.
webkit.org
October 16, 2025 at 8:53 PM
Largest Contentful Paint (from Core Web Vitals) is now available in Safari Technology Preview.
webkit.org/blog/17504/r...
webkit.org/blog/17504/r...
Reposted by Eric Portis
I dug into progressive image rendering and found a bunch of common assumptions aren't quite true.
➡️ JPEG & WebP progressive-renders worse in Safari
➡️ AVIF _does_ support progressive
➡️ But JPEG XL in Safari doesn't
➡️ JPEG XL decodes much slower than AVIF
⬇️ and more
jakearchibald.com/2025/present...
➡️ JPEG & WebP progressive-renders worse in Safari
➡️ AVIF _does_ support progressive
➡️ But JPEG XL in Safari doesn't
➡️ JPEG XL decodes much slower than AVIF
⬇️ and more
jakearchibald.com/2025/present...
The present and potential future of progressive image rendering
Exploring progressive image rendering across JPEG, PNG, WebP, AVIF, and JPEG XL.
jakearchibald.com
October 16, 2025 at 10:16 AM
I dug into progressive image rendering and found a bunch of common assumptions aren't quite true.
➡️ JPEG & WebP progressive-renders worse in Safari
➡️ AVIF _does_ support progressive
➡️ But JPEG XL in Safari doesn't
➡️ JPEG XL decodes much slower than AVIF
⬇️ and more
jakearchibald.com/2025/present...
➡️ JPEG & WebP progressive-renders worse in Safari
➡️ AVIF _does_ support progressive
➡️ But JPEG XL in Safari doesn't
➡️ JPEG XL decodes much slower than AVIF
⬇️ and more
jakearchibald.com/2025/present...
Reposted by Eric Portis
At last, today is the day. I am immensely proud to announce that JavaScript for Everyone is here.
Tell a friend, tell a Slack channel — write it on a slip of paper, fold it once, and slide it across your boss' desk without breaking eye contact. _It's time to get weird._
piccalil.li/javascript-f...
Tell a friend, tell a Slack channel — write it on a slip of paper, fold it once, and slide it across your boss' desk without breaking eye contact. _It's time to get weird._
piccalil.li/javascript-f...
JavaScript for Everyone
A high quality, expansive written course that will elevate your JavaScript skills to a level you never thought was achievable.
piccalil.li
October 14, 2025 at 3:56 PM
At last, today is the day. I am immensely proud to announce that JavaScript for Everyone is here.
Tell a friend, tell a Slack channel — write it on a slip of paper, fold it once, and slide it across your boss' desk without breaking eye contact. _It's time to get weird._
piccalil.li/javascript-f...
Tell a friend, tell a Slack channel — write it on a slip of paper, fold it once, and slide it across your boss' desk without breaking eye contact. _It's time to get weird._
piccalil.li/javascript-f...
Reposted by Eric Portis
It's here. JavaScript for Everyone is now available to…everyone!
The amount of effort and experience packed into this course is unbelievable and we know you're going to love it.
Get yours for £189, down from £249, for 2 weeks and super-charge your career prospects
piccalilli.link/js4e-launch-...
The amount of effort and experience packed into this course is unbelievable and we know you're going to love it.
Get yours for £189, down from £249, for 2 weeks and super-charge your career prospects
piccalilli.link/js4e-launch-...
JavaScript for Everyone
A high quality, expansive written course that will elevate your JavaScript skills to a level you never thought was achievable.
piccalilli.link
October 14, 2025 at 8:21 AM
It's here. JavaScript for Everyone is now available to…everyone!
The amount of effort and experience packed into this course is unbelievable and we know you're going to love it.
Get yours for £189, down from £249, for 2 weeks and super-charge your career prospects
piccalilli.link/js4e-launch-...
The amount of effort and experience packed into this course is unbelievable and we know you're going to love it.
Get yours for £189, down from £249, for 2 weeks and super-charge your career prospects
piccalilli.link/js4e-launch-...
👀 @giannirosato.com has been producing some fantastic image compression tools giannirosato.com/blog/post/oa...
giannirosato.com
October 14, 2025 at 4:58 AM
👀 @giannirosato.com has been producing some fantastic image compression tools giannirosato.com/blog/post/oa...
Reposted by Eric Portis
This is it. 86,791 words. 836 emdashes. 625 `const`, 141 `let`, 16 `var`. One (1) reference to the pause music from Battletoads for the NES.
Spread the word: JavaScript for Everyone launches tomorrow.
Spread the word: JavaScript for Everyone launches tomorrow.
October 13, 2025 at 4:55 PM
This is it. 86,791 words. 836 emdashes. 625 `const`, 141 `let`, 16 `var`. One (1) reference to the pause music from Battletoads for the NES.
Spread the word: JavaScript for Everyone launches tomorrow.
Spread the word: JavaScript for Everyone launches tomorrow.
Reposted by Eric Portis
As an experiment, we (the Firefox team) wanted to try a new way to get feedback on which Interop proposals matter most.
So, here's a web app where you can rank the proposals you care about, giving us data we can use when reviewing which ones to champion.
interop-rank.jakearchibald.com
So, here's a web app where you can rank the proposals you care about, giving us data we can use when reviewing which ones to champion.
interop-rank.jakearchibald.com
Interop Feature Ranking
Rank the web platform features you care most about
interop-rank.jakearchibald.com
October 9, 2025 at 5:00 PM
As an experiment, we (the Firefox team) wanted to try a new way to get feedback on which Interop proposals matter most.
So, here's a web app where you can rank the proposals you care about, giving us data we can use when reviewing which ones to champion.
interop-rank.jakearchibald.com
So, here's a web app where you can rank the proposals you care about, giving us data we can use when reviewing which ones to champion.
interop-rank.jakearchibald.com
Reposted by Eric Portis
Folks who want to see JPEG-XL supported in more browsers, what is it about the format that attracts you to its use on the web?
October 7, 2025 at 2:16 PM
Folks who want to see JPEG-XL supported in more browsers, what is it about the format that attracts you to its use on the web?
Safari 26 on Sequoia: buggy and gets laggy as heck for me. Had to switch from Compact to Separate tabs because I often stopped being able to close tabs w/ mouse. Scrolling, interacting with the URL bar, & DevTools often getting multiple-second lags until I close all tabs and quit/re-open. Just me?
October 3, 2025 at 4:54 PM
Safari 26 on Sequoia: buggy and gets laggy as heck for me. Had to switch from Compact to Separate tabs because I often stopped being able to close tabs w/ mouse. Scrolling, interacting with the URL bar, & DevTools often getting multiple-second lags until I close all tabs and quit/re-open. Just me?
If you work in web standards, you RFC 2119 MUST read this article. alice.boxhall.au/articles/a-t...
A threat model for accessibility on the web - Alice
A explanation of the primary threat to accessibility on the web, and a call to action for the web standards community
alice.boxhall.au
October 2, 2025 at 3:24 PM
If you work in web standards, you RFC 2119 MUST read this article. alice.boxhall.au/articles/a-t...
Reposted by Eric Portis
🔥 New blog post!
Covering, among other things:
- Why making simple things easy and complex things possible is not enough
- How to maximize your UI’s signal-to-noise ratio
- Why you can’t uncover friction through user feedback
- How to prioritize user needs
lea.verou.me/blog/2025/us...
Covering, among other things:
- Why making simple things easy and complex things possible is not enough
- How to maximize your UI’s signal-to-noise ratio
- Why you can’t uncover friction through user feedback
- How to prioritize user needs
lea.verou.me/blog/2025/us...
In the economy of user effort, be a bargain, not a scam • Lea Verou
User effort is a currency. To create a product users love, design the tradeoffs of use case complexity to user effort with the same care you design your pricing scheme.
lea.verou.me
September 29, 2025 at 5:06 PM
🔥 New blog post!
Covering, among other things:
- Why making simple things easy and complex things possible is not enough
- How to maximize your UI’s signal-to-noise ratio
- Why you can’t uncover friction through user feedback
- How to prioritize user needs
lea.verou.me/blog/2025/us...
Covering, among other things:
- Why making simple things easy and complex things possible is not enough
- How to maximize your UI’s signal-to-noise ratio
- Why you can’t uncover friction through user feedback
- How to prioritize user needs
lea.verou.me/blog/2025/us...
Ever *have* an image file but *want* a URL? In a click/tap or two? There are many ways to accomplish this, but here's mine: www.youtube.com/watch?v=PiJt...
Upload images to Cloudinary with Shortcut - Dev Hints
YouTube video by Cloudinary
www.youtube.com
September 4, 2025 at 9:05 PM
Ever *have* an image file but *want* a URL? In a click/tap or two? There are many ways to accomplish this, but here's mine: www.youtube.com/watch?v=PiJt...
Reposted by Eric Portis
Interop 2026 is now open for proposals!
This is your chance to tell browser-makers which well-defined, well-tested features you wish had better support across browsers.
⬇️ Here's how ⬇️
github.com/web-platform...
This is your chance to tell browser-makers which well-defined, well-tested features you wish had better support across browsers.
⬇️ Here's how ⬇️
github.com/web-platform...
github.com
September 4, 2025 at 4:30 PM
Interop 2026 is now open for proposals!
This is your chance to tell browser-makers which well-defined, well-tested features you wish had better support across browsers.
⬇️ Here's how ⬇️
github.com/web-platform...
This is your chance to tell browser-makers which well-defined, well-tested features you wish had better support across browsers.
⬇️ Here's how ⬇️
github.com/web-platform...
Reposted by Eric Portis
What if some client-side browsing features were part of the web platform?
Direct CSS reflection of URL state, snappy pending/optimistic UI, URL-to-scroll-snap binding, and some basic same-document navigation use cases, with JS being only an option.
github.com/WICG/declara...
Inviting feedback!
Direct CSS reflection of URL state, snappy pending/optimistic UI, URL-to-scroll-snap binding, and some basic same-document navigation use cases, with JS being only an option.
github.com/WICG/declara...
Inviting feedback!
github.com
September 3, 2025 at 7:13 PM
What if some client-side browsing features were part of the web platform?
Direct CSS reflection of URL state, snappy pending/optimistic UI, URL-to-scroll-snap binding, and some basic same-document navigation use cases, with JS being only an option.
github.com/WICG/declara...
Inviting feedback!
Direct CSS reflection of URL state, snappy pending/optimistic UI, URL-to-scroll-snap binding, and some basic same-document navigation use cases, with JS being only an option.
github.com/WICG/declara...
Inviting feedback!
I'm still trying to figure out my stance towards AI-powered coding tools generally, but this one? Specifically? Nooooooooppppppe nope nope nope no uh-uh no way josé github.blog/changelog/20...
Grok Code Fast 1 is rolling out in public preview for GitHub Copilot - GitHub Changelog
Grok Code Fast 1 will be available as an opt-in public preview for GitHub Copilot Pro, Pro+, Business, and Enterprise plans in Visual Studio Code. Rollout will be gradual —…
github.blog
August 27, 2025 at 3:05 PM
I'm still trying to figure out my stance towards AI-powered coding tools generally, but this one? Specifically? Nooooooooppppppe nope nope nope no uh-uh no way josé github.blog/changelog/20...
Reposted by Eric Portis
Alright, this is it. Today is the your last chance to snag a spot in the course at the lowest possible price. Head on over to piccalil.li/javascript-f... to lock it in, and I'll see you in the Discord.
Also, this reminder comes with a little formal announcement:
wil.to/newsletters/...
Also, this reminder comes with a little formal announcement:
wil.to/newsletters/...
Dawn of the Final Day
wil.to
August 26, 2025 at 2:43 PM
Alright, this is it. Today is the your last chance to snag a spot in the course at the lowest possible price. Head on over to piccalil.li/javascript-f... to lock it in, and I'll see you in the Discord.
Also, this reminder comes with a little formal announcement:
wil.to/newsletters/...
Also, this reminder comes with a little formal announcement:
wil.to/newsletters/...