It's pretty useful when you have some distribution layer (i.e. some pubsub system)
Consider 10-15 applications running on a host, and all of them are listening to data being distributed by another service. Instead of all of them opening a connection to that service, instead they would all be connected to this sidecar, and the sidecar would merge the distribution of data (and subscriptions) to the pubsub system
Oh yeah, for option A I meant to just stay in Canada until my company hopefully gets profitable and then "transfer" it to the US and move to the US if somehow I can self-sponsor/sponsor through company.
C++ was probably compiled without optimizations. In a compiled binary there won't even be any calculations done - see for yourself https://godbolt.org/z/Mhhzhdr7c
About time. The amount of value you get from having random conversation with your coworkers is too much to pass up on. Breakdown of communication through text also sucks.
What's better about git? I haven't used svn, but have used perforce/mercurial professionally/git professionally, and use git personally, but I find all of them to provide the same "feature set" when doing basic development: have your own branch, and merge it in to the main branch when done/reviewed.
Merging seems the same on all 3 version control systems I've used... I've heard that git branching is better(?), but haven't seen that being used anywhere really.
It's a nasty bug that everyone encounters when first working with coroutines. (Similarly everyone will encounter references that don't live until you co_await the task).