181 karma · joined May 20, 2014
I didn't say multithreading anywhere. Mutitasking (concurrency) != Multithreading.
You can do pre-emptive concurrency with a single thread in other runtimes, where each task gets a pre-defined amount of CPU time slice, that solves fair scheduling for both IO and CPU-bound workloads. Nobody is supposed to pick NodeJS for CPU-bound workload, but you cannot escape JSON parse/stringify event-loop blocking in practice (which is CPU-bound).
That's what I experienced too. But I think the deeper problem is Node's cooperative multitasking model. A preemptive multitasking (like Go) wouldn't block the whole event-loop (other concurrent tasks) during serializing a large response (often the case with GraphQL, but possible with any other API too). Yeah, it does kinda feel like amateur hour.
https://www.tomshardware.com/pc-components/nas/synology-requ...
I'd also add that code readability goes a long way too. Rust compiler has better checks than Go, but when LLMs make mistakes it's a lot easier to identify and fix generated Go code than Rust.
So the balance between verbosity and readability is important too, in addition to soundness checks. Java and Go are both verbose, but Go is intentionally designed for readability.
And compile time as already mentioned. Go wins there too.
All of these help together to iterate faster with fast and often subtly wrong generated code. LLMs will continue to be less wrong as the available training samples increase over time. That's something for the future to see what wins there.
Anybody knows why?
Edit: forgot to add link - https://revanced.app/
Be aware of the fake ones.
It starts like Scratch but then can help kids transition from block-based to text-based programming (JavaScript or Python).
You don't know how comments like this affects people with anxiety, which probably led them to search for a solution online in the first place.
Anyway, you are person unworthy of any attention. I'm just trying to make sure op isn't taking you seriously.
Real world challenges needs time to think, often time to refactor after initial working prototype. A take home allows that.
Also the candidate is already relaxed in the pair programming session because it's a familiar codebase. You'll get signal if they didn't write it or wrote something they didn't quite understand.
[1] https://www.lego.com/en-us/service/help/products/electronics...
[2] https://youtube.com/playlist?list=PLj_k_RHuTqaUojvL-J76TVjG2...
[1] https://www.ft.com/content/5778f3d0-1b3c-11ea-97df-cc63de1d7...