I was responsible for a budget at work. I got a monthly report showing what items had been charged to it. Each month, without fail, items were charged to my budget that I did not recognise. Brandishing my budget report with the questionable items highlighted, I headed down the corridor to challenge my colleague who allocated charges to budgets. He had around forty piles of paper covering much of the office floor and his desk. It looked chaotic. I’d ask him what the strange items on my budget report related to. He’d thrust his hand into one the piles and extract related documentation. How he know where to look was a mystery. Which budget do you want me to charge it to?, he’d ask. I gently suggested that that was his job, not mine. Somehow, I knew I’d be having the same conversation next month.
Fast data retrieval using caching
In the practical use of intellect, forgetting is as important a function as remembering. - William James
Computer caching is a vital optimisation technique where copies of data are stored in a temporary location for faster future access. A cache can be hardware or software based, e.g. CPU cache and browser cache. As data is added to the cache, at some point it will become full. At this point, the question is, what data do we throw out (or forget) to make room for the new data? The most common eviction policies (or caching algorithms) used include: Random Replacement, First In First Out (FIFO) and Least Recently Used (LRU). While each has its own advantages and use cases, LRU is often best for minimising data retrieval times.
Aside from the question of what to store in a cache, another is how to organise that content. An economist found himself inundated with information in various forms, including correspondence, papers and reports. He tried various ways to organise the data, ending up with the following approach. Each item was labelled with a title and date then placed vertically in a big box. Three rules were applied: 1. New items were added to the left of the existing ones, 2. When searching for an item, he worked from left to right, 3. When he finished with the item, it was placed to the left of the items in the box. He began to realise that not only was this a simple filing system, it also minimised average retrieval times. This approach represents an extension of the LRU rule. In a very appealing twist, when the economist’s box is turned on it’s side, we get a pile. Hence, a pile effectively works as a cache.
Applying caching to personal productivity
Nothing is less productive than to make more efficient what which should not be done at all. - Peter Drucker
The principles of caching help us manage time and resources effectively. Just as computers benefit from reduced data retrieval times, we benefit from reduced cognitive load and fast access to information and tools. Ways I apply these concepts include:
Task prioritisation
A key characteristic of caching is the importance of prioritising frequently used resources. I focus on recurrent or high-impact tasks. By identifying and concentrating on such tasks, I ensure my time and energy are spent on what matters most. Using a strategy like the LRU caching algorithm, I prioritise tasks based on their recent importance.
Reducing cognitive load with folders and tools
Just as a cache reduces the need to retrieve data from a slower main memory, having essential data and tools readily available can reduces my cognitive load. On my laptop I have shortcuts to the most frequently and recently used folders. Also, the apps I use most frequently are on the first screen of my iPhone.
Minimising decision fatigue
Decision fatigue occurs when the quality of decisions deteriorates after a long session of decision-making. To minimise this, certain decisions can be made in advance. In common with Mark Zuckerberg, I wear similar clothes most days. I go to the same coffee shop and buy food from a handful of places.
Automating repetitive tasks
Automation is akin to caching in that it handles repetitive tasks without manual intervention, thus saving time and effort. When I first bought a house, I had many regular bills to pay. However, sometimes I would forget to pay them. I got myself into a real muddle, including receiving a court summons for non payment of Council Tax. My life massively improved when I setup Direct Debits for all regular bills.
Other resources
Algorithms to Live By talk by Brian Christian and Tom Griffiths
Balancing Explore v Exploit Data Tradeoffs post by Phil Martin
Simple Rules post by Phil Martin
While writing this, I realised that my current home office fits the description of my budget charging colleague; just swap piles of paper for piles of books. It would appear we both hit upon an optimal way of storing and retrieving data. Perhaps there is such a thing as organised chaos.
Have fun.
Phil…
Loved the analogy!! Great article again 👏