While analyzing the source codes of various programs I can't help creating associations that each program has a tendency to certain diseases. In many projects you can easily make out patterns of incorrect code that can be found in different project files. In some programs these are Copy-Paste errors, while in others it's "unsigned_integer < 0"-like checks. Each project has its own disease....
Static Code Analyzer
Let's speak on shift operators <<, >>. The working principles of the shift operators are evident and many programmers even don't know that using them according to the C/C++ standard might cause undefined or unspecified behavior.
Splitting up your code files is a great way to stay organized, but can cause trouble for new programmers that may lead them away from this good practice. Learn the common problems and how to solve them
Answers for questions like - Why is auto_ptr deprecated? Why unique_ptr finally works good? How to use arrays with unique_ptr? Why create shared_ptr with make_shared? How to use arrays with shared_ptr? How to pass smart pointers to functions?
The CPU does not need to be an opaque box of mystery. Skilled programmers learn their tools, including what goes on inside the CPU. Very skilled programmers learn to optimize their code by knowing both what is inside and also how to manipulate the results.
In games, performance is obviously critical, almost every device now features multi core systems; we have a tendency to naturally feel that going towards more threading is neat. I'd like to give a few insights about low level implications of threading.
This article discusses the reasons for using a source control and continuous integration system.It then shows you how to get started with Team Foundation Service - Microsoft's cloud-based service for agile planning, collaboration, source control and continuous integration.
Supporting multiple target SIMD dialects is a painful chore. Intel made this quite difficult by continually adding a little here and there and ending up with 8+ different variations. This article will present a solution of leveraging SIMD without too many hassles.