I agree with Micahel. We should move away from manual error handling and rely on exceptions. Exceptions are faster and have the benefit of being very agnostic to the code structure. An exception will flow up the call stack until it's handled, making the code more versatile and sparing us gazillions of slow and cryptic if blocks.