In this series we will tackle the problem of optimizing network access to fetch data from the network, a common theme of networked applications. While it is certainly trivial to fetch data from a server in any modern framework or OS, optimizing the frequency of access to the network, in order to save bandwidth, battery, user frustration, amongst other things, is complex. More so if you want to reduce code duplication, ensure testability, and leave something useful (and comprehensible) for the next engineer to use.
We live in a world that overloads us with information, stimuli, and challenges. We make decisions from the second we wake up until the moment we go to bed. To deal with this complexity, we look for unconscious and conscious patterns that help us understand and navigate our surroundings – small internal compasses that guide us through the experiences and information we absorb. These compasses we call “mental models.”
These models influence how we see and perceive the world and play a significant role in our cognitive processes and decision-making.
However, variables (such as emotions, motivation, or a limited capacity to process information) can influence these internal representations of reality. The consequence? We develop cognitive biases that affect our attitudes and behaviors, preventing us from seeing the world objectively.