Cognitive Science based Software Engineering
How understanding memory, cognitive load, and mental models can make you a better developer

Search for a command to run...
How understanding memory, cognitive load, and mental models can make you a better developer

Calculating the exact number of distinct items in a collection can be a difficult task if the collection is very large or if you have a very limited amount of memory. Typical approaches can be: using a hash map (uses more memory) using a bit map (u...

Recursion — according to Wikipedia — is: “something that occurs when a thing is defined in terms of itself or of its type” A nice visual example of recursion is when you look at your screen while sharing it via VNC, like in the image above in which...

Backtracking is one of my favorite algorithms because of its simplicity and elegance; it doesn’t always have great performance, but the branch-cutting part is really exciting and gives you an idea of the progress in performance while you code. But le...
