blob: b2f773b6b379181ce60833245622429f8d5362cd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
(ns pages
(:require [borkdude.html :refer [html]]
#_
[pages.missionary :refer [missionary]]
[pages.second-sex :refer [second-sex]]
[components :refer [template page]]))
(def home-uri "/")
(def media-queue-uri "/media-queue")
(def media-log-uri "/media-log")
(def books-2026-uri "/books-2026")
(def books-2025-uri "/books-2025")
(def films-2025-uri "/films-2025")
(def second-sex-uri "/second-sex-quotes")
(def past-work-uri "/past-work")
#_
(def missionary-uri "/code/missionary")
(defn home []
(template
(html
[:<>
[:p "Hello."]
[:p "My name is Jake Zerrer. This is where I keep things online. Look around."]
[:ul
(map
(fn [[uri name]]
(html
[:li [:a {:href (str uri)} name]]))
[[media-log-uri "My media log"]
[media-queue-uri "My media queue"]
[books-2026-uri "Favorite reads of 2026"]
[books-2025-uri "Favorite reads of 2025"]
[films-2025-uri "Films I enjoyed in 2025"]
[second-sex-uri "The Second Sex: Selected Excerpts"]
[past-work-uri "Past work"]])]])))
(defn films-2025
[]
(page
(html
[:<>
[:h1 "Films I enjoyed in 2025"]
[:ul
[:li "Train Dreams (2025)"]
[:li "The Secret Agent (2025)"]
[:li "Fitzcarraldo (1982)"]
[:li "Koyaanisqatsi (1982)"]
[:li "Black Narcissus (1947)"]
[:li "Anora (2024)"]
[:li "Sentimental Value (2025)"]]])))
(defn books-2025
[]
(page
(html
[:<>
[:h1 "Favorite reads of 2025"]
[:ul
[:li "A Tale for the Time Being (Ruth Ozeki)"]
[:li "The Second Sex (Simone de Beauvior)"]
[:li "The Places in Between (Rory Stewart)"]
[:li "Either/Or: A Fragment of Life (Søren Kierkegaard)"]
[:li "The Philosophy of History (G. W. F. Hegel)"]
[:li "This Life: Secular Faith and Spiritual Freedom (Martin Hägglund)"]
[:li "The Power Broker (Robert Caro)"]
[:li "Mating (Normal Rush)"]]])))
(defn books-2026
[]
(page
(html
[:<>
[:h1 "Favorite reads of 2026"]
[:ul
[:li "The Price of Peace (Zachary D. Carter)"]]])))
(defn media-queue
[]
(page
(html
[:<>
[:h1 "My media queue"]
[:p "This page contains a list of media that I'd like to read, watch, listen to, otherwise consume at some point. Think of it kind of like my public bookmarks."]
[:ul
[:li "Introduction to Algorithms (Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein)"]
[:li
[:s
[:a {:href "https://www.youtube.com/watch?v=jdn617M3-P4"}
"Exotic Functional Data Structures: Hitchhiker Trees by David Greenberg (YouTube)"]]]]])))
(defn media-log
[]
(page
(html
[:<>
[:h1 "My media log"]
[:section
[:h2 "Exotic Functional Data Structures: Hitchhiker Trees by David Greenberg (YouTube)"]
[:a {:href "https://www.youtube.com/watch?v=jdn617M3-P4"} "URL"]
[:p "Focused on the implementation of the Hitchhiker Tree data structure. I was hoping
to learn a bit more about how Greenberg had been using Hitchhiker Trees."]]])))
(defn past-work
[]
(page
(html
[:<>
[:h1 "Past work"]
[:p "I have spent most of my professional life working as a software engineer:"]
[:ul
[:li "In 2024, I ran product engineering at Normal Computing"]
[:li "In the summer of 2023, I traveled and prototyped a devex tool called refuge"]
[:li "From 2018 to 2023, I worked as a software engineer at Flexport"]
[:li "From 2014 to 2017, I worked as a software engineer at a small startup"]]
[:p "I had a previous career as a theatrical sound designer in New York City."]])))
(defn e-404 []
(page
(html
[:<>
[:h1 "404 Oh, be some other path!"]
[:p "What's in a path? That which we call a page"
[:br]
"by any other path would fail to load"]])))
(defn pages []
{home-uri home
media-queue-uri media-queue
media-log-uri media-log
books-2026-uri books-2026
books-2025-uri books-2025
films-2025-uri films-2025
past-work-uri past-work
#_#_
missionary-uri missionary
second-sex-uri second-sex})
(comment
(require '[repl :refer [restart build]])
(restart)
(build))
|