I mean to me the whole point of NaN is that it should not equal NaN, so it seems sort of like you are making the complaint in the first sentence in your second sentence, only in a slightly more abstracted way. Unless you are of the opinion there is another better point to NaN?
funny story, I was once interviewing for a job where the tech guy did not know that NaN existed. I guess JavaScript wasn't his language, but not sure what was, and the code was in JavaScript for a Web Dev role.
JavaScript's execution model uses cooperative concurrency to avoid a tons of data races, preemptive non-parallel concurrency would make all web development incredibly harder
Yes, I was talking from a performance/UX standpoint.
Of course, doing everything in one thread most of the time makes everything easier, because you're using the thread as the lock, so to speak. But using locks is bad for performance and latency and thus UX.
Oracle makes billions selling SQL when you can just use a free version. This is no different. Enterprise has enterprise needs. It's really not that complicated or irrational.
I cannot answer your main question, but i can give you recommendations wrt what you are gonna try to do.
Very likely there will be a lot of parts of the app you are not going to understand, those will be the main problems so help claude help itself.
Make it add diagnostic/event-logs to every part of the stack and potentially even design implementations around traceability (eg avoid batch background processes that touch many flows if possible). so that claude can check whether runtime behaviour matches expectations. also store historical data to help debug regressions.
Treat implementations as cattle not pets, once a feature is done consider scapping it and turning it into a design doc, then ask claude to reimplement interactively with you step by step explaining to you what is going to do, why it matters, etc. this is a very good way to minimize the black boxes you don't understand in the app.
if the app is web make it work very well with playwright for e2e ux tests.
To be fair it is stupid that NaN !== NaN but that is how IEEE and CPUs made floats to be
reply