
Do you ever feel like you're fighting your own code? You spend hours chasing down bugs caused by state that changed unexpectedly. You approach multi-threading with a sense of dread, armed with a complex arsenal of locks and mutexes, hoping to avoid the next race condition...