diff --git a/public/recommended.yaml b/public/recommended.yaml
index 4d137e0..3efa6e6 100644
--- a/public/recommended.yaml
+++ b/public/recommended.yaml
@@ -1,88 +1,102 @@
- title: Books
children:
- - title: Technology
- children:
- - title: C programming
+ - title: Technology
children:
- - title: The C Programming Language [K&R]
- url: https://en.wikipedia.org/wiki/The_C_Programming_Language
- - title: Expert C Programming by Peter van der Linden
- - title: Practical C Programming by Steve Oualline (outdated like all the books
- in this section but still good)
- - title: Mastering Algorithms with C by Kyle Loudon
- - title: Other Programming
+ - title: C programming
+ children:
+ - title: The C Programming Language [K&R]
+ url: https://en.wikipedia.org/wiki/The_C_Programming_Language
+ - title: Expert C Programming by Peter van der Linden
+ - title: Practical C Programming by Steve Oualline
+ description:
+ Outdated like many the books in this section but it is very helpful
+ to learn some of the things discussed, especially if you have no exposure
+ to the language outside of school.
+ - title: Mastering Algorithms with C by Kyle Loudon
+ - title: Other Programming
+ children:
+ - title: Programming Perl by Larry Wall [Camel Book]
+ description: One of the first programming
+ books I have ever used. It probably is outdated but it is written well.
+ - "Programming Rust: Fast, Safe Systems Development"
+ - The Rust Programming Language
+ - Programming in Lua, Fourth Edition by Roberto Ierusalimschy
+ - title: Operating Systems
+ children:
+ - Advanced Programming in the Unix Environment by W. Richard Stevens
+ - title: "Operating Systems: Design and Implementation by Andrew S. Tanenbaum"
+ description:
+ I have not had a chance to read his other books on OS. I am
+ not a fan of his networking book though.
+ - title: Computer Engineering
+ children:
+ - "Making Embedded Systems: Design Patterns for Great Software by Elecia White"
+ - "Computer Organization and Design: the Hardware/Software Interface [Patterson
+ Hennessy]"
+ - "Computer Architecture: A Quantitative Approach [Hennessy Patterson]"
+ - title: Compilers
+ children:
+ - title: "Compilers: Principles, Techniques, and Tools [Dragon Book]"
+ description: Discusses theory in detail so it is kind of hard to read.
+ - title: Other
+ children:
+ - title: "Definitive Guide to sed: Tutorial and Reference"
+ - title: Classics
+ description: I am not sure I should make a sublist for the ones that were not originally in English.
children:
- - Programming Perl by Larry Wall [Camel Book] (one of the first programming
- books I used. It probably is outdated but it is written well)
- - 'Programming Rust: Fast, Safe Systems Development'
- - The Rust Programming Language
- - Programming in Lua, Fourth Edition by Roberto Ierusalimschy
- - title: Operating Systems
+ - Christmas Carol
+ - A Tale of Two Cities
+ - The Mayor of Casterbridge
+ - The Citadel
+ - Oliver Twist
+ - Macbeth
+ - Othello
+ - Adventures of Huckleberry Finn
+ - Murder on the Orient Express
+ - title: Latin Learning
children:
- - Advanced Programming in the Unix Environment by W. Richard Stevens
- - 'Operating Systems: Design and Implementation by Andrew S. Tanenbaum (I have
- not had a chance to read his other books on OS. I am not a fan of his networking
- book though.)'
- - title: Computer Engineering
- children:
- - 'Making Embedded Systems: Design Patterns for Great Software by Elecia White'
- - 'Computer Organization and Design: the Hardware/Software Interface [Patterson
- Hennessy]'
- - 'Computer Architecture: A Quantitative Approach [Hennessy Patterson]'
- - title: Compilers
- children:
- - title: 'Compilers: Principles, Techniques, and Tools [Dragon Book] (discusses
- theory in detail so it is kind of hard to read)'
- - title: Other
- children:
- - title: 'Definitive Guide to sed: Tutorial and Reference'
- - title: Classics
- description: Only the English ones for now.
- children:
- - Christmas Carol
- - A Tale of Two Cities
- - The Mayor of Casterbridge
- - The Citadel
- - Oliver Twist
- - Macbeth
- - Othello
- - Adventures of Huckleberry Finn
- - Murder on the Orient Express
- - title: Language Learning
- children:
- - Lingua Latina per se Illustrata (Both parts)
+ - Lingua Latina per se Illustrata (Both parts)
+ - Henle's Textbooks
- title: Movies
children:
- - Pulp Fiction
- - Blade Runner 2049
- - The Grand Budapest Hotel
- - The Hateful Eight
- - Goodfellas
- - Inception
- - Memento
- - Dune (2021)
- - Hot Fuzz
- - Snatch
+ - title: English language
+ children:
+ - Pulp Fiction
+ - Blade Runner 2049
+ - The Grand Budapest Hotel
+ - The Hateful Eight
+ - Goodfellas
+ - Inception
+ - Memento
+ - Dune (2021)
+ - Hot Fuzz
+ - Snatch
- title: Music
+ description: This is probably the most incomplete list. I have a playlists page so maybe I should move these there.
children:
- - American Pie by Don McLean
- - L'Ultima Diligenza by Ennio Morricone
-- title: Classical Music
- children:
- - Große Fuge Op. 133
- - KV 387
- - KV 448
- - KV 626
- - Piano Sonata No. 2 Mvmt. 3 (Chopin)
- - BWV 1048
- - Prelude in G Minor (Op. 23 No. 5)
- - String Quartet, Op. 20 No. 2 (Haydn)
- - Arabesque No. 1 (Debussy)
+ - title: Rock
+ children:
+ - American Pie by Don McLean
+ - title: Multimedia OST
+ children:
+ - L'Ultima Diligenza by Ennio Morricone
+ - title: Classical
+ children:
+ - Große Fuge Op. 133
+ - KV 387
+ - KV 448
+ - KV 626
+ - Piano Sonata No. 2 Mvmt. 3 (Chopin)
+ - BWV 1048
+ - Prelude in G Minor (Op. 23 No. 5)
+ - String Quartet, Op. 20 No. 2 (Haydn)
+ - Arabesque No. 1 (Debussy)
- title: Video Games
children:
- - 'The Legend of Zelda: Breath of the Wild'
- - Portal 2
- - Factorio
- - 'The Witcher 3: The Wild Hunt GOTY Edition (Especially the DLCs)'
- - Baba is You
- - Red Dead Redemption
+ - "The Legend of Zelda: Breath of the Wild"
+ - Portal 2
+ - Factorio
+ - "The Witcher 3: The Wild Hunt GOTY Edition (Especially the DLCs)"
+ - Baba is You
+ - Red Dead Redemption
+ - Sid Meier's Civilization VI
diff --git a/public/resources.yaml b/public/resources.yaml
index 02bba4f..18aab98 100644
--- a/public/resources.yaml
+++ b/public/resources.yaml
@@ -1,34 +1,34 @@
- title: Programming
children:
- - url: http://aggregate.org/MAGIC/
- title: The Aggregate Magic Algorithms
- - url: https://3fx.ch/typing-is-hard.html
- title: Typing is Hard
- - url: https://www.atlassian.com/git/
- title: Atlassian's Git Guide
- - url: https://learnopengl.com/
- title: LearnOpenGL.com
- - url: http://ctan.math.utah.edu/ctan/tex-archive/info/symbols/comprehensive/symbols-letter.pdf
- title: "[PDF] LaTeX Symbols"
- - url: https://tobi.oetiker.ch/lshort/lshort.pdf
- title: "[PDF] The Not So Short Introduction to LATEX 2ε"
- - url: https://writing.kemitchell.com/2016/09/21/MIT-License-Line-by-Line.html
- title: The MIT License, Line by Line by Kyle E. Mitchell
- - title: Posts
- children:
- - title: How to Make Your Code Reviewer Fall in Love with You by Michael Lynch
- url: https://mtlynch.io/code-review-love/
- - title: What's in the box? by @fasterthanlime
- url: https://fasterthanli.me/articles/whats-in-the-box
- - title: Talks
- children:
- - title: Concurrency is not Parallelism by Rob Pike
- url: https://talks.golang.org/2012/waza.slide
+ - url: http://aggregate.org/MAGIC/
+ title: The Aggregate Magic Algorithms
+ - url: https://3fx.ch/typing-is-hard.html
+ title: Typing is Hard
+ - url: https://www.atlassian.com/git/
+ title: Atlassian's Git Guide
+ - url: https://learnopengl.com/
+ title: LearnOpenGL.com
+ - url: http://ctan.math.utah.edu/ctan/tex-archive/info/symbols/comprehensive/symbols-letter.pdf
+ title: "[PDF] LaTeX Symbols"
+ - url: https://tobi.oetiker.ch/lshort/lshort.pdf
+ title: "[PDF] The Not So Short Introduction to LATEX 2ε"
+ - url: https://writing.kemitchell.com/2016/09/21/MIT-License-Line-by-Line.html
+ title: The MIT License, Line by Line by Kyle E. Mitchell
+ - title: Posts
+ children:
+ - title: How to Make Your Code Reviewer Fall in Love with You by Michael Lynch
+ url: https://mtlynch.io/code-review-love/
+ - title: What's in the box? by @fasterthanlime
+ url: https://fasterthanli.me/articles/whats-in-the-box
+ - title: Talks
+ children:
+ - title: Concurrency is not Parallelism by Rob Pike
+ url: https://talks.golang.org/2012/waza.slide
- title: Electrical
children:
- - title: Common Wire-To-Board, Wire-To-Wire Connectors, And Crimp Tools
- url: http://www.mattmillman.com/info/crimpconnectors/
+ - title: Common Wire-To-Board, Wire-To-Wire Connectors, And Crimp Tools
+ url: http://www.mattmillman.com/info/crimpconnectors/
- title: Other Topics
children:
- - title: Sight Reading Trainer
- url: https://sightreading.training/
+ - title: Sight Reading Trainer
+ url: https://sightreading.training/
diff --git a/styles/lists.module.css b/styles/lists.module.css
index a9a27ee..21396b0 100644
--- a/styles/lists.module.css
+++ b/styles/lists.module.css
@@ -1,3 +1,7 @@
+.desc {
+ font-size: 0.95rem;
+}
+
.listItem {
padding: 0.25rem;
display: block;
@@ -6,4 +10,12 @@
.listItem::before {
content: '■';
padding: 0 0.5rem;
-}
\ No newline at end of file
+}
+
+.listItemDesc {
+ display: inline-block;
+ padding: 0.25rem;
+ margin-left: 2.5rem;
+ font-size: 0.95rem;
+}
+
diff --git a/util/resrec.tsx b/util/resrec.tsx
index 68bedfd..95aa1f3 100644
--- a/util/resrec.tsx
+++ b/util/resrec.tsx
@@ -55,11 +55,22 @@ export function mapChild(obj: listItem | string, level: number) {
if (obj.title === '')
return <>>
+ const desc = obj.description
+ ? {obj.description}
+ : <>>;
if (obj.url)
- return {obj.title}
+ return (
+ <>
+ {obj.title}
+ {desc}
+ >);
if (!obj.children)
- return {obj.title}
+ return (
+ <>
+ {obj.title}
+ {desc}
+ >);
let title: ReactElement;
@@ -69,9 +80,9 @@ export function mapChild(obj: listItem | string, level: number) {
title = React.createElement('strong', {}, obj.title);
return (
-
+
{title}
- {obj.description ?