> In this technique the subject memorizes the layout of some building, or the arrangement of shops on a street, or any geographical entity which is composed of a number of discrete loci. When desiring to remember a set of items the subject 'walks' through these loci in their imagination and commits an item to each one by forming an image between the item and any feature of that locus. Retrieval of items is achieved by 'walking' through the loci, allowing the latter to activate the desired items.
> A variation of the "method of loci" involves creating imaginary locations (houses, palaces, roads, and cities) to which the same procedure is applied. It is accepted that there is a greater cost involved in the initial setup, but thereafter the performance is in line with the standard loci method. The purported advantage is to create towns and cities that each represent a topic or an area of study, thus offering an efficient filing of the information and an easy path for the regular review necessary for long-term memory storage.
Reinvention and improvement is a signal of timeless tools :)
Math would be an even more OP answer, but CS can be seen as a kudzu vine of discrete constructionist mathematics, and I don't want to give you the impression that e.g. real analysis is that useful for what we're up to here.
---
[1] Data Structures and Algorithms
[1] Computer Science
Data structures and algorithms, for those wondering.
- SQL, this goes without saying but if you’re only using an ORM without knowing SQL, you’re setting yourself up for failure.
- Regular expressions, it’s not that hard. Knowing how to read and write a regex without needing an external tool (I often use regex101 but I don’t need it) is a huge life saver. It also helps develop a good intuition of when to use (or not) a regex.
- bash, a lot of people use it but never took the time to actually learn it (ie. can’t write a condition or a loop from the top of their head). You’ll use it your whole life, learn bash
If you add the issue of emotional barriers, then knowing how to handle difficult questions is even more powerful.
Not sure about a lifetime :) - but 1/2/3 (some version of it) I have been using for more than 20+ years now.
* sockets, it’s how data flows across a network above layer 4
* test automation, I mean actually writing that automation capability and not using some tool
* file system automation cross-os
* hashing
* certificates
* IPv6
* anything that increases data/application portability/privacy
Wish I did.
Some things have proved to be very useful in past decades but may not be so useful in the future, like small engine repair, and possibly computer programming and electronics. Small engines will cease to exist with time, computer programming is trending towards automation and libraries, electronics keeps getting smaller with less ability to manually build and fix it, though understanding electronics from a design perspective seems likely to still be useful for some time.
You can learn about signal processing by playing with GNU Radio, which is kinda fun even if you're just working with the I/O from your microphone and speakers. Groking negative frequencies is kinda wild, but useful.
Learn how to test backups, for real.
That and regex.
It's just a theory of course because I'm still very far away from being remotely proficient at it.
Budgeting.
Minor repairs (because stuff always breaks).
Debugging (because stuff always breaks).
Talking to people who are different from you (and even who disagree with you).
Big world. The kernel and everything in user space