Programming

From Basics of the Unix Philosophy

The only way to write complex software that won't fall on its face is to hold
its global complexity down — to build it out of simple parts connected by
well-defined interfaces, so that most problems are local and you can have some
hope of upgrading a part without breaking the whole.

Compilers

Linkers

Architecture, Interface&pattern design

  • Fluent interface.
  • http://blog.8thlight.com/uncle-bob/2012/08/13/the-clean-architecture.html

OOP

  • ootips.org
  • gamedevelopment.tutsplus.com/tutorials/avoiding-the-blob-antipattern-a-pragmatic-approach-to-entity-composition--gamedev-1113
  • http://blog.seancassidy.me/better-java.html

Algorithm

Channel coding

Error-correcting codes

Reed-Solomon

CRC

Threads

  • http://developers.memsql.com/blog/common-pitfalls-in-writing-lock-free-algorithms/

Linux

C&C++

Low level

  • http://blog.erratasec.com/2015/03/x86-is-high-level-language.html
  • https://idea.popcount.org/2016-11-01-a-brief-history-of-select2/

WEB

  • http://lcamtuf.blogspot.com.br/2010/10/http-cookies-or-how-not-to-design.html
  • http://apihandyman.io/do-you-really-know-why-you-prefer-rest-over-rpc/

UNIT TEST

  • http://martinfowler.com/articles/testing-culture.html

Gaming

  • Scroll Back: The Theory and Practice of Cameras in Side-Scrollers docs