Valve can say what they want and release HL2 when it want. You are not their boss, or their dad. Quit acting like Valve owes YOU something.
If it wasn't for Counter-Strike, Half-Life would be in the $9.99 bargain bin at EB.
Valve is arrogant. Not only that, but their marketing plan is evily good. The source engine does not have a single feature that the DOOM3 engine doesn't have, and yet it is heralded as the "engine of tomorrow." Ridiculous. They've boasted so much and generated so much hype about their new physics engine(which isn't even theirs) and DirectX9 shaders that they've actually made everyone forget about how amazing DOOM3 looked at E3 two years ago. Incredible.
VoodooV, Half-Life 2 being delayed is not a marketing scheme. That conspiracy idea is the most retarded thing ever posted on these boards, and that includes everything Fredrickson has ever said.
Games can't be released like movies. For one thing, timing the release with technology is vital, plus it takes a lot longer to make games than it does to make movies. And in the programming world, what you run into is the human factor: there is no such thing as bug free code. Here are some things to know about software development:
1) you never hit your release data.
2) there are always gigantic bugs found near the end of the project, resulting in massive amounts of time spent on fixing and testing said bugs.
3) Murphy's law: anything bad that can happen will happen. You guys may laugh at this, but it's true. Murphy lurks in code like some sort of ghost freak, and just when you're about to release, he fucks everything up.
99% of the time games slip. So do other applications. The human factor makes code un-perfect, and people always think they're faster than they really are.
Also, don't forget that humans wrote such tools as VB, Java, C++, etc. Our own coding languages aren't perfect either.