HNHacker News
TopNewBestAskShowJobs

krukah

132 karma · joined March 21, 2022

co-founder & cto @ novig obsessively curious
submissionscomments
krukah··on Understanding Rust Closures
Easiest mnemonic to remember precedence is simply ordering by the length of their names.

FnOnce

FnMut

Fn

krukah··on Terrence Malick's Disciples
Tree Of Life is nothing short of a masterpiece IMO. Influential on me personally as my first exposure to how much editing and structure (or lack thereof) build directorial style. It left an impression on me to feel so much for a film that explicitly says so little.

Obligatory mention of that iconic low-angle shot of The Mother floating gracefully across the plains. One of the best of all time.

krukah··on Rust in Android: move fast and fix things
I think referencing the well-known cases in cve-rs[1] is quite a bad faith effort. Of course if you try reeeally hard to write unsound code, you can write unsound code. An edge case in the type system downstream of lifetime variance rules is simply not something that matters in any practical attempt to write safe software. I find the tracker interesting since it probes the boundary of the compiler, but it says absolute nothing to the effect of "Rust is unsafe".

[1] https://github.com/Speykious/cve-rs

krukah··on Ask HN: Who is hiring? (November 2025)
Novig | Multiple Roles | New York | Onsite | Full-time

Novig is rebuilding sports betting from first principles as a prediction market exchange. Legacy sportsbooks are extractive middlemen with misaligned incentives, dark patterns, and predatory mechanics. We're creating the alternative: a transparent exchange where users trade against each other at fair odds.

We're building core infrastructure around order routing, risk management, data pipelines, low-latency networking, and market integrity at scale. We write Rust extensively. We believe correctness, performance, and expressive code are necessities rather than luxuries. Ideal candidates care deeply about infrastructure, security, and performance. It certainly won't hurt to also care about prediction markets, traditional markets, or well-designed distributed systems.

Tech stack: Rust, Node, PostgreSQL, Kafka, Linux, distributed systems.

jobs@novig.co | https://job-boards.greenhouse.io/novig/jobs/4588745006

krukah··on Uncertain<T>
Monads are really undefeated. This particular application feels to me akin to wavefunction evolution? Density matrices as probability monads over Hilbert space, with unitary evolution as bind, measurement/collapse as pure/return. I guess everything just seems to rhyme under a category theory lens.
krukah··on Comptime.ts: compile-time expressions for TypeScript
Maybe the (relative) lack of ecosystem has kept you away, but I really recommend checking out both Dioxus and Leptos. Leptos is incredibly similar to React, but with Rust ergonomics, and it's been a pleasure to learn and use. With an LLM by my side that knows React and Rust pretty well, I've found myself not even needing the React libraries that I thought I would, since I can easily build on the fly the features/components I actually need.

I too, eventually gave up on React <> WASM <> Rust but I was able to port all my existing React over into Leptos in a few hours.

krukah··on Peacock feathers can be lasers
Yesterday was Pigeons As Hard Drives, today is Peacocks As Lasers.

I look forward to what tomorrow brings.

krukah··on The new literalism plaguing today’s movies
https://archive.ph/ZVQvK
krukah··on Numbering should start at zero (1982)
You know what I like this much better...rule of thumb updated.
krukah··on Numbering should start at zero (1982)
Whenever I explain to someone when or why to use 0-indexing, I like to say:

Start from 0 if you are counting boundaries (fenceposts, memory addresses)

Start from 1 if you are counting spaces (pages in a book, ordinals)

Floors are a case where both make intuitive sense, which is maybe how we ended up with European vs American floor numbering.

krukah··on Thought experiments that fray the fabric of space-time
unit sphere != unit ball

The former is the boundary, the latter is the interior + boundary. One of the great arbitrary naming conventions of math.

krukah··on Spikey Spheres (2010)
I love the counter-intuition of high-dimensional spaces, seems to be making the rounds on my feeds these days.

One of the harder generalizations to develop intuition for is the fact that the measure of a d-sphere tends to 0 as d approaches infinity, even though for all d = 0, 1, 2, 3 that our meager brains can visualize, the opposite is true! Geometry goes crazy.

krukah··on Pin
Another great WithoutBoats writeup. Admittedly, this is one of those corners of Rust that I'm glad is abstracted away and buried in async runtime internals.

That said, I'm curious if/when/why/how anyone uses Pin<T> outside of a custom Future implementation?

krukah··on Professional poker players know the optimal strategy but don't always use it
One thing I haven't seen anyone mention yet is that Nash equilibria do not actually exist when you move beyond heads-up into multi-way play. There's strong empirical evidence that solving abstracted games using MCCFR and using real-time depth-limited tree search dominates humans and outperforms all other AI strategies, but these results aren't theoretically sound, unlike in heads-up play.

I've actually been working slowly on https://github.com/krukah/robopoker, an open-source Rust implementation of Pluribus, the SOTA poker AI. What I've found interesting is the difference in how I approach actually playing poker versus how I approach building a solver. Playing the game naturally consists of reasoning about narratives and incorporating information like hand history, play style, live tells. Whereas solving the game is about evaluating tradeoffs between the guarantees of imperfect-information game theory and the constraints of Texas Hold'em, finding a balance between abstract and concrete reasoning.

