Blob


1 [{:title "Being lazy, the Emacs macro edition"
2 :short "repetitive tasks no more"
3 :slug "emacs-macros"
4 :date "2021/02/10"
5 :tags #{:emacs}
6 :gemtext? true
7 :music {:title "Wait"
8 :by "The Beatles"}}
9 {:title "Fun with seccomp & signals"
10 :short "debugging fiters using signals when signals themselves are the problem"
11 :slug "fun-with-seccomp"
12 :date "2021/02/08"
13 :tags #{:linux}
14 :gemtext? true
15 :music {:title "Lucy in the Sky with Diamonds"
16 :by "The Beatles"}}
17 {:title "Reloading a daemon"
18 :short "reload != stop+start plus misc signals race-conditions"
19 :slug "daemon-reload"
20 :date "2021/02/04"
21 :tags #{:c :unix}
22 :gemtext? true
23 :music {:title "Strawberry Fields Forever"
24 :by "The Beatles"}}
25 {:title "gmid “Interstellar Overdrive” v1.5 update"
26 :short "20 days of work = whole bunch of new features"
27 :slug "gmid-1.5"
28 :date "2021/01/30"
29 :tags #{:gemini :gmid}
30 :gemtext? true
31 :music {:title "Interstellar Overdrive"
32 :by "Pink Floyd"}}
33 {:title "Comparing sandboxing techniques"
34 :short "Different ways beastie, puffy and tux play"
35 :slug "gmid-sandbox"
36 :date "2021/01/22"
37 :tags #{:linux :OpenBSD :FreeBSD :security}
38 :gemtext? true
39 :music {:title "Octavarium"
40 :by "Dream Theater"}}
41 {:title "Parsing PO files in Clojure"
42 :short "Building parsers on top of transducers, what can go wrong?"
43 :slug "parsing-po"
44 :date "2021/01/13"
45 :tags #{:clojure :parsing :literate-programming}
46 :gemtext? true
47 :music {:title "Metropolis Pt. 2 scenes From a Memory"
48 :by "Dream Theater"}}
49 {:title "Parsing UTF-8"
50 :short "The ugly, the uglier and the finite approach"
51 :slug "parsing-utf8"
52 :date "2021/01/11"
53 :tags #{:c :parsing}
54 :gemtext? true
55 :music {:title "Metropolis Pt. 2 scenes From a Memory"
56 :by "Dream Theater"}}
57 {:title "Tangle text/gemini files"
58 :slug "tangle-text-gemini-files"
59 :date "2020/12/30"
60 :tags #{:gemini :literate-programming}
61 :short "Literate programming using text/gemini?"
62 :gemtext? true}
63 {:title "text/gemini to HTML with AWK"
64 :slug "text-gemini-to-html-with-awk"
65 :date "2020/12/29"
66 :tags #{:awk :gemini :git}
67 :short "Fun with AWK and text/gemini"
68 :gemtext? true
69 :music {:title "Venice Queen"
70 :by "Red Hot Chili Peppers"}}
71 {:title "The joy of elisp: an example"
72 :slug "joy-of-elisp-sndio"
73 :date "2020/12/28"
74 :tags #{:literate-programming :lisp :elisp :OpenBSD}
75 :short "let's make sndioctl interactive with the power of a bunch of parens!"
76 :gemtext? true
77 :music {:title "L'infinita Gioia di Henry Bahus"
78 :by "Verdena"}}
79 {:title "IRIs are not hard!"
80 :slug "iris-are-not-hard"
81 :date "2020/12/26"
82 :tags #{:c :gemini}
83 :short "design and implementation of the IRI parser for gmid"
84 :gemtext? true
85 :music {:title "Houseki no Kuni - OST Disc 1"}}
86 {:title "Screen recording from stumpwm"
87 :slug "stumpwm-record-screen"
88 :date "2020/12/09"
89 :tags #{:lisp :stumpwm}
90 :short "recording the screen, but with parens"
91 :gemtext? true
92 :music {:title "Deer Dance"
93 :by "System of a Down"}}
94 {:title "yasnippet and SPC"
95 :slug "yasnippet-expansions"
96 :date "2020/12/01"
97 :tags #{:emacs}
98 :short "expanding yasnippets"
99 :gemtext? true
100 :music {:title "Sign of the Cross"
101 :by "Iron Maiden"}}
102 {:title "love for c(a|d)+r"
103 :slug "love-for-cadr"
104 :date "2020/11/15"
105 :tags #{:lisp :shitposting}
106 :short "caaddaaddaaddaddaa…"
107 :gemtext? true}
108 {:title "gmid update, cgi support and services"
109 :slug "gmid-cgi-and-services"
110 :date "2020/11/10"
111 :tags #{:gemini}
112 :short "status update and cool gemini stuff"
113 :gemtext? true
114 :music {:title "Piccola Città"
115 :by "Francesco Guccini"
116 :url "https://www.youtube.com/watch?v=BjXjgyYU9eU"}}
117 {:title "Emacs side window"
118 :slug "emacs-side-window"
119 :date "2020/11/05"
120 :tags #{:emacs}
121 :short "making buffers go to fu^W side-window themself."
122 :gemtext? true
123 :music {:title "I Will Take Him"
124 :by "Grant Lee Buffalo"
125 :url "https://www.youtube.com/watch?v=q1-qPdkJgNM"}}
126 {:title "gmid"
127 :slug "gmid"
128 :date "2020/10/15"
129 :tags #{:c :gemini}
130 :short "adventures in network programming"
131 :gemtext? true}
132 {:title "Parsing Gemtext with Clojure"
133 :slug "parsing-gemtext-with-clojure"
134 :date "2020/10/03"
135 :tags #{:clojure :gemini :literate-programming}
136 :short "fun with transducers"
137 :gemtext? true}
138 {:title "Hello gemini!"
139 :slug "hello-gemini"
140 :date "2020/10/02"
141 :tags #{:gemini}
142 :gemtext? true}
143 {:title "sndio over the network"
144 :slug "sndio-over-network"
145 :date "2020/09/22"
146 :tags #{:OpenBSD}
147 :short "why searching for a longer cable when you can use the network? /s"
148 :gemtext? true}
149 {:title "Automatic USB Tethering on OpenBSD"
150 :slug "openbsd-tethering"
151 :date "2020/09/21"
152 :tags #{:OpenBSD}
153 :short "hotplug my lazyness"
154 :xkcd 1319
155 :gemtext? true}
156 {:title "EMMS"
157 :slug "emms"
158 :date "2020/09/20"
159 :tags #{:emacs :elisp}
160 :short "How I learned to stop worrying and love the hydra/emacs/whatever"
161 :music {:title "Kaerimichi"
162 :url "https://www.youtube.com/watch?v=2OC6ARG6fZA"}
163 :gemtext? true}
164 {:title "Using IP addresses to assume the language is dumb"
165 :slug "ip-to-assume-language-dumb"
166 :date "2020/08/04"
167 :tags #{:rant}
168 :short "just your daily rant"
169 :music {:title "One Morning"
170 :by "Grant Lee Phillips"
171 :url "https://www.youtube.com/watch?v=ClmbCOW73eo"}}
172 {:title "Localization of dates in web pages"
173 :slug "localization-of-dates-in-web-pages"
174 :date "2020/08/03"
175 :tags #{:l10n}
176 :short ""
177 :music {:title "Dream in Color"
178 :by "Grant Lee Phillips"
179 :url "https://www.youtube.com/watch?v=uqyduBWlmKs"}}
180 {:title "enjoying CDPATH"
181 :slug "enjoying-cdpath"
182 :date "2020/06/27"
183 :tags #{:sh}
184 :short "changing directory like a ninja."
185 :gemtext? true}
186 #_ {:title "sickforth episode 1: parsing"
187 :slug "sickforth-episode-01-parsing"
188 :date "2020/06/23"
189 :tags #{:compilers :sickforth}
190 :short "You've got to start from somewhere"}
191 #_ {:title "sickforth episode 0: introduction"
192 :slug "sickforth-episode-00-intro"
193 :date "2020/06/23"
194 :tags #{:compilers :sickforth}
195 :short "Let's write a compiler for an (arbitrary) subset of Forth!"}
196 #_ {:title "building FreeBSD packages with Synth"
197 :slug "building-freebsd-packages-with-synth"
198 :date "2020/06/13"
199 :tags #{:FreeBSD}
200 :short "Build with ease. Scripts included!"}
201 {:title "Threading macros for elisp"
202 :slug "elisp-threading-macros"
203 :date "2020/06/04"
204 :tags #{:elisp}
205 :short "(-> '->> symbol-name (concat \" is so cool\"))"
206 :toot "https://europecom.net/notice/9vm27kyIDp6oe8h3su"}
207 {:title "Updating the ssh key to ed25519"
208 :slug "upgrading-ssh-key-ed25519"
209 :date "2020/06/03"
210 :tags #{:ssh}
211 :short "no TL;DR this time"}
212 {:title "Logstash + jdbc = role does not exists"
213 :slug "logstash-jdbc-role-does-not-exists"
214 :date "2020/05/10"
215 :tags #{:logstash :postgresql}
216 :short "TL;DR use the connection string properly"}
217 {:title "Finite State Machine in Godot"
218 :slug "finite-automata-godot"
219 :date "2020/04/29"
220 :tags #{:godot}
221 :short "Did I mention how I love finite automata?"}
222 {:title "cgit & gitolite"
223 :slug "cgit-gitolite"
224 :date "2020/04/22"
225 :tags #{:git}
226 :short "Custom git server with web interface & users management"}
227 {:title "$HOME as a git repo"
228 :slug "home-as-git-repo"
229 :date "2020/04/02"
230 :tags #{:git}
231 :short "How do you track dotfiles?"}
232 {:title "Multiplexing data in sh(1)"
233 :slug "sh-multiplexing-data"
234 :date "2019/10/17"
235 :tags #{:sh}
236 :short "please put something clever here"}
237 {:title "Poor man's unbound dashboard"
238 :slug "poor-mans-unbound-dashboard"
239 :date "2019/10/16"
240 :tags #{:OpenBSD :tmux}
241 :short "A little bit of bash, fifos, tmux & ttyplot"}
242 {:title "Core naming in linux"
243 :slug "core-naming-on-linux"
244 :date "2019/10/15"
245 :tags #{:OpenBSD :linux}
246 :short "Porting BSD behaviours to linux"}
247 {:title "CSS sprites with awk and ImageMagick"
248 :slug "css-sprites-awk-imagemagick"
249 :date "2019/08/08"
250 :tags #{:css :awk}
251 :short "I like to automatize things"}
252 {:title "Using the C preprocessors for CSS generation"
253 :slug "cpp-css"
254 :date "2019/03/30"
255 :tags #{:css}
256 :short "old tools for new websites"}
257 {:title "F* on OpenBSD"
258 :slug "fstar-openbsd"
259 :date "2019/03/25"
260 :tags #{:fstar :OpenBSD}
261 :short "It just works"}
262 {:title "Abbreviations in vi(1)"
263 :slug "abbreviations-vi"
264 :date "2018/09/14"
265 :tags #{:vi}
266 :short "type even less"}
267 {:title "Improving maildir opening time in mutt"
268 :slug "maildir-mutt-time"
269 :date "2018/09/14"
270 :tags #{:mutt}
271 :short "<code>header_cache</code> is just awesome"}
272 {:title "Spell checking in vi(1)"
273 :slug "spell-checking-vi"
274 :date "2018/09/08"
275 :tags #{:vi}
276 :short "Aspell plays nice with vi."}]