Chris Krycho

Software engineer and composer; theologian; writer, runner, and erstwhile podcaster. Currently doing platform engineering at Vanta. Previously the tech lead for LinkedIn web, Ember TypeScript & Framework emeritus.

Hireable! I can teach you TypeScript or Rust (right now, I am writing a new chapter on async for the official The Rust Programming Language book), tackle the hardest TypeScript problems, and help you see your way to a viable front end web strategy.

Chris Krycho boosted:
Nathan Knowlerknowler@sunny.garden
2025-06-23

@chriskrycho The `light-dark()` CSS function might be of interest to you: developer.mozilla.org/en-US/do

UPDATE: I previously stated that it doesn’t work with unregistered custom properties, but it does, the compute timing would just be different (i.e. unregistered custom properties don’t compute until used, while registered compute when set, so an inherited value could work differently).

Chris Krychochriskrycho
2025-06-23

@knowler Ah, thank you—`light-dark()` might do the trick! I believe per the docs it’ll even “just work” with `@media`. Neat! Thank you—I knew I had seen *something* in this space in the past couple of years, but couldn’t recall *what*.

Chris Krychochriskrycho
2025-06-23

The only thing I use SCSS for anymore is this pattern for theming:

```scss
@mixin light {
/* light theme vars */
}

:root,
.light:root {
@Include light();
}

@media screen and (prefers-color-scheme: light) {
@Include light();
}

/* same for dark */
```

Anybody have a good alternative here?

Chris Krychochriskrycho
2025-06-23

This will be fun! I’m pacing the 1:40 finish time at the Colorado Springs Half Marathon on October 4. You should come run it! It’s a great race! runsignup.com/Race/CO/Colorado

Chris Krychochriskrycho
2025-06-23

A quick note of my own this morning expanding on Robin Sloan’s excellent note on “Platform Reality” and Substack—or, briefly, why I’m sticking to the open web and you should too. v5.chriskrycho.com/notes/platf

Chris Krycho boosted:
Tobias Bieniektb@hachyderm.io
2025-06-21

🦀 If anyone wants to make their first contribution to crates.io and, by extension, the Rust project, here are two issues that are well suited for newcomers:

github.com/rust-lang/crates.io

github.com/rust-lang/crates.io

#rustlang

Chris Krycho boosted:
Shriram Krishnamurthishriramk
2025-06-21

OMG Google, you're desperate. What you just did is exactly *why* I just started to pay for Kagi.

Searching for "set kagi as default chrome" pops up a window asking me to try the "AI Mode" in Google.
Chris Krychochriskrycho
2025-06-21

This is to say nothing of the Dev Beta 1 UI artifacting; that’s kind of expected and I am sure they’ll get it sorted out. It’s just that the entire idea of “getting out of the way of your content” is a bit upside down when it comes to the “tool” parts of the UI—I need to see those so I can use them!

Chris Krychochriskrycho
2025-06-21

Have to say: looks way better than Safari on the iOS 26 beta… because it hasn’t adopted all (any!) of the new styling elements. There are some neat ideas in the Liquid Glass stuff, but nearly all of them would be better layered on top of classic elements instead of replacing them.

Chris Krychochriskrycho
2025-06-19

@dsully Never more grateful for modern build systems like Cargo than when I look at C or C++ code bases using CMake or Autoconf.

Chris Krychochriskrycho
2025-06-18

I really didn’t expect to be reading a `CMakeLists.txt` file today, but here we are. 😂

Chris Krychochriskrycho
2025-06-18

I’ve been at Vanta about 2 months, and so far:

• Every single person I’ve worked with has been both kind and competent. That’s big.
• The business matters: making the internet more secure!
• There’s a *lot* of work to do to make this thing scale!

Come work with me: vanta.com/company/careers

Chris Krychochriskrycho
2025-06-18

I give you: the Node.js ecosystem, circa 2012, by way of the name of one package: npmjs.com/package/from

Chris Krycho boosted:
Graydon Hoaregraydon@types.pl
2025-06-17

on the off chance anyone _else_ wants to relive the moment of bootstrapping rust 14 years ago:
graydon2.dreamwidth.org/317484

Chris Krychochriskrycho
2025-06-15

Just published `true-myth-zod`: a tiny little library that provides a nice integration between True Myth and Zod.

You can call `parserFor(SomeZodSchema)` where `SomeZodSchema` will produce `AType` and get back a function `(data: unknown) => Result<AType, ZodError>`. There’s also `asyncParserFor` for use with Zod schemas with async; it will give you a True Myth `Task`.

This is nothing you couldn’t write yourself, but it is *really nice*!

A bit more here:
v5.chriskrycho.com/elsewhere/t

Chris Krychochriskrycho
2025-06-11

we have both agency and responsibility as builders and users of technology; because I am measured and restrained in my evaluations; because I do not believe the (apparent or actual) utility of a technology is the only relevant consideration. (2/2)

Chris Krychochriskrycho
2025-06-11

Posted: v5.chriskrycho.com/notes/telli

I think it’s very telling that a lot of people treat me as anti-AI and anti-LLM just because I am not vigorously pro-LLM: because I want to approach new technologies in careful, measured ways; because I do not believe the myth of technological inevitability and instead affirm that… (1/2)

Chris Krychochriskrycho
2025-06-11

I think made a very *pretty* new UI design for their OSes 26… but it has some serious functional deficits. As some colleagues were commenting about a hard design problem yesterday at Vanta: you have to for the *most challenging* version of a given bit of UI. In our case, massive amounts of data. In Apple’s case, not just the nicest backgrounds that work best with so much transparency, but the most “hostile” backgrounds, content, etc. that work *worst* with so much transparency!

Chris Krycho boosted:
2025-06-11

Wherein I advocate for complaining about Apple's OS redesigns immediately, if not sooner: aleenmean.com/2025/06/10/the-c

Chris Krycho boosted:
2025-06-11

Now is the best time to give Apple feedback. wandering.shop/@aleen/11466137

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst