Surma

22.3K posts

Surma banner
Surma

Surma

@DasSurma

DX & monorepo at @ShopifyEng Craving simplicity, finding it nowhere. Internetrovert 🏳️‍🌈 He/him.

Bristol, UK Katılım Haziran 2008
1.5K Takip Edilen38K Takipçiler
Sabitlenmiş Tweet
Surma
Surma@DasSurma·
📝 First blog in a long time! I always like “flow-based” programming, and it’s a very powerful paradigm. LangGraph lets you codify complex workflows as graphs, and also integrates really well with LangChain, if your workflow is LLM-driven. surma.dev/things/langgra…
English
4
9
83
13.9K
Surma
Surma@DasSurma·
`builtins.wasm` is now a (experimental) thing in @DeterminateSys’ nix, with a PR open for upstream nix. This lets you extend the nix language by compiling C/C++/Rust/etc into safely sandboxed, platform-independent plugins! determinate.systems/blog/builtins-…
English
1
3
25
1.8K
Firefox for Web Developers
Firefox for Web Developers@FirefoxWebDevs·
Something that hasn't been made clear: Firefox will have an option to completely disable all AI features. We've been calling it the AI kill switch internally. I'm sure it'll ship with a less murderous name, but that's how seriously and absolutely we're taking this. …
English
662
366
6.8K
404.3K
Surma retweetledi
ashley williams
ashley williams@ag_dubs·
do you like geology puns and have an unhealthy obsession with package management? 🌋📦 we’re building a nix-based monorepo build system (in @rustlang) at @Shopify and we’re hiring. global, remote, high-autonomy. DMs open. shopify.com/careers/softwa…
English
0
2
10
4.4K
Surma retweetledi
Jake Archibald
Jake Archibald@jaffathecake·
I dug into the state of progressive image rendering and found: ➡️ Safari renders JPEG differently (worse imo) ➡️ Progressive AVIF is possible in Chrome ➡️ Progressive JPEG XL isn't possible in Safari ➡️ JPEG XL decodes worryingly slow ➡️ Progressive doesn't solve responsive imgs
English
3
11
107
11.3K
Surma
Surma@DasSurma·
I have been working on the nix & Rust codebase that builds @Shopify’s monorepo, and there’s so much left to do that we need help. If you are interested, apply here to join us at @ShopifyEng! DM me if you have questions! shopify.com/careers/softwa…
English
1
7
29
4.2K
Surma
Surma@DasSurma·
@js13kGames Hey friends! Seems like login/submit is broken! Help!
Surma tweet media
English
1
0
0
58
Surma
Surma@DasSurma·
@grhmc Let's!!! The more I sit on this, the more I think this could genuinely be useful!
English
1
0
1
335
Surma
Surma@DasSurma·
Nix friends: How terrible is this idea? I added `builtins.runWasm` to nix, allowing you to call out to Wasm. The Wasm is reset every time, so the functions remain pure. This gives you a (performant?) escape hatch for things that Nix is missing. E.g parsing YAML (here: via Rust)
Surma tweet mediaSurma tweet media
English
4
2
45
13.6K
Surma
Surma@DasSurma·
You know your @js13kGames submission is going well when you have to resort to `btoa` and other seemingly stupid hacks to get below the file size limit.
Surma tweet mediaSurma tweet mediaSurma tweet media
English
2
2
28
3.6K
Surma
Surma@DasSurma·
Convince me I am wrong: This should not be a type error, right? - I asserted it’s an object - I am using `?.` for property access #code/GYVwdgxgLglg9mABDAzgWQJ4BUAWMwDmAFAG4Bci4A1mHAO5gCUFJyKiA3gIYUpQBO+AgF9OAKESTkwIlAwAHAKZxgiVgEIAvJsQAiOACMAVoui7Gifoqgh+SYFwA2KRQG4JUmDLlKVagPwAdFyIWjq6fIKE5pbWtvZOLu5SsTZ2iAIgbmLCQA" target="_blank" rel="nofollow noopener">typescriptlang.org/play/?#code/GY…
Surma tweet media
English
16
0
18
6.1K
Surma
Surma@DasSurma·
@mjackson Have you tried studying functional programming? Signals are really just monads, a monoid in the category of endofunctoros. In this Ted talk...
English
1
0
15
1.5K
MJ
MJ@mjackson·
signals SIGNALS 𝓼𝓲𝓰𝓷𝓪𝓵𝓼 𝑺𝑰𝑮𝑵𝑨𝑳𝑺 sIgNaLs 🅂🄸🄶🄽🄰🄻🅂 𝖘𝖎𝖌𝖓𝖆𝖑𝖘 𝘴𝘪𝘨𝘯𝘢𝘭𝘴 ѕιgηαℓѕ 𝓢𝓲𝓰𝓷𝓪𝓵𝓼 S̷I̷G̷N̷A̷L̷S̷ 𝗌𝗂𝗀𝗇𝖺𝗅𝗌 𝕤𝕚𝕘𝕟𝕒𝕝𝕤 SIGNALS sigNALS 𝙨𝙞𝙜𝙣𝙖𝙡𝙨 sɪɢɴᴀʟs 𝔰𝔦𝔤𝔫𝔞𝔩𝔰
Català
19
1
115
17.5K
Surma retweetledi
Jake Archibald
Jake Archibald@jaffathecake·
CSS uses a complex algorithm to decide how to animate transforms. If you get it wrong, as many folks do, you end up with an unnatural animation. Here's how it works, and how to avoid the pitfalls. jakearchibald.com/2025/animating…
English
15
62
444
42.1K
Surma
Surma@DasSurma·
Unexpected dangers of vibe coding: Somehow git ended up tracking its own .git folder and now I can't commit anymore :3
Surma tweet media
English
11
4
123
11K
tom newton
tom newton@tomnewton·
It’s really getting good.
tom newton tweet media
English
1
0
27
1.9K
Surma
Surma@DasSurma·
@shqld Oh good! Thank you! At least I’m not mad. I guess I’ll read it out of `mapper` for now 🤷
English
1
0
5
213
Surma
Surma@DasSurma·
Folks who know their way around the TypeScript type checker, I need help: gist.github.com/surma/be14ca81… How do I figure out what types the type parameters have been bound to given a `CallExpression`? I know the answer is in `resolvedSignature.mapper`, but that’s not a public API.
English
1
0
6
3.4K
Surma
Surma@DasSurma·
@SamuelScheit I don't really see context in here? Just another person with the same problem. But it did introduce me to uwasm, which I'm using now.
English
0
0
1
193
Surma
Surma@DasSurma·
Wait, am I dumb? What does NodeJS' WASI implementation only accept file descriptor numbers for stdio? Why don't they allow a Readables/Writables? How are you supposed to capture the output of a WASI module? #new-wasioptions" target="_blank" rel="nofollow noopener">nodejs.org/api/wasi.html#…
English
3
0
16
5.5K