EmNudge
emnudge.dev
EmNudge
@emnudge.dev
Code frog
👀 what are you building there
August 18, 2025 at 8:56 PM
Yes, every time. Something that allows relative selecting.

The ID model creates issues in the component model, forcing us to rely on some PRNG ID generator. With components, you cannot guarantee only one instance of the element.
August 12, 2025 at 3:23 PM
Was very hard to read this as ironic at first because I've seen almost 1:1 this mentioned unironically.
August 8, 2025 at 7:14 PM
serious question - what do you make of battery fires?

This is less about personal use of EVs and more about their existence in general. Am I overblowing the risks here? Are EV car fires not significantly worse than non-EV car fires?

Would like to be convinced otherwise.
July 29, 2025 at 4:01 PM
You may be wondering what the difference is between this and voice-to-text + a regular LLM.

Those don't handle language switching well. I've tried.
July 28, 2025 at 10:26 PM
Solid uses this pretty heavily for props, right?
That's been one of the major footguns for me, but it at least is easy to learn and lint for.
July 23, 2025 at 9:37 PM
You mentioned that they might have to sell Chrome to Perplexity. I don't think they can afford it and the judge wouldn't mandate a specific company.
They couldn't sell to another tech giant (I assume), so the next up seems to be a VC of some kind with lots of cash reserves.
July 16, 2025 at 8:02 PM
Do you think Perplexity is a more likely sell than some VC? As rich as Perplexity is, I don't know that they have enough cash reserves to compete.
July 16, 2025 at 1:52 PM
to clarify once more, you could recreate this API in JS. Nothing here seems language specific.
There are no new language constructs or token in this code snippet.

Or at least, that's what it seems.

If that is true, the `.async()` marker seems superfluous.
July 14, 2025 at 9:01 PM
Sure, but this is done by the `await`, not the `async`. Defining something as `async` is akin to marking it as a generator function that pulls and pushes and yields control.

But the runtime is the `.await()`

I could imagine some reasons to have a `.async()` API, but none very convincing.
July 14, 2025 at 9:01 PM
What is async doing? It seems like we can just call the function directly where we .await() it.

If the parallel here is a generator function, you can have the same kind of behavior. Is the benefit that you get to pass it with its params without calling it early?
July 14, 2025 at 4:30 PM
Honestly I must be missing something because I'm not even sure why calling `.async()` is at all necessary here. I'll bet some long blog post will clear this up for me.
July 13, 2025 at 5:52 PM
So this is basically a generator function with a slightly different API. The words async/await feel misplaced here.

Async in every implementation is basically a generator function as well, but with a more implicit API. Calling it async feels weird.
July 13, 2025 at 4:54 PM
You agreed with ‪@jovidecroock.com‬'s take, so I suppose you also disagree with yourself here. I get the overall point, but this one taken literally is wrong.

React code is slow for reasons much different to other frameworks. It does not follow that experiences will be the same in other frameworks.
June 9, 2025 at 2:33 PM
This is a bad take
June 9, 2025 at 2:30 PM
The other issue is you can't pipe the output through the Web Audio API which is a pretty huge missed opportunity.

It would unlock so many fun and educational web apps.
March 14, 2025 at 4:08 AM