The project I'm currently working on, Facebook Chat, offered a nice set of software engineering challenges: The most resource-intensive operation performed in a chat system is not sending messages.It is rather keeping each online user aware of the online-idle-offline states of their friends, so that conversations can begin.Also drops from a Medic as soon as he activates or comes to the end of his own Über Charge. Crouching causes the player to appear to be a Dispenser of the enemy team to enemy players.As a side effect, forces the player's speed to 450 Hammer Units/second (diagonal movement is at 520 HU/s).Note that approach (a) changes the sending a chat message / loading a Facebook page from a one-to-one communication into a multicast to all online friends, while approach (b) ensures that users who are neither chatting nor browsing Facebook are nonetheless generating server load.Another challenge is ensuring the timely delivery of the messages themselves.It is designated a World Heritage Site by UNESCO, which calls it "the high point of French Gothic art" and a "masterpiece". The majority of the original stained glass windows survive intact, while the architecture has seen only minor changes since the early 13th century.
This condition also causes Sentry Guns to ignore the player. Player is forced into thirdperson and hears the Bombinomicon's lines as if their head were turned into a bomb.
The naive implementation of sending a notification to all friends whenever a user comes online or goes offline has a worst case cost of O(average friendlist size * peak users * churn rate) messages/second, where churn rate is the frequency with which users come online and go offline, in events/second.