Any software model that forces customers to phone home/connect to the mothership is flawed at best and horrific at worst.
Regarding Team Fortress 2 (arguably one of their most successful recent titles)
Valve as a company has ridden on the coattails of technology originally developed (and not significantly improved since) from around 1997. The HL/HL2 entity/brush system hasn't changed significantly since Quake1 and to date they still haven't achieved the stunning leap forward of the original Team Fortress "mod". To be clear, the features and functionality available in Quake1 with the original Team Fortress Mod has not been seen in TF2. You would think after 12 years they could have come up with something better. Nope! (No, from a development/mapping perspective, more eye candy does not equal "better")
Take a walk through their bug database and see how long it takes to get anything acknowledged, never mind fixed. It's atrocious. It's embarrassing. The number of developers at Valve that actually know enough about their "flagship" engine and SDK is less than two, that is, one. And he has all the arrogance such a unique position would create. Two for two, Valve, well played.
Oh wait, you can't look through their bug database! Looky here... the buglist was retired late in 2008/early in 2009, and used to reside at http://developer.valvesoftware.com/cgi-bin/bugzilla/buglist.cgi
Apparently now you can't submit bugs. http://developer.valvesoftware.com/w/index.php?title=Bugzilla&redirect=no
That's awesome. How is removing the only publicly accessible bug submission and tracking tool a good thing? Oh right, it's not.
Steam is a cancer on the gaming world. Here's the way it should work: I give you money, you give me a product. That's where our business relationship ends, after the payment transaction.
Want to try something fun with Steam? Play your favorite game. Shut down your computer. Disconnect from the Internet (I know, shocking, but try it!). Now start up the computer and play your favorite game again. Oh wait, you CAN'T. In fact, without planning ahead and jumping through all their lame ass hoops, you CANNOT. EVER. PLAY. AGAIN. Until you reconnect to the Internet.
Guess what? Some of us don't live in a world of 100% guaranteeed Internet Connectivity. Yeah, like ... you know, the part of the world that isn't australia, north america, and western europe. Well that's ok, says Valve, you're boned! Thanks for the money, we'll be snorting more coke off hookers while you can't play your game! Woo hoo!
Until it is possible to play the games I paid for without planning ahead for an Internet "outage", Steam is fundamentally broken. 100%, forever, stick a fork in it, it's done.