aaronl, you should do an internship (with an open mind) at a VB programming shop. I'm not saying that to belittle you or anything - just that I believe that MS has done a pretty good job with ActiveX/COM (apart from the obvious security problems), and seeing it in use might be an eye opener for you. (Actually, I think most Linux programmers should do this, too).
Basically, component architectures allow not-so-talented programmers to build reliable, large applications quickly by using prewritten parts. It's like C programmers use libraries. Yes, there is some "bloat" associated with using genralised code, but the decrease in development time and the increase in reliability more than makes up for it in most cases.
I'm sure you already know this, but I wanted to point it out anyway.
kuro5hin has been.. interesting the last couple of days. There have been roughly 20 stories a day submitted, and most of them have been single paragraph adverts for peoples private website projects. Not good.