Disclosure: On this site you won’t find specific advice on “how to call function xyz()”. Interpreting C++ ARM and #pragma dwim is also out of scope.

We’re treating our readers as intelligent beings who can use Google and/or StackOverflow, where all such specific questions were answered more than once.

What you will find is opinions, more opinions, and even more opinions on all the aspects of software development - and with a large chunk of them based on real-world experience too.

Your mileage may vary. Batteries not included.

 

MMOG Server-Side. Eternal Linux-vs-Windows Debate

Quote: “Each server is only as secure as its admin”
Another Quote: “For cheaper servers, the difference between Windows and Linux can eat as much as 50% of the server rental price (though for those servers which are more or less optimal price-performance-wise observed difference was closer to 20-30%).”
[]

Server-Side Architecture. Front-End Servers and Client-Side Random Load Balancing

Quote: “[about Round-Robin DNS] one of these returned IPs can get cached by a Big Fat DNS server, and then get distributed to many thousands of clients”
Another Quote: “As a rule of thumb, Front-End Servers are a Good Thing™”
[]

Server-Side MMO Architecture. Naïve, Web-Based, and Classical Deployment Architectures

Quote: “If you disrupt the game-event-currently-in-progress for more than 0.5-2 minutes, for almost-any synchronous multi-player game you won’t be able to get the same players back, and will need to rollback the game event anyway.”
Another Quote: “However, keep in mind, that all fall-tolerant solutions are complicated, costly, and for the games realm I generally consider them as an over-engineering (even by my standards).”
[]

Client-Side. Client Architecture Diagram, Threads, and Game Loop

Quote: “To have a good concurrency model, it is not strictly necessary to program in Erlang”
Another Quote: “Most of developers agree that FSM-based programming is beneficial in the medium- to long-run.”
[]

Client-Side. On Debugging Distributed Systems, Deterministic Logic, and Finite State Machines

Quote: “After your logic has failed in production, you can “replay” this inputs-log on your functionally identical in-house system, and the bug will be reproduced at the very same point where it has originally happened.”
Another Quote: “You can implement your Finite State Machine as a deterministic variation of a usual event-driven program”
[]

Client-Side. Programming Languages for Games, including Resilience to Reverse Engineering and Portability

Quote: “from all the popular compiled languages, C++ tends to produce the binary code which is the most difficult-to-reverse-engineer (that is, provided that you have turned all the optimizations on, disabled debug info, and are not using DLLs)”
Another Quote: “Bot fighting is always a two-way battle with bot writers inventing a way around the MMO defences, and then MMO developers striking back with a new defence against the most recent attack; rinse and repeat.”
[]

Client-Side. Graphics from “D&D of MMOG” upcoming book

Quote: “Making 3D work is not easy to start with, but making it look good is a major challenge.”
Another Quote: “In such cases of dual visual interfaces, it is paramount to have Logic-to-Graphics layer as described above”
[]