Jamie Kyle

Jamie Kyle

@jamie.build

They/Them. Open source. Comic books. Board games. Prev: Babel, Yarn, Flow, Parcel, Biome

2.1K followers341 following514 posts

Working on a new design system component for various kinds of list items, settings rows, etc throughout our app It looks simple but it's turning out to be extremely difficult. I'm not sure it's even possible I've gotten very close except for centering "value" codepen.io/editor/Jamie...

My boyfriend trying to name the members of NSYNC “There’s Justin, there’s the gay one… what’s his name? Lars Fish?”

Let's not let our most critical open source dependencies become a hot bed for AI-generated bugs and security incidents while also profiting off the hard work of open source developers Please sign this petition to convince the Node TSC to reject AI contributions to core: github.com/indutny/no-s...

github.comGitHub - indutny/no-slop-in-nodejs-core: A petition to disallow acceptance of LLM assisted Pull Requests in Node.js coreA petition to disallow acceptance of LLM assisted Pull Requests in Node.js core - indutny/no-slop-in-nodejs-core

Let's not let our most critical open source dependencies become a hot bed for AI-generated bugs and security incidents while also profiting off the hard work of open source developers Please sign this petition to convince the Node TSC to reject AI contributions to core: github.com/indutny/no-s...

github.comGitHub - indutny/no-slop-in-nodejs-core: A petition to disallow acceptance of LLM assisted Pull Requests in Node.js coreA petition to disallow acceptance of LLM assisted Pull Requests in Node.js core - indutny/no-slop-in-nodejs-core

Having some serious networking issues with @github.com today, pages loading for ~30-60 seconds, lots of requests failing, I can see their janky caching and turbolinks shit giving me old state and breaking the UI. Nothing on githubstatus.com yet though

Pride & Prejudice fans, have you ever wondered why no one contacted police when Wickham & Lydia ran off? Ignoring that it wasn't a crime at that time, it's also because the police didn't exist in 1811. They wouldnt exist for another 18 years Police are a modern invention and there are alternatives

Policing as a system originated from slave patrols in the US in the 1600s. To capture fugitive enslaved people & squash rebellions Slaves were considered property and the earliest police were created to protect property owners. And to this day that's their only real purpose, to protect property

Using named and themed color variables in our design system has been a massive quality of life improvement Tailwind wasn't quite as bad, but even that has improved dramatically More consistency, and less you need to remember. And we've added high contrast mode, so its actually covering 4 themes

When a candidate is called out for supporting Israel, Dems will say “This is what got us Trump! Let’s focus on the US! Stop with purity tests!” We’re talking about genocide Remember this when they promise to save you from fascism, they will feed you to the wolves and call you a single issue voter

Theres a straight line from US politicians to starving children in refugee camps going go school in tents only to have bombs dropped on them Dems are asking us to step over their bodies on the way to the polls for candidates whose version of “fighting” for us is dropping one liners for tiktok views

It's shocking to me that Windows doesn't have an equivalent app as macOS Preview. Like what do you mean you need to download a separate app to sign a PDF? Why is Windows adding AI features when it can't do everyday things like this....

A lot of React libraries try making “core/dom” versions (well meaning, but used by no one & arent actually complete/well maintained standalone libs) that they wrap with a React API The problem is they tend to model things in a way that is unfriendly to React & you just end up with bugs & code bloat

It’s a lonely opinion but I can’t stand the song ‘Golden’ from K-pop demon hunters. It’s like they wrote the lyrics specifically for the kidz bop cover. I don’t understand adults that like this song

The singing and production is very good no doubt, but like… you could give the best performance ever of ‘Baby Shark’ or ‘1-877-Kars-4-Kids’ and they would still drive me mad

Yay, I built this, please enjoy:

Signal@signal.org

Now on Desktop: Customizable chat folders Keep healthy boundaries between friends & family or work & leisure. Filter 1-on-1 and group chats, put all of your unread messages one place, or make project-specific folders for related chats. Settings > Chats Or right-click any chat

