--- a/README.markdown Sun Jun 03 13:13:02 2018 -0400
+++ b/README.markdown Wed Jun 06 22:22:53 2018 -0700
@@ -1,389 +1,30 @@
[TOC]
-[aeropress]: http://amzn.to/2zZq5GT
-[bearlibterminal]: https://bitbucket.org/cfyzium/bearlibterminal
-[bria]: https://bitbucket.org/sjl/bria/
-[chancery]: https://bitbucket.org/sjl/chancery/
-[cl-blt]: https://sjl.bitbucket.io/cl-blt/
-[cl-ggp]: https://sjl.bitbucket.io/cl-ggp/
-[cl-losh]: https://bitbucket.org/sjl/cl-losh/
-[cl-nrepl]: https://bitbucket.org/sjl/cl-nrepl/
-[cl-pcg]: https://sjl.bitbucket.io/cl-pcg/
-[clojure-lanterna]: https://github.com/MultiMUD/clojure-lanterna/
-[dieharder]: https://www.phy.duke.edu/~rgb/General/dieharder.php
-[ELS]: http://www.european-lisp-symposium.org/editions/2017/
-[ergolib]: https://github.com/rongarret/ergolib
-[euler]: https://projecteuler.net/
-[gmtk]: https://www.youtube.com/user/McBacon1337
-[lisp3e]: http://amzn.to/2y0dnWG
-[local-time]: https://common-lisp.net/project/local-time/
-[magitek]: https://github.com/sjl/magitek/
-[pandabt]: http://www.pandabehaviour.com/
-[PCG]: http://www.pcg-random.org/
-[procjam]: http://www.procjam.com/
-[qud-ds]: https://www.twitch.tv/ptychomancer
-[recreations]: http://amzn.to/2zfRHre
-[sand]: https://bitbucket.org/sjl/sand/
-[scully]: https://bitbucket.org/sjl/scully/
-[shebang]: http://amzn.to/2zYB1nN
-[sjleuler]: https://github.com/sjl/euler
-[Sketch]: https://github.com/vydd/sketch
-[surreal numbers]: http://www.amazon.com/dp/0201038129/?tag=stelos-20
-[temperance]: https://bitbucket.org/sjl/temperance/
-[deploy]: https://shinmera.github.io/deploy/
-[hackerbox24]: https://hackerboxes.com/collections/frontpage/products/hackerbox-0024-vision-quest
-
-# January 2017
-
-## 2017-01-26
-
-* Rebooting this `.plan` after a long absence. It's a new year!
-* Wrote a first draft of my proposal for a talk at [ELS][] 2017.
-* Made a little prototype [name generator](https://github.com/sjl/sand/blob/master/src/names.lisp)
- based on some ideas from last week's [Caves of Qud dev stream][qud-ds].
-
-## 2017-01-27
-
-* Polished up my ELS paper.
-
-## 2017-01-28
+# June 2018
-## 2017-01-29
-
-* Finished and submitted the ELS paper.
-* Worked a bit more on a platformer game assignment for a class. I hate
- graphics/shader programming so much.
-* Added a few docs to [cl-ggp][]. Still got a bit more to write.
-
-## 2017-01-30
-
-* Handed off maintainership of [clojure-lanterna][].
-* More platformer work. Finally got the fucking sprite pack working. I hate
- things with no documentation.
-
-## 2017-01-31
-
-* Got nerd-sniped and ended up implementing [PCG][] in Common Lisp.
-
-# February 2017
-
-## 2017-02-01
-
-* Started working on a constrained game with my team for AGDD.
-
-## 2017-02-02
-
-* Added a bit of juice to the constrained game.
-* Finally sorted out the AI/animation bullshit for my minimal game. Assets
- without docs are the worst.
-
-## 2017-02-05
-
-* More juice to the constrained game. Been doing non-computer stuff lately.
-
-## 2017-02-06
-
-* Implemented a little easing API in my [sandbox][sand] repo.
-* Made the pluralization rules in [Chancery][] slightly less awful. I should
- just sit down and fix it right some day.
-
-## 2017-02-07
-
-* Chatted with my advisor a bit and solidified my plans for the home stretch of
- [Scully][].
-* Made a little Lisp wrapper for [bearlibterminal][]. Learned more about SBCL's
- floating-point traps than I wanted to.
-
-## 2017-02-08
+## 2018-06-06
-* Worked more on our constrained game with my team. Got something almost
- game-like now!
-
-## 2017-02-09
-
-* More constrained game work. It's an actual game now. Fun.
-* Changed all the `#:foo` uninterned symbols in [Temperance][] to regular `:foo`
- keywords. Memory is cheap.
-
-## 2017-02-10
-
-* Finished the docs and pushed the 1.0.0 release of [cl-ggp][]. I still need to
- submit it to Quicklisp, but I need to submit [Temperance][] first.
-* Dusted off my old [Project Euler][euler] repo and did another problem.
-* Dumped initial commits of [cl-pcg][] and [cl-blt][] to the internet in case my
- laptop catches fire. Still lots of work left to do on those.
-
-## 2017-02-11
-
-* Added basic level generation and scrolling to my AGDD minimal game. Also
- sound.
-* Fleshed out [cl-blt][] a tiny bit more. Ported a little terrain gen demo over
- to it. It seems promising.
-* Wrote a little harness for [cl-pcg][] to test it with [dieharder][].
-
-## 2017-02-12
-
-* Did another [Project Euler][euler] problem over breakfast, and a couple more
- after that. The early ones are simple to just brute-force.
-* More work on the constrained game.
-
-## 2017-02-13
-
-* More [Project Euler][euler]. Math is fun.
-* Fixed up the universe-based matching in Scully. I'll need it soon for the
- percept matching.
-
-## 2017-02-16
-
-* More [Project Euler][euler], this time I had an excuse to poke at
- [local-time][].
-
-## 2017-02-17
+Rebooting this `.plan` after a long absence. Again.
-* More tiny [Project Euler][euler] problems.
-* Finally got the percept filtering in [Scully][] all figured out.
-* Cleaned up [Temperance][] and start writing docstrings. One more "Finishing
- Friday" and it should be ready for an initial release. Not perfect, but good
- enough for now.
-
-## 2017-02-20
-
-* More [Project Euler][euler].
-* Poked a bit more at my minimal game. It's gonna be *very* minimal.
-
-## 2017-02-21
-
-* Finished the damn minimal game.
-* Another [Project Euler][euler] problem.
-
-## 2017-02-24
-
-* Chatted with my advisor and did more work on [Scully][]. The home stretch is
- in sight!
-* Tipsy [Project Euler][euler].
-
-## 2017-02-25
-
-* More [Project Euler][euler].
-* Watched the first part of the Merry Fragmas 3.0 Unity session. Multiplayer
- FPS in Unity looks to be not too bad.
-* Cleaned up the internal API in [Scully][] a bit.
-
-## 2017-02-26
-
-* More [Project Euler][euler].
-* Watched the second part of the Merry Fragmas 3.0 Unity session.
-
-## 2017-02-28
-
-* More [Project Euler][euler]. Problem 51 was painfully underspecified, but
- I finally got the stupid thing.
-* Watched the last part of the Merry Fragmas 3.0 Unity session.
-
-# March 2017
-
-## 2017-03-01
-
-* Started poking at a prototype game my teammate made.
-* Added a janky priority queue to [cl-losh][].
-
-## 2017-03-02
-
-* Finished the stupid [Project Euler][] poker problem. This isn't math.
-
-## 2017-03-03
+More work on switching to Linux.
-* More [Project Euler][euler].
-* Started documenting [Chancery][].
-* Started working through [Surreal Numbers][]. I'm going to try to code each
- chapter up after I read it, to make sure I understand everything. So far I'm
- done with chapter 2.
-
-## 2017-03-04
-
-* More [Project Euler][euler].
-* Poked around at [PandaBT][]. Behavior trees are really weird.
-* Watched [Why is Gone Home a Game?](http://www.gdcvault.com/play/1020376/Why-Is-Gone-Home-a).
-* Read chapter 3 of [Surreal Numbers][]. Not much to code for this one,
- I think.
-
-## 2017-03-05
-
-* Worked on our game with my team.
-
-## 2017-03-06
-
-* Watched [Math for Game Programmers: Building a Better
- Jump](https://www.youtube.com/watch?v=hG9SzQxaCm8) over breakfast. I really
- like the idea of deriving the gravity and initial velocity constants from jump
- height/distance targets. I'll have to try that the next time I make
- a platformer.
-* Implemented a bunch of simple (but necessary) API functions in [Scully][].
-
-## 2017-03-08
-
-* Passed maintainership of [rerun](https://github.com/mandarg/rerun) over to
- [@mandarg](https://github.com/mandarg/).
-
-## 2017-03-14
+Switched to [pass](http://passwordstore.org) from 1Password so I can use it
+everywhere. 1Password has been pushing the cloud version pretty hard, so it's
+probably only a matter of time before they deprecate the real app. This was
+painful. I had to hack apart the `1password2pass.rb` file to handle my naming
+conventions, and of course the version of that script in the `pass` repo was out
+of date.
-* Did the final bit of plumbing to make [Scully][] actually play games with the
- game server. It works!
-* Added `LICENSE.markdown` files to all my projects. Annoying, but if it staves
- off the people complaining for a while it's worth the extra wasted bytes.
-* Chatted with my advisor about the next step for fixing the combinatorial rule
- tree explosions in Scully.
-* Added a restart to [cl-nrepl][] to let me specify a new port to use more
- easily, if the default one is already in use. Common Lisp's condition system
- is really powerful but also really obtuse, and I don't seem to use it often
- enough to really get it into my stupid brain.
-* Added a couple of docstrings to [cl-pcg][]. Still not sure about the API
- layout... I think I need to try it in a real game to see how it feels.
-
-## 2017-03-15
-
-* Did a bunch of stuff on my team's game. I really need to dig into the Unity
- networking documentation...
-
-## 2017-03-16
-
-* Whipped up some docs for [cl-pcg][]. I think I'll just call it released in
- the next day or two and see where it goes from there.
-
-## 2017-03-17
-
-* Watched a big chunk more of the Unity course. I've made a bunch in Unity
- already but it's good to follow along with a class and fill in all the gaps in
- my self-learned knowledge.
-
-## 2017-03-20
-
-* Added a test harness to [cl-pcg][]. Need to write a couple of simple tests.
-* Worked on the game a bit more with my team at the end of class.
-
-## 2017-03-21
-
-* Watched "5 Bits of Good Game Design from 2015" [GMTK][] video. I especially
- like the bits about downtime in games and about giving players a reason *not*
- to do something (like saving or killing every enemy).
-* Fixed a nasty bug in our game. Multiplayer is hard (at least in Unity).
-
-## 2017-03-22
-
-* More game bugfixes in the lab.
-
-## 2017-03-23
-
-* Pushed v1.0.0 of [cl-pcg][]. Time to move on.
-* Added a simple Monte Carlo player to [cl-ggp][]. It'll be used as an example
- during my ELS talk. Also added some additional GDL cleaning to cl-ggp's
- reasoner.
-* Looked around for a simple, cross-platform way to just play a WAV file from
- Common Lisp (or at least from C (which I can wrap with CFFI) but apparently
- nothing exists. Computers are awful.
-
-# October 2017
-
-## 2017-10-29
+Got `weechat` up and running. I can communicate again.
-* Gonna try updating this thing again now that I'm settled back into the US.
-* Tried my first [Aeropress][] coffee. It was a bit sour, which I think is due
- to underextraction. Gonna try again with a finer grind (today's was a 13).
-* Read a bit more of [The Whole Shebang][shebang]. It's good,
- but the bit on the "evolution" of the universe seems like a bit of a stretch,
- given that there's not replication mechanism like DNA has.
-* Refactored the rate-limiting macro in [Bria][] to be more general. Of course
- I immediately ran into edge cases because I'm using this to rate-limit
- reloading of the entire bot, which means than all the forms get re-evaluated.
- So using a gensym for the key in the macro was not gonna work. But at least
- I ran into those edge cases early.
-* Started reading through [ergolib][]. Lots of stuff in it, some of it
- interesting, some of it a bit crazy. It's fun to see how other people
- implement some of the utilities as in my own utils library.
-
-## 2017-10-30
-
-* Work.
-* Read [Fast generic dispatch for Common
- Lisp](http://metamodular.com/generic-dispatch.pdf). A pretty simple idea at
- its core, but Common Lisp's support for highly-dynamic things like redefining
- classes at runtime complicates things.
-
-## 2017-10-31
+Got `offlineimap` running, but didn't finish the syncing yet (I have a lot of
+mail).
-* Work.
-* [Streamed](https://go.twitch.tv/videos/186653039?t=6m45s) some Common Lisp and
- ncurses gamedev. Made a spooky little Halloween clicker game.
-
-# November 2017
-
-## 2017-11-01
-
-* Work.
-
-## 2017-11-02
-
-* Work.
-* Finished writing [documentation](https://sjl.bitbucket.io/chancery/usage/) for
- [Chancery][].
-
-## 2017-11-03
-
-* Work.
-* Submitted [Chancery][] to Quicklisp.
-* Continued reading [Lisp][lisp3e]. Learned about
- [dribble](http://clhs.lisp.se/Body/f_dribbl.htm).
-
-## 2017-11-04
+Tore Roswell out of my `lispindent` and `clhs` scripts so it just builds with
+vanilla SBCL now. So much easier and less brittle.
-* Read more of [The Whole Shebang][shebang].
-* Read more of [Lisp][lisp3e].
-* Read more of [Recreations in the Theory of Numbers][recreations]. Ended up
- implementing some [aliquot
- sequence](https://en.wikipedia.org/wiki/Aliquot_sequence) functions in [my
- Project Euler repo][sjleuler] for fun.
-* Fixed the bitrot in my [magitek][] repo so I can make some bots for
- [procjam][] later this week.
-* Did another section of the Udemy Ardunio class (sound sensing).
-
-## 2017-11-05
-
-* Read more of [Lisp][lisp3e].
-* Started working on [this month's Hackerbox][hackerbox24].
- Got the headers soldered to the Arduino Nano and the pan/tilt thing assembled.
- Checked that the sketchy drivers worked to dump code to the Nano and they
- appear to be okay.
-* Finished reading the code of [EasyWFC](https://github.com/heyx3/EasyWFC).
- I'll probably try to implement Wave Function Collapse on stream this week.
-
-## 2017-11-06
-
-* Work.
-* Did some preliminary work to get it out of the way for the WFC stream
- tomorrow, mostly remembering how to use [Sketch][].
+Backlight support (specifically `xbacklight`) required editing `xorg.conf` as
+described in the Arch wiki. The backlight keys on the keyboard still don't
+work, but at least I can dim the screen.
-## 2017-11-07
-
-* Work.
-* Streamed. Did some work on WFC, though we didn't finish.
-* Did a bit more on [Hacker Box 24][hackerbox24]. Finished putting the hardware
- together, and got the Processing sketch to work with the webcam (finally).
-
-## 2017-11-08
-
-* Work.
-
-## 2017-11-09
-
-* Work.
-
-## 2017-11-10
-
-* Read more [Lisp][lisp3e].
-* Wrote a little Lisp program to calculate ideal padding for hanging two rows of
- different-sized photos so that they'll match up.
-## 2017-11-11
-
-* Realized that switching to [Deploy][] to build my [magitek][] lib fucked up
- the random state generation, and fixed it. This bites me *constantly* in Lisp
- and I hate it.
+`xcape` remains busted in stumpwm for now. Will debug later.