Human Data Structures

·
·

Table of Contents

“Human data structures” is a bit of a funny anachronism. Conventionally, data structures is a concept that came from computer science, and it refers to how data is structured in memory, such as arrays, linked lists, hashmaps, and so on. But before computers, humans also structured data in logical ways that made it easier for us to process information!

I thought it would be interesting to analyze ways we used to traditionally store data and reason about it through the lens of computer science! Tangentially, I think this would also be useful within the context of plaintet and PKM * Personal Knowledge Management systems for organizing our digital data in ways that align with our human nature.

Lists

This is, without a shadow of a doubt, the most powerful human data structure: the humble list. With a list you can do everything, and other human data structures are really just specializations and extensions of the list.

Lists naturally conform to plaintext, as each entry in a list pairs with each line in a text file. Items in a list are united by the purpose of the list, and entries are added and/or removed as a functional feature of the list. Examples include todo lists, shopping lists, wish lists, reading lists, idea lists, bucket lists, and so on. Because of the diversity of lists, they are the most useful notes in most people’s PKM system.

In lists like todo lists and shopping lists, you first create the list, and then cross things off as you complete them. Other lists like wish lists and reading lists grow and shrink over time as you add and remove entries from them. Idea lists typically only grow as a permanent record, but sometimes lower quality or obsolete ideas are trimmed.

While most lists are just lines on a piece of paper, they can be further physicalized as separate sheets of paper in a stack, or sticky notes on a wall. Lists are also usually unordered, but sometimes the order is important, like in a music playlist.

Schedules

Schedules are a type of specialized list that are always ordered, and they always have a start time for each entry, and sometimes an end time too. You can string multiple schedules across several days, or even the entire week, and you can present them in a table-like graph where each cell is an hour-long block.

Calendars are a variant of schedules that expand the time scope to months and years, but they still achieve the same thing.

Tables

Tables are really just lists of lists, because for each entry in a list, you attach additional data. While you might know tables like this:

CharacterGenderSpecies
ChaiFemaleAxogato
AmberNonbinaryGemstone creature
BiscoffMaleCat
MipsMaleBunny fox

This is topographically the same as the table!

  • Chai
    • Female
    • Axogato
  • Amber
    • Nonbinary
    • Gemstone creature
  • Biscoff
    • Male
    • Cat
  • Mips
    • Male
    • Bunny fox

One caveat is that this type of table can be jagged, where each sub-list can contain different number of entries. While this can be represented with empty cells in a table, this can sometimes lead to extra columns that are largely empty; you could even try to solve this by just putting a list in a cell.

Tables in either form are useful for things like relational data, rosters, logbooks, double-entry accounting, book indexes, bibliographies, and enhancing simple lists with more information. A wishlist could include prices and links to where you can buy it, and an idea list could include source links.

In my personal experience, I found this to be the biggest rabbit hole of useless PKM notes, where I felt that I needed to create a comprehensive table of extra information about stuff that I would never really use later.

Folders

Folders are like a specialized type of table that only has one row. You collect several different kinds of data that are related in some way, and you put them all together in a folder. This is such a useful concept that our computer filesystem are directly based on this. You can further combine several folders that are related in some higher level way and put them into a filing cabinet, and informational books are folder-like in their curation of varied information on a topic.

The idea of storing data together based on their relatedness is a much more useful concept when it comes to PKM systems. Data should be organized next to each other if they are related to each other in a useful manner, rather than be silo’d off into other folders based on some other arbitrary critera.

For example, if you have a project folder for a video you’re editing, you shouldn’t put your image assets into your computer’s pictures folder just because they’re images, they belong alongside the other project files.

Conclusion

There are many PKM systems out there, like the Johnny Decimal System, Zettelkasten, PARA, ACCESS, ACE, et cetera, and if you find one that works for you, that’s great! But for the vast majority who want to manage their data and personal knowledge, lists and folders are going to be your most powerful tools in both digital and physical workspaces.

signature that says "Chai"