Inside Medical Software: When Programming Errors Cost Lives