If I could make two improvements to Steam which would make it more acceptable to people, they would be these:
1. Make Steam decentralized. By decentralized, I mean the way the program operates on the end-user PC. Roll all the Steam functionality into HL2.exe itself, and then have each Steam-enabled app communiate with each other to end up with the same functionality set as provided by the seperate Steam application.
However, a seperate Steam app could be maintained, providing all the services it currently does, such as out of game server browsing, updates rolled out on the desktop, and Friends.
2. Side-by-side versioning.
When a patch happens, download the new files in the background, while keeping the old files untouched. When enough people have the update, the update is switched on, and the old files are purged. This would also help with updates breaking offline, as going online wouldn't break your working version of the game until you were done with the update.
1. Make Steam decentralized. By decentralized, I mean the way the program operates on the end-user PC. Roll all the Steam functionality into HL2.exe itself, and then have each Steam-enabled app communiate with each other to end up with the same functionality set as provided by the seperate Steam application.
However, a seperate Steam app could be maintained, providing all the services it currently does, such as out of game server browsing, updates rolled out on the desktop, and Friends.
2. Side-by-side versioning.
When a patch happens, download the new files in the background, while keeping the old files untouched. When enough people have the update, the update is switched on, and the old files are purged. This would also help with updates breaking offline, as going online wouldn't break your working version of the game until you were done with the update.