Hacker News new | ask | show | jobs
by leajkinUnk 2907 days ago
> There was this Oregon company - Mentor Graphics, I think they were called - really caught a cold trying to rewrite everything in C++ in about '90 or '91. I felt sorry for them really, but I thought people would learn from their mistakes.

I've talked to some of the people at Mentor Graphics who were there during that period. The company basically went from #1 in the industry to #3 or so during the course of the C++ refactor (and the EDA industry isn't exactly big). Bjarne Stroustrup showed up at the company now and then because the company was such a major early adopter. Inheritance chains were 5 or 10 classes deep. A full build took a week. The company hosted barbecues on weekends and invited the employees' families so they could see each other.

I only worked there somewhat later, so I just heard the stories from people who were there at the time, and only after I had been there a while. Take some old-timers out to lunch now and then, you'll learn a lot. I ended up leaving, I was more than a bit frustrated by the organizational culture and the build system my team used was by far the worst I have ever seen in my entire life.

But Oregon is an awesome place to live, the salary was good, and the hours were normal.

3 comments

> Inheritance chains were 5 or 10 classes deep.

30 years later, I still run into the same problem regularly. I'm not sure why, but this seems to be an anti-pattern that everyone needs to learn about the hard way.

I blame java
Don't blame Java. Blame programming instruction.

If it's anything like when I was in school, as soon as the curriculum trots out its first object oriented language, you get a lecture about how is-a relationships are the greatest invention since the compiler, and deep inheritance hierarchies are both the most practical and the most morally righteous way to organize your abstractions.

(Meanwhile, ironically enough, I'm not sure I've ever heard a CS instructor even mention the Liskov Substitution Principle.)

I blame inheritance.
JWZ told a similar story about Netscape between versions 3 and 4 being rewritten in C++. The full story is in the book Coders at Work, but part of it appears here:

https://gigamonkeys.wordpress.com/2009/09/28/a-tale-of-two-r...

Of course this was mid-90s when both the language and especially the compilers were quite different from now (and the compilers very buggy indeed).

> the hours were normal.

What were 'normal' hours for a programmer in the 1990s? Did you guys work 9-5?

Isn't 9-5 still normal now?
9 AM to 5 AM? ;-)