On.Programming

For most of us, programming (or more generally – software development) is all the life is about.

IT Hares are not different. And they have more than just quite a few bits to share about programming…

MMOG. RTT, Input Lag, and How to Mitigate Them

January 25, 2016 by “No Bugs” Bunny

MMOG. RTT, Input Lag, and How to Mitigate Them - Post preview image

Quote:

For fast-paced games, there is one big problem with the flow shown on this diagram, and the name of the problem is “latency” (a.k.a. 'input lag')

Another Quote:

No, better bandwidth doesn't necessarily mean better latency

Filed under: Book: D&D of MOGs1st beta of Vol. I-III1st beta of Vol. VII-IXOn.System ArchitectureDistributed systemsOn.ProgrammingNetwork ProgrammingOn.SecurityFraud Prevention

Read more

MMOG Server-Side. Programming Languages

January 18, 2016 by “No Bugs” Bunny

MMOG Server-Side. Programming Languages - Post preview image

Quote:

From the 50'000-feet point of view, 90% of the differences between modern mainstream programming languages (as they're normally used - or better to say, SHOULD be used - at application-level) are minor or superficial.

Another Quote:

On the server side (unlike client-side) protection from bot writers is not an issue (as server-side code is never exposed to players)

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.ProgrammingProgramming Languages

Read more

Asynchronous Processing for Finite State Machines/Actors: from plain event processing to Futures (with OO and Lambda Call Pyramids in between)

January 11, 2016 by “No Bugs” Bunny

Asynchronous Processing for Finite State Machines/Actors: from plain event processing to Futures (with OO and Lambda Call Pyramids in between) - Post preview image

Quote:

With 'callback pyramid' it is not easy to express the concept of 'wait for more than one thing to complete' , which leads to unnecessary sequencing, adding to latencies (which may or may not be a problem for your purposes, but still a thing to keep in mind).

Another Quote:

Don't even think of converting all of your code to a so-called Continuation-Passing-Style

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System Architecture(Re)ActorsOn.ProgrammingProgramming Languages

Read more

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

December 7, 2015 by “No Bugs” Bunny

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

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

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System ArchitectureDistributed systems(Re)ActorsOn.ProgrammingDebugging

Read more