I wish I could add constraints to groups of CSS grid template rows/columns. Like grid-template-columns: group( 1fr, // total for both [col-1] auto, [col-2] min-content ) [col-3] fit-content group( 1fr, // total for both [col-4] min-content [col-5] auto );

Building libraries of prebuilt animations has always been tough because they tend to be so fiddly But the new view transition API is so naturally composable. And with React’s new <ViewTransition> component I feel like I can imagine how to built a very customizable set of common animations

I know lots of other frameworks shipped similar APIs long before React so I’m looking around to see if anyone has already attempted to build libraries for this purpose

People horrified and furious at the before and after photos of the white house… if you think that’s bad, you should see what israel did to Palestine

Sam Altman is just another tech grifter who will say anything to keep selling his grift and it will only become more and more apparent with time because grift simply cannot last forever

View full thread

Yeah everyone is hearing about AI in the workplace right now, and everyone has coworkers or bosses that have fallen for the hype of AI Take a moment to realize how little it’s actually changed the work that needs to be done. How things are progressing largely at the same pace they always have

Even the environment aspects of AI Tech has been unregulated in its abuse of the environment for a long time and it’s driven by a lot more than just AI And they’ve been promising it will get better soon with just a liiiiittle bit more innovation for years More environmental regulation is needed

Sam Altman is just another tech grifter who will say anything to keep selling his grift and it will only become more and more apparent with time because grift simply cannot last forever

View full thread

Look past the headlines about the actual trends happening “CEO Lays Of 1000s, Says They Will Be Replaced With AI” Mass layoffs have become more and more common for decades. They were going to lay those people off, they just want investors/the public to think it’s part of some vision

You see stories of college students not being prepared for college and turning to AI? They’ve been in school for the last 12 years… they were not using AI the entire time What did just happen is that they did high school during covid lockdowns which fucked their education up horribly

Sam Altman is just another tech grifter who will say anything to keep selling his grift and it will only become more and more apparent with time because grift simply cannot last forever

It’s important to recognize that AI really hasn’t changed the world that much. People are still working, going to school, paying mortgages, making art It feels like these things are getting worse because they’ve been getting worse for a very long time Covid set everything on fire, not AI

Making people afraid of AI is part of the grift of AI It helps create this image that it’s more powerful than it actually is Or that it’s inevitable, that everyone is betting everything they’ve got on AI even if it’s going to make everything worse

Accessibility question For ::backdrop's (dialog overlays) that have a semi-transparent bg to obscure the page behind them: Should we make the backdrop more obscured for `prefers-reduced-transparency`? Like if the backdrop is black/40% should we make it black/80%? 100%? Should we blur the bg?

All of the examples of prefers-reduced-transparency that I've found are for when you have a dialog or some other component that itself has some transparency. Something with text/icons on it thats harder to read because of the transparency

I can see it both ways for backdrops The reason for having a semi-transparent backdrop is so when you open up a dialog you have a sense of place and know you haven't lost your state But maybe someone is really zoomed in & doesn't understand that a dialog is open if they just see the backdrop

There should be a `fromIndex` parameter in `array.findIndex()` like the one in `array.indexOf()`: Exists: let array = ["foo", "bar", "foo"] array.indexOf("foo") // 0 array.indexOf("foo", 1) // 2 Doesn't exist: let fn = val => val === "foo" array.findIndex(fn) // 0 array.findIndex(fn, 1) // 2

GitHub allows you configure your pronouns that it shows on your profile which it also uses in some of the strings in the UI and makes accessible through the API It defaults to the value "Don't specify" but then it seems to either default to "He/Him" or tries to infer it based on your name

Don't try to infer people's pronouns based on their name, just use "their" Or honestly it's really easy to just avoid using pronouns at all in your strings. Most UI doesn't try to read like full sentences anyways > #1234 "Update symbols font" • Marked ready for review by Jamie

Being able to customize CSS accent-color is cool, but it would be really nice if we could use the system accent color in some of your own custom UI elements Privacy fingerprinting concerns seem like they'd be solved the same way as accent-color: auto or <system-color> (ex. Highlight)

Using backdrop-filter you can do this sort of swipe effect revealing contents behind the current element But I want this to work for the text changing its size and weight as a sort of "magnifying glass" effect I'm not sure how to accomplish that without any JS though codepen.io/jamiebuilds/...

There's an argument that you never should be using Map<string, T> or Map<number, T> Plain JS objects as maps/records are waaay faster in all scenarios

With 1000 unique items: 33K op/s: new Set([...prev, val]) 199K op/s: new Set(prev).add(val) -- 6x faster Thinking it would be nice to just have a class like this: class ImmutableSet { ... add(value) { let copy = new ImmutableSet(this) copy.#set.add(value) return copy } }

ImmutableJS wasn't faster than just copying built-ins directly But there are a bunch of places where people tend to copy through iterators that could use some guardrails and a nice API

Question: Would you be surprised if ImmutableSet#add() didn't create a new copy if it already had the value? Keeping in mind that it would never give you access to an internal mutable set class ImmutableSet { add(value) { if (this.#set.has(value) return this // << no new copy ... } }

I'm going through our components and making fixes to forced-colors mode I haven't found much for resources on how to apply system-colors to specific components/states. Any recommendations?