Dear reader (that's reader in the singular because I doubt that there are two actual humans who read my blog; it's not because there are many and I'm addressing you individually), it's that time of the year again—the time of the year when it stops being the year. A time to think thoughtfully and ask, "What happened since the last time we did this?"
In the year 2015, this blog has seen (at press time) 43 posts and 30 comments. Among these—
We shared a recipe for a more-wholesome-than-some-of-the-likely-alternatives breakfast (although honestly, I worry about coffee having unknown-to-me degenerative effects on the brain—just because lots of people in your Society indulge in a drug doesn't mean it's safe; it just means that any long-term damage has to be subtle enough that people still feel safe using it—and is that really so high of a bar?). We heard some error message free verse. I wished for a crypto subplot in the yet-unnamed 2017 Star Trek series. A train was late. We heard a poem about sin and a pæan to one's employer. A tablet app for sports recordkeeping enthusiasts was proposed. I got mail. We considered the quiet holocaust of things left unsaid perpetrated by the forces of laziness and evil that lurk in people's hearts. I got a patch into OpenStack Swift (ninth draft landed as 06bede894 on 7 October, first draft proposed for review on 19 July). You heard about some of my favorite things in September. We went back to basics on the justification of a classic property of arithmetic. I commented on a certain matter of misperceived incentives, and another matter of determination in the absence of what others could discern as incentives. I went to the first Rust conference. My bold investigative reporting showed that the seemingly-straightforward
$ directive treacherously means different things to different regular-expression engines. I confessed to favoring a nonstandard pronunciation of a file extension. I mentioned that I was trying to write a compiler, although honestly, I don't think it went so well (the lexer, parser, and obligatory Emacs mode weren't that bad, but I kind of intuited the context-handling and code-generation parts, and should really get farther in the textbook and give it another try later). I explained how erasure codes work. We heard some more error-message poetry. Some readers of this blog (!!) relieved me of some of my confusion about why the Rust borrow-checker rejects bad code that you might think is good if you grew up the cartoon fantasy world that calls itself Python. I explained why "Pi Day" is an unholy festival of sin that is corrupting our children. You heard from me during February, and we saw a macro that is just too cute.
Beyond these, there are many more things that remain to be said.
But they will have to wait until next year.