During my time at Mentor Graphics, I was always looking for technologies and technology companies that could be integrated into the product lines for which I was responsible. In a start-up, one generally looks to build new things; in an established company, it’s often possible to create value by combining multiple things into a more comprehensive solution. Since I was managing C and C++ software development tools for embedded developers, I was interested in anything that could make those tools better.
Debugging software programs (i.e., fixing them when they’re broken, which is almost always) is hard. In fact, some engineers say that debugging drives them crazy, which is sometimes literally true. Engineers tend to have conversations with their debuggers that go like this:
ENGINEER: What is the value of x?
DEBUGGER: The value of x is 3.
ENGINEER: That can’t be! The set_x function makes sure that x is always even!
The engineer is now denying reality, a classic sign of insanity.
And, so, I became interested in Undo Software.