High school, or college.
"functional" tree structure[:
1) So, once get over the Steve Awk-ings stuff (geek stocking stuffer ideas) and want something more determinate/functional; try excel with an in-depth 80's Q-bert theme. Just rotate excell display 45 degrees[0]. Extra excel points for adding drop shadows to excel cells to create the 3d q-bert board. This is the 'diamond' screen view. See data structures information on tree traversal.
Rules/Restrictions for fetching/storing diamond screen cell data. a) ALWAYS start at top corner. b) Can not move left or right while remaining on same level. c) Starting at top, can not go lower than imaginary line at widest point. The 'determinate' line! d) 'Useful' data/values can ONLY be stored in cell if complete cell touches the determinate line.
2) Open a 2nd excel spread sheet in 'square' screen view. As traverse the diamond screen, store 'matches' in a free cell in same column. this will be an 'array of data' when diamond screen traversal is complete.
So, at the point where can introduce the 'Event Horizon' line[1] and introduce the weighty lead in to 'signed' garbage collection aka negative / posative cancellation. What OS's tag as 'swap space'.
----
[0] : https://github.com/leonicolas/ReQbert
[1] : https://www.youtube.com/watch?v=n6lDG-bP3zg
[2] : excel as a digital crt storage device : https://www.computerhistory.org/storageengine/williams-demon...
It does have a few flaws when it comes to making assumptions about cell contents, and the handling of tables, but otherwise it's quite powerful.
Could call l-systems the electronic/virtual version of 'tally sticks'[0]
[0] : https://www.computerhistory.org/storageengine/roman-philosop...
---- curated direct links from searching hackernews / search engines on 'excel'
* excel for everything : https://benn.substack.com/p/the-next-billion-programmers
* The World Cup of MS Excel : https://archive.ph/DgDYQ
* user-centered approach to user functions in excel : https://www.microsoft.com/en-us/research/wp-content/uploads/...
* MS opens up Excel to custom data types with images, arrays and more : https://www.theverge.com/2021/11/2/22759149/microsoft-excel-...
* Lambda: the ultimate excel worksheet function : https://www.microsoft.com/en-us/research/blog/lambda-the-ult...
* lambda-2d: An exploration of drawingas a programming Language, featureing ideas from lambda calculus : https://www.media.mit.edu/projects/2d-an-exploration-of-draw...
* Using Java script functions in excel : https://www.bleepingcomputer.com/news/microsoft/microsoft-ad...
* spreadsheet as software paradigm : https://medium.com/@vlapiner/spreadsheet-is-a-software-devel...
* make excel spreadsheet behave as an integrated development environment (IDE) : https://www.youtube.com/watch?v=xY6ri3blTQM
* spreadsheets are graphs : https://neo4j.com/blog/spreadsheets-are-graphs-too/
* excel turning machine : https://www.felienne.com/archives/2974
* from recursive functions to turning machines : https://people.irisa.fr/Francois.Schwarzentruber/recursive_f...
* quick way to create an excel example to learn from -> free ai bot creates any excel formula you need : https://bgr.com/tech/game-changer-for-excel-free-ai-bot-crea...
* unusual excel uses : https://www.youtube.com/watch?v=r9PLmtQZwmY
* excel 'card layout' : https://blog.prototypr.io/secrets-of-excel-break-free-from-t...
* excell infographics : https://bootcamp.uxdesign.cc/mastering-excel-infographics-7d...
* conways' game of life simulation in excel : http://dailydoseofexcel.com/archives/2011/04/06/conways-game...
* explaining a structured excell game of life : https://www.j-paine.org/dobbs/life.html
----
[0] : https://www.learnwithlucy.rocks/courses/excel?coupon=earlyde... from https://news.ycombinator.com/item?id=31878462
Just keep in mind how libraries worked before the advent of the computer.
Decker[2][3] current modern take on hypercard.
various types of spreadheets with user interface (vs. use editor with a plain tabular text file):
teapot : https://www.syntax-k.de/projekte/teapot/
visicalc : https://www.visidata.org/
sc-m : https://github.com/andmarti1424/sc-im
or mix files & manipulating 'spreadsheet' text files, gawk[4], webawk[5], python awk[6].not as compact as excel, but diy gui for awk[7] with screen[8]/menu[9] or gui design courses[10]
informal discussion about moving beyond 'text' files: https://twitter.com/llama_index/status/1733653470987825452
--------
[0] : https://elearningindustry.com/memex-hypercard
[1] : https://en.wikipedia.org/wiki/As_We_May_Think
[2] : https://beyondloom.com/decker/index.html
[3] : https://news.ycombinator.com/item?id=33377964
[4] gawk : https://www.gnu.org/software/gawk/manual/
[5] webawk :
a) https://github.com/agordon/webawk / https://agordon.github.io/webawk/
b) https://www.npmjs.com/package/awkjs
c) 'awk driven iot' : https://news.ycombinator.com/item?id=14737978
[6] pawk : https://github.com/alecthomas/pawk[7] https://github.com/chriskiehl/Gooey
[8] screen: https://linuxize.com/post/how-to-use-linux-screen/
[9] menu : https://www.geeksforgeeks.org/menu-driven-shell-script/
[10] HN suggested gui design courses : https://news.ycombinator.com/item?id=38591437
One can then run various scripts to use/pull/push data to/from spreadsheet to other libreoffice applications (database, wordprocessor, forms, etc.)[0][1]
Specific theory not withstanding, learing how to use the various libreoffice applications together, sort of informal way of learning spreadsheet architecture.
list of libreoffice classes from internet search engine request:
https://documentation.libreoffice.org/assets/Uploads/Documen...
https://openclassrooms.com/en/courses/5873051-master-the-bas...
https://www.udemy.com/course/step-by-step-spreadsheets-for-a...
https://www.coursera.org/projects/excel-for-beginners-introd...
https://www.yaclass.in/p/science-state-board/class-8/libreof...
------
[0] : https://help.libreoffice.org/6.1/en-US/text/shared/guide/scr...
[1] : https://documentation.libreoffice.org/assets/Uploads/Documen...
[2] : https://www.youtube.com/watch?v=bgO40-CjYNY
[3] : https://www.libreoffice.org/discover/templates-and-extension...
"aligning/compressing planes"
For the final installment, merge the diamond and square excel screens/sheets to align/line things (compress) using l-systems[0][1][2][3] / turtle programing[4][5][6]
Basic execl l-system concept, is each cell in given square sheet column (highlighted with color of interest) has list of all corresponding similar diamond cells of same color. each square sheet column then is a different picture, an 'l-system' picture.
The trick to finding the diamond cells to put in corresponding square cell color block is XORing square cell color checking for with each diamond sheet cell. If get no color back, then add the diamond sheet cell number to current square sheet cell list (aka no need to mess with garbage results).
[0] http://cd.textfiles.com/amigaacs/amigaacs199806/Utilities/Sh...
[1] : https://www2.cs.arizona.edu/patterns/weaving/weavetech.html
[2] : https://nathan.ho.name/posts/sound-synthesis-with-l-systems/
[3] : draw l-systems with common lisp : https://news.ycombinator.com/item?id=23919080
[4] : learning to program using python logo-like turtle : https://news.ycombinator.com/item?id=2494004
[5] : turtle graphics library (p5.js) : https://github.com/CodeGuppyPrograms/TurtleGFX
[6] : https://www.transum.org/software/Logo/
Logo for kids : https://softwareprogramming4kids.com/logo/
logo programming : https://medium.com/@isetitra/logo-language-for-windows-mac-a...
logo tutorial : https://www.tutorialspoint.com/logo/index.htm
powerfx : https://powerapps.microsoft.com/en-us/blog/introducing-micro...
which language to learn : https://www.reddit.com/r/excel/comments/9emiwd/confused_abou...
lambda, the excel ultimate worksheet function : https://www.microsoft.com/en-us/research/blog/lambda-the-ult...