krukah··on Jailbreaking RabbitOS
If you don't mind sharing, what were some of the first red flags that you noticed in the codebase? Looking at all these jailbreaks and vulnerabilities visible from the outside, I'm sure they only scratch the surface.
krukah··on Tell HN: GPT copilots aren’t that great for programming
Similar experience. I really only still use Copilot to:

- generate short blocks of low-entropy code (save some keystrokes)

- get me off the ground when using a new library (save some time combing through documentation)

krukah··on An introduction to the theory and practice of poker (2020)
100% possible. I'd ~bet~ that 99% of online poker cash games are adversarially against various forms of AI.

The future of online play will be catered more toward teaching, solving, and tracking hands, rather than playing competitively for profit. I recently started a side project in Rust to do just that, mainly for love of the game and desire to learn the language.

Hoping to release later this year and perhaps productize if it gains traction.

krukah··on Seventy versus One Hundred
> Let's assume that the brakes are working at their limit, and as they do so, they are shedding energy at a maximum rate that doesn't change. The cars are identical, so they are both shedding energy at the same rate per unit distance.

Interesting (and I think very reasonable) first-order assumption. Maybe to second-order, the calculation could assume the braking force is proportional to velocity, which I think is roughly true of friction generally, but is also harder to model.

krukah··on Schrödinger equation emerges mathematically from classical mechanics (2012)
It's a great question that, as far as I can reason, has no answer. Newtonian vibes that are familiar to us will only take you so far, and intuitive interpretations of physical quantities often break down when you try to relate them to the scale, experiences, and stimuli of humans.

Let's take momentum, energy, and charge, things that you probably have a strong "real world feel" for. It's worth noting that our intuition for these quantities is actually pretty far-removed from their mathematical origin. Maybe you consider these as different loosely related quantities that pop up in different loosely related calculations, which is a useful and powerful mental model. Momentum is a thing that..."gives velocity to inertial bodies". Energy is a thing...that "does work". Charge is a thing that..."causes forces in the presence of an electric field". If you try to define the terms within each definition, you'll find yourself in some circular definitions, and it'll become unclear which definition, if any, is "most fundamental".

But these quantities are actually quite similar in the sense that they can all be defined in terms of action! Specifically, these are quantities that are conserved because there exists some nice symmetries in the Lagrangian (roughly speaking, a derivative of action). So our intuitive definitions of these things are really just less generalized/more specific understanding of structure that is emergent from action.

Can we look at a physical system and say "oh this one's got a lot of action" or "nature's doing a great job of minimizing the action over here"? No, but we can look at a physical system and say "wow, everything that's happening in here lines up with what I'd observe if this little quantity I defined just so happened to be minimized"

I think no matter how many Lagrangians we integrate or variational calculations we perform, we'll probably never gain a better intuition for action beyond "The Thing That Explains A Lot Of Seemingly Unrelated Physics When It's Minimized." To me, it's both deeply unsatisfying for its abstract and unintuitive nature, but also deeply profound for its universal explanatory power.

tldr; when it comes to action, reject real world feels and embrace mathematical structure.

krukah··on How Gödel's proof works (2020)
I'm always fascinated by how Gödel's incompleteness theorems, Cantor's diagonalization proof, Turing's halting problem, and Russel's paradox all seem to graze the boundaries of logic. There's something almost terrifying about how everything we know seems to "bottom out" and what we're left with is an embarrassingly small infinite set of truths to grapple with.

It really feels to me as if the distinctions between countable vs uncountable; rational vs irrational; discrete vs continuous; all represent the boundary between physics and mathematics – an idea I wish I could elaborate more precisely, but for me stands only on a shred of intuition.

I've been interested lately in Stephen Wolfram's and Scott Aaronson's writings on related ideas.

Aaronson on Gödel, Turing, and Friends: https://www.scottaaronson.com/democritus/lec3.html

Wolfram on computational irreducibility and equivalence: https://www.wolframscience.com/nks/chap-12--the-principle-of...

krukah··on How Gödel's proof works (2020)
It "gets to the theorem" without offering a formal proof, but having read both, I find that Hofstadter's short stories and intuitions have done more for my understanding of Gödelian logic than any formal proofs have.
krukah··on JWST spots giant black holes all over the early universe
The theoretical prediction of black holes dates back to 1916, when Karl Schwarzschild proposed a solution to Einstein's field equations that were part of his general theory of relativity. General relativity is arguably the most robust theory in physics - that being said, general relativity introduces some tension with the other most robust theory in physics, namely quantum mechanics and the Standard Model. These two theories are largely accepted to be accurate and correct, and since they predict different phenomena at different length scales, most scientists have no trouble subscribing to both.

With respect to "direct observation" of a black hole, astronomers at the Event Horizon Telescope successfully reconstructed pictures of a black hole using light in the visible spectrum. But to be fair, this comes after decades of overwhelming experimental evidence of black holes + GR. The EHT result probably received the media attention it did because it is easily interpretable as nice lil JPEG, rather than a 12-page paper with dense plots and LaTeX.

See https://en.wikipedia.org/wiki/Tests_of_general_relativity