Archived projects list

Table of Contents

1 Project List (2020)

1.1 programming languages

1.1.1 [15/15] attain Clojure mastery

Clojure is the ideal merger of practical and functional. My functional programming career is almost exclusively Clojure, so maximize mastery of this language.

Done. I do feel awesome at Clojure now, and the algorithms flow forth naturally. Complex systems are easy to model once I come up with a functional abstraction for them, which Clojure also makes easy. Supplemental studying has been necessary, but most of it came from simply writing and designing systems.

  1. DONE bump CIDER version
    • State "DONE" from "STRT" [2020-01-08 Wed 01:41]
    • State "STRT" from "TODO" [2020-01-08 Wed 01:11]

    New version out. While doing this, make sure all dev tools and workflow function perfectly.

    Upgraded CIDER from 0.21 to 0.23. cider-nrepl 0.23 isn't out yet, so upgraded to 0.22.4. Upgraded a few other addons while at it, but didn't do a full upgrade due to some bugs in one.

  2. DONE read Elements of Clojure
    • State "DONE" from "STRT" [2020-04-15 Wed 12:23]
    • State "STRT" from "TODO" [2020-02-29 Sat 01:07]

    A 2019 book about software design for programmers who already know Clojure. Supposedly quite good. Purchased hard copy.

    Great book. A bit thin at only 109 pages and a little disjointed, but has a lot of good ideas in it. I wish there were more Clojure books like this–ones more focused on theory than the mechanics of the language.

  3. CNCL consider Datomic

    Only have some high level context here, mostly picked up by osmosis.

    Thought I might need this soon, but didn't. Skipping for now, since I doubt I'll retain the details without using it.

  4. DONE read The Ultimate Guide To Clojure REPLs
    • State "DONE" from "STRT" [2020-05-09 Sat 23:32]
    • State "STRT" from "TODO" [2020-04-14 Tue 21:47]

    Looks like a good guide to fill in any blanks regarding REPLs.


    • java -jar clojure-x.x.x.jar will start a bare REPL, though this doesn't work on versions >1.8 (probably needs extra JARs on classpath).
    • clojure.repl/dir will list public vars in a namespace.
    • The rlwrap utility can be used to get readline support on a bare REPL. The difference between the clj and clojure binaries are that the former includes rlwrap.
  5. DONE learn babashka
    • State "DONE" from "STRT" [2020-05-31 Sun 23:20]
    • State "STRT" from "TODO" [2020-05-31 Sun 15:29]

    A Clojure scripting environment and complement to a shell. Will consider as a replacement for shell scripts.

    Done. Looks like this uses sci (small Clojure interpreter) instead of the JVM and installs a bb command. Available via the AUR. This can be used on the CLI for piping into expressions or for standalone scripts.

    Definitely useful. Will do all future shell work this way. Only downside is arbitrary Clojure libraries can't be required (technically possible, but only for a few), but a decent selection of them are built-in. If more functionality is needed, a full Clojure app is probably what I'd want anyway. Might also use this for work, but probably not due to prod environment constraints.


    • Install with: yay -S aur/babashka-bin
    • For piping, refer to *input*, paired with the -i flag to bind it:

      ls -1 | bb '(for [s *input*] (first s))'
    • Can add predefined functions by defining BABASHKA_PRELOADS env var. This can also be loaded from a .clj file.
    • Hashbang scripts with: #!/usr/bin/env bb
    • sci might be a good option for embedded REPLs.
  6. DONE try out Calva
    • State "DONE" from "STRT" [2020-06-01 Mon 08:45]
    • State "STRT" from "TODO" [2020-06-01 Mon 02:03]

    Might need this for REPLs when rarely on the work production environment. vscode is already installed via scoop. Hopefully that setup is only temporary, so don't spend much time on this.

    Done. I think I can get stuff done here now. Will add notes here if/when I actually try using this to do any real work. Seems okay from using it a bit, I guess.


    • Install by clicking Extensions button in lower left. Enter calva in search box. Close Extensions window by clicking button again.
    • For a running REPL: Hit C-M-p to bring up the command prompt. Type Connect to a Running REPL.
    • jack-in: C-M-c C-M-j
    • Right clicking a buffer in the project, once Calva's loaded, gives options like switching to namespace and loading file.
  7. DONE consider defn-spec
    • State "DONE" from "STRT" [2020-06-10 Wed 00:00]
    • State "STRT" from "TODO" [2020-06-09 Tue 23:25]

    Wraps defn, adding optional checking of arguments and return values.

    Considered. Just an experimental idea, but a good one, I think. I could see this actually being useful right now for a public-facing API. Not sure why you'd turn this off in production though. Mentally file this in the solutions bucket. An alternative to this, of the same name:

    If I want a non-3rd party approach, there's also clojure.spec.alpha/fdef, which I think mostly does the same thing as this, with the downside of having to declare your spec separate and call clojure.spec.test.alpha/instrument, being sure to do so before any fdef-ed functions are called.

    Another option is:

    Side note: Talked to some people who say you can leave defn spec instrumentation on in production with no consequences, performance or otherwise.

  8. DONE consider specter
    • State "DONE" from "STRT" [2020-06-10 Wed 15:29]
    • State "STRT" from "TODO" [2020-06-10 Wed 15:26]

    A library for manipulation of deep, nested structures in a unified and performance-optimized way. Seemed promising when it came out, but never gained a lot of traction, or at least as much as I thought it would.

    Checked this out. Looks like this project is still active. Seems like a pretty clean implementation of a library for doing such things. Some of these operations can be done using algo.generic.functor/fmap, and I've done them cleanly using that. However, if your program's domain is a lot of deeply nested data structures, this will scale better as tree depth grows.

  9. DONE consider core.reducers
    • State "DONE" from "STRT" [2020-06-10 Wed 19:15]
    • State "STRT" from "TODO" [2020-06-10 Wed 19:06]

    Read up on the reducers library and know when to use them. Check here and in the linked blog articles.

    Considered. This auto-parallelizes the work into n (default 512) element groups. fold can take a reducer and combinef functions. Both should have 0 argument versions that produce an identity element. The core.reducers namespace also provides various analogues to the standard sequence functions (e.g. map, filter, etc.).

    Use core.reducers/fold when data and/or the amount of computation to be done is large. Don't use this in normal places, due to the extra syntax of having to define multi-arity functions.

  10. DONE learn clojure.spec
    • State "DONE" from "STRT" [2020-06-11 Thu 22:45]
    • State "STRT" from "TODO" [2020-06-10 Wed 21:48]

    I'd been putting this off due to claims that it was going to undergo a fundamental revamp to address a few capability gaps. Unknown if that will ever actually happen though, since it seems to be perpetually in alpha. Despite this, it's near ubiquitous in the Clojure world and I'm also using it for work now. A good balance might be to go deep on it, while avoiding the ancillary use cases (e.g. property-based testing). Read the official guide.

    Done. Created a project src/clojure/test-bed for this and some future testing. Knew some of this, but never internalized it. I think I've got it now. Some notes are there, but the main conceptual highlights are:

    • Predicate specs are any single argument truth function. Check if one holds against a value with s/conform (returns identity or :s/invalid), or s/valid? (returns boolean).
    • Registry: A global repository of reusable specs. Use s/def to create these with namespaced keywords, e.g., (s/def ::date inst?). Since this is namespace-qualified, you can refer to it in a different ns with :<ns>/date.
    • Compose predicates with s/and and s/or. Choices in s/or can be named with keywords, and s/conform will return the conforming branch.
    • To allow nils, wrap a predicate in s/nilable.
    • s/explain will output to stdout why a spec doesn't conform to a value. explain-data is probably more useful, since it returns a map of the same.
    • Build up a map checking spec with something like:

      (s/def ::name string?)
      (s/def ::age pos?)
      (s/def ::grade int?)
      ;; :req-un/:opt-un aren't namespace qualified, unlike :req/:opt.
      (s/def ::person (s/keys :req-un [::name ::age]
                              :opt-un [::grade]))
      ;; Check conformance.
      (s/valid? ::person {:name "gary"
                          :age 12})
    • Compose entity maps with s/merge.
    • Use s/multi-spec to dispatch off a multimethod.
    • Some other useful helper functions:
      • s/coll-of: Check if predicate holds for all elements in collection. Includes various keyword modifiers for different properties, like count.
      • s/map-of: Similar to s/coll-of, but for maps.
      • s/every, s/every-kv.
      • s/tuple: Checks predicates against a vector of fixed size, in order.
      • s/cat: Checks sequence of predicates against sequence.
      • s/*, s/+, s/?: Occurrence operators against sequences.
      • s/spec: Useful for wrapping occurrence operators in nested specs.
    • spec can be used in :pre and :post defn conditionals, or instrument with s/fdef.
  11. DONE learn transducers
    • State "DONE" from "STRT" [2020-06-12 Fri 09:07]
    • State "STRT" from "TODO" [2020-06-11 Thu 23:08]

    Refresh and completely fill in knowledge of transducers. At least read all of the official guide.

    Done. I like these more than I initially did, where I thought they were mainly just for core.async, introduced needless overhead in execution order vs. normal function composition, and over-hyped at release. The latter is still true, but they are a worthwhile language feature and cover a gap. However, the gap itself is smaller than it could be, due to only being able to get the benefits in reducer form. I feel a comprehensive solution would've allowed for proper currying and being able to do things like ((comp (map inc) (filter odd?)) (range 5)) and get results instead of a function object back, and have it work on infinite seqs.


    • Transducers, or xforms, take reducing functions and produce reducing functions.
    • Compose into a single computational transform that doesn't create intermediate sequences between operations. Possibly large performance benefits.
    • Transducers are eager, realizing sequences. Don't use on infinite streams as a result.
    • Composing transducers with comp performs operations is the order composed (the opposite of comp against normal functions).
    • Use an xform as a reducer with transduce, build a collection with one with (into [] xform (range 5)), or a sequence with (sequence xform (range 5)).
    • Eduction is applying a transducer to a coll, returning a function object, which can then be passed to reduce.

      (def iter (eduction xf (range 5)))
      (reduce + 0 iter)
    • Use (into coll (map f) xs) instead of (into coll (map f xs)). This is a good idiom for defining transformations as transducers, then applying them later or somewhere else.
  12. DONE relearn hiccup
    • State "DONE" from "STRT" [2020-06-12 Fri 09:23]
    • State "STRT" from "TODO" [2020-06-12 Fri 09:17]

    Previously lightly used, but might be worth a closer look. Renders data structures in HTML. Also can do interesting things with zippers.

    Can't think of any near-future need here, so just gave a cursory look.

    Done. This defines a morphism of Clojure vectors and maps to HTML elements and attributes, respectively. Recognizes various keywords for special forms, like CSS. Probably pretty close to optimal for this task, though probably not needed if your web solution just consumes EDN from an API. With ClojureScript it's probably quite essential.

  13. DONE learn clj-kondo
    • State "DONE" from "STRT" [2020-06-03 Wed 14:02]
    • State "STRT" from "TODO" [2020-06-03 Wed 12:57]

    Consider switching to this and deprecating kibit and eastwood. Already installed via scoop on Windows. clj-kondo, among other benefits, also is the only linter that does cljs, making it a good candidate for standardizing on.

    Done. Looks like this can be run against classpaths or files, or as integrated into Emacs with package flycheck-clj-kondo. Added Linux setup to Installed to ~/bin. It's also possible to lint a project with clj-kondo --lint <project src dir>.

    Added flycheck-clj-kondo to ~/.emacs.d/init.el. Deprecated custom kibit setup. clj-kondo has some additional features over kibit and flycheck there works with non-lein projects, at the cost of a user or system application install. Removed eastwood and kibit from ~/.lein/profiles.clj.

    Note that I couldn't get the binary install working on Raspbian. Might want to try building it myself if I ever need it there. Also might want to read more of the docs later if I need additional functionality.

  14. CNCL consider test.check
    • State "CNCL" from "TODO" [2020-06-12 Fri 09:25]

    The Clojure implementation of QuickCheck, the currently ultimate test library for generative testing (also called property-based testing) and an alternative to the standard example-based testing. Note that double-check is a cljs port of the same thing that I may want to check out later.

    Example of use:

    Skipping until I have a need for this. Strangely, it seems like generative testing hype has died down in Clojure lately. Maybe normal tests + spec are enough and/or writing and maintaining these turned out to be too much hassle. I still like the idea, but only in specific cases, like for testing an algebraic structure.

  15. DONE research uncommonly used core language features

    Read a bit more on these core language topics. I kind of know these and some I've used occasionally, but don't have a deep intuition for. Review: reify, refs, agents, futures, promises, records, protocols.

    Done. Some comments on each:

    • reify: Terrible docstring. ClojureDocs has sensible examples. Call this against an interface or protocol. A constructor for objects without defining a type.
    • refs: Auto-derefs when used as a function. Coordinated, synchronous. Not common, but maybe useful when two things want to coordinate change.
    • agents: Asynchronous. Not much reason to use these. Probably can just use an atom here.
    • futures: Good for offloading something to another thread. Deref when result needed. A good match for doing I/O waits in parallel.
    • promises: Calling promise creates an object that will block on deref until something calls deliver against it.
    • records: Don't have the syntax memorized, but I think I'm good here.
    • protocols: defprotocol defines the function signatures that a record or extend-protocol can implement.

1.1.2 [2/2] listen to Clojure and Haskell podcasts

Another attempt to maximize utility of time otherwise wasted while driving or farming in MMOs.

Done. Didn't really learn too much. Will ignore podcasts until I'm stuck with a lot of regular driving again, which will hopefully be never. Same goes for MMOs. Once they get dull enough that I don't have to pay attention to them, I should quit. For many, that'll mean never playing them, which is also a good idea.

  1. DONE listen to LambdaCast (podcast)
    • State "DONE" from "STRT" [2020-04-16 Thu 09:39]
    • State "STRT" from "TODO" [2019-11-21 Thu 00:24]

    A podcast about functional programming concepts. Topic selection looks good. On SoundCloud, so will have to find a way to download mp3s from there.

    Mostly done. Listening to a selected subset of these. This is an okay podcast and doesn't do anything particularly wrong or annoying.

    Canceled. Had a few selected episodes to go, but skipping the rest due to not playing mindless games for the past several months. I'll revisit if I start working on leveling my Lineage character again, though I seem to have lost interest in doing that.

  2. CNCL listen to remaining The REPL (podcast) episodes
    • State "CNCL" from "TODO" [2020-04-16 Thu 09:39]

    Already listened to up to episode 20, excluding the ones that looked boring. Get caught up to the current date.

    Host is a bit annoying to listen to, but there are a few good episodes, interspersed between the filler.

    Canceled due to lack of driving time.

1.1.3 [7/7] modernize JavaScript knowledge

There is some practicality to maintaining some basic knowledge of JS, due to it being ever more important. That trend is likely to continue. I have no intentions of trying to make money in the JS ecosystem though, so limit exposure to that which might be useful in ClojureScript or other front end languages that are more palatable.

Canceling this entire effort. Though not a crazy idea and pretty minimal here, still cutting it to focus on more important things. Will do one of the following:

  • Never do anything like this ever.
  • Consider doing some of the absolute bare minimum of this for JS alternatives.
  1. CNCL read Understanding ECMAScript 6: The Definitive Guide for JavaScript Developers
    • State "CNCL" from "TODO" [2020-06-03 Wed 15:28]

    Come up with a selected topics plan for this. The goal is just to get familiar with the newer features in modern JavaScript. I'll take some notes and use those to refresh my memory when/if needed.

    ES 10 is out now, making this book less relevant. Plus, I'm pretty sure I can just scan the language features of current ES when/if needed and understand them. Hopefully, it'll never even come to that and I can live the rest of my life in glorious ignorance of them.

  2. CNCL read Learning React: Functional Web Development with React and Flux
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:30]

    Will just read this enough to get a basic site with some components up. Might supplement with some tutorials. Once I'm semi-comfortable here, I'll move on to ClojureScript.

    Canceled all JavaScript tasks.

  3. CNCL read Eloquent JavaScript: A Modern Introduction to Programming
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:33]

    Recommended as a good programming intro. Could possibly use it as a reintroduction text for refreshing JavaScript knowledge. If I manage to feel pretty good about the language prior to reading this book, I'll skip it.

    Canceled all JavaScript tasks.

  4. CNCL learn Webpack
    • State "CNCL" from "TODO" [2020-06-06 Sat 11:13]

    A JavaScript bundler and dependency manager. Also has many other features, including transpiling (most notably allowing one to code in ES6 and transpile to ES5) and development deployments. Setup a sample project. Might consider this for my own site use, though I'd rather defer this to use ClojureScript.

    Skipping on this for these reasons:

    • Already created a sample project.
    • There's some cases where I might need to make one of these. I can just muddle through it, I think.
    • I recently reviewed all of my technical efforts, and fussing with tools like this are a real productivity drain on my life. I'd like to keep them out of it as a result.
    • The webpack team has gotten all political lately, so I'd rather minimize any interaction with anything they're up to. A minor point, but still a factor.
  5. CNCL try out Indium
    • State "CNCL" from "TODO" [2020-06-10 Wed 15:09]

    Looks like it might be the current best for integrated JavaScript development.

    Canceled until I have a need. Seems like while this is the best major mode for JS, there are some quirks to it in its current state. So, I'd rather not pull it in prematurely.

  6. CNCL consider Tern
    • State "CNCL" from "TODO" [2020-06-10 Wed 15:11]

    Looks like this provides a ton of JavaScript features for Emacs. Also has an AngularJS plugin.

    Also, see this for jumping to function code, and maybe these notes on completion and refactoring.

    Canceled due to not writing JavaScript or Angular. I know a little about Angular now too, and would rather avoid it.

  7. CNCL integrate ESLint
    • State "CNCL" from "TODO" [2020-06-12 Fri 09:51]

    Replaces JSLint. Installed via npm. Will only look into this if I bother getting one of the thicker JavaScript packages up and running in Emacs.

    Skipping for now. Already have some lightweight linting built into Emacs, which is good enough for the 1 or 2 JS files I open every year.

1.1.4 [7/7] close remaining Clojure knowledge gaps

A roundup of miscellaneous Clojure-related self-education.

  1. DONE read A History of Clojure (paper)
    • State "DONE" from "STRT" [2020-06-09 Tue 00:30]
    • State "STRT" from "TODO" [2020-06-05 Fri 19:45]

    A paper by Rich Hickey from 2020-06 on the history of the language.

    Finished. A great read. Covers a lot of the motivation and intention behind various language features. How certain features are used in practice is not exactly mapped to original intent.

    A few things learned:

    • There's actually two internal map implementations. These are chosen from dynamically based on size.
    • An arbitrary metadata map can be stored on any symbol with with-meta and later retrieved with meta. Type hinting ends up in here too.
    • ^ is a reader macro for setting metadata. ^{:a "b"} [1] is the same as (with-meta [1] ^{:a "b"}). If used with a symbol, the value goes to :tag (which is used by type-hinting), and keywords are used as map keys with a value of true.
    • == can be used for type-independent numerical equality.
    • java.util.Collections static methods work on Clojure collections.
  2. DONE read Clojure Applied: From Practice to Practitioner
    • State "DONE" from "STRT" [2020-06-22 Mon 11:20]
    • State "STRT" from "TODO" [2020-06-12 Fri 14:23]

    A 2015 mid-level Clojure book, focused on architecture and composable systems design. Focuses on some library specifics that may not last, but otherwise looks like a good chance to sanity-check a lot of my self-learned design. Supposedly favors records over maps for domain entities, something I generally disagree with. I'm open to being persuaded otherwise, however.

    Unless something truly exceptional comes along, I'm also making this the last Clojure book about the language itself that I seriously read.

    Done. A lot of this is decent, but there are caveats. A good half of the content here is very prescriptive, perhaps too much so. This is more of a record-centric and mechanistic perspective on designing with the language. A lot of problems can/should be approached this way, and my take is these suggestions are a subset of how one could legitimately do that. If that's what one wants, then this book is perfect. However, I can see this approach to Clojure programming being a bit myopic, with the biggest concern being records vs. maps (addressed below), but also a lot of other things. Actually reading this was a bit dull too, but that could be a result of Clojure book fatigue on my part.


    • A :type field in all domain entities within a system is a useful idiom to standardize upon, being useful for dispatch. My opinion here is only include it when you're actually going to be sending entities through a dispatch. Most times, a specific program part can know what data it's looking at.
    • A good case is made for records here, namely performance, dispatch, type hinting, and allowing implementation of interfaces/protocols. I do agree with the caveat that these should be internal and never exposed via an API.

      This is a big deal for this book. If you don't agree with defaulting to records, a lot of the content here becomes at best only useful in certain conditions.

      My counterargument against records being default:

      • A library would have a much simpler implementation with maps everywhere without converting back and forth and dealing with two data interfaces. Also, you might want to expose an API but allow for select internals to be manipulated/redefined.
      • A defmulti that would work against maps won't work against records without an implementation, e.g., using algo.generic would be tedious.
      • Records, defmultis, and generators everywhere make code look less Lispy, more bloated, and harder to quickly visually parse (e.g., ->Generators don't show fields). A lot of the code in this book reflects that.
      • I use Clojure to be free of type-Tetris, even a lightweight version like this. If I build a domain into types, I expect more in return from it, like what Haskell offers. Not doing so lets a data-flow design evolve more organically as you discover what the system should do, fitting the REPL-driven development model of Lisps better.
      • The tradeoff for maps in performance is almost always worth it. Operating on maps tends to not be the bottleneck. When it is, there are other approaches, like core.reducers, transducers, and parallelism.
      • My approach, which I think is more sensible: If you indeed have a compelling reason vis-à-vis the benefits, like required interface implementation or using Clojure libraries that require it (e.g. Component), then use them sparingly. Keep them isolated in 1-2 namespaces when possible.
    • Not in the book, but while writing some code I discovered this destructuring works: (let [[_ a] [1 2 3]] a)
    • A simple yet still weird pattern I never considered, (or (some-predicate) (throw ...), will return true or throw an error. The predicate here could also return the value instead.
    • Regarding its guidelines on default values, I think a better approach is to just have zero-argument gen- function variant for the entity that returns a conceptual identity value. This makes the generator more useful in mapping and various other operations.
    • Also not in the book, but it occurred to me that it's possible to refactor code that uses let blocks to sequence operations yet still intersperse println (or any other side-effecting expression) calls like this:

      (->> (+ 1 2)
           (do (println "hi"))
           (- 3))
      ;; Using the threaded form.
      (as-> (+ 1 2) $
        (do (println $) $)
        (- 3 $))
    • set-validator! can be used against a reference type, throwing an exception if the predicate isn't satisfied on state change. This also works on reference creation, e.g., (def a (atom {} :validator pos?)).
    • add-watch will attach a watcher function to a reference. Most common with refs, but also works on atoms. remove-watch undoes this.
    • Chapter 5 has some good info on parallelism using futures and agents. Review this if it ever comes up.
    • Bind *read-eval* to false to avoid accidentally calling read-string on unsafe code. One method to set root bindings is (alter-var-root #'*read-eval* (constantly false)). Within a form: (binding [*read-eval* false] (read-string "#=(eval (def x 3))"))
  3. DONE learn edn
    • State "DONE" from "STRT" [2020-06-22 Mon 14:47]
    • State "STRT" from "TODO" [2020-06-22 Mon 09:46]

    Already using, but get full coverage on this and related topics, such as the proper way to handle user defined types. Going forward, also always use this to store config and light project data, instead of my previously default method of using CSV files with complex schemas and supporting functions.

    Done. This is pretty simple. Skipped writing some example code, since I already started using it since scheduling this.


    • CIDER supports correct mode for .edn files out of the box.
    • clojure.edn/read-string will return edn string contents as a data structure. Useful for files if paired with slurp. Be wary of accidentally calling clojure.core/read-string instead.
    • Tagged literals, the record way:
      • Create a record of some name, which doesn't have to be the same as the literal name (and probably shouldn't, since record names are capitalized by convention). This should take whatever parameters make sense for the record, not necessarily matching the serialized form.
      • Create a reader function that turns the serialized form into a record of that type.
      • Create a data_readers.clj file in the classpath. This will contain a literal map of the relationship between tag and reader function. For example, this would bind #my/tag tagged literal:

        {my/tag some-ns/reader-fn}
      • A default reader implementation can be provided for unknown tags by binding *default-data-reader-fn*, a global root binding that defaults to nil. This also works:

        (edn/read-string {:default #(vector (str %1) (str %2))}
                         "{:a 1 :b #i \"hi\"}")
      • These probably don't need to be records, but in that case, there's not much point in using a tagged literal. If the data is going into a map, you might as well just have the map data in the edn.
    • edn serializes to a string, so just write the output as any other file. Custom tagged literals will need a printer for them.
  4. DONE consider yogthos/config
    • State "DONE" from "STRT" [2020-06-22 Mon 21:28]
    • State "STRT" from "TODO" [2020-06-22 Mon 21:22]

    Check out this library for Clojure project configuration management. I've used cprop for this before, but this might be superior.

    Reviewed. I like this slightly more than cprop, though they're very close in functionality. config seems to do what I need and no more and is simpler overall, being around 100 lines of code. However, if I didn't want merging, I could probably just do this myself by loading an edn file. Probably will just do that whenever possible.

  5. DONE normalize ns forms
    • State "DONE" from "STRT" [2020-06-22 Mon 21:40]
    • State "STRT" from "TODO" [2020-06-22 Mon 21:32]

    This guide has a good collection of ns form guidelines. Already do most of them, but I'll close the gap. The only exception is I like the first reference on the same line as :require.

    Reviewed, again. Already switched to doing it this way at work. My older code is pretty close to this, so won't go through and change everything just for this. Will use these rules (minus the one mentioned above) from now on.

  6. CNCL consider clj-refactor.el
    • State "CNCL" from "TODO" [2020-06-23 Tue 05:13]

    Probably should be using this. This comes with pretty nice convenience features like completion on and hot-loading dependencies, converting nested structures to thread macros, auto-searching namespaces for filling in requires, etc. Downsides are that it pulls in yasnippets and adds extra middleware. Will hold off on it until I have a need as a result, like cleaning up the ns blocks in a project.

    Skipping until a need arises. Also seems less needed now with some of these features getting pulled into CIDER. Namespace cleanup can be done with clj-kondo, as well.

  7. DONE learn core.async
    • State "DONE" from "STRT" [2020-06-24 Wed 01:33]
    • State "STRT" from "TODO" [2020-06-22 Mon 21:46]

    The de facto standard for async in Clojure. Give this a proper self-education session, but don't go too nuts unless I'm actively using it. Be sure to pay attention to using transducers here. Also read some criticism of the pattern here.

    Learned, in conceptual/outline form. I'm leaning towards agreeing with the downsides of it. Probably will avoid use of this library where possible, basically only using it when it's between this and queues. Avoid libraries that use core.async too, as this should be handled at the application level.

    There really isn't that much documentation out there without resorting to old blogs and videos. Seems like the best explanation is this commented code. Will need some additional resources or experimentation before actually using this in the real world.


    • This 2013 announcement is a good explanation of motivations. The most important point is these are blocking by default, on both ends, absent a buffer.
    • go blocks are IoC threads. All non-go channel interaction is normal threads. On the cljs side, only go blocks are supported.
    • go macro functions:
      • >!: put.
      • <!: take.
      • >!!: put (blocking).
      • <!: take (blocking).
      • alts!: Wait for a set of channel operation completion.
      • alts!!: Blocking version of alts!.
    • The blocking versions of put and take don't release control of the thread while waiting.
    • timeout creates a channel that will auto-close after some specified time. Use these to resolve deadlock waiting forever for a message.
    • A good require for this is [clojure.core.async :as async :refer [<! <!! >! >!!]].
    • Transducers can be applied to channels.

1.2 computer science

1.2.1 [3/3] extend AI/ML knowledge

Do an advanced-level AI/ML roundup.

Canceled. I do still like AI, but having worked in it extensively, I'm less excited about it. There's a poor intersection between AI and FP, despite that not needing to be the case. My lack of enthusiasm is mild, but still there to the extent that I'll lazy load these things when/if I need them again.

  1. CNCL read Deep Learning
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:35]

    A massive 2016 tome collecting the current thought on this topic. While no longer using ML at work, I like deep learning's higher-level data abstractions. Maybe do a selected topics read of this. Also available online for free.

    Some alternative/complimentary texts:

    Canceled in The Great Task Cleanup of 2020. May reconsider this one, though by the time I get to it, the technique may be passé.

  2. CNCL read Data Mining: Practical Machine Learning Tools and Techniques (2nd. Ed.)
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:35]

    Another one I may skip if I don't get to it before retiring from employment.

    Canceled in The Great Task Cleanup of 2020.

    This one I may consider again later.

  3. CNCL read Artificial Intelligence, A Modern Approach (3rd Ed.)
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:33]

    My main gradschool AI textbook. Has a lot of interesting stuff here I never got around to reading. I still have my copy, but a newer version is available, so will use that.

    Canceled in The Great Task Cleanup of 2020.

1.2.2 [2/2] expand PL design knowledge

Consider some supplementing work to expand PL knowledge. This is all in Scheme, so factor that in.

Canceled. Scheme is great when you're learning FP, but is not something I want to write significant amounts of code in. Clojure has definitely spoiled me.

  1. CNCL read Essentials of Programming Languages (2nd Ed.)
    • State "CNCL" from "TODO" [2020-06-03 Wed 15:36]

    There's a 3rd edition of this book, but apparently it's a downgrade. Stick with the 2nd edition's cleaner implementation. Considering this as I was shortchanged on my PL course in undergrad, and this book covers the more rigorous treatment of the subject where students incrementally build an interpreter. Having built some in real life since college, however, I'm not sure how much I'll get out of it. See the official page for this book, with code:

    Canceled due to not wanting to work in Scheme. I still have my hard copy though, so I might still read parts of it.

  2. CNCL read Design Concepts in Programming Languages
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:34]

    An comprehensive and massive tome on all things related to language design. I might start here if I want to supplement PLT with PL design (a notion that previously appealed to me more).

    Canceled in The Great Task Cleanup of 2020. I may casually browse around my hard copy of this still some.

1.3 software engineering

1.3.1 CNCL read NeHe OpenGL tutorial

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:34]

I don't actually want to program OpenGL, but a tutorial could be a good refresher of 3D programming concepts.

Canceled in The Great Task Cleanup of 2020.

1.4 electronic engineering

1.4.1 DONE get the JVM working on ARM 6

  • State "DONE" from "STRT" [2020-11-27 Fri 23:16]
  • State "STRT" from "TODO" [2020-11-27 Fri 22:51]

No JVM on the Zero severely limits its utility for me.

Installed openjdk-8-jdk and ran sudo update-alternatives --config java. Seems to work okay now, though lein is painfully slow. The Arduino IDE also works.

Random side note: The pinout command shows an ASCII reference diagram for the GPIO, among other info.

1.5 work

1.5.1 DONE consider job switch

Got an offer for a remote Clojure developer position, with no front-end. Seems like it could be pretty close to ideal, and I already have a near total overlap of skills.

Analysis complete. Result is resoundingly in favor of job switch. Might do an updated analysis if I feel iffy about it after working this job for awhile.

Note: I actually did this analysis in 2019, but due to The Great Org Refactor of 2020, it appears here.


  • Clojure is unquestionably the most ideal language for me to do actual work in. Using it will keep my language skills fresh and environment knowledge up to date.
  • Remote work:
    • My 10 hours/week of driving becomes 0. New job only requires a few initial days on site and then 1 day per quarter.
    • Will have more time and energy for side projects.
    • Fewer computers to keep usable. Can expend more energy optimizing those, with greater ROI.
    • Can maintain property more effectively and be physically present to contract improvements/repairs.
    • Reduced gas use, vehicle maintenance, and miles on the car.
    • Should hopefully have the flexibility to rearrange work time as needed, though I'll try to mainly stick to core hours.
  • I can shelve all of the less interesting tech I was learning.
  • Should be able to go back to doing all work in Emacs on Linux.
  • Slight pay increase.
  • Employer is a medium-sized company, and should have humans I can email directly for administrative stuff.
  • I could probably go back to the previous job later if I wanted to, so low risk. Might consider this if the contract ends quickly, but probably not.
  • Low methodology and other overhead.
  • This setup looks more sustainable in the long run. The current job appears to be depleting energy reserves.
  • Being federal contracting, can maintain clearance.


  • Have only been at the current job for 5.5 months, which is an unprecedented short stint for me.
  • There's a lot of sunk cost in getting to where I am now at the current job, which I finally have running pretty smoothly.
  • Was almost done with new learning new job skills in my spare time. Will have to put side projects on hold for at least a few months again.
  • Even though there are many downsides, I will miss aspects of working with a highly-integrated team.
  • Such rare human interaction will need conscious mitigation factors for maintaining maximally-polished professional social skills. Presentation skill may degrade.
  • Apparently there are slightly above average government environment challenges in regards to constraining the tech stack.

Mostly unrelated side musing: While I have a lot less to gain technically from another Clojure job, I might consider abandoning any notion of trying to use Haskell for real work beyond ancillary applications at a Clojure job. The more I work in the Haskell ecosystem, the more pain I realize I would face when pressing in into service against real world slop. The exception here is research and a few fields like data analytics.

1.5.2 DONE research Clojure CLI tools

  • State "DONE" from "STRT" [2020-01-31 Fri 00:08]
  • State "STRT" from "TODO" [2019-10-22 Tue 08:12]

Get used to programming using this, instead of Leiningen. Read these docs:

Done. I've been using this for several months and am pretty good with it now. Reference the above links to do any other stuff, like AOT. In its current state, it's definitely an inferior solution to Leiningen. Configuring deps.edn is a huge downgrade from projects.clj. However, if you don't need the things Leiningen provides, it's still pretty good. One exception to that is how it's installed on Windows. Requiring PowerShell makes this a clunky, garbage experience. Use Leiningen there whenever possible.

Revisit this occasionally to see what capability gets added, as it's actively being worked on. Particularly the tools list, which is starting to fill in:

1.5.3 CNCL research Confluence (introduction)

  • State "CNCL" from "TODO" [2020-01-28 Tue 22:58]

Collaboration software by Atlassian. Do a brief overview of this. Check if this directly integrates with Jira.

Canceled. Used this a little, then stopped. While clunky, seems like it doesn't need any dedicated work. Was going to setup a document wiki here, but that experience is sluggish and horrid.

1.5.4 DONE try ox-confluence

  • State "DONE" from "STRT" [2020-04-01 Wed 09:19]
  • State "STRT" from "TODO" [2020-03-18 Wed 09:00]

Use this to do all work docs in Org.

This does generate output, but in a format our version of Confluence doesn't seem to recognize. So, useless. We stopped using Confluence and switched to a docs repo anyway, which also negates any future need. If one ever wants to do such a thing as this, it seems the best solution is to export to HTML and import that into Confluence.

1.5.5 CNCL consider org-jira

  • State "CNCL" from "TODO" [2020-06-09 Tue 23:22]

Consider this for integration with Jira. Might not work in my case due to CAC authentication.

Canceling due to not really using Jira all that much. May reconsider if my project gets more religious about it.

1.5.6 DONE setup Clojure CLI tools on Linux

  • State "DONE" from "STRT" [2020-06-12 Fri 13:30]
  • State "STRT" from "TODO" [2020-06-12 Fri 13:17]

See what the best way of setting this up is.


  • Install rlwrap: yay -S rlwrap
  • Check what the most recent installer version is here.
  • This will create /usr/local/bin/clj, /usr/local/bin/clojure, and /usr/local/lib/clojure:

    curl -O
    chmod +x
    sudo ./
  • Create ~/.clojure/deps.edn if desired.

Works fine from the shell, but rlwrap doesn't support running in Eshell, which is kinda lame. Will work in ansi-term if I need to run it inside Emacs.

1.5.7 DONE configure deps.edn to run tests

  • State "DONE" from "STRT" [2020-06-26 Fri 11:48]
  • State "STRT" from "TODO" [2020-06-25 Thu 12:09]

The Clojure CLI docs cover how to include a test path, but not how to actually setup and run them, independent of running the application.

Clojure CLI is truly an inferior build tool to lein.

Got this sorta working. Best I can do so far, without using a testrunner, is creating a standard lein-like test tree, populated with <ns>-test namespaces. I can add an alias in deps.edn to include the root test path, but it seems I still have to manually C-c C-l those files before I can do a C-c C-t n on any namespaces that have tests. So, a partial solution that gets this function working, but not ideal at all. Will have to revisit this later.

1.5.8 DONE setup dev/user namespace

  • State "DONE" from "STRT" [2020-06-30 Tue 08:26]
  • State "STRT" from "TODO" [2020-06-29 Mon 10:39]

Try to duplicate one of my preferred project structure idioms in Clojure CLI.

Got this sorta working, but doesn't duplicate what lein does. Was hoping this would integrate cleanly, but it doesn't if you have nrepl launched from within the app itself. I can create a user namespace, but it doesn't auto-load. Won't integrate it into the project in this state. Might try adding some elisp to do this later, or testing a full lein conversion.

Add this to deps.edn:

{:aliases {:dev {:main-opts ["-e" "(require,'my.server.core)"
                             "-e" "(in-ns,'my.server.core)"]}}}

clj -A:dev -r will execute the above expressions.

1.5.9 DONE write test logging project

  • State "DONE" from "STRT" [2020-10-25 Sun 20:28]
  • State "STRT" from "TODO" [2020-10-25 Sun 18:28]

See if I can get tools.logging to both write to console and certain events to a log file.

Got this working, with some caveats. I can use something like the WARN level to only go to the file, but both will go to console if I set that to INFO or DEBUG. timbre would definitely be more versatile, but also more infrastructure/setup. Code in ~/src/clojure/logging.

1.5.10 DONE get USB microphone

  • State "DONE" from "STRT" [2020-11-08 Sun 22:36]
  • State "STRT" from "TODO" [2020-10-28 Wed 13:11]

Will save $100s per year on pre-paid minutes and reduce dependency on the physical phone. Tried a line-in mic and this didn't work for some reason, possibly because the mic is junk. A USB mic will probably let me use it on Linux, so that's a better option overall.

2020-10-28: Looked around for a decent one that wasn't super expensive for awhile, but finally gave up and went with the least risky looking option.

2020-11-03: Got USB mic, which actually turned out to be not complete junk as worried. However, it didn't seem to work on Windows for whatever reason. I'll try it on my laptop next.

2020-11-08: Got this working on the main Linux workstation. Now I can make some free calls, at the expense of having my conversation NLP-ed.

1.6 technology/software

1.6.1 CNCL read Gnuplot in Action: Understanding Data and Graphs

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:33]

Just skim the first few chapters then use the rest as a reference. Haven't touched my current Gnuplot scripts in years though, so put this off until there's a need.

Canceled in The Great Task Cleanup of 2020. Gnuplot does integrate with org-babel though and is probably the best solution for integrating charts that analyze data into Org docs. If that comes up, I'll come back to this. One possibility I might explore is doing all of my finances in more than just Org tables, for example.

1.6.2 CNCL read What Every Programmer Should Know About Memory

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:32]

A comprehensive survey on how memory and software interact.

Canceled in The Great Task Cleanup of 2020. I'm firmly committed to staying as abstract and high-level as possible from here on.

1.6.3 [6/6] redo home office

I spend way more time in the office now, and due having dedicated work hardware, things are cramped. Optimize this setup.

Done. Home office is pretty close to optimal now, and there's nothing about it I would particularly want to change (except maybe a slightly quieter desktop computer, but that's a separate effort).

  1. DONE redo dual-monitor setup
    • State "DONE" from "STRT" [2020-01-02 Thu 18:05]
    • State "STRT" from "TODO" [2019-12-20 Fri 13:45]

    Optimize this setup for my remote work office desk. Get a second U2417 and soundbar and set them up. This will replace my old 4:3 monitor currently in use, which is dimming, and get rid of external speakers and multiple speaker wires.

    Stuff ordered on 2019-12-20.

    Done. Monitor received and setup.

  2. DONE consolidate backup drives
    • State "DONE" from "STRT" [2020-01-06 Mon 23:35]
    • State "STRT" from "TODO" [2020-01-06 Mon 21:10]

    Go through all of my SATA drives, copy over any data I want to keep to the WD book, then destroy the drives and toss my external drive case. Should have 3 or 4 of these.

    Done. Decided to keep these for a couple more years, in the unlikely case I want to build a NAS. Will toss once I build my new rig though, since I'll have enough SSDs for that. Started a box of deprecated hardware in the closet. Keeping all this old stuff there is pretty inoffensive, since we have tons of unused storage space.

  3. DONE implement cable management
    • State "DONE" from "STRT" [2020-01-26 Sun 17:08]
    • State "STRT" from "TODO" [2019-12-20 Fri 13:45]

    Cables dangle everywhere on my office desk. Clean this up. Might put this off until I replace one of the monitors, so I don't have to redo it.

    Stuff needed:

    • Velcro cable zip ties.
    • Under desk cable management tray.
    • Self-adhesive cable clips.

    2019-12-20: Stuff ordered.

    2020-01-03: Got stuff, but as I decided to completely redo the desk too, waiting until the parts arrive for that. I did do some minor cable management in the living room though.

    2020-01-25: Mostly done, just needs a final touch-up.

    2020-01-26: Good enough for now. Didn't lock in the work laptops too much. I might revisit this, if it looks like I'll stay at the current job for a very long time. Also, I'll probably do a new system build by next winter too.

  4. DONE get UPS for office
    • State "DONE" from "STRT" [2020-01-28 Tue 18:35]
    • State "STRT" from "TODO" [2020-01-26 Sun 22:25]

    Get another APC BR700G.

    2020-01-26: Ordered.

    2020-01-28: Arrived and setup.

  5. DONE get keyboard tray
    • State "DONE" from "STRT" [2020-01-30 Thu 17:07]
    • State "STRT" from "TODO" [2020-01-26 Sun 22:25]

    New desk setup might benefit from this, since due to work I have to have multiple peripheral sets.

    2020-01-26: Ordered.

    2020-01-30: Received tray and set it up. Looks pretty good and is an ergonomic and visual improvement for sure, but will have to use it for awhile.

    2020-06-16: Been using this for many months now and it's a great setup. I prefer the tray over the desk height keyboard. Once no longer working, if I go 2 box on this desk, I'll install a powered USB switch against a single peripheral set on the tray. Could do that now even, but prefer to keep everything work/home completely separate.

  6. DONE redo office desk
    • State "DONE" from "STRT" [2020-01-25 Sat 22:47]
    • State "STRT" from "TODO" [2019-12-27 Fri 01:39]

    The current office setup works, but is cramped with my main work computer. Also don't have room for my NIPR laptop. I figure I can get a lot of value out of redoing this setup completely.

    After thinking about this for awhile, I'm going to try the well-worn Karlby + Alex combo. My version will use furniture legs raising the countertop to the same 33" that I currently prefer. Use the bubble level to ensure this is flat. Monitors will be mounted on a dual LCD arm. Cable management will elevate the power strip and group cables together, hopefully minimizing cable tangle/clutter. For countertop sag prevention, I'll use an angle iron towards the back and flat bar further front. Custom additions will be painted with black enamel. Blank, black mouse pads will protect the finish. Repaint the wall corner before positioning desk. Finally, I'll use Velcro stickers to prevent displacement of the main components. Floor mat and chair will stay the same for now. I'll also re-pot 1-2 house plants and maybe put them on the desk, if I have room. I'll probably move the desktop case off the floor. Should be able to do all of this for around $700-800. Do the setup for this on a weekend, since the computers will be down for awhile.


    • Under desk cable management tray.
    • 30 pack of self-adhesive cable clips.
    • Second Dell U2415 and soundbar.
    • 50 pack of reusable cable zip ties.
    • Karlby and 2x Alex.
    • Monitor arm.
    • 2x 4 packs of furniture legs.
    • 3 pack of mouse pads.
    • Pack of Velcro sticky coins.
    • Angle iron and flat bar.
    • Desk lamp.

    2019-12-27: Ordered Karlby and 2x Alex. Estimated earliest delivery is 2020-01-20. Shipping was $129. Looks like I'll get a call with a 4 hour window at some point.

    2019-12-30: Ordered remaining parts.

    2020-01-02: Painted angle iron black. Received new monitor, soundbar, clips, tray, zip ties. Setup new monitor and soundbar. Deprecated external speakers.

    2020-01-07: Got call for a delivery date of 2020-01-09. Delivery window is the entire day.

    2020-01-08: Received all non-Ikea build parts.

    2020-01-09: Got delivery, but one of the Alex units was missing. Instead, there was some shelf in its place. Refused that unit, so hopefully will get the correct one eventually. This will probably delay the desk build by weeks.

    2020-01-10: Hadn't heard anything yet, so submitted a support email on the site.

    2020-01-12: A new order was created to ship the remaining item.

    2020-01-15: Realized I bought 1 set of furniture legs instead of 2. Ordered.

    2020-01-17: Received legs pack and bought screws and washers to affix the angle iron. Should have all parts, minus the other Alex drawers.

    2020-01-21: Got call for delivery date of 2020-01-22 1000-1400. Will receive 1 hour notification via phone.

    2020-01-22: Final item acquired. Will start building this on the weekend.

    2020-01-24: Drawers assembled. Decided not to paint the furniture legs, since they aren't really visible.

    2020-01-25: Done. Desk, monitor arms, lamp, and all computers setup. This was more work than I thought it'd be, but turned out great. Usability and appearance of office is greatly improved.

    Ikea stuff still looks good, but durability and material quality has declined in the past 15 years. Also shipping costs are too high. Won't buy anything from them anymore.

    Future ideas, if I like this setup:

    • Move it to the living room and get another Karlby to mount on an electric adjustable desk frame, or get a proper wood countertop instead.
    • Add a white or blue LED strip along the back of the desk and mount a dimmer switch under the front.
    • Refinish the countertop with the stain I want and a polyurethane gloss finish.
    • If I'm pretty confident in the location of this setup, maybe make some shelving above it for displaying stuff and holding books. Another idea is to mount sound absorption panels.
    • Consider removing some Alex drawers, cutting open the back, and putting the PC case in one. Might even be able to put it in a bottom drawer. Then could line the sides with dampening foam.
    • Could drill a hole in the countertop and install a grommet for the keyboard and mouse to go into.
    • Once I'm done with my current job, I'll also redo the sound setup. For powered monitors, liking the Edifier R1700BT, maybe on custom or IsoAcoustics stands. If I don't mind adding an amp, the Dali Spektor 1 might work.
    • Along with the above, maybe convert this to a single 27-30" monitor with an offset arm mount (can just remove one arm). Then, KVM this against a dock for my Linux laptop, thus only having one set of peripherals.
    • Maybe get another APC BR700G.

1.6.4 [7/7] build computer for secondary workshop

Sometimes I'm working on projects down here for hours. I can use the laptop here, but space is limited and there's oils, debris, and other hazards I'd rather not expose it to. If I can build an extremely low power setup here on the cheap, it'd be worth the effort.

Done. Very optimal for this environment, though necessarily not something I'd want to do extensive typing on. This also doubles as a gateway to the RPi world.

  1. CNCL install Manjaro on netbook
    • State "CNCL" from "TODO" [2020-01-07 Tue 22:46]

    Consider as a downstairs workshop computer. It will default to being off and only used when I need to reference something while working on a project.

    Went with a Raspberry Pi for workshop computer, so won't do this.

  2. DONE build workshop computer
    • State "DONE" from "STRT" [2020-01-08 Wed 00:22]
    • State "STRT" from "TODO" [2019-12-29 Sun 18:32]

    For a cheap project, try building a Raspberry Pi-based system with a 7" LCD. Hang the monitor from the pegboard and either mount the Pi next to it or behind the board.

    Was going to go with the Zero W, but this would require various dongles. Decided to get the latest model. Will try adding my current spare speakers to it, if it all otherwise works. Bought:

    • Raspberry Pi 4B kit.
    • 7" Waveshare C model HDMI LCD.
    • Riitek wireless keyboard.

    Once I get the stuff, be sure to follow the instructions here for display setup.

    2020-01-02: Received all parts.

    2020-01-03: Set it all up and everything works.

    2020-01-04: Made some wood plates to mount monitor and Pi to. Added this to config.txt (archived here in case it disappears):

    hdmi_cvt 1024 600 60 6 0 0 0

    Also ordered: Switch power cable, bolt set, audio cable, USB to micro USB cable, HDMI to micro-HDMI cable, spacer kit, extra SD card, speaker.

    2020-01-04: Enabled sshd. Note that the service is called ssh here. Also did an apt full-upgrade to fix the file manager.

    2020-01-08: Finished build. Will spawn off another task for the pegboard mount.

  3. DONE setup VNC to Raspberry Pi
    • State "DONE" from "STRT" [2020-01-07 Tue 10:46]
    • State "STRT" from "TODO" [2020-01-07 Tue 09:00]

    Might as well set this up to connect to from my Windows box. Find a non-crappy Windows VNC client.

    Done. This works pretty good, and I'll use this if I ever need to do anything complex on it, since typing on the tiny wireless keyboard isn't that great.


    • realvnc-vnc-server should already be installed.
    • Use sudo raspi-config to enable VNC server.
    • Install RealVNC VNC Viewer on the Windows side.
  4. DONE install i3 on Raspbian
    • State "DONE" from "STRT" [2020-01-07 Tue 14:01]
    • State "STRT" from "TODO" [2020-01-07 Tue 11:34]

    i3 would save some screen real estate. Should be able to copy over my config from the workstation, with some minor modifications.

    Done. Works fine, but didn't spend any time tweaking the i3bar. What's there now works fine, however.


    • Run apt install i3.
    • Run echo "exec i3" > ~/.xsession.
    • Add xmodmap calls to ~/.xsession before the exec call. This will map Mod3 to Alt_R.
    • Log out of Xorg and back in. First login will have a few prompts.

    Simplified the config file some. Changed hostname to workshop. Added entries in other systems' /etc/hosts.


    • Mod-f is handy for this computer to fullscreen apps and get some more space.
    • Installed wicd-curses for network management. Tried using nm-applet, but one of the dependencies (network-manager) breaks VNC.
    • Use alsamixer (already there) for sound.
  5. DONE setup VNC on Manjaro
    • State "DONE" from "STRT" [2020-01-07 Tue 18:51]
    • State "STRT" from "TODO" [2020-01-07 Tue 14:25]

    Having a VNC server on the Pi is pretty handy, so decided to do the same for the laptop and workstation. I'll leave the server start in a script, since I'll rarely use it and don't want anymore background processes.


    • Run sudo pacman -S tigervnc.
    • Add ~bin/vnc_start script with contents x0vncserver -display :0 -PasswordFile ~/.vnc/passwd.
    • Create a ~/.vnc/passwd file using the vncpasswd command.

    Also updated full system on laptop. This setup here works, but it doesn't handle Meta key combinations for some reason. Was hoping to replace the gaming rig's VM with this, but looks like that isn't currently doable. This is better than nothing, but I don't really need this capability so will remove (its main use case is when/if something pops open a GUI dialog that needs addressed). Might look into swapping this with x11vnc later.

  6. DONE install OpenJDK 11 on Pi
    • State "DONE" from "STRT" [2020-01-08 Wed 00:08]
    • State "STRT" from "TODO" [2020-01-07 Tue 23:41]

    I might get a project kit for this and it looks like Java is a supported language, meaning I can probably use Clojure. In preparation, install and configure the JDK and make sure everything works.


  7. DONE mount Pi on pegboard
    • State "DONE" from "STRT" [2020-01-08 Wed 20:54]
    • State "STRT" from "TODO" [2020-01-08 Wed 18:52]

    Something like this is needed since the Pi is by default a mess of cables and inconveniently sized parts everywhere.

    The ideal setup here would be to have the monitor hanging from the center of the workshop pegboard with the Pi next to it. Then, I could add additional project boards, also on the pegboard. For sound, I'll try using an external Bluetooth speaker. I've read that this is sub-optimal for non-continuous sound, so I've ordered a 3.5mm audio cable as backup. Wood mounting boards are already made, awaiting spacers and drilling. If this doesn't work, I'll use my case for the Pi and hang up the monitor using wire.

    Done. Ended up going the wire route. My hand drill makes precise drilling rather difficult and I ruined the wood pieces I finished. I'll maybe retry my wood mount idea later with the drill press. In the meantime, I put the Pi in the case and did some cable management. Looks pretty good this way and is probably actually less visible cables than my original plan.

1.6.5 DONE replace broken UPS

  • State "DONE" from "STRT" [2020-01-09 Thu 19:52]
  • State "STRT" from "TODO" [2020-01-05 Sun 11:32]

UPS error beeps constantly after a power outage. Forums suggest that unit needs replaced. Get one that has a disable alarm button, like maybe the APC BX1500M. I'll eventually also want one for the new office setup, but I'll get that later. Might want to use the trade-up program here.

2020-01-04: Trade-up site nonfunctional, so will just buy a new one.

2020-01-05: Ordered an APC BR700G from Newegg for $115.

2020-01-09: UPS installed. Works pretty good. This model also has an alarm disable button, a feature I could've used on the old model. This model would be fine for my office setup too, I think.

1.6.6 CNCL consider Plan 9 on Raspberry Pi

  • State "CNCL" from "TODO" [2020-01-25 Sat 22:49]

I have a second micro SD card on order. Might try getting Plan 9 working on it, just to check out. If this doesn't work, I can also try Inferno OS on a VM maybe. Trying this now before I put something I want to keep on it, though I'll probably just go back to using Raspbian. Don't spend too much time on this.

Skipping. Looks like the work will exceed my interest level.

1.6.7 CNCL research lsp-mode and lsp-java

  • State "CNCL" from "TODO" [2020-01-29 Wed 23:46]

Looks like this is a method for getting a Eclipse-like Java-IDE experience for Emacs. Looks pretty impressive, if it all works. Looks to be in active development and only a couple years old, so put this off until I predict a likely need for it.

Skipping, since not needed. Will keep it in mind if that changes though. lsp-modes for various languages seems to be getting more popular, and I may want to start pulling in some of them. LSPs are a great idea, and while not as big of a deal for Emacs, they definitely lowered the hurdles in new editors reach critical mass.

1.6.8 CNCL consider Dired+

  • State "CNCL" from "TODO" [2020-01-31 Fri 00:20]

Been using Dired a lot more lately. This extends the functionality in ways I might want.

There's also Dired-X, which is already included by default. If I don't want to use Dired+, I may still want to expand my normal dired knowledge and include Dired-X capability. dired-k and dired-hacks might also be worth a look.

Skipping for now, since I stopped using Dired in favor of Eshell.

1.6.9 DONE upgrade DSL

  • State "DONE" from "STRT" [2020-02-05 Wed 16:29]
  • State "STRT" from "TODO" [2020-02-03 Mon 13:29]

New fiber infrastructure was installed in the area. Supposedly can support up to 12 or 18 Mbps. Anything would be an improvement over the current speeds, so will get this upgraded.

2020-02-03: Scheduled technician visit for afternoon of 2020-02-05.

2020-02-05: Upgraded to 19.x Mbps. Pretty huge difference. Latency went down too, and pings of 17ms are now possible.

1.6.10 DONE setup local l1j-en server

  • State "DONE" from "STRT" [2020-04-15 Wed 21:23]
  • State "STRT" from "TODO" [2020-04-15 Wed 19:20]

MariaDB is already on workstation, just need to config and connect the server.

Operational. Also fixed a dependency bug in the codebase. Locally, fixed a table name being improperly cased.

1.6.11 DONE install tuir

  • State "DONE" from "STRT" [2020-04-18 Sat 00:18]
  • State "STRT" from "TODO" [2020-04-17 Fri 23:50]

A terminal Reddit client. I had been occasionally checking the site still for a few PLT forums, but even the old UI was annoying me. Will give this a try.

Done. Install from AUR with yay -S tuir, or using pip with pip install tuir --user. I did the latter, but will switch over to AUR's version next time. Can also set browser at launch with BROWSER=brave tuir.

Great application. Seems to support all the core features. The best is spacebar for hiding submissions, which is way faster than the GUI's hide button that moves around. Reddit is still a crap site and garbage company, so I'd like to not use it at all. I definitely won't once I'm not programming professionally. Now if I could just get a terminal client that had the exact functionality of hckr news.

1.6.12 DONE delete Triplebyte account

  • State "DONE" from "STRT" [2020-05-25 Mon 22:06]
  • State "STRT" from "TODO" [2020-05-25 Mon 15:35]

Apparently this is a company that can't be trusted with personal info. I also don't like the dark patterns this site employs and the quiz content isn't any fun. It's supposedly possible to delete your account through a well-hidden option here.

Submitted, but it has some message about possibly needing government ID to complete. Will try logging in 30 days to make sure it's gone. If that doesn't work, I'll just change my profile info to profane text.

Got confirmation message later. According to the CEO posting on HN, the ID message was more sloppy programming.

1.6.13 CNCL advanced Emacs macros

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:42]

Currently just using macros on a one-time basis, which isn't utilizing their full power. Write down the stuff needed to record macros, use them in batch mode for text processing, and whatever else can be done with them. Maybe start an archive of useful macros that I often construct.

Skipping this, for now.

1.6.14 DONE consider jpackage

  • State "DONE" from "STRT" [2020-05-31 Sun 11:22]
  • State "STRT" from "TODO" [2020-05-31 Sun 10:21]

Give this a quick glance. Looks like a new official tool for packaging up self-contained applications, created from a JAR. Being released with JDK 14.

Considered. I have this on my main workstation now, which is on JDK 14. Looks like a good thing to keep in mind. Don't see any reason this wouldn't work for Clojure apps. This is still in incubator mode and I have no immediate need, so don't want to go to deep on it yet. Plus, I'm mostly sticking to LTS versions from now on.

1.6.15 CNCL authentication and authorization roundup

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:39]

Spend a few minutes reading up on each of these. Was going to learn this for work, which is no longer necessary. However, this stuff is good to know in general, and I'll need some basic knowledge if I build my own webapps.

  • OAuth:
  • OpenID:
  • WsFed:
  • x509:
  • JWT:

Canceled. Would have done this had I stayed with my previous job. Since I left that, I'll put this back into the lazy-load set. I do happen to understand these a little better already though, which shed some light on a few otherwise inexplicable things seen around the Internet.

1.6.16 CNCL consider Aircrack-ng

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:45]

Being able to have free internet access almost anywhere would definitely come in handy. Maybe use kismet for grabbing IVs. Get some dictionary files for WPA. Set all this up on a laptop. Before spending time on this, look into the viability of this for modern WPA2. Aircrack-ng also provides some other functionality, but not enough to warrant getting into it without the core feature. Might skip altogether, since I'm not really into this kinda thing.

Canceled. I now never go anywhere and the only wifi signal here is my own.

1.6.17 CNCL consider SketchUp

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:45]

A 3D modeling app that is supposedly super simple. Use this to design a rifle rack and any other furniture I want to make. Can also export to common formats, so it might be useful for other things.

Skipping. So far I've been able to build stuff with basic drawings. May revisit if I start doing complex stuff, but I've determined my level of interest in woodwork to be a below where such things are needed. I may consider getting a cheap milling machine, in which case this or something like it would make sense again.

1.6.18 [2/2] consider alternative Emacs-integrated mail clients

I like Mutt and don't find it lacking. But maybe I want to survey the competition again. I hear Wanderlust and NotMuch are the main Emacs-integrated mail clients. Fully integrating the client seems unnecessary, provided you can tell an external client to defer to Emacs for composing.

Canceled. Gmail seems to not allow any of these third party clients these days anyway. They say they do, but every time I enable it, it still doesn't work and I get another warning. Might be time to migrate off of Gmail. I don't use email much, mostly due to no one actually reading them for content, which is why I haven't bothered with this final de-Googling of my life.

  1. CNCL consider nmh
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:42]

    Consider replacing mutt with this. mutt's great, but nmh has full Emacs integration (mh-e) and is supposedly faster (in execution and use), so maybe this makes more sense for me.

    Canceled. Will stick with Mutt for now.

  2. CNCL consider NeoMutt
    • State "CNCL" from "TODO" [2020-06-06 Sat 23:43]

    Consider replacing Mutt with this. NeoMutt is a fork of Mutt with added features. Mutt development is supposedly stagnant.

    Canceled. Will stick with Mutt for now.

1.6.19 CNCL consider SyncTeX

  • State "CNCL" from "TODO" [2020-06-07 Sun 15:37]

This enabled synchronization between LaTeX editors and supporting viewers. This will at least allow for navigation between the two to be linked, but might also allow for live reloading. Will give this a try when I have some free time. Not a high priority though.

Canceled. I think this actually isn't a problem with my current setup, minus not having the linked navigation (which is a feature I miss not having).

1.6.20 CNCL learn more HTML5

  • State "CNCL" from "TODO" [2020-06-14 Sun 09:48]

HTML5 is the de facto standard for web markup. I've picked up some of this by osmosis while updating my sites, but a more thorough scan of it might pay off. Choose a text to read, assuming one exists that doesn't suck, in order to get comprehensive coverage on it.

Canceled. With my org-publish integration, I now should no longer need to write any HTML at all. The output from that is definitely not as nice as my perfectly formatted and minimal hand-rolled HTML5, but that's an incredibly small price for what I get. Also, I know enough of this now to get by.

1.6.21 [3/3] make Windows suck slightly less

I'll dedicate a little bit of time to making Windows less painful, since I'm occasionally using it to test l1j-en on the client side.

Done. No major results, unlike the scoop/MSYS2 integration. Not going to put any more time into this.

  1. DONE consider winfile
    • State "DONE" from "STRT" [2020-01-29 Wed 23:57]
    • State "STRT" from "TODO" [2020-01-29 Wed 23:47]

    A recreation of the 3.0 Windows file manager. On my current Windows box, since I mainly just use it for games, I didn't bother installing/configuring xplorer2. Maybe I'll use this instead, or just look at it briefly.

    Done. This is okay, but I'd prefer to have the plus signs next to directories that have sub-directories and be able to navigate between drives in the same navigation pane. On the other hand, it does not include a bunch of annoying features of modern File Explorer, like Quick Access. Maybe this could be more useful if I had a computer with a single big drive. Resource-wise it's only 2/3 the memory footprint too, which is disappointing. Won't bother using this for now. Uninstalled.

  2. DONE disable all Windows 10 ads
    • State "DONE" from "STRT" [2020-05-10 Sun 20:52]
    • State "STRT" from "TODO" [2020-05-10 Sun 20:41]

    Follow these instructions for my Windows machine.

    Looks like I had done some of these already, but missed a few.

  3. CNCL consider chocolately
    • State "CNCL" from "TODO" [2020-06-17 Wed 01:21]

    Set this up and replace a few applications with it. Use those for awhile and if integrating this permanently seems worth it, migrate over as much as possible. One known downside is that I'll then have 4 ways of managing installs: scoop, MSYS2, chocolately, and manual. If I do decide to do this, will probably put it off until I build a new gaming rig.

    Canceled. Did read up on it some though. Would use this if Windows was my main computing platform, but I mainly just use MSYS2 on it.

1.6.22 [4/4] integrate scoop and MSYS2 on Windows

A long overdue feature for Windows. Professionals that have to use Windows say it's one of those first-install items on a new Windows box. For MSYS2, this is the modern Cygwin, with a better default terminal and overall compatibility and integration.

Done. Those Windows guys are right, this is a must-have. Should come stock on the OS though. MSYS2 is also great, but the apps there do run slower. Having a Windows install of Emacs that depends on a lot of MSYS2 stuff does slow it down noticeably. Also, a few apps, like tmux, have some porting issues and resulting bugs, as they did in Cygwin.

  1. DONE consider scoop
    • State "DONE" from "STRT" [2020-05-09 Sat 23:33]
    • State "STRT" from "TODO" [2020-05-04 Mon 09:35]

    Do a setup of this on my main Windows box and then duplicate that setup on my work dev laptop. I'll also redo my Emacs setup and all other Unix-like tools to use this.

    Installed. Note that once you install scoop via PS, you can use it from cmd from there on.


    • Install with: iwr -useb | iex
    • Always run scoop commands in a PS window, not cmd.
    • Install scoop extras: scoop bucket add extras
    • List of all default bucket software is here, and extras are here.
    • Creates a directory tree at C:\Users\<username>\scoop.

    2020-05-30: Installed unxutils. This gives diff, which Magit uses. Also added vscode, for Calva testing.

    2020-06-01: Did this on the work laptop finally. Had an issue with upgrading anything using the new zstd format. Fixed by upgrading pacman by itself with pacman -Sydd pacman, as detailed here.

    2020-06-01: Added sysinternals. Gives pskill, among other things.

  2. DONE document MSYS2 setup
    • State "DONE" from "STRT" [2020-06-02 Tue 09:00]
    • State "STRT" from "TODO" [2020-06-01 Mon 01:26]

    Need to track this so I can get setup again quickly when/if needed. Informally listing stuff here is probably good enough.

    Done. Calling this setup good for now. It's not perfect, but usable and doesn't have any major downsides.


    • openssh
    • aspell
    • aspell6-en
    • w3m
    • tmux
    • vim
    • git (maybe, can swap the scoop version for this)

    Other notes:

    • Ensure $PATH includes JDK bin.
    • Ensure $HOME is set. It's apparently also possible to modify the db_home variable to windows in /etc/nsswitch.conf, but seems unnecessary if doing this.
    • Manually install Leiningen.
    • Sticking with bash for now, but might switch to zsh later.
    • Using git from MSYS2 requires Git Credential Manager for Windows, available here:
      • Grab the distributed .zip file.
      • Extract contents to: /c/Users/<user>/scoop/apps/msys2/current/usr/lib/git-core
      • Run git config --system credential.helper manager in MSYS2.
    • The above works, but doesn't in Emacs on my work machine. Current work setup excludes it and sticks with Git bash for cloning, due to that being much rarer of an operation versus push/pull from Magit. I also didn't do this on my personal Windows box, and didn't have any issues.
    • Side note: Next time also try skipping Git for Windows and going full MSYS2 for all git functionality. If that doesn't work, try git-with-openssh from scoop.
  3. DONE add scoop-clojure bucket to scoop
    • State "DONE" from "STRT" [2020-06-02 Tue 23:12]
    • State "STRT" from "TODO" [2020-06-02 Tue 23:07]

    Doesn't seem to be much here, mostly just borkdude projects. However, seems like a good way to get babashka and clj-kondo on Windows.


    Setup (assuming extras bucket, clj, and git is already present):

    • scoop bucket add scoop-clojure
    • scoop install extras/vcredist2010
    • scoop install extras/vcredist2015
    • Install apps wanted. Currently only using babashka and clj-kondo. Seems to not need %PATH% additions in base system, but does need $PATH updated in MSYS2. Edit ~/.bashrc accordingly.
  4. DONE document scoop install list
    • State "DONE" from "STRT" [2020-06-17 Wed 00:16]
    • State "STRT" from "TODO" [2020-06-17 Wed 00:07]

    Will probably want to keep a list of what I want to install through it, since I'll eventually rebuild my gaming machine.

    Done. Here's the lists. Next time, try skipping the vcredist installs. Also try checking my /bin folder to see what else I can pull in. Will have to think about that, since I'm not sure I always want the latest of these apps, and most of them are portable. Maybe isolate the non-portable ones only. I can skip 7zip then too. Maybe also try skipping unxutils.


    • extras
    • scoop-clojure
    • nerd-fonts


    • 7zip
    • babashka
    • clj-kondo
    • emacs
    • msys2
    • sysinternals
    • unxutils
    • vcredist2010
    • vcredist2015
    • vscode
    • firacode
    • RobotoMono-NF

    Note: Use sudo scoop install firacode to install this or other fonts.

1.6.23 DONE consider Fira Code font

  • State "DONE" from "STRT" [2020-06-19 Fri 11:42]
  • State "STRT" from "TODO" [2020-06-19 Fri 08:36]

Looks like a good font that supports programming ligatures. Mainly considering for Emacs, so add some elisp to check if the font exists first before setting it. That way not having Fira won't error on startup.

Done. Supports at least the Unicode blocks I care about. Some of the math symbols I use look better. Will use this for awhile. Redid how Emacs selects its font on startup, so it will be a bit smarter about it.


  • Arch: yay -S community/otf-fira-code
  • Windows:
    • scoop bucket add nerd-fonts
    • In an administrative PS window: scoop install firacode
    • Switch MSYS2 to this font.
  • Raspbian: sudo apt-get install fonts-firacode

For transposing ligatures, I currently have these enabled in Haskell in a way that works with any font. The Fira docs have some Fira-specific elisp for this, but I'll wait until I'm sure I stick with it to make that call. This is a great font, but it'll take some days or even weeks of use to make sure it's the one true font for me. The ampersands will take some getting used to, for example.

Side note:

  • Also deprecated printing code in Emacs. It's definitely broken, and I have no way to test it.
  • Call x-family-fonts to get a list of fonts available to Emacs.
  • I don't want to do this currently, but there's fira-code-mode for enabling ligatures in Emacs. There's also these instructions.
  • Another good font is Monoid. Install that with yay -S aur/ttf-monoid. Seems ideal for reading.

2020-06-22: Switched off this for mintty. Ligatures were getting in the way too much, and I've decided I don't want them around except in certain situations. Installed the RobotoMono-NF from the nerd-fonts scoop bucket to use there. So far, I really like this one.

1.6.24 CNCL consolidate personal data

  • State "CNCL" from "STRT" [2020-06-18 Thu 11:25]
    • State "STRT" [2010-02-03 Wed 13:17]

Go through all of the files I've accumulated in life and mercilessly delete stuff that is either:

  • Easily accessible online.
  • Something I haven't looked at in years and am unlikely ever to.
  • Something that if I did look at, would be a huge time-waster, like Windows games, ROMs, and crappy abandonware.

256GB USB 3.0 flash drives are now available under $100. Once ready to do the transfer, get one of these and mount it on Linux. I may format the drive with ext2 (the most accessible Unix FS) or even just NTFS (so it can be used from Windows too). If going the former route, setup Samba to share it. I also may want a second one eventually (once they get even cheaper) as backup.


  • [X] Audit all data everywhere.
  • [X] Order drive.
  • [X] Deprecate older external drives.
  • [ ] Mount drive on workstation and include as part of standard setup procedure.
  • [ ] Analyze and if necessary modify my existing backup directory hierarchy.
  • [ ] Copy stuff over to the new storage destination.
  • [ ] Write new rsync scripts to automate backups. These are:
    • [ ] Windows Syncback script. Might be able to skip this. Ideally, I want no original copies of anything on my Windows box.
    • [ ] Full cellblock backup.
    • [ ] Full macroexpand backup.

Haven't decided whether to keep my Windows backup drive as-is, and rsync it. I'll have to do that anyway for the VMs, so I'm leaning towards that approach currently. This also allows me to leave the backup drive offline most of the time.

2020-06-18: Rethink everything here and restart this effort.

1.6.25 [23/23] do 2020 Emacs yak-shave

Every year, the hair grows back. Each huge retooling like this gets me ever closer to Emacs perfection. The dream of an Emacs setup that only needs just some swapping of packages based on current needs is within my grasp, I can feel it.

Done. A truly massive pass on a lot of things. Indeed life is even better now. Some of this I should've done a long time ago. The terminal experience now sacrifices nothing. Going forward, Emacs yak shaving marathons should be shorter.

  1. DONE get Emacs decryption of GPG files working in terminal
    • State "DONE" from "STRT" [2020-01-07 Tue 23:12]
    • State "STRT" from "TODO" [2020-01-07 Tue 22:48]

    This is probably the only thing I had working on FreeBSD that doesn't work on Linux. I wouldn't want to be locked out of encrypted files if I don't have an X session available. Will have to look around for suggestions.

    Done. Updated all Linux boxes to make this work. Much nicer than the GUI prompt, and fixes one of my major FreeBSD->Linux switch annoyances.


    • Edit ~/.gnupg/gpg-agent.conf and add lines:

    • Run gpgconf --reload gpg-agent.
    • In Emacs, add package pinentry from ELPA.
    • Edit ~/.emacs and add expressions:

      (setq epa-pinentry-mode 'loopback)
  2. DONE replace emacs-w3m
    • State "DONE" from "STRT" [2020-05-29 Fri 18:24]
    • State "STRT" from "TODO" [2020-05-29 Fri 17:51]

    Have been using a CVS repo version of package emacs-w3m. I noticed there's a w3m package in ELPA. Try using this to see if it's the same thing. Would be a good way to deprecate what I think is my last CVS-managed repo.

    Done. Works pretty good. For some reason, adding it in package-list-packages doesn't work, but having it load from package.el package list on start does. Will make that my default method for package loading from now on, so I'm sure the package I install is the one specified in the init.

    Some additional w3m notes:

    • Q runs w3m-quit. Just killing it registers it as a crash (though has the benefit of letting me start on the last viewed page).
    • s calls w3m-search, unlike S (which I had been using) that does search in a new buffer. This is analogous to g vs. G.
  3. DONE use org-present and python-mode from ELPA
    • State "DONE" from "STRT" [2020-05-29 Fri 18:39]
    • State "STRT" from "TODO" [2020-05-29 Fri 18:26]

    Noticed these are now in MELPA too.

    Done. Couldn't test python-mode fully due to tools not being present (and I don't feel like setting them up just for this). Now all that remains manually managed is my custom theme.

  4. DONE use color-theme from ELPA
    • State "DONE" from "STRT" [2020-05-29 Fri 20:06]
    • State "STRT" from "TODO" [2020-05-29 Fri 19:36]

    The last remaining manual package is my custom version of the wombat color theme. Might as well just use this from ELPA. The only difference with my version is the background color is black.

    Done. Replaced custom theme loading code with built-in wombat theme, followed by an expression that changes the background color. Also removed the theme loading being conditional on being in graphical mode, which allows for some greater consistency between terminal and GUI.

    Also upgraded all packages.

    This completes my full migration to ELPA for everything. I think I can now safely setup my full Emacs environment on new machines with just my init file.

  5. DONE switch .emacs to .emacs.d/init.el
    • State "DONE" from "STRT" [2020-05-29 Fri 23:56]
    • State "STRT" from "TODO" [2020-05-29 Fri 22:06]

    I already have my work setup this way. This will:

    • Keep all Emacs config in one place.
    • One less file in $HOME is always nice, though at the cost of a little extra typing when editing.
    • Allow for byte-compiling init.el. I have some init code already to do this, but it's broken.
    • Allow for a git repo of all of .emacs.d. No current intention of doing this though, since now I've got it to only just the init file. A good option if I ever want to convert it to literate Org.

    Done. Fixed the automatic byte-compilation of init.el. Also cleaned up all warnings, mostly upgrading the elisp to current functions. Synced new init on all Emacs installs, except work (which I'll do on Monday) and VPS.

    Note that on the l1j-en test-server, which runs Ubuntu, I had to run this due to expired keys:

    gpg --homedir /home/bcmiller/.emacs.d/elpa/gnupg --keyserver --recv-keys 066DAFCB81E42C40
  6. DONE integrate restclient
    • State "DONE" from "STRT" [2020-05-30 Sat 12:48]
    • State "STRT" from "TODO" [2020-05-30 Sat 12:32]

    I don't have any locally hosted REST server apps, so do this when I have some free time at work.

    Setup complete. This is actually very nice and way better than Postman. Main keybinding to keep in mind is C-c C-c, which will execute a query. Will try using this for awhile and see if I want to keep it around, which is likely the case. I can see this being useful for some of the web dev projects I have in mind.

    The main unique feature here is the ability to have elisp integrated into your query definitions. Note that ob-restclient is an org-babel interface to restclient, which I may also want.

  7. DONE consider writegood-mode and synosaurus
    • State "DONE" from "STRT" [2020-05-30 Sat 13:21]
    • State "STRT" from "TODO" [2020-05-30 Sat 12:52]

    Consider installing these for improving the quality of writing output.

    Considered with these results:

    • writegood-mode: Doesn't offer enough to be worth a plugin. I will just make a conscious effort to avoid passive voice and weasel words. Might still be worth pulling in temporarily when publishing a large body of text, like a book.
    • synosaurus: Seems useful and tried it out, but using the online thesaurus only returns German. Looked around for an alternative, and found mw-thesaurus, so will give that a try instead.
  8. DONE consider mw-thesaurus
    • State "DONE" from "STRT" [2020-05-30 Sat 13:28]
    • State "STRT" from "TODO" [2020-05-30 Sat 13:23]

    Integrate a thesaurus in Emacs. Includes definitions.

    Not working. Check back later to see if this issue is fixed.

    Once it is, add this keybinding:

    (global-set-key (kbd "C-c M-l") 'mw-thesaurus-lookup-at-point)

    Will try powerthesaurus instead, for now. Even if I use that, I like the definitions here, so might check back.

  9. DONE consider powerthesaurus
    • State "DONE" from "STRT" [2020-05-30 Sat 13:37]
    • State "STRT" from "TODO" [2020-05-30 Sat 13:33]

    A (hopefully working) thesaurus for Emacs.

    Not working. Maybe check this issue later to see if it gets fixed.

    This was the only remaining thesaurus plugin. Was hoping to replace a need for using a web interface through w3m with just a hotkey-ed function call, but looks like it was not meant to be.

  10. CNCL consider use-package
    • State "CNCL" from "STRT" [2020-05-30 Sat 13:47]
    • State "STRT" from "TODO" [2020-05-30 Sat 13:43]

    Consider switching all Emacs addon package blocks to make use of this.

    Considered. This is a good idea, and has the potential to keep things tidy. However, deciding against it for these reasons:

    • I have some package config that seems like it might not fit neatly into these categories, like bindings across packages, globals, etc.
    • If I want to keep this universal, I can't just paste in config from README files.
    • I don't actually have an unmanageable amount of code. Things are already pretty much in order and tidy.
    • There's package config that I want to exclude per environment, e.g. OS type.
    • This adds another package, just for package management.

    This is, however, becoming more of a standard. I'll probably reconsider at a later date.

  11. DONE fix Emacs on Windows
    • State "DONE" from "STRT" [2020-05-30 Sat 14:20]
    • State "STRT" from "TODO" [2020-05-30 Sat 14:14]

    Native install doesn't like my new init. Try installing via scoop.

    Done. I think the scoop version is actually just the same as the Windows version I was manually managing. But, I did install it there and will let scoop manage it.

    The problem was pinentry package's server. Excluded from Windows, which means I won't be able to integrate editing of GPG-encrypted files there. Not a big deal though. Still need to get spell-checking working at some point.

  12. DONE fix paredit slurp/barf keybindings
    • State "DONE" from "STRT" [2020-05-30 Sat 22:05]
    • State "STRT" from "TODO" [2020-05-30 Sat 21:37]

    This seems to not work on any of my environments, in GUI or terminal.

    Fixed with global-set-key workaround, due to the way paredit locks down its mode-map. Seems to have some bitrot in modern Emacs. Looks like no one's worked on it since 2014 or so too. This fixes the major issue with it, but I'm queuing up looking into smartparens.

  13. DONE fix Emacs spell-checking on Windows
    • State "DONE" from "STRT" [2020-05-30 Sat 23:14]
    • State "STRT" from "TODO" [2020-05-30 Sat 23:06]

    Old version of aspell, which is all that's available for Windows, isn't supported anymore on current Emacs. So, try out hunspell instead. If it doesn't have any downsides, I might use it everywhere.

    Fixed. Managed to fix aspell instead. Just needed a slightly newer version of it, for which native win32 binaries aren't available. It is, however, available through MSYS2.

    • If MYS2 isn't installed: Open a PowerShell window: scoop install msys2
    • Install aspell: pacman -S aspell
    • Install aspell-en: pacman -S aspell-en
    • Add C:\Users\bm3719\scoop\apps\msys2\current\usr\bin to PATH.
  14. DONE try out smartparens
    • State "DONE" from "STRT" [2020-05-31 Sun 00:36]
    • State "STRT" from "TODO" [2020-05-30 Sat 23:22]

    Paredit has some issues that apparently aren't going to be resolved. Try this out, and if good, replace paredit with it.

    Done. Setup and bound favorite functions. Looks like it has full coverage on paredit, so no reason to keep using that. Might comprehensively read the docs if I find myself with some free time.

    Only minor complaint is that, unlike paredit, it doesn't insert the extra space between pairs when just typing another open-pair character.

  15. DONE deprecate flymake
    • State "DONE" from "STRT" [2020-06-04 Thu 10:53]
    • State "STRT" from "TODO" [2020-06-04 Thu 10:38]

    Remove all references to flymake and flymake-cursor. All new on-the-fly syntax checking will use flycheck. By my rough analysis, flycheck is superior to flymake, with the only downside being not included by default. See this comparison for additional details.

    Done. Stripped down my python-mode config to just the basics as well, since I probably won't do any Python development any time soon (or maybe ever).

  16. DONE create Eshell config
    • State "DONE" from "STRT" [2020-06-09 Tue 21:22]
    • State "STRT" from "TODO" [2020-06-09 Tue 15:14]

    Will designate this my exclusive embedded shell in Emacs. Config my prompt and maybe look around to see if there's anything else to customize. Git status prompt integration would be nice too. Maybe deprecate multi-term too.

    Done. Deprecated multi-term. ansi-term can still do ncurses applications, should the need ever arise, though Emacs or Eshell seems know about and spawn a few of them (like top) in dedicated buffers.

    Eshell makes for a good REPL+shell combo. Would prefer it used Clojure instead of elisp though. Will stick with babashka for anything more complex than a simple loop. It's not completely perfect–zsh is a better shell for refinement and speed in standard use cases–but you get Emacs-integration power in the trade. I think of it as leveling out the accessibility across task complexity. In zsh, as tasks get more complex, they approach impossible.


    • M-p, M-n: Cycle command history.
    • C-c C-p, C-c C-n: Navigate to previous prompts.
    • M-r: Backward history search by regexp. Works, but isn't has nice as C-r on a normal shell. I think ido can be integrated with this for a more useful interaction.
    • C-c C-l: List history in a buffer.
    • Arbitrary elisp can be run here. Parens will send things to the elisp parser. For shell commands with embedded elisp, use $(). For elisp with embedded shell, use ${}.
    • * is the glob operator, turning everything in a directory into a list. Can be used for partial globbing too.
    • Enabled smartparens-strict-mode in Eshell.
    • To do a shell for loop:

      for f in * { echo "Here's a file named $f!" }
    • Use which if in doubt about whether an elisp or shell version of a function is called. Function and variable preference order can be configured.
    • M-x eshell-display-modifier-help: Lists modifiers.
    • M-x eshell-display-predicate-help: Lists predicates.
    • It's possible to open Eshell against a remote machine:

      (let ((default-directory "/ssh:hamtaahk:~"))

      This doesn't seem to work, though server is in ~/.ssh/known_hosts and proper settings in ~/.zshrc. Adding task.

    • Modified prompt. Added eshell-git-prompt package.
    • Added some aliases, which store by default in ~/.emacs.d/eshell/alias.
    • Running magit-status (or hitting my F3 hotkey) will respect the cwd.
  17. CNCL consider forge
    • State "CNCL" from "TODO" [2020-06-09 Tue 23:23]

    Integration with GitLab and GitHub forges from Magit.

    Canceled. Will skip this for now since I'm only using project management features for l1j-en.

  18. DONE fix TRAMP
    • State "DONE" from "STRT" [2020-06-10 Wed 15:05]
    • State "STRT" from "TODO" [2020-06-10 Wed 14:10]

    Can't seem to get anything remote up in Emacs using TRAMP. Don't really use this feature, but it'd be nice to know it's there and working. I could also see this being handy for syncing config files and using ediff against remote versions of files.

    Reference docs:

    Fixed, sorta. So, I got this working in emacs -Q, and can do an M-x find-file /ssh:bm3719@hamtaakh:somefile. However, in my customized setup, it looks like it maybe wants to use key-based authentication for auto-completion.

    Fixed, or at least diagnosed. Traced the problem to lusty-explorer. Apparently projectile has this problem too. Unfortunately, while projectile has a way to disable it with a setq temporarily, I don't see any immediately obvious way to do that with lusty. I think I'm okay with this, and will just comment out lusty-explorer and start a new Emacs instance on the rare occasions I want to use TRAMP.

  19. DONE deprecate dockerfile-mode
    • State "DONE" from "STRT" [2020-06-19 Fri 12:48]
    • State "STRT" from "TODO" [2020-06-19 Fri 12:45]

    Not currently using, so pull from init.

    Done. Will re-add if needed later.

  20. DONE deprecate old init code
    • State "DONE" from "STRT" [2020-06-19 Fri 19:08]
    • State "STRT" from "TODO" [2020-06-19 Fri 15:33]

    There's some code in my init that was necessary, but now longer is due to being included by default. Review everything and delete that.

    Done. Stuff did:

    • Removed bcm/kill-line. Not useful, since it only kills a line. Regular C-k does the same.
    • Removed all CEDET config. This used to be required by other packages (which I no longer use) and used for completion (which I don't need from this). Otherwise, it's only really useful for C/C++, and most of those programmers use other major modes now.
    • Have customize output writing to an external file now, which is ignored. Even if I don't use it, ELPA writes this block.

    Note that wttrin is broken currently. Check back later to see if it got fixed.

    Completely unrelated side note: clojure-mode provides C-c SPC, which will vertically align values in a Clojure map.

  21. DONE consider magic-latex-buffer
    • State "DONE" from "STRT" [2020-06-20 Sat 01:19]
    • State "STRT" from "TODO" [2020-06-20 Sat 01:01]

    Enables inline rendering of LaTeX, to some degree.

    Considered. Seems to have some display issues, at least in terminal mode. Another big issue for me is that I don't have LaTeX internalized enough to be okay without seeing the markup directly. Maybe if I'm just churning out the papers all day for months, I'll reconsider this. Apparently some people who do this for a living do appreciate this minor mode.

  22. CNCL consider RefTeX
    • State "CNCL" from "TODO" [2020-06-20 Sat 01:33]

    Adds some reference building assistance to AUCTeX. Built into Emacs now, so no cost in using.

    Canceling this for now. Might never need it, so no point in front-loading. Already know how to do this manually, after all.

  23. DONE try powerline in terminal
    • State "DONE" from "STRT" [2020-06-20 Sat 12:47]
    • State "STRT" from "TODO" [2020-06-20 Sat 12:34]

    Now that I have a proper Unicode terminal, try enabling powerline in it.

    Done. Looks good. Not sure what this char is though: . Was considering adding some git status info in the modeline (more than just the branch), but that might bloat the line a bit too much. I kinda want everything to fit on a typical programming buffer at the same width of most code.

1.6.26 [20/20] do 2020 Manjaro yak-shave

I use this every day, sometimes all day. Things are pretty good, but a little effort here could go a long way.

Done. Solved all known annoyances and generally improved the user experience quite considerably.

  1. DONE install yay
    • State "DONE" from "STRT" [2020-05-31 Sun 11:43]
    • State "STRT" from "TODO" [2020-05-31 Sun 11:23]

    Consider this pacman wrapper. Might prefer the output and command line flags.

    Done. Actually, this is an AUR helper that wraps pacman. Not using this seems to be why I couldn't find AUR packages (which I guess are normally only available as manual downloads), despite having it registered. Looks like it can do all the pacman stuff, so I will just use this from now on. With this, I no longer need the GUI package manager.


    • Just running yay will run yay -Syu.
    • List installed packages: yay -Q

    A slightly different approach is Aura, which is written in Haskell. I may consider switching to this next time around:

  2. DONE see if i3 can do Fibonacci tiling
    • State "DONE" from "STRT" [2020-05-23 Sat 22:11]
    • State "STRT" from "TODO" [2020-05-23 Sat 22:00]

    I prefer this tiling algorithm from xmonad. My setup seems to do column, row, and full screen only currently.

    Done. True Fibonacci isn't possible, there's a workaround solves my problem for 3 windows, which was mainly what I wanted. There's still some control clunkiness here, and it's not as nice as xmonad in this department. Some of these commands do inexplicable things, but maybe I'm just missing something conceptually here.

    Looks like the way to get my preferred 3 window layout is:

    • Open 3 windows, these will be columns by default.
    • Mod-e to toggle to horizontal split.
    • S-Mod-h to arrange them in 3 window pseudo-Fibonacci.

    To get back:

    • S-Mod-k and Mod-e, I think.

    Side note: S-Mod-arrow keys are better for moving windows around. The other bindings for this only work some of the time, for unknown reasons.

  3. CNCL consider $HOME git repo
    • State "CNCL" from "TODO" [2020-06-07 Sun 08:59]

    What if I had $HOME be a git repo, with a ~/.gitignore that excludes everything, but with certain files specified to be included (using the ! operator). This could replace my dotfiles repo. One downside might be that running git commands in random directories will always search up until they find my $HOME's .git/.

    Considered. This isn't a bad idea, but I'm canceling it because of the above downside, plus:

    • I don't have that many machines.
    • For a few environments, like the Pi, I want to be able to selectively exclude stuff without having to issue a bunch of Git commands.
    • I can't currently leverage this for work machines.

    Another option is to leave them in my dotfiles repo as is, then create hard links in their respective locations on the local system. I think I like this approach better. Will try that next time I do a full system setup.

  4. DONE fix startup notifications in i3
    • State "DONE" from "STRT" [2020-05-31 Sun 09:28]
    • State "STRT" from "TODO" [2020-05-31 Sun 09:24]

    This results in a wait cursor that hangs around for 1 minute after login. A minor annoyance, but should be fixable.

    Fixed. Added --no-startup-id flag to all active exec_always calls.

  5. DONE fix special key sequences in zsh
    • State "DONE" from "STRT" [2020-05-31 Sun 09:33]
    • State "STRT" from "TODO" [2020-05-31 Sun 08:36]

    This wasn't a problem on FreeBSD, but is on Linux. Narrowed the problem down to being zsh. bash doesn't have this problem, due to the presence of /etc/inputrc. So, make equivalent changes to ~/.zshrc.

    Fixed C-right, C-left, home, and end keys. Not sure what to bind others too, so I left them alone for now.

    Note: Finding the character sequences for any keys I want to map can be done by doing a C-v, followed by the key.

  6. DONE activate numlock on boot
    • State "DONE" from "STRT" [2020-05-31 Sun 09:21]
    • State "STRT" from "TODO" [2020-05-31 Sun 09:11]

    Thought I had this, but it's not on now.

    Fixed. Looks like I had commented out config in ~/.i3/config. Installed numlockx and enabled it, which works. Not sure why I disabled this. Maybe did it while debugging Mod key swapping.

  7. DONE make xdg-open launch Brave
    • State "DONE" from "STRT" [2020-06-03 Wed 13:14]
    • State "STRT" from "TODO" [2020-06-03 Wed 13:07]

    This is used by Emacs (Org in particular) to launch a GUI browser.

    Fixed. Looks like this needs a .desktop file. Found /usr/share/applications/brave-browser.desktop and linked with:

    xdg-mime default brave-browser.desktop text/html
    xdg-mime default brave-browser.desktop x-scheme-handler/http
  8. DONE downgrade xpdf
    • State "DONE" from "STRT" [2020-06-17 Wed 21:41]
    • State "STRT" from "TODO" [2020-06-17 Wed 21:39]

    xpdf 4 uses Qt. This version also breaks various hotkeys.

    Done. Much better. A shame that the new version is such a step backwards. Install version 3 with yay -S aur/xpdf-motif.

  9. DONE consider Zathura
    • State "DONE" from "STRT" [2020-06-18 Thu 14:03]
    • State "STRT" from "TODO" [2020-06-18 Thu 10:39]

    Since future versions of xpdf are going to be heading in the wrong direction, consider this app for the same purposes. Uses vi keybindings and supports recoloring. Available for Arch and OpenBSD.

    Installed. Requires separate installs for the formats you want to support. PDF requires zathura-pdf-mupdf (tried poppler too, which is smaller, but links didn't seem to work).


    • Install with:

      yay -S community/zathura-pdf-mupdf community/zathura
    • Keybindings are here. One of the most useful to remember is C-r for doing reverse video.
    • Fix xdg references with:

      for type in pdf x-pdf fdf xdp xfdf pdx;
      do xdg-mime default org.pwmt.zathura.desktop application/$type;
  10. CNCL consider ncmpcpp
    • State "CNCL" from "TODO" [2020-06-18 Thu 11:17]

    Could replace EMMS with this. Haven't used EMMS in years though, despite leaving it installed. Give that a try for a bit to see if I find it lacking. Another option is cmus.

    Checked out EMMS again and it's pretty nice. Will stick with that. Since I'm doing so, adding a task to convert all playlists from my Windows box over to EMMS.

  11. DONE consider i3-alternating-layout
    • State "DONE" from "STRT" [2020-06-19 Fri 13:32]
    • State "STRT" from "TODO" [2020-06-19 Fri 13:05]

    A fake-Fibonacci tiling script that will alternate new windows between splith and splitv.

    Done. This works, but not sure how crazy I am about my WM depending on a script from inside a Git directory. Seems worth it though, so will keep it around. Good news is that if it's not there, nothing happens and it defaults back to the normal behavior.


    • Run these commands:

      yay -S python-i3ipc
      cd ~/src/python
      git clone
    • Modify ~/.i3/config to have:

      exec --no-startup-id ~/src/python/i3-alternating-layout/
  12. DONE hide urxvt scrollbar
    • State "DONE" from "STRT" [2020-06-19 Fri 13:37]
    • State "STRT" from "TODO" [2020-06-19 Fri 13:32]

    I never use this, so might as well save the pixels. I'll convert them to a small i3-gaps gap.

    Done. Looks much better. Also cleaned up ~/.Xdefaults a little. Could still use some work though. Left enabled on Raspbian, due to peripherals sucking.

  13. DONE get better Unicode coverage in urxvt
    • State "DONE" from "STRT" [2020-06-19 Fri 23:15]
    • State "STRT" from "TODO" [2020-06-19 Fri 20:26]

    Noticed that Unicode font rendering doesn't have full coverage, but only in urxvt, despite having it in Emacs under X. Also works in xterm. Running cat on my unicode.txt file only gives partial coverage.

    Calling this sorta-done. Tried various different fonts and versions of urxvt available, but none of these seemed to fix the issue. There's some bug in the font rendering pipeline, I suspect. Hopefully future updates will fix this. Best I can do so far is:

    URxvt.font: xft:Fira Code:style=retina:pixelsize=21,xft:DejavuSansMono:pixelsize=21

    This gives me coverage of all the standard math, foreign language, and other symbols. But, it doesn't cover the more obscure ones, like some of those used in custom var haskell-prettify-symbols-alist in Emacs. That's not a problem since I can edit that, but it is for Agda's full symbol list. I have full coverage there in Emacs in X. This being the raison d'être of urxvt, which it now fails at, I'm going to look a round for a replacement.


    • Use fc-list to list fonts.
    • For whatever reason, I should only define URxvt.font using pixelsize instead of size. That only fixes the console errors though.
    • Added some suggestions from the rxvt-unicode page on the Arch Wiki.
    • Moved ~/.Xdefaults to ~/.Xresources, which seems to match the expected startup workflow these days.
    • Configured xterm a bit in ~/.Xresources.
  14. DONE consider alacritty
    • State "DONE" from "STRT" [2020-06-19 Fri 23:48]
    • State "STRT" from "TODO" [2020-06-19 Fri 23:16]

    A GPU-accelerated terminal emulator written in Rust. Looks promising.

    Done. Seems quite nice so far. Changed this to my default terminal. Will use it for awhile. Full Unicode support is functional, solving the main reason I went terminal shopping.


    • Keep config in ~/.config/alacritty/alacritty.yml
    • Install with

      yay -S alacritty
      mkdir ~/.config/alacritty
      cp /usr/share/doc/alacritty/example/alacritty.yml ~/.config/alacritty/alacritty.yml
    • Using a slightly tweaked Afterglow color scheme, see full list if I want to change this later.
  15. DONE tweak tmux
    • State "DONE" from "STRT" [2020-06-20 Sat 00:02]
    • State "STRT" from "TODO" [2020-06-19 Fri 23:50]

    This is a pretty riced out tmux setup. I don't use the bar, but see if there's anything I overlooked.

    Done. Ended up not really using anything significant from there, but did add a few minor tweaks. I guess I really don't want tmux to do much for me.

    Side note: I keep forgetting this, so noting here. Use C-a [ to enter scrolling mode. Then use Emacs keybindings to scroll around. Hit q to quit.

  16. DONE consider Kitty
    • State "DONE" from "STRT" [2020-06-20 Sat 10:57]
    • State "STRT" from "TODO" [2020-06-20 Sat 09:23]

    The only other GPU-accelerated terminal of note. Supports ligatures out of the box. Compare against alacritty and decide which is better. Confirm whether the C-S-shortcuts interfere with emacs -nw.

    Done. Once configured, I like this terminal ever-so-slightly more than alacritty. Switching over. One of the main features that makes it great is support for font features. Downsides are that it's partially written in Python and has some features I don't care about, like tabs and layouts.


    • Install:

      yay -S kitty
      cp /usr/share/doc/kitty/kitty.conf ~/.config/kitty/kitty.conf
    • Theme support (Wombat closely matches my Emacs theme):

      git clone --depth 1 ~/.config/kitty/kitty-themes
      cd ~/.config/kitty
      ln -s ./kitty-themes/themes/Wombat.conf ~/.config/kitty/theme.conf
      echo "include ./theme.conf" >> kitty.conf
    • By default, the kitty_mod does interfere with Emacs. Changed to: kitty_mod alt+ctrl+shift.
    • Cursor blinking will continue even if focus is lost, which can make it not obvious which terminal is active. Disabling this with cursor_blink_interval 0 helps, but still shows the cursor as an active one when spawning a new terminal, until you jump back and forth. Seems like an oversight.
    • Switched to visual bell.
    • Set ligatures to cursor mode as compromise between the two. Might set to disabled by default if it gets in the way.
    • Enabled some various features of Fira Code using font_features, like using my preferred & and @ characters.
    • Doesn't work in Raspbian. Will stick with urxvt there for now. Tried: sudo raspi-config, and enabled GL Drivers under Advanced Options. Also changed the Memory Options to let the GPU have 256MB.

    2020-06-21: Disabled ligatures by default. These created incorrect ligatures in too many situations.

  17. CNCL consider aura
    • State "CNCL" from "TODO" [2020-06-21 Sun 14:50]

    An alternative to yay. Slightly opinionated, it propagates the conceptual difference between pacman and AUR. Has a lot of additional flags that make package management easier. Also written in Haskell, instead of yay, which is in Go.

    Considered. This looks like nice software, but there's one problem: aura itself is only in the AUR. So, you'd still need yay to install it (or do so manually). Either way, it'll require the GHC stack installed to the system to build. As a result, I'll stick to yay for now. I'll check back next time and see if an aura binary package is in pacman.

  18. DONE downgrade JDK to 11
    • State "DONE" from "STRT" [2020-06-24 Wed 09:32]
    • State "STRT" from "TODO" [2020-06-24 Wed 09:19]

    I've switched some machines to only using LTS versions of the JDK. This is the most recent, so change remaining installs to this to sync them.

    Done. Did this on laptop and workstation:

    • yay -R openjdk-doc
    • yay -S extra/jdk11-openjdk
    • yay -R jdk-openjdk jre-openjdk-headless jre-openjdk
    • sudo archlinux-java fix
    • Test with javac -version
  19. DONE tweak i3bar
    • State "DONE" from "STRT" [2020-06-24 Wed 21:14]
    • State "STRT" from "TODO" [2020-06-24 Wed 19:58]

    This is probably fine on the laptop, but tweak the workstation's bar a bit to at least hide useless info, like the battery.


    Done. Now looks perfect. New config is in ~/.config/i3status/config. Checked these into my dotfiles repo. I think I'll also run the workstation with i3bar hidden most of the time. Use Mod-m for that.

    Stuff changed:

    • Change font to RobotoMono-Regular 10.
    • Display is now: CPU%, CPU Temp, HD space, load, used/available memory, wireless/ethernet, datetime.
    • Went ahead and fixed laptop too. This is the same, except battery is included. Laptop also has a different path to CPU temp.
    • Changed datetime to be properly formatted.
    • Fixed wireless.
    • Also fixed the RPi.
  20. DONE redo i3 keybindings
    • State "DONE" from "STRT" [2020-06-27 Sat 14:32]
    • State "STRT" from "TODO" [2020-06-27 Sat 13:52]

    Remap these keybindings to more xmonad-like.

    Done. Better, and closer to xmonad. Fully duplicating its behavior seems not possible, due to the differences in design.


    • Made focus and move keybindings the same as xmonad (vi-style).
    • Switched spawning toggle function to C-t.
    • Got rid of tile horizontal/vertical functionality.
    • Switch compton controls to Mod-q and Mod-C-q.
    • Disabled the workspace switch-back feature.
    • Disabled all alternative layouts.
    • Changed resize to Mod+Ctrl+<key> where keys match the movement/focus commands.
    • Removed arrow keys for workspace navigation.

1.6.27 DONE consider newsboat

  • State "DONE" from "STRT" [2020-06-26 Fri 16:03]
  • State "STRT" from "TODO" [2020-06-26 Fri 13:30]

The currently active fork of newsbeuter, which I used to use. In an effort to use the web less, consider this CLI app to manage all RSS feeds. Can be configured with launchers, I think. For example, instead of subscribing to a YouTube channel and logging into the site (with all its ads and tracking), you could just add its RSS feed here, and then configure newsboat to stream selected videos to mplayer.

Setup. Configured to use w3m as browser. Couldn't find my old newsbeuter urls file, so starting over. Don't really have anything to add to this currently, but I'll collect stuff over time and curate a list if needed. Seems like a good way to check stuff that has changed in the world without leaving the terminal, though I'm not sure how much I want to do that. Will leave it installed and see what happens, but remove it later if not using it much. I don't want to just add a bunch of feeds here and then make busy work for myself checking this every day, after all. If I start using RSS more, consider elfeed, which integrates with Emacs. Note that it's also possible to get an atom feed from any GitHub project's commit or issue list.

1.6.28 [18/18] increase Org life integration

I've been aware of several Org features that I can leverage. Now that everything on the Emacs side is tidy for all other packages, it's time to do this.

Done. Life is indeed much better with a perfectly integrated Org setup. Mine ended up being actually quite simple, and vastly simplifies life in general too. The overhead of planning is also reduced, meaning I'll spend less time in Org, despite using more features.

  1. DONE configure export of Org files to HTML
    • State "DONE" from "STRT" [2020-06-03 Wed 14:41]
    • State "STRT" from "TODO" [2020-06-03 Wed 14:00]

    I've been using M-x htmlize-buffer for this, which produces great output. The downside is it's just a straight dump of a buffer with no configuration options. I've tried Org's native HTML export, but didn't like the default formatting. Will give this another try, so see if I can get it looking the way I want. Review the #+OPTIONS settings. This is part of my effort to do things more in the proper Org way, hopefully converging on a consistent workflow for things like this and managing additional content in Org.

    Done. Looks decent. Might do some additional tweaking later. Full config options are available in the org-manual: 13.9 HTML Export.


    • To insert code blocks, type <s and hit Tab. Also <q for quote, <e for example, <l for LaTeX.
    • Updated inc/content.css and added as style for this document.
  2. DONE reformat project lists
    • State "DONE" from "STRT" [2020-06-06 Sat 23:28]
    • State "STRT" from "TODO" [2020-06-03 Wed 16:52]

    Now that I have this exporting to reasonably nice HTML, go through all of the content in these Org files and clean them up so they render optimally.

    2020-06-05: done. Probably missed a few things, but is good enough, I'd say.

    2020-06-06: Done. That was a lot of work. From now on, I'll use Org's integrated \(\LaTeX\) for all math and use Org's formatting for links where title text would improve readability but not block URLs that I might want to paste into a GUI browser. Didn't do that part retroactively.

  3. DONE learn org-babel
    • State "DONE" from "STRT" [2020-06-07 Sun 12:32]
    • State "STRT" from "TODO" [2020-06-07 Sun 11:29]

    See what's needed for executing code blocks and which additional parameters I want to set in various situations. Read the official intro. I see two main use cases for me for literate programming:

    • Didactic presentation.
    • Enhancing a documented workflow in cases where output of included code is relevant. This overlaps with the "Reproducible Research" concept.

    Done. Limited work here to language-agnostic inline code management. Will consider support for specific languages after this.

    For basic code blocks, this works with hitting C-c C-c in the code block and will insert the #+RESULTS block with output:

    (concat "hi" " " "there")

    Note that the #+RESULTS block won't appear in an HTML export, even if created and left in place. Side note: Use C-c ' to edit a block in a temp buffer of the appropriate mode.

    The :results value header argument captures only the result of the last expression in the block. This is the default. This outputs hi there:

    return "hi" + " " + "there"

    The :results output header argument captures stdout of execution, but doesn't include any return values. This outputs hello:

    "hi" + " " + "there"

    Support for sessions is through a :session <session-name> header argument. This might be good for building up definitions of things for later use. Multiple sessions are supported.

    A #+NAME can be given to a block, which will propagate it to the results block. This example also sets :exports both, which tells it to export both the code and results blocks. :exports results hides the code. Blocked out example here (so it doesn't run on export).

    #+NAME: Some elisp.
    #+BEGIN_SRC emacs-lisp :exports both
      (concat "Today is " (format-time-string "%Y-%m-%d"))
    #+RESULTS: Some elisp.
    : Today is 2020-06-07

    I do have to be careful with leaving lots of exported #+RESULTS or code blocks with named sessions laying around, since these are executed on export. Also, executed code blocks will prompt before running at export, which can be annoying if there's a lot of them. Set org-confirm-babel-evaluate to nil if I want to turn this off.

    Some things I just skimmed due to lack of immediate need:

    • Using #+NAME: and #+CALL: syntax for calling functions elsewhere in the document.
    • Interacting with tables.
    • Integrating chart generation using R or Gnuplot.
  4. DONE enable ob-clojure
    • State "DONE" from "STRT" [2020-06-07 Sun 14:02]
    • State "STRT" from "TODO" [2020-06-07 Sun 13:49]

    I think I want to use this for org-babel evaluation of Clojure code.

    Done. Set this up to work with Leiningen projects. Note that the Org documents need to be somewhere in the Leiningen project directory. This means I can't run arbitrary Clojure blocks outside of those projects though, like in this document. It's still great for documentation within projects, however.

    Would be nice to be able to use alternative interpreters for this, like sci. Doesn't look like that's possible currently though. I suspect I can redefine some functions to do this, but would require some dedicated work, especially to make it configurable.

  5. DONE investigate Org publish options
    • State "DONE" from "STRT" [2020-06-07 Sun 14:38]
    • State "STRT" from "TODO" [2020-06-07 Sun 14:05]

    See if I can get HTML export of this document published to my ~/public_html directory. Not a big deal for this, but will be handy later if I switch my entire site content to being Org managed.

    Done. The publish feature isn't what I want for this. The feature I was thinking of was #+EXPORT_FILE_NAME, where you can set the filename of the export. If you specify the filename here, it will use that regardless of the type of export you're doing. Calling the export file output.html will tell Org to use that, even if you export it to PDF. Will still use this for this file though, doing a C-c C-e h h to output this to my web project.

    I still might want to look into publishing later though, if I convert any sites over to Org.

    Totally unrelated side note: S-arrow inside an Org timestamp will adjust the day/month.

  6. DONE try out ditaa in Org
    • State "DONE" from "STRT" [2020-06-08 Mon 15:28]
    • State "STRT" from "TODO" [2020-06-08 Mon 14:24]

    Get ditaa code blocks generating output in Org.


    • Copy ditaa JAR file over to /usr/share/emacs/26.3/lisp/contrib/scripts and ensure it's named ditaa.jar.
    • Create ditaa code block as normal. Probably will want :file <filename.png> and :exports results as header arguments.
    • Ensure org-babel-load-languages includes ditaa.

    This works great and produces the expected nice output. Not sure if I'll stick with this or switch to graphviz though. graphviz is more of a pain with layout, which sometimes matters in certain documents. Left this enabled for now.

  7. DONE try out ob-restclient
    • State "DONE" from "STRT" [2020-06-10 Wed 07:51]
    • State "STRT" from "TODO" [2020-06-10 Wed 07:26]

    Maybe add this to make some documentation. I'd like to not bloat up my init with a ton of org-babel packages, so be sure to remove later when no longer needed.

    Done. Made a file using this. Looks pretty good. A great way to document a REST API. Testing can also be done this way. Replaces any need for bloated Postman.

    Side note: When doing an :exports both on a code block to markdown, use a named block and output, so some text can be inserted between. Otherwise, markdown will think they're both part of the same block.

  8. DONE learn org-publish
    • State "DONE" from "STRT" [2020-06-14 Sun 00:45]
    • State "STRT" from "TODO" [2020-06-13 Sat 10:21]

    See what capabilities Org's built-in publish functionality offers by itself, and if it's enough to build a complete site with. Ideally, I'd like to have a publish of added content do everything needed to update the site, minus Git integration (i.e., no manual link updating). I suspect this doesn't have full coverage, and I'll be left with the choice of some manual bookkeeping or a Org-enabled CMS (which I'd rather avoid).

    Done. This is a complex feature to use if you have specific requirements, so created a test project called org-test-site. After some experimenting, looks like if I'm okay with having the Org files and output live in the same directory, it's the least amount of work. I can always chmod go-r all Org docs if I want. This prevents having to manage 2 repos for the same content and copy over any inline images manually. Navigation is handled by using the preamble inclusion feature, which requires a little extra elisp. I think I have all the features I'll need working. Added some additional code to init.el.

    2020-06-17: Looks like you can have images exported with additions to the project definition. This method is still easier though, and I'm sticking with it.

  9. DONE come up with personal site plan
    • State "DONE" from "STRT" [2020-06-14 Sun 01:35]
    • State "STRT" from "TODO" [2020-06-14 Sun 00:46]

    Rethink what content I want on a personal site. Will figure this out before I bother restructuring it.

    Done. This is a good plan that will relieve a lot of burden and optimize for a cohesive concept of what the site is. I can always pull over deprecated content later if I want. May also do the main site later, and consider ox-twbs for styling that.

    Decisions made:

    • Definitely want to go with org-publish for this. This will make content creation and management a breeze, once it's all up.
    • I'll have these sections:
      • Home: The blog, all as a single page, as usual.
      • About: Aggregating some of the to-keep content here. Sections about self, site, and a few select sub-content files.
      • Active Projects: Same.
      • Archived Projects: Same.
    • All other content will be deleted. For the design docs, I'll migrate those over to their respective projects. These are then synced to the versions of the codebase they apply to.
  10. DONE manage personal site in Org
    • State "DONE" from "STRT" [2020-06-14 Sun 08:00]
    • State "STRT" from "TODO" [2020-06-14 Sun 01:35]

    I think I have full coverage on the things I'd want to do on webpages within Org now. Here, I'll migrate all content over to Org and get the CSS working with all content.

    Done and looks much better. That was a lot of work though, so hopefully I can keep this setup forever. I was going to just get the site operational over time and leave the old public version as-is, but there's really no reason to do that with this version being so much better.

  11. DONE convert project Org files to publish project
    • State "DONE" from "STRT" [2020-06-14 Sun 21:24]
    • State "STRT" from "TODO" [2020-06-14 Sun 20:50]

    Have the 2 Org files that currently HTML export to the web project directory be a publish project. This will allow them to both publish at the same time and include the site header.

    Done. Looks good. Removed the static export target option. Added a level 1 TOC to the archive list.

  12. DONE come up with new projects files structure

    Figure out how I want to reorganize my projects lists.

    Done. Came up with a plan for this, but got lost in the shuffle. I did write a blog article about it though, and it captures the idea.

  13. DONE add org-bullets
    • State "DONE" from "STRT" [2020-06-17 Wed 01:18]
    • State "STRT" from "TODO" [2020-06-16 Tue 01:43]

    I tried this package before and didn't like it. However, it might make sense now with the new project list structure. Will install and try it out for awhile.

    Added, but I'm leaving it off by default. Is useful when doing a lot of tree walking or rearranging, does nothing when just working on a small part, and is a downgrade when exporting source blocks of Org into HTML.

  14. DONE implement new projects structure plan
    • State "DONE" from "STRT" [2020-06-17 Wed 08:20]
    • State "STRT" from "TODO" [2020-06-16 Tue 00:23]

    The plan is complete, now go ahead and do it and see how it goes.

    A useful command for this new setup is C-<n> S-Tab, where n is the outline depth to display the titles of. That doesn't work in terminal mode though, so standardize on C-u <n> S-Tab instead.

    Done. This was a lot of work. So much, in fact, that I'll leave my massive archive of previous years data un-restructured. Trying to decipher and group macro goals out of whatever I was up to would be impossible anyway, and I'd just be making stuff up. Better to leave it as-is, which is still a completely accessible record of things done.

  15. DONE convert interview questions to Org
    • State "DONE" from "STRT" [2020-06-17 Wed 23:42]
    • State "STRT" from "TODO" [2020-06-17 Wed 22:27]

    The last remaining plain HTML file on the site (minus the w3m bookmarks file, which won't change). Will just do a format conversion here. Later, I'll work on a proper redoing of the questions list.

    Done. Got the JavaScript button and everything else working. Note that #+begin_myclass and #+end_myclass commands can be used to wrap content in a div where myclass is the CSS class name.

  16. DONE add progress indicators to grouped tasks
    • State "DONE" from "STRT" [2020-06-19 Fri 08:06]
    • State "STRT" from "TODO" [2020-06-18 Thu 13:27]

    This will make it easier to see what's going on at lower levels when not expanding them. Will add for all level 2 grouped tasks. The Org manual calls these "statistics cookies".

    Done. Looks like I had BLOCKED status defined in the wrong category. It was considered as a resolved status. Fixed.

    Most people put these on the ends of their task names, but looks like you can put them anywhere. So, I replaced the group's status with this. That way, I don't need to set group statuses manually. Looks great, with the only minor downside being the partially done groups don't show their progress in the same font face as my custom STARTED status. There's no face for that built in, so I'd have to write a bunch of code to do that myself. May do that some day, but not worth the effort currently. What I decided to do as a work-around was leave the numbering unpopulated, thus it'll fill that in automatically when I start a task.


    • There's two versions of these, [/] and [%].
    • Use C-c # to update the current cookie and C-u C-c # to update all of them in the existing file.
  17. DONE learn org-agenda
    • State "DONE" from "STRT" [2020-06-27 Sat 23:01]
    • State "STRT" from "TODO" [2020-06-27 Sat 14:04]

    Research org-agenda thoroughly to see what the full coverage of features is. Once that's done, I can come up with a plan to tie together my various Org files that track tasking.


    Reviewed capabilities this offers. Fully taking advantage of this is predicated upon using 3 things: tags, deadlines, and clocking. Among those, only deadlines are of any use to me given current needs. So, looks like I'll mostly not use this.


    • C-c [: Add current Org file to agenda file list. C-c ] removes. I think this only temporarily adds them though. Better to set org-agenda-files manually.
  18. DONE integrate org-agenda
    • State "DONE" from "STRT" [2020-06-27 Sat 23:01]
    • State "STRT" from "TODO" [2020-06-27 Sat 22:34]

    See if I can integrate org-agenda into a proper daily schedule. What I'd like to do is pull agenda items from various Org files, integrating the habits feature to include recurring tasks like chores. This would make for a completely unified task manager, and I could stop jumping around different files to see what's next to do. One open question is the pull system I'm using for bigger tasks. Ideally, I'd want to be able to list these and pull them into agenda being actively scheduled as time allows. Active open tasks should propagate forwared even with no completion date. Updates in agenda mode need to sync with the source Org file. Finally, archiving needs to be done in a way, if I use it at all, such that it not clobber groupings. If this vision is attainable, this will reduce Org management overhead and thereby make for increased productivity.

    Done, but also not really. Decided not to actually use agenda mostly. Since deadlines being on the calendar are only useful if I'm actually looking at the calendar, integrating them here won't do any good as I have no other need to look at it. Also, most of my task don't have deadlines. I think I could get some benefit from refactoring to use agenda as my main task dashboard, but the cost probably outweighs it. I suspect that with enough custom code, I could tailor it more to my needs, but the same trade-off remains there. I suspect that agenda would be perfect for a university professor, an engineer actively responsible for a lot of running systems, many different kinds of freelancers, or some similar dense and multi-threaded work day. My life is pretty much the opposite of that. Thus there's a pretty obvious mismatch.

    What I will use, however, is agenda's feature of scanning all files for open and non-started tasks. In the rare cases where I have cleared off a lot of work and want to see what can be pulled in, that might be occasionally useful. Often still not though, since I tend to have a notion of what I want to do next.

    I also added a new keyword "INACTIVE", so I can search for things not in the queue (marking everything TODO would bloat it up too much) and pull them in. This additionally helps eyeballing a file, and knowing what's on the back-burner.

    Side note: I did move my org-capture file over to my docs repo, cleaned it up, and will use this more often. It's also in my agenda files now. Uncategorized tasks can go here, and I'll get to them later.

1.6.29 [6/6] migrate to new VPS

3 main reasons for this:

  • I've switch off FreeBSD for reasons noted elsewhere. This is my only remaining instance.
  • Cost. RootBSD is charging way too much by modern standards. $215/year for a less capable VPS than I can get for $60/year.
  • The modern hosts have better features for resource provisioning. I can also spin up test VPSes and just be charged by hour.

Done. I now have 0 FreeBSD installs, reclaiming a lot of otherwise wasted admin time. All Linux installs are Arch-based and therefore rolling update, with synced configs and dotfiles. If I do ever want to do a future full VPS update (to change VPS instance type or just redo it from scratch), I can create a new instance, let them run side-by-side while setting everything up, and delete the old one when done. I may also consider offloading some additional computing tasks to this or other VPSes, but will have to think about that.

  1. DONE setup Linux VPS
    • State "DONE" from "STRT" [2020-06-13 Sat 00:33]
    • State "STRT" from "TODO" [2020-06-12 Fri 22:58]

    Pretty happy with having deprecated FreeBSD, so switch this last instance of it over to a mainline LTS distro. Think about what work will be involved first. Could do a test run in a VM if unsure.

    If I want to stick with the same host: In the "Virtual Server Dashboard", it looks like there's a "Rebuild Instance" button. Might still want to open a ticket for this, since I'd want to keep all my VM settings. Further research shows they support Debian, so will probably use that.

    Alternatively, if switching host: Vultr has competitive pricing, but I might still want Linode for their CLI control options. I could also build this out and configure it at my leisure, then switch the domain to point to this when ready.

    2020-06-07: Decided on getting a Linode "nanode" instance. However, tried to setup account and their auto-rejection code kept blocking me for reasons unknown. Will try again in a month or so.

    2020-06-12: Was going to try Linode again, but their homepage full of BLM stuff scared my wallet away. Switching back to my original plan of using Vultr. I checked out my current VPS stats and they're way under the lowest Vultr instance, so I should have plenty of power available. Signed up and got $50 free credit. Made an Arch Linux install on a 1GB RAM, 25GB SSD instanced, named zvok. Installed using this Vultr guide, which only has a few errors in it.

    Complete. This is now running and all infrastructure is configured. There's a few minor things still to do, but I'll address those when I have downtime. Once I get the sites redesigned, I'll switch the domain over to this. At that point, I'll consider the RootBSD VPS deprecated. Arch seems to be a good choice for a VPS, as its rolling updates will result in no downtime, I hope. This also saves me around $156/year. So far, Vultr seems like a great service, and I have no complaints.

  2. DONE try out OpenBSD VPS
    • State "DONE" from "STRT" [2020-06-13 Sat 09:31]
    • State "STRT" from "TODO" [2020-06-13 Sat 08:54]

    Might as well spend a few cents of my free Vultr credit to see if I can get an acceptable OpenBSD VPS setup. See if I can get full coverage on all use cases.

    Done. Well, I set this up, but the Clojure tooling isn't functional on OpenBSD. Will have to not use it. Deleted. Current Emacs setup does work here though.

    Side note: Though I've shelved all Matrioshka doll tech for now, another useful exercise may be to try out CoreOS, which is available here in various flavors. Won't do that any time soon though.

  3. DONE migrate other user over to new server
    • State "DONE" from "STRT" [2020-06-20 Sat 22:39]
    • State "STRT" from "TODO" [2020-06-20 Sat 22:28]

    I moved my user account over, but not A-'s. Might just recreate.

    Done. Also created root symlink to www directory.

  4. DONE switch domain over to new VPS
    • State "DONE" from "STRT" [2020-06-20 Sat 23:07]
    • State "STRT" from "TODO" [2020-06-20 Sat 22:43]

    Run the new VPS for a while and once I'm pretty confident it's stable, go ahead and point the domain over to it.

    Done. Confirmed domain now points to my new IP address. Note that my old IP address, which I can't use the domain for anymore, was Will now wait a few weeks before doing the next step.

  5. CNCL enable HTTPS on site
    • State "CNCL" from "TODO" [2020-06-21 Sun 00:14]

    Get a cert from Let's Encrypt and configure Nginx to use that. Might be a good time to read up on the various related technologies and certs in general too. If I want to do that, break it out into a separate goal. Certbot is a CLI tool that can automate issuance and installation.

    Canceled. I do want to do this eventually, probably. But, no point in doing it now with just static content there.

  6. DONE decommission old VPS
    • State "DONE" from "STRT" [2020-06-27 Sat 23:18]
    • State "STRT" from "TODO" [2020-06-24 Wed 21:30]

    Once everything on the new VPS is confirmed functional (at least wait one week), see if I can get a refund for remaining credit on RootBSD (actually NetActuate now). If not, just ignore it and don't renew. Update billing financials accordingly.

    New VPS seems stable. Sent refund request to NetActuate on 2020-06-24 and server was deleted with a refund of $161.76 sent to my CC.

    2020-06-27: Refund showed up on CC account, so this is done.

1.6.30 CNCL consider Unicomp keyboard

  • State "CNCL" from "TODO" [2020-11-08 Sun 12:56]

The EnduroPro is a buckling spring keyboard with an integrated mouse pointer for the workstation. Uses a single USB port, so frees up the limiting amount there by 1 and reduces cables.

Another option is this mechanical, which I can get Cherry MX Blues in:

Decided not to get this, due to no middle click on the Unicomp and lacking a Fn key row on the Tex. I might consider the Tex, however, as a component for a custom laptop build. Also might consider it for my electronics workbench. The price of $300 is pretty nuts though. Another, cheaper option is the Tex Shinobi, but this one's wireless. That might make it a good option for a custom laptop build though.

2020-11-24: Looks like the Tex Yoda II does support Fn keys, though it's not obvious how to use them. However, it is LED backlit, which is another downside for me. For $300, I'd want the keyboard to be perfect.

1.6.31 DONE consider/design new mini desktop

  • State "DONE" from "STRT" [2020-11-12 Thu 11:10]
  • State "STRT" from "TODO" [2020-11-12 Thu 10:43]

Design a build for a new gaming/VM rig. See if this is enough of a performance boost to be worth the trouble. Some of these cases would fit in the gap between the shelf and desk surface, making computing even more silent.

Decided to design around the ASRock DeskMini GTX 1060. This includes a discrete MXM GPU.

  • Barebones PC: $470.
  • Intel i5-9400: $164.
  • WD Black 1TB: $135.
  • Corsair Vengence 64GB: $119.
  • Noctua NH-L9i: $40.

Total: $928.

Note that the Noctua will require some metal trimming work to get around one of the ports. Will need the Z370 chipset version, since it has 4 USB ports on the back and puts the power port on top and not in the middle of a bunch of other ports. That's currently out of stock now though, so created a wish list. Will check back later. However, this is a 2 year old MB, so I might want to look around and do a different design before doing this. This also conflicts with my original plan of standardizing on the Fractal Design full size case currently being used. Overall, I'm still leaning towards sticking with that plan.

1.6.32 DONE consider Raspberry Pi 400

  • State "DONE" from "STRT" [2020-11-12 Thu 14:30]
  • State "STRT" from "TODO" [2020-11-12 Thu 11:33]

Consider replacing the rPi 4 in the workshop with this. This model combines all of the hardware into a keyboard. Looks like it'll cost $100. Colors are ugly as usual, so maybe wait until some 3rd party variants come out.

I'd actually prefer this PCB over the normal one, since all of the ports are on one side. Might be interested if they sell that by itself. Then, if I get 3D printing up and running, I could make my own portable setup with integrated battery.

I'll pass on getting this setup as-is currently, however, due to the junky case and cheap keys.

1.6.33 DONE consider DietPi on 4B

  • State "DONE" from "STRT" [2020-11-17 Tue 22:31]
  • State "STRT" from "TODO" [2020-11-17 Tue 19:59]

Check out this trimmed down version of Debian. If performance is noticeably better, might stick with it.

Got this setup. This is a good idea and all, but implementation isn't there currently. Looks like I'd have to spend a lot of time fixing system-level things, which I'm not interested enough in to do. I can handle the lack of polish, but there's too many things broken out of the box on the current version. Looks like the documentation is outdated too, so n00bs would probably not even be able to get this installed at all.

Switched back to Raspbian (now called Raspberry Pi OS).

1.6.34 DONE disable mouse-4 and mouse-5 on Windows

  • State "DONE" from "STRT" [2020-11-14 Sat 16:22]
  • State "STRT" from "TODO" [2020-11-14 Sat 15:21]

These extra buttons get in the way more often than they're useful. Figure out a way to disable them.

Solved with X-Mouse Button Control, which is a free program that lets you assign functionality to any mouse interaction. Just used it to disable these extra buttons. I might also replace this mouse with a Logitech M500s, which due to the contour, doesn't have the same problem with accidentally hitting these buttons. Then I can uninstall this program.

1.6.35 DONE swap speakers on workshop Pi

  • State "DONE" from "STRT" [2020-11-24 Tue 22:45]
  • State "STRT" from "TODO" [2020-11-24 Tue 22:30]

The cheap Bluetooth ones seem to not work anymore. Most I could get them to do is emit a buzzing sound once. Try my set of backup speakers instead.

Fixed without swapping speakers. Needed to set the audio output to "Analog" by right clicking on the speaker icon. Previously was "HDMI". Will eventually need a CLI solution for this when I switch the WM back to i3.

1.6.36 DONE setup Pi Weather Station

  • State "DONE" from "STRT" [2020-11-24 Tue 23:47]
  • State "STRT" from "TODO" [2020-11-24 Tue 21:36]

Might be a good thing to leave up on one of the Pis. Only downside seems to be having to create a couple of accounts for API keys. Get this running first before bothering with that part.

Got this working. Turned off screen blanking in raspi-config. This is in a good position to check quickly before heading outside.

Looks like there's a bug in Chromium where new Date() returns a Date object of GMT TZ offset. Switched the system to firefox-esr, which doesn't have this problem. Backed up a copy of my local version to ~/src/javascript so I don't have to do any setup or code modifications next time.

1.6.37 DONE research 3D printing

  • State "DONE" from "STRT" [2020-11-20 Fri 09:41]
  • State "STRT" from "TODO" [2020-11-17 Tue 09:36]

Thinking it might be a good time to get into this due to usefulness and maturity of products. Spend some time researching this topic to see how I'd want to approach it, if at all. Specifically check out the Prusa i3 MK3S and Ender 3 Pro.

The $350 Prusa MINI is a good balance for usefulness versus price. Then with a stock of PETG/PLA, I could start printing stuff for under $500. Future costs should be pretty minimal, and this should pay for itself over time (if some monetization of convenience and capability is factored in). I also see this as a complement to woodwork, electronics, and leather craft.

1.6.38 DONE fix Org code template insertion

  • State "DONE" from "STRT" [2020-11-27 Fri 22:08]
  • State "STRT" from "TODO" [2020-11-27 Fri 21:59]

The <s TAB patterns used to work, now doesn't in current version.

Looks like this was moved to the org-tempo package. Added a require for that to restore the functionality. Looks like they want you to instead do C-c C-, or call M-x org-insert-structure-template. Only problem with that is that some terminals I use (like MSYS2) can't send C-,. So, I rebound this in-mode to C-c M-t. Might deprecate the old method if I end up preferring the menu. It does relieve me from remembering the template magic characters, but then I pretty much only use the source one 99% of the time.

1.6.39 [8/8] build new gaming/VM rig

  1. DONE assemble system
    • State "DONE" from "STRT" [2020-11-20 Fri 23:21]
    • State "STRT" from "TODO" [2020-11-13 Fri 00:07]

    Already did designs in full ATX and micro-ATX. Due to the Fractal Design cases available now and overall cost, decided to go with this micro-ATX build:

    Only difference from the list in reality is that I'll get the now on sale 500GB PCIe 3.0 WD Black for $80. This will be the future storage drive for this build. Then, I'll wait until the heat sink version of the 4.0 drive, the SN850, is out in a few weeks (hopefully).

    2020-11-13: Ordered stuff.

    2020-11-14: Got out of stock notification for the vidcard. Decided to downgrade my choice a bit to the ASUS RX 5500 XT, which is 4GB instead of 6GB and saves about $50.

    Idea: Get the 1TB SN850, then instead of using the 500GB SN750 as the storage drive, just use the single 1TB. Then use the SN750 for swapping the NUC's drive for reinstalls.

    2020-11-15: Depending on how the Fractal case works out, I might either go with that or consider the Cerberus micro-ATX next time. Seems like the latter might be the ultimate case at the moment, though it's rather pricey. Another option is if I like the NXZT cases at the time, they offer a custom build service. Alternatively, I may consider their liquid cooling solutions, which seem to be a more viable option these days.

    2020-11-17: Case, MB, and CPU arrived.

    2020-11-18: Heat sink, RAM, and SSD arrived.

    2020-11-20: PWS and vidcard arrived. Computer assembled. Win10 installed and updated. Did some proper cable management this time and the insides look pretty good. Computer is quieter than the current setup, but I'm thinking that swapped the Fractal fans (which have some strange blade shapes) with Noctua ones would make this very quiet.

  2. CNCL upgrade SSD
    • State "CNCL" from "TODO" [2020-11-20 Fri 23:20]

    I've already set a notification for when the SN850 drives with the heat sink become available. Get one once they do and then do a system install on that drive.

    Another idea: If the heat sink model of the SN850 is taking too long, I can get a naked one and add my own heat sink later. I'll give this until early/mid 2020-12.

    Decided to skip this and stick with the current drive. Will use my current storage SSD as the backup drive. I'll probably still get another SN750 at some point for reinstalls on the NUC.

  3. DONE build and test system
    • State "DONE" from "TODO" [2020-11-20 Fri 23:23]

    Do a test install of the system, but don't register Windows.

    Got all hardware running perfect. System is indeed much higher performance than the previous, though not sure how much of a difference that'll make in my use cases.

  4. DONE setup system
    • State "DONE" from "STRT" [2020-11-21 Sat 22:26]
    • State "STRT" from "TODO" [2020-11-21 Sat 01:34]

    Install everything and transfer all data over. Do the following:

    • [X] Register OS product key.
    • [X] Disable all Win10 telemetry.
    • [X] Transfer data over.
    • [X] Swap storage drive to new computer.
    • [X] Install all software.


    • In MSYS2, using git from scoop (after adding it to the MSYS2 $PATH), I got a host key verification error when trying to clone repos from GitHub. To fix that, run: ssh-keyscan -t rsa >> ~/.ssh/known_hosts. Might need to do this for other hosts.
    • Vim will expect a ~/.vim directory if using my dotfiles/.vimrc file.
    • Emacs' scoop version is lagging a bit, requiring running this in cmd: gpg --homedir ~/.emacs.d/elpa/gnupg --receive-keys 066DAFCB81E42C40.
    • The above also requires installing Gpg4win, and putting its bin/ in %PATH% prior to any scoop or MSYS2 directories. This prevents a pathing error to finding the appropriate keystore.
    • Also had to manually install cider from ELPA, since for some reason one of its dependencies errors with the auto-setup.
    • VMware requires AMD-V enabled. On this MB, this is under the CPU options, and called SVM.

    System running great with no major annoyances. The software for the vidcard also has the very useful aspect scaling feature. Things are fully usable now and I'll pick up any remaining software installs along the way as needed.

  5. DONE get another Logitech M500s
    • State "DONE" from "STRT" [2020-11-24 Tue 14:21]
    • State "STRT" from "TODO" [2020-11-18 Wed 00:29]

    Get another one of these wired mice. Send the old one to the electronics workbench.

    2020-11-24: Received and installed.

  6. DONE get external USB CD-ROM drive
    • State "DONE" from "STRT" [2020-11-30 Mon 13:06]
    • State "STRT" from "TODO" [2020-11-21 Sat 20:09]

    Will need one of these for the occasional old game. Would probably slightly prefer that this be case mounted, but not a huge deal, since I only use it extremely rarely. On the other hand, if I have one of these, I can just leave it in the desk, save power, and never have to buy another one. So, I'm okay with the trade-off.

    2020-11-21: Ordered an ASUS one for around $27.

    2020-11-30: Received. Tested as working. A little disappointed with it feeling cheap and flimsy, but I guess it doesn't matter much.

  7. DONE wipe/setup old system
    • State "DONE" from "STRT" [2020-11-30 Mon 17:41]
    • State "STRT" from "TODO" [2020-11-30 Mon 15:59]

    Setup with Win10 Pro and Office for A-. Consider replacing the heat sink on it, since it has a broken tab.

    2020-11-21: Ordered a similar heat sink to the new build, since it also supports LGA 1151. Got the black one though, since it was on sale for $30.

    2020-11-30: Received heat sink. Installed. Computer handed over.

  8. DONE get Noctua case fans
    • State "DONE" from "STRT" [2020-11-30 Mon 19:11]
    • State "STRT" from "TODO" [2020-11-21 Sat 20:09]

    Replace the 3-pin Fractal branded fans in the case currently.

    2020-11-21: Ordered 2 120mm Noctua fans. These are PWM (4-pin) fans, so should be able to use proper scaling. Re-run the "Optimize" options in the BIOS after installing. If results aren't impressive enough, install the AI Suite 3, which has in-OS fan control options.

    2020-11-30: Received and installed fans. Computer now runs super quiet. These are my first Noctuas and seem to be worth the money, especially for a computer on the desk. Seems the "Silent" profile in the BIOS is the best balance. The generated profile resulted in some pulsing behavior once the computer's been on for awhile, where the fan would speed up for a few seconds every 20 seconds or so. Swapping the heat sink fan would make this even quieter, probably.

    Overall, this build worked out great with no issues whatsoever. Will definitely stick with at least micro-ATX from now on. I suspect going smaller would have some downsides, like having to remove heat sinks to swap connectors.

1.6.40 DONE fix reloading room Pi

  • State "DONE" from "STRT" [2020-11-30 Mon 21:43]
  • State "STRT" from "TODO" [2020-11-30 Mon 20:08]

Something went wrong with this. Noticed the LCD panel was flickering and it was putting out a popping sound from the speaker.

Looks like the problem is that powering both the speaker and the monitor off the Pi maxes out the 5V 3A available. Putting the speaker off power strip USB power fixed it.

1.7 projects

1.7.1 CNCL write game Anthrocon TD

  • State "CNCL" from "TODO" [2020-06-06 Sat 23:46]

Rehash of the tower defense game concept. This is a reimaging of my original TD game idea, Day Care Defense. This version takes place in Pittsburgh on fursuit parade day. The lore goal can be to kill furries before they get through the parade, so they can't yiff and procreate.


  • Maps can be various fictional parade routes through Pittsburgh and/or the conference center.
  • Include bloody remains that don't disappear (something no other tower game has, as far as I know), possibly even through levels.
  • Possibly have (at least the option of) players retaining wealth through levels.
  • Have damage affect the speed of enemies.
  • If I feel like it, write an algorithm to randomly generate playable maps.
  • Towers are remote weapons platforms with upgrades possible: small arms, LMG, HMG, grenade, mortar, flame thrower, chemical irritant, etc. Include damage calculations in kilojoules vs. mass, immolation vs. surface area.
  • Enemies: Various normal furries, obese furries, wheelchair furries, quadsuits, bronies, scalies, various otherkin.
  • Alternatively, think about making this a text-based tower game, something no one has attempted yet.

Canceled. Decided against doing this one. An okay idea, but inferior to the others here.

1.7.2 CNCL write game Auto-Lineage

  • State "CNCL" from "TODO" [2020-06-07 Sun 00:13]

Use the l1j-en database to create a web-based version of Lineage.

Canceled. Will do my farm bot project instead.

1.7.3 CNCL write game Memewar

  • State "CNCL" from "TODO" [2020-06-15 Mon 23:32]

An abstraction of character management wherein you manage the susceptibility of your character to all the world's major memes. Would be good for a mobile platform game.

Canceled. Not sure why I thought this was a good idea. Maybe I was hoping to flesh it out some more first. I do have another proto-idea for a RPG party management game though, that could potentially include some aspects of this.

1.7.4 DONE reorganize dotfiles project

  • State "DONE" from "STRT" [2020-06-26 Fri 21:54]
  • State "STRT" from "TODO" [2020-06-26 Fri 17:36]

Do the following things:

  • Create directory structure that matches ~.
  • Move system config files to a new system directory.
  • Rename dotfiles with underscores back to starting with ..
  • Move old stuff to new archive directory.
  • Rewrite

Done. Didn't have any active system configs, so skipping that for now. This project is much more organized and useful now.

Did the dotfile symlinking I've been meaning to do to keep these matched to their repo versions, which should save a lot of grunt work keeping these in sync. Did this on all 3 Arch/Manjaro systems. Deleted my dotfiles_update script. Also did some FS cleanup while I was at it.

Note that init.el needs to be a hard link. The downside to this is that Emacs won't know it's working with a link, which means I can't just make a change then immediately tell Magit to make a commit to the dotfiles project for it. However, it allows the auto-init compiling to work.

1.8 novels

1.8.1 DONE read Calculating God

  • State "DONE" from "STRT" [2020-01-04 Sat 04:19]
  • State "STRT" from "TODO" [2019-12-25 Wed 01:21]

Another first contact novel, from 2000.

Almost decent, but has some big shortcomings like incorrect scientific/technical facts and foreign political opinions about the US. Ending is thoroughly unsatisfying.

1.8.2 DONE read True Names

  • State "DONE" from "STRT" [2020-01-10 Fri 02:06]
  • State "STRT" from "TODO" [2020-01-04 Sat 03:18]

A hard comp-fi novella about two warring Matrioshka brains.

The intelligences here are probably better described as galactic distributed ones. Story suffers greatly from "too far in the future" syndrome, with the common result of ending up with a more science fantasy feel despite a lot of hard scifi content. A common trope I've seen is here, where entities inhabit these virtual physical spaces where they can and do change to a variety of unrestricted (though ultimately terrestrial animal) forms.

1.8.3 CNCL read A Logic Named Joe

  • State "CNCL" from "STRT" [2020-01-11 Sat 00:06]
  • State "STRT" from "TODO" [2020-01-10 Fri 02:12]

A comp-fi short story from 1946.

While interesting for predicting networked computers, this is written in an annoying commoner vernacular that isn't doing my brain any favors. Bailing.

1.8.4 DONE read Computers Don't Argue

  • State "DONE" from "STRT" [2020-01-11 Sat 02:42]
  • State "STRT" from "TODO" [2020-01-11 Sat 02:37]

A comp-fi short story from 1965 about over-reliance on computers.

A good idea for the time, but poor execution.

1.8.5 DONE read The Gone-Away World

  • State "DONE" from "STRT" [2020-01-26 Sun 08:41]
  • State "STRT" from "TODO" [2020-01-11 Sat 18:28]

Described as a scifi thriller/military apocalypse novel. Will give it a try.

Often cleverly written, but nothing else. Underlying world, plot, factual references, and so on are lacking. Has a very science fantasy feel. Bailing about 2/3rd in.

1.8.6 CNCL read Code of the Lifemaker

  • State "CNCL" from "STRT" [2020-01-28 Tue 22:20]
  • State "STRT" from "TODO" [2020-01-26 Sun 08:39]

A scifi novel similar to Lem's Solaris, supposedly. Has a sequel titled The Immortality Option, if I like this.

Quitting 10% in. Premise is a bit lacking and too much present day commentary. Reading the plot summary, this was the right call.

1.8.7 [5/5] read Heritage Universe series

  • State "DONE" from "STRT" [2020-03-16 Mon 14:38]
  • State "STRT" from "TODO" [2020-01-28 Tue 22:57]

A 5-novel scifi series, features several BDOs among other things. Will finish this and Red Rising, then get back to programming books for awhile.

Done. A mildly entertaining series, probably okay for those interested in a very casual read. Seems like it was intended to be continued, so the overarching mysteries aren't really resolved.

  1. DONE read Summertide

    A little boring, but maybe an okay start to a series. Could go either way. Nothing particularly compelling.

  2. DONE read Divergence

    Okay, but nothing special.

  3. DONE read Transcendence

    Boring and borderline sci-fantasy.

  4. DONE read Convergence

    A little better than the others, but not by much. Has a potentially good, but not really expanded upon, idea about entities existing outside our arrow of time. Made me wonder that if the laws of physics are time invariant, then perhaps one could exist in the opposite direction. Of course, communication between entities existing in opposite directions would be impossible. This might be hard to spot, since it would be a localized increase in entropy from our perspective, which is the natural order of things. Another crazy idea: the entire universe would be decreasing entropy in the reverse time direction. Maybe this is the only way pantheism could be true.

  5. DONE read Resurgence

    Okay, I guess.

1.8.8 [3/3] read Red Rising trilogy

  • State "DONE" from "STRT" [2020-03-22 Sun 10:29]
  • State "STRT" from "TODO" [2019-11-13 Wed 10:43]

A series about life on Mars by Pierce Brown. Has a sequel trilogy, currently in progress, called Iron Gold.

Done. Definitely worth reading. Will give the follow-up series, currently in development, a try too.

  1. DONE read Red Rising

    Quite good. Most notably, is an excellent exploration of leadership and the consequences of decisions within it. A pretty compelling world too, with only a few immersion-breakers.

  2. DONE read Golden Son

    Also good, though slightly less so due to the plausibility being stretched even further and for a few isolated hammy moments.

  3. DONE read Morning Star

    A decent trilogy conclusion. About the same quality as the previous entry.

1.8.9 DONE read The Gods of the Copybook Headings

  • State "DONE" from "STRT" [2020-03-23 Mon 01:30]
  • State "STRT" from "TODO" [2020-03-23 Mon 01:21]

A Kipling poem, conceptually similar to Gnon, and hailed by NRx types.

Not very insightful or even particularly great.

1.8.10 [3/3] read The Interdependency series

  • State "DONE" from "STRT" [2020-03-28 Sat 22:13]
  • State "STRT" from "TODO" [2020-03-23 Mon 21:42]

A new John Scalzi novel series, in the space opera genre.

Done. Has a few good aspects to it, but I'd still tell my past self to skip it.

  1. DONE read The Collapsing Empire

    A mostly well-written and entertaining read, though lacking in any big or new scifi ideas. Characters are mostly annoying.

  2. DONE read The Consuming Fire

    About the same.

  3. DONE read The Last Emperox
    • State "DONE" from "STRT" [2020-04-27 Mon 01:27]
    • State "STRT" from "TODO" [2020-04-22 Wed 21:25]

    The final novel in The Interdependency series, released 2020-04-14.

    Mostly mediocre. The series has some world-building issues that start to become more of a problem as it progresses.

1.8.11 [3/3] read Lock In series

  • State "DONE" from "STRT" [2020-04-02 Thu 11:22]
  • State "STRT" from "TODO" [2020-03-28 Sat 22:14]

A Scalzi series about a pandemic.

Done. Not that great of a concept, though could have been redeemable with the right story and writing. That doesn't happen here.

  1. DONE read Unlocked

    Wouldn't stand alone, but informative as a background text. Not sure I'm all that fond about some aspects of this lore.

  2. DONE read Lock In

    Marginally passable. All of the recent Scalzi novels have some peripheral wokeness to them, but here it seeps through to the book's detriment.

  3. DONE read Head On

    Lackluster and boring. Wokeness upped to annoying levels.

1.8.12 DONE read The Android's Dream

  • State "DONE" from "STRT" [2020-04-06 Mon 20:26]
  • State "STRT" from "TODO" [2020-04-03 Fri 19:10]

A 2006 Scalzi novel.

Short of being actually good. Intended to be mostly humorous, and only very slightly succeeds. Will skip the follow-up.

1.8.13 [3/3] read Poseidon's Children series

  • State "DONE" from "STRT" [2020-04-14 Tue 12:05]
  • State "STRT" from "TODO" [2020-04-12 Sun 21:05]

A Reynolds series depicting an optimistic future. The false vacuum is featured in the final entry.

Disappointing, like other works by Reynolds I've read. Will probably avoid him in the future.

  1. DONE read Blue Remembered Earth

    Some of the makings of a good story are here, but many aren't. Long and dull, but with a few good scifi ideas that deserve a better book.

  2. CNCL read On the Steel Breeze
  3. CNCL read Poseidon's Wake

1.8.14 DONE read Book of the Law of the Lord

  • State "DONE" from "STRT" [2020-05-31 Sun 11:54]
  • State "STRT" from "TODO" [2020-05-27 Wed 09:43]

The additional holy scripture of the Strangites, translated from golden plates.

Mostly rather boring, and dealing with mundane matters. Chapter 35: Establishment of the Law is probably the only good stuff, though I've read better. Does contain some sensible orthopraxy, e.g., "Ye shall not clothe yourselves after the manner of the follies of other men."

1.8.15 [4/4] read Ken Lui short stories

  • State "DONE" from "STRT" [2020-06-06 Sat 08:19]
  • State "STRT" from "TODO" [2020-06-05 Fri 22:36]

Last checked up on this author in 2013. See what's new and freely available here.

Done. I think that's everything since I last checked.

  1. DONE read The Long Haul

    A story about mostly nothing.

  2. DONE read Cassandra

    Excellent. Deserves a full novel.

  3. DONE read The Regular

    Well written, but just an okay plot.

  4. DONE read You'll Always Have the Burden With You

    Only okay.

1.8.16 DONE read Machine Learning: New and Collected Stories

  • State "DONE" from "STRT" [2020-06-18 Thu 13:31]
    • State "STRT" from "TODO" [2020-06-09 Tue 03:13]

A collection of short stories by Hugh Howey.

Done. Worth reading. A good majority of these are at least decent, with maybe half being at least good. Excellent are Second Suicide, Silo Stories, and The Plagiarist.

1.8.17 [2/2] read Vaskania Prime series

A possibly hard scifi series, starting in 2019. Popular among a few Clojure programmers for some reason. Setting synopsis seems interesting, as the idea of an embryo ship makes more sense than a generation or cryostasis colony ship. Wary about the dream-related content, however. I think this series may be in-progress still too.

  1. DONE read Rites of the Renouncer
    • State "DONE" from "STRT" [2020-06-25 Thu 08:49]
    • State "STRT" from "TODO" [2020-06-21 Sun 00:16]

    A little thin. Demonstrates the author is capable of good writing. The subject matter may just not be for me. This world seems compelling, but could easily just be ignored, as its not relevant to the plot. Central to the content is exclusively a dream space, making the book read more like sci fantasy.

  2. CNCL read Wake of the Wanderer
    • State "CNCL" from "TODO" [2020-06-25 Thu 23:33]

    Will give this a peek, but bail if it's more dream stuff.

    Quitting. Read the first couple chapters and it is indeed all dream world content. This did make me think a bit about why I dislike fantasy so much though. Perhaps the main reason is that given some context, the degree to which anything is possible is inversely proportional to the meaning (or interest) of anything happening within it. That applies in a more limited sense in certain areas of real life, and when a fictitious world is entirely within that realm, can be all-encompassing. For example, if a character can be any form, and chooses to be a fish then go swimming, the act is simple spectacle at best. If he instead needed such capabilities and overcame that challenge within constraints, that at least has potential for fitting into narrative unit or larger structure.

1.8.18 DONE read Bloom

  • State "DONE" from "STRT" [2020-06-28 Sun 11:35]
  • State "STRT" from "TODO" [2020-06-26 Fri 01:36]

Might give this Wil McCarthy novel another try. Quit super early last time, but I think the setting may have promise.

Done. Excellent. Good plot, world-building, and very high quality writing. I wonder if this is inspired to some extent by Wolfram's work on cellular automata. Has a lot of parallels in wording and concepts (e.g. the idea of cellular automata being Turing complete). However, A New Kind of Science was released in 2002, and this book in 1998, so maybe not. Those ideas were around before then, but not popularized.

1.8.19 DONE read The Cookie Monster

  • State "DONE" from "STRT" [2020-06-28 Sun 14:46]
  • State "STRT" from "TODO" [2020-06-28 Sun 12:14]

A novella by Vernor Vinge. Supposedly comp-fi.

Somewhat okay idea, but nothing comes of it.

1.8.20 DONE read short stories

  • State "DONE" from "STRT" [2020-06-29 Mon 13:33]
  • State "STRT" from "TODO" [2020-06-28 Sun 23:26]

Queued up Ra, but might as well read the rest of these here. Skip the longer ones for now. Fine Structure is available here too.

Read some of these before. Of the ones new to me, these are mostly worth reading, but none of them are completely amazing.

1.8.21 CNCL read Ra

  • State "CNCL" from "TODO" [2020-06-29 Mon 00:31]

An online book (also available as EPUB) in the comp-fi genre.

About magic, so quitting.

1.8.22 CNCL read Fine Structure

  • State "CNCL" from "STRT" [2020-06-29 Mon 17:57]
  • State "STRT" from "TODO" [2020-06-29 Mon 15:01]

An online scifi novel perhaps about higher-dimensional beings at war, from human perspective.

Disjointed and includes super-heroes, so skipping.

1.8.23 CNCL read Manifest Logic

  • State "CNCL" from "STRT" [2020-06-29 Mon 18:28]
  • State "STRT" from "TODO" [2020-06-29 Mon 18:24]

A comp-fi short story as a single blog post. Might be YA though.

Quitting. The modern technology is viewed mystically in some primitive far future trope can possibly be done well, but isn't here.

1.8.24 CNCL read Shannon's Law

  • State "CNCL" from "STRT" [2020-06-29 Mon 19:07]
  • State "STRT" from "TODO" [2020-06-29 Mon 18:33]

A Cory Doctorow comp-fi short story. Might be fantasy, but will give it a chance.

Quitting. Fantasy fan fiction. Has a semi-clever take on it, but not really interesting or done well enough for a good story.

1.8.25 CNCL read This Alien Shore

  • State "CNCL" from "TODO" [2020-06-30 Tue 14:01]

A hard scifi and comp-fi novel about an interstellar internet. Has a few warning signs, so will warily dip toe.

Canceled. Took a peek and seems too trope-laden and with lazy world-building.

1.8.26 DONE read Thrice Upon a Time

  • State "DONE" from "STRT" [2020-07-06 Mon 12:09]
  • State "STRT" from "TODO" [2020-06-30 Tue 00:54]

A (hard?) scifi novel about sending/receiving messages into the past/future. By Hogan, who also wrote Code of the Lifemaker, so a bit wary on quality. If redeeming, the author has a few additional series I might want to check out.

Done. Hard scifi, but very long-winded and rife with filler. Pretty marginal overall.

1.8.27 DONE consider Zohar

  • State "DONE" from "STRT" [2020-07-08 Wed 00:05]
  • State "STRT" from "TODO" [2020-07-07 Tue 22:01]

Give this a peek to see if it's worth reading in its entirety. An English translation is available online here.

Read a few random chapters that seemed to be about interesting topics. Turns out this is actually pretty low quality content. It's collected commentary on a large number of topics, mostly from the Torah. Some commentary is attributed to various rabbis in a style emulating the Talmud, of the form "Rabbi Noseberg says:". Having read some of this, it's pretty obvious it doesn't have a 2nd century origin and is one of those holy texts that follows the (often successful) pseudepigraphy pattern. Seems like Jewish mysticism could use a new text that collects just the best of the many volumes of mostly garbage content.

1.8.28 DONE read Unsong

  • State "DONE" from "STRT" [2020-08-15 Sat 00:18]
  • State "STRT" from "TODO" [2020-07-07 Tue 01:22]

A fully online comp-fi book. Written by the same Scott Alexander of Slate Star Codex fame. Might want to read it in a terminal RSS reader, sorted by reverse date.

Mostly excellent. Possibly worthy of a second read at some future time. Only marginally comp-fi though. More of a selected topics of the best ideas (and many original ones, I suspect) from mystic Judaism. Does suffer from the baggage of an established religion, but makes the best of it. Would probably be truly amazing if not written in blog form and with replacing a few minor tropes.

1.8.29 DONE read Project Pope

  • State "DONE" from "STRT" [2020-08-31 Mon 22:38]
  • State "STRT" from "TODO" [2020-08-17 Mon 01:41]

A 1981 Simak novel about collecting information into a supercomputer.

Probably could've been a chance to explore some interesting ideas of scifi crossed with religion. Zero good ideas as is. Written in a semi-mystery style, so stuck with it to see if there was an interesting conclusion. That turned out to be not the case.

1.8.30 DONE read Ted the Caver

  • State "DONE" from "STRT" [2020-09-10 Thu 08:07]
  • State "STRT" from "TODO" [2020-09-08 Tue 22:19]

The original creepypasta from 2001. Read this back when it came out, but will give it another read from a modern perspective.

Better than (almost?) all of the modern attempts at this genre, though that's not saying much. However, the disappearance ending is a bit unsatisfying.

1.8.31 CNCL read The Fear of Darkness

  • State "CNCL" from "TODO" [2020-09-10 Thu 18:04]

A more story-based take on the Ted the Caver story.

Started reading this, but it was a cut and paste from the other story. Skipped to the end, but this was obviously inferior to no ending at all.

1.8.32 [3/3] read Black Fleet trilogy

Looks like a good naval hard scifi series.

Additional series are available from this author. Maybe consider reading some of the additional ones in the order specified here:

  1. DONE read Warship
    • State "DONE" from "STRT" [2020-10-04 Sun 11:08]
    • State "STRT" from "TODO" [2020-09-29 Tue 15:55]

    Good compared to other books in the sub-genre. Doesn't have any big problems, has an enigmatic ETI that's well-conceived and original, and contains high realism on future military and technology. Short, so this series could go either way.

    Downsides are that it was obviously written quickly, and perhaps the marginally fleshed out universe is a result of an intention to create that on the fly.

  2. DONE read Call to Arms
    • State "DONE" from "STRT" [2020-10-06 Tue 07:59]
    • State "STRT" from "TODO" [2020-10-04 Sun 11:08]

    Pretty good, with caveats. Increased spelling/grammar errors and lack of structure makes me think this was even more quickly churned out.

  3. DONE read Counterstrike
    • State "DONE" from "STRT" [2020-10-10 Sat 15:02]
    • State "STRT" from "TODO" [2020-10-06 Tue 08:49]

    This series would be a lot better if it had been carefully outlined prior to starting. These all came out in the same year, so this could've easily been a single, large novel. This was a decent wrap-up of the trilogy though, considering.

1.8.33 [3/3] read Expansion Wars trilogy

  1. DONE read New Frontiers
    • State "DONE" from "STRT" [2020-10-13 Tue 00:40]
    • State "STRT" from "TODO" [2020-10-10 Sat 21:32]

    Decent, and maybe one of the best from this author so far. A fair amount of ship combat, some mystery, and more reasonable OPFOR.

  2. DONE read Iron & Blood
    • State "DONE" from "STRT" [2020-10-16 Fri 07:39]
    • State "STRT" from "TODO" [2020-10-13 Tue 00:40]

    Weakest entry in the series so far, as it partially focuses on a ground combat plot that doesn't really go anywhere.

  3. DONE read Destroyer
    • State "DONE" from "STRT" [2020-10-21 Wed 01:09]
    • State "STRT" from "TODO" [2020-10-16 Fri 07:40]

    Wraps up this trilogy decently, though the route there was a bit of a mess.

1.8.34 DONE read Blueshift

  • State "DONE" from "STRT" [2020-10-21 Wed 23:54]
  • State "STRT" from "TODO" [2020-10-21 Wed 01:10]

A stand-alone scifi novel from Dalzelle, author of the Black Fleet and Expansion Wars series.

Pretty good, except I find survivalism rather dull to read about. This is at least a somewhat original take on it and isn't the primary focus.

1.8.35 DONE read Empire from the Ashes

  • State "DONE" from "STRT" [2020-11-02 Mon 14:09]
  • State "STRT" from "TODO" [2020-10-22 Thu 00:06]

Another David Weber military scifi work, possibly with naval scifi content. Supposedly rather different than his other series. This is the omnibus version of the Dahak trilogy (1991-1996).

Readable, though unsophisticated. Occasionally some good writing stands out, but most is straight space opera. The third book is particularly low quality, adding many children characters and diverging completely from what had been the main plot. Ending is rather unrewarding too.

1.8.36 [3/3] read Aggressor Six series

A Wil McCarthy military scifi series, composed of his The Waisters series and a second entry that might fit between the two (or at least some people thinks it does).

  1. DONE read Aggressor Six
    • State "DONE" from "STRT" [2020-11-02 Mon 16:54]
    • State "STRT" from "TODO" [2020-11-02 Mon 14:57]

    Pretty good and well written, with maybe the only exception being the ending which kind of turned into an action scene. An original a take on the tired alien invasion theme with more actually alien entities who are nearly incomprehensible.

  2. DONE read Flies in the Amber
    • State "DONE" from "STRT" [2020-11-09 Mon 06:54]
    • State "STRT" from "TODO" [2020-11-03 Tue 12:54]

    I'm pretty sure this doesn't exactly fit into the same universe as this series, since the only things in common are several of the technologies. The universe history here conflicts with that of Aggressor Six.

    Meandering and lacking cohesion. Wastes a lot of time on relationship side-plots that go nowhere.

  3. DONE read The Fall of Sirius
    • State "DONE" from "STRT" [2020-11-18 Wed 23:04]
    • State "STRT" from "TODO" [2020-11-10 Tue 06:54]

    Another one that didn't really come together. Doesn't seem to have anything particularly memorable about it.

1.8.37 CNCL read City at the End of Time

  • State "CNCL" from "STRT" [2020-11-19 Thu 19:02]
  • State "STRT" from "TODO" [2020-11-19 Thu 08:27]

A Bear scifi novel about an aging universe, trillions of years in the future.

Read about 10% and bailing. Too many fantasy elements and generally a mess.

1.8.38 [5/5] read Man of War series

Yet another C.S Forester naval scifi port. First two entries are prequels written after the main series. In this case, I'm keeping them in chronological order.

  1. DONE read Deadly Nightshade
    • State "DONE" from "STRT" [2020-11-23 Mon 21:22]
    • State "STRT" from "TODO" [2020-11-22 Sun 09:54]

    Not good, but also not terrible. Has some juvenile content and pop culture references I could do without. This mythos main downsides so far are that it envisions a prominent role for fighter space craft and has at least one Earth animal ETI.

  2. DONE read The Hunters of Vermin
    • State "DONE" from "STRT" [2020-11-26 Thu 18:02]
    • State "STRT" from "TODO" [2020-11-23 Mon 21:22]

    Disjointed and forgettable. Includes zero space content, and could've easily just been a fantasy novel.

  3. DONE read To Honor You Call Us
    • State "DONE" from "STRT" [2020-12-04 Fri 17:09]
    • State "STRT" from "TODO" [2020-11-26 Thu 20:19]

    Pretty good for the genre. With a few tweaks, this fictional universe could be quite good. ETIs and limitations of space combat are the main points that could use some work. For the latter, this is more of a transplant of modern surface/sub-surface warfare (plus battleships being relevant) to space. Author is occasionally capable of some excellent writing, but this isn't consistent.

  4. DONE read For Honor We Stand
    • State "DONE" from "STRT" [2020-12-07 Mon 07:12]
    • State "STRT" from "TODO" [2020-12-04 Fri 17:09]

    Pretty good entry. Develops the trilogy in a better direction and connects some of disjointedness of the previous book.

  5. DONE read Brothers in Valor
    • State "DONE" from "STRT" [2020-12-08 Tue 12:53]
    • State "STRT" from "TODO" [2020-12-07 Mon 12:30]

    Not bad, but weaker than the previous entry. Doesn't really wrap up much. The author said he planned to continue this universe, but died in 2020.

1.8.39 DONE read The Compleat McAndrew

  • State "DONE" from "STRT" [2020-12-16 Wed 16:04]
  • State "STRT" from "TODO" [2020-12-08 Tue 21:13]

A collection of 9 short stories, and I think my copy has the 10th entry that came out after this compendium.

Pretty good hard scifi. Only complaints are there's some minor continuity issues between entries and the titular character is absent-minded to maximum trope levels.

1.8.40 DONE read Homegoing

  • State "DONE" from "STRT" [2020-12-21 Mon 22:44]
  • State "STRT" from "TODO" [2020-12-16 Wed 16:04]

A Pohl novel regarding alien contact of some sort.

Parts of this are a good idea, like an original take on first contact. Unfortunately, the rest is pretty bad.

1.9 games

1.9.1 [2/2] play Shadowrun (SNES)

  1. DONE setup mouse for Shadowrun (SNES)
    • State "DONE" from "STRT" [2020-01-21 Tue 13:32]
    • State "STRT" from "TODO" [2020-01-20 Mon 08:52]

    Someone created a mouse script for this game that works with Snes9x-RR. See if I can get this working to complete my run of this game.

    Got this working, but needed to get a different ROM than what I was using. My other copy has different memory addresses for the same data. Started editing this, which was working but turning into a pain, then thought to check that. Swapped shoot and select hand, since the former requires a lot of repeated clicking. Also made an AutoHotkey script to auto-shoot, saving finger wear.


    • Use . to disable the recording overlay.
    • Open a new Lua scripting window and load the script, then minimize that window.
  2. DONE do min/max run of Shadowrun (SNES)
    • State "DONE" from "STRT" [2020-01-28 Tue 01:00]
    • State "STRT" from "TODO" [2020-01-26 Sun 22:16]

    Will use my optimized emulator setup for this. Playstyle will be primarily firearms with magic only for heals and invisibility.

    The scripts made farming go about 4x faster. Managed to keep Kitsune alive the whole time too, which was a real pain. Good for an SNES RPG and probably my favorite there, but doesn't really stand up today.

1.9.2 DONE consider Aardwolf

  • State "DONE" from "STRT" [2020-01-28 Tue 17:39]
  • State "STRT" from "TODO" [2020-01-28 Tue 15:18]

A MUD whose client supports integrated maps. Just check this out for now.

Considered. Looks pretty good. Will probably give this a proper play at some point, if I'm ever in the mood to go deep on a MUD. That's an unlikely scenario though.

1.9.3 DONE consider Return of Reckoning

  • State "DONE" from "STRT" [2020-02-06 Thu 20:28]
  • State "STRT" from "TODO" [2020-02-05 Wed 22:07]

A Warhammer Online private server. Just checking this out.

Done. Okay game, for a WoW-clone. Emulation seems pretty solid too. Not something I can actually play for more than a few nights though.

1.9.4 CNCL consider Mabinogi

  • State "CNCL" from "TODO" [2020-02-10 Mon 13:35]

Looks interesting, but has an anime art style, so probably won't play it beyond checking it out. Try this PS.

Canceled. AV flags some binaries as suspicious, so giving it a pass.

1.9.5 DONE play Rimworld

  • State "DONE" from "STRT" [2020-03-22 Sun 13:03]
  • State "STRT" from "TODO" [2020-02-11 Tue 12:17]

A scifi clone of Dwarf Fortress. Might wait until around 2020-2021 to get. Buy directly from official site to get the DRM-free version.

Done. Might try this on Linux. Note that the link (in email) can only be used 7 (now 6) times before it expires. Runs a little crappy in a VM.

Doesn't have the incredible depth of features of DF, but the core ones are here and done well. Also includes a few extra features and doesn't include a lot of the clunkiness. I have a saved game at a point where they can start making the trek to the crashed spaceship, but am going to suspend playing this for now to focus on real life stuff. I might also wait until a few updates are out and restart then.

1.9.6 DONE consider MallRL

  • State "DONE" from "STRT" [2020-04-08 Wed 10:22]
  • State "STRT" from "TODO" [2020-04-08 Wed 09:51]

A rogue-like game, written in Haskell. Source available if I feel like taking a look.

Done. Crap game, but looking through the code was a bit illuminating. This uses the apecs ECS:

1.9.7 DONE play Balrum

  • State "DONE" from "STRT" [2020-04-11 Sat 19:42]
  • State "STRT" from "TODO" [2020-04-10 Fri 22:48]

Got on GOG for $4.49.

Done, somewhat. Nice looking and interesting for a few features. Story and world are a bit dull. Has a decent selection of crafting options, but very lacking elsewhere, like combat and character building. I'm suspending play on this for now, since I have better things to do with the time, but there's a good chance I'll give it another go later. I played a mage, which isn't that great here, so I may try melee next time.

1.9.8 DONE play Divine Divinity

  • State "DONE" from "STRT" [2020-04-11 Sat 20:55]
  • State "STRT" from "TODO" [2019-06-02 Sun 21:36]

A 2D isometric RPG. Played this some a long time ago and never finished. Been meaning to revisit. Grabbed on GOG for $1.49.

Done, mostly. Kinda got bored of this, strangely about the same time I got bored last time. Put it off and now I forget what I was doing. Aborting this run and giving up on this game for now, but I might revisit (for the 3rd time) at some point.


1.9.9 DONE play Open World Game

  • State "DONE" from "STRT" [2020-04-18 Sat 21:57]
  • State "STRT" from "TODO" [2020-04-18 Sat 19:03]

A free RPG on Steam, supposedly a parody.

Well, I played it. It's okay, I guess. Didn't feel like being a completionist on it though, so not sure what happens if you do absolutely everything.

1.9.10 DONE play ICBM

  • State "DONE" from "STRT" [2020-04-20 Mon 15:33]
  • State "STRT" from "TODO" [2020-04-18 Sat 22:19]

A free ICBM operator semi-sim or waiting sim, I guess.

Completed all difficulty levels. Decent concept for a game and good execution.

1.9.11 DONE play Military Industrial Complex

  • State "DONE" from "STRT" [2020-04-20 Mon 15:42]
  • State "STRT" from "TODO" [2020-04-20 Mon 15:20]

Made by the creators of ICBM. Doesn't look as good of a concept, but will give it a try.

Done. Maybe this was just a first game test? Either way, a garbage game.

1.9.12 DONE play KeeperRL

  • State "DONE" from "STRT" [2020-04-22 Wed 18:22]
  • State "STRT" from "TODO" [2020-04-20 Mon 18:28]

Try out the free ASCII version of this. This is still in development. If I like this enough, I may consider the graphical version once it's done.

Tried the alpha 29.1 version. Looks promising, but I'd rather not play it in its current state due to some tiles being black boxes. Will check back later once it's further along. I know z-levels are in development, so maybe after those are implemented.

1.9.13 CNCL play ATOM RPG

  • State "CNCL" from "TODO" [2020-04-22 Wed 21:00]

A turn-based, FO-inspired RPG. Looks okay for an indie-game, though perhaps derivative and a little rough. Might skip.

Skipping this, due to looking sloppy.

1.9.14 CNCL play Xenonauts

  • State "CNCL" from "TODO" [2020-04-22 Wed 21:01]

Might be a worthy successor to the X-COM series. Was released mid-2014. Looks okay, but doesn't seem to be worth $25. Lacks much complexity, it seems, and I'm not a fan of the manual air battles, so I'm not in any hurry to play this and may skip it altogether. Last seen on sale for $10. Also check out Phoenix Point, which might be out by the time I get around to this. Xenonauts 2 is also currently in development, and that might be worth looking at instead. The demo for that is already out.

Skipping due to being too simple.

1.9.15 DONE play Corruption of Champions: Revamp edition

  • State "DONE" from "STRT" [2020-05-12 Tue 12:23]
  • State "STRT" from "TODO" [2020-05-10 Sun 23:07]

Retry my attempt at a completely virtuous run. Will also power-game the stats and use the wiki to save on reloads. Install on VM, since it requires Flash.

Finished with 0 corruption, no body changes, and none of the, uh, interactions possible. Also did so with reading the absolute minimum of game text to reduce exposure to degeneracy. Some say that if you can look past the content here, there's a good game. Someone definitely spend a lot of time on it, but I'd mostly disagree with that conclusion.

1.9.16 CNCL manually get to level 50 in Lineage

  • State "CNCL" from "STRT" [2020-05-17 Sun 10:12]
  • State "STRT" from "TODO" [2020-05-10 Sun 01:23]

A goal I never actually accomplished on live, not counting test server (which was 4x XP). Will do it on the PS with full 1x rates, using only legit play. Currently at 35% of the way there on my mage. Will probably bump drop rates to 2x and karma to 7x after this, leaving everything else 1x. Then I'll work on my new bot project.

2020-05-12: Got to 44%. Wrote an AHK bot for farming ant caves. It's pretty inefficient, but I'm thinking I might just run the bot instead of doing this. Then in the meantime, I'll work on a proper bot.

2020-05-17: The team decided to start work on the 3.63 migration. So, I'll help out with that instead of doing this even in bot mode. If I ever suffer brain damage that results in lower cognitive function, I'll consider revisiting this.

1.9.17 CNCL play xcrawl-tiles

  • State "CNCL" from "TODO" [2020-06-21 Sun 16:32]

A tiles and sound-enabled version of Dungeon Crawl: Stone Soup. Supposedly popular. Available in Linux package managers.

Attempted. Build is broken on Arch.

1.9.18 CNCL play Fallout 3 (modded)

  • State "CNCL" from "TODO" [2020-06-22 Mon 12:41]

Try reinstalling this game with the FO3 Wanderers Edition mod, and maybe some others.

Skipping since I don't want to sign up for a scummy mod site just to download a file.

1.9.19 DONE play Build a Spaceship

  • State "DONE" from "STRT" [2020-06-30 Tue 10:15]
  • State "STRT" from "TODO" [2020-06-30 Tue 09:55]

A super simple incremental game. Give a peek to decide if I want to build one of these types for my first web-based game.

Played a few minutes, then skipped ahead with the console. Seems like I could make something like this in a day.

1.9.20 DONE DOTA 2 (single player)

  • State "DONE" from "STRT" [2020-07-09 Thu 01:00]
  • State "STRT" from "TODO" [2020-07-08 Wed 19:01]

Looks like you can play this single player with "Create Lobby" -> "Edit Settings" -> "Fill empty slots with bots". Will give this a try for a bit, but won't play any more beyond that. Pausing supposedly works in this mode.

Done. Mildly fun for a couple hours, but gets old after that. Can't seem to adjust the number of bots in game, which further limits replayability.

1.9.21 DONE play Fallout 1.5: Resurrection

  • State "DONE" from "STRT" [2020-07-09 Thu 21:42]
    • State "STRT" from "TODO" [2020-06-01 Mon 21:41]

A mod for Fallout 2.

Works fine. Lots of modernization options in the configuration utility. These FO2 mechanics are a bit dull, however, so quitting.

1.9.22 DONE replay Morrowind GOTY

  • State "DONE" from "STRT" [2020-08-23 Sun 01:32]
  • State "STRT" from "TODO" [2020-08-01 Sat 23:49]

Have access to a copy of this, that includes the Bloodmoon expansion (which I hadn't played). Will give this a lazy run. Will also use the MGE XE and Morrowind Code Patch mods, which fix a lot of the problems in the game. Will cheese my way through much of the leveling to get to the new (to me) content.


  • Install Morrowind Code Patch first. Copy the files over to the game directory, then run the executable.
  • Use max settings in MGE XE view distance tool.
  • Installed all of the official plugins, available here:
  • Run Set Timescale To 1 to set the game to real time. To go back to the default, use 30.
  • The ra command is still useful to reset NPC locations.
  • S-click spells to remove them. Good for clearing out junk skill-related spells.
  • Build skills to max: Armorer, light armor, marksman, sneak, athletics, short blade, illusion, merchantile, speechcraft, enchant, security.

Finally complete. Went full optimal leveling. Did this by grabbing the master alchemy set in Caldera mage guild and buying kwama cuttle and scales from Nalcarya in Balmora. If you buy her stacks of these reagents, then sell them back, she'll double her inventory of them each time. Then, making water walking potions out of those to sell to Creeper pays for training.

Managing collections of items got tiresome, so didn't do absolutely everything, but did a more completionist run than ever before.

Bloodmoon is overall an inferior expansion than Tribunal. Its main downside is its sloppiness compared to the rest of the game, probably due to being put together more quickly. However, it does expand the main game world, unlike Tribunal.

In the future, I may want to check out Tamriel Rebuilt and OpenMW. Decided not to do either this time, due to them still actively adding important stuff.

1.9.23 DONE play Skyrim + Hearthfire, Dawnguard

  • State "DONE" from "STRT" [2020-10-13 Tue 00:49]
  • State "STRT" from [2020-07-12 Sun 06:14]

Free for me, so might as well give this a try.

What a chore-fest. Not as good as FO:NV or Morrowind, but better than Oblivion. Dungeons are very linear and there's a lot of cut-and-paste used for the large amount of content. Most of the quests are simple fetch or kill. Something about the color palette in this game is hard on the eyes. Otherwise, has all of the same upsides and downsides as the other Bethesda games of this era and is probably the last playable Bethesda game.

Definitively lost the urge to keep going. Will leave installed for awhile, just in case.

1.9.24 DONE play Insignificant Little Vermin

  • State "DONE" from "STRT" [2020-10-19 Mon 09:43]
  • State "STRT" from "TODO" [2020-10-19 Mon 09:14]

An online text-based game:

Pretty short and a generic "choose your own adventure" style IF game with a roll system. I could see this being an interesting format for an actually good story.

1.9.25 DONE replay AI War: Fleet Command

  • State "DONE" from "STRT" [2020-10-20 Tue 20:53]
  • State "STRT" from "TODO" [2020-10-18 Sun 19:50]

This game has changed a good bit since I last played it, so maybe give it a few sessions.

Some stuff was indeed added, improving the complexity of the game. One thing I did notice while playing this again is that though the game is indeed very different from any other RTS on paper, the overall experience is essentially unchanged. Only did one full campaign mode game as a result.

1.9.26 CNCL consider Aurora

  • State "CNCL" from "INAC" [2020-10-22 Thu 15:11]

A freeware 4x game, one that's apparently of extremely huge depth. Uses native Windows GUI widgets, like Stars!. Tutorials, which are required reading, are available here:


Canceling this, as I'm pretty sure I won't ever really want to go deep on 4x ever again. If that changes, this will probably be the game I try first.

1.9.27 CNCL play 688(I) Hunter/Killer

  • State "CNCL" from "TODO" [2020-11-22 Sun 09:56]

First in the series of naval sims by Sonalysts, released in 1997. May be too ancient to be playable, but will give it a try first. My plan is to progress through all the PC games in this series, if possible. However, I'll quickly plow through these older ones.

Seems to not run anymore, due to not being able to find the Steam client. I guess that's what I get for buying DRM-locked old games.

1.9.28 CNCL play Sub Command

  • State "CNCL" from "TODO" [2020-11-22 Sun 09:57]

Second in the series of naval sims by Sonalysts, released in 2001. Has the cleanest graphics of the three. Only allows play of 3 submarine platforms. Will give this a try before playing DW.

Non-functional on Steam. Will just play DW.

1.9.29 DONE Sins of a Solar Empire: Rebellion

  • State "DONE" from "STRT" [2020-11-29 Sun 03:20]
  • State "STRT" from "TODO" [2020-11-22 Sun 21:05]

Since I got this for free, might as well give it a quick look.

Hasn't changed much since I played the original. Mostly is yet another RTS, without anything close to actual S. Not terrible considering the genre, but would need a complete overhaul to actually be an interesting game.

1.9.30 DONE Cybersecurity Escape Room

  • State "DONE" from "STRT" [2020-12-02 Wed 14:29]
  • State "STRT" from "TODO" [2020-12-02 Wed 13:50]

An escape the room style game, but involving cybersecurity.

Password is "Daniel1206". Somehow we were supposed to guess that format. Anyway, it's beatable once you get into the computer by removing authorization from the bank account. Involves no real cybersecurity. This is a game format that could be done well, but isn't here.

1.9.31 DONE play AI Dungeon

  • State "DONE" from "STRT" [2020-12-02 Wed 14:59]
  • State "STRT" from "TODO" [2020-12-02 Wed 14:55]

I think this is possibly a procedural GPT-3 IF game.

Tried a couple sessions but it was a mess. Then it shoved a popup in my face forcing registration before continuing. So, quitting.

This game doesn't seem to properly track items in a room, inventory, map descriptions to objects present, or a lot of other things standard in an IF game. Needs more tuning for the genre to be usable. Much of the text generated was also nonsensical. So, super fragile. You could possibly make a log of what would look like an IF game playthrough, but you'd have to be careful about doing your part.

1.9.32 DONE play Wired

  • State "DONE" from "STRT" [2020-12-05 Sat 01:30]
  • State "STRT" from "TODO" [2020-12-04 Fri 13:46]

A puzzle game where solutions are wiring electrical circuits. Has a stand-alone EXE version.

Completed. Semi-okay, I guess. Would prefer not to have the jumping mechanics or even a character at all. Also, the multistage puzzles turn this into more of a straight puzzle game than a circuit wiring education. The block puzzles, while semi-relevant, are also annoying. A better educational game would be an interactive circuit simulator where you're given more realistic circuits to design and then have to wire them up. Pretty sure this didn't help me any on my EE quest.

1.9.33 DONE Wizardry 6

  • State "DONE" from "STRT" [2020-12-13 Sun 08:16]
  • State "STRT" from "TODO" [2020-12-07 Mon 22:05]

Maybe give this a try. Created a DOSBox setup for this that includes the auto-mapping mod. Also got sound effects (but not ambient background) and window scaling working. Included a copy of the original guidebook and other docs. If I need to change the base game config, run WINSTALL.EXE again and just change the config. Be sure to do this in DOSBox with the full game folder set to C:\.

Created a party: Valkyrie, monk, priest, ranger, mage, bard.

To save some frustration, use the character editor (run in DOSBox) to boost skulduggery to 20 when starting. That's enough to get started on the early locked doors.

Finished (kill Bela ending). This game, while still playable, hasn't aged too well. The UI is very clunky and navigation is made difficult by everything looking the same. Much of the game world being a complex maze doesn't help either. What to do to unlock subsequent areas is also often very obscure. Hard to imagine playing this in pre-Internet days. Probably my biggest complaint though is the way there's no feasible means to counter the many instant-lose/gimp mechanics in late game. Does have a few good aspects that save it from being completely bad, like a complex stat system. How the backstory is revealed is also handled well.

Not sure if I'll play Wizardry 7. That game does improve things, but this was a mostly frustrating experience and even a sizable fraction of that would make it not worth my time. I might grab 8 when it comes on sale though. I'll keep my SAVEGAME.DBS file around, just in case I decide to do this. There are some items that it would be nice to bring over through the whole saga.

1.10 general topics

1.10.1 CNCL read A New Kind of Science

  • State "CNCL" from "TODO" [2020-06-07 Sun 00:11]

One of the earlier (if not the first of) attempts at proposing an alternative model of the fundamental laws of everything computationally–an idea that's resonated with me for a long time now. Grabbed the e-book, but it's also available online here.

Canceled. Read some of this, and while I do think a lot of the criticism against this notion is partly due to irrational hate of Wolfram, I'm not sure I agree with the framing of this approach. Fundamental reality can be computational (and I think there's a good chance it is or at least can be used that way) without us modeling it as cellular automata. That might be fine if it's a good model, but I conjecture it's a shallow and insufficient one to tell us much.

1.10.2 DONE read Uncivilization: The Dark Mountain Manifesto

  • State "DONE" from "STRT" [2020-07-13 Mon 07:39]
  • State "STRT" from "TODO" [2020-07-12 Sun 06:22]

An anacho-primitivist manifesto, from 2009, distributed in pamphlet form. Founding document of The Dark Mountain Project, which I think is some loose collective of artsy types with a (possibly Rousseauian) penchant for nature and a dystopian view of civilization.

Done. Makes a couple good points, like that phrasing such as "damaging nature" detaches us from the consequences of those actions, as if it were happening to some external entity. Otherwise largely devoid of content, though eloquently worded. This is a call to arms for artists, and visualizes them as culturally upstream. I suppose the idea is that getting them onboard would be hopefully all that's needed for these ideas to filter out into the general public. They actually may be right about that to a degree, though it's hard to imagine most of them having enough realistic exposure to it to write about or otherwise depict such things accurately.

1.11 home improvement/maintenance

1.11.1 [2/2] rearrange some items

  1. DONE put trailer in garage
    • State "DONE" from "STRT" [2020-01-15 Wed 15:56]
    • State "STRT" from "TODO" [2020-01-15 Wed 13:55]

    Now that I cleared up some space, I should be able to squeeze the trailer in the garage, sparing it some weathering. Move the feed supplies to the center, move the tractor and UTV out, then back the trailer in. Park the UTV next to the trailer and tractor next to that. Will try this for awhile and see if it's too cramped.

    Done. All 3 wheeled things are now inside the garage. Fits surprisingly well with plenty of room to work on stuff. To put the trailer in perfectly, just back it into the garage, then detach and move it by hand. To get it out, I'll probably manually move it forward first.

  2. DONE organize basement shelves
    • State "DONE" from "STRT" [2020-01-19 Sun 00:01]
    • State "STRT" from "TODO" [2020-01-18 Sat 22:32]

    Decided to get clear storage bins/totes for the basement shelves. This should improve speed of finding items, allow for stuff to be grouped together and labeled, keep dust off of small items, protect the shelf boards, and generally improve the appearance of the basement in general. Will get 10 or so of these to start and a couple extra for the garage.

    Done. Got 10 totes, which seem to be enough for now. Moved shelves and grouped stuff in totes by use case. Basement looks a good bit better now, and it should be easier to find stuff. Worth the around $80 spent.

1.11.2 [3/3] fix up storage shed

  1. DONE remove shed signs
    • State "DONE" from "STRT" [2020-01-16 Thu 17:15]
    • State "STRT" from "TODO" [2020-01-16 Thu 14:24]

    Pull the cringey signs from the shed.

    Done. Removed these and filled the screw holes with wood putty. This left two rectangles where the signs were due to differences in weathering. Will see if this evens out over time. If not, I might refinish the entire shed after doing the deck.

  2. DONE paint shed
    • State "DONE" from "STRT" [2020-03-15 Sun 15:49]
    • State "STRT" from "TODO" [2020-02-16 Sun 14:36]

    Paint this the same color scheme as the garage.

    2020-02-15: Bought paint. Went with "simple gray" for the main color.

    2020-02-16: One side painted. Will need to buy 3 more gallons of gray paint.

    2020-02-17: Went to buy more paint, but they're out of the base. Will be in stock on 2020-02-19.

    2020-02-20: Bought more paint.

    2020-02-21: Second side painted.

    2020-02-23: All gray paint finished.

    2020-03-01: Front green mostly done. Will grab some additional narrow brushes next time I'm out. Also, it probably would be a good idea to do a final gray touch-up to cover the few accidents with the green before calling it done. Looks like it's rainy for the next week.

    2020-03-08: Right side green done. Progress made on front and left side too.

    2020-03-09: Back done. Remaining sides mostly complete. Will be rainy again for several days. Also was thinking I'll paint the ramps brown instead of green, but might also just go with the gray if feeling lazy.

    2020-03-10: Hammered in all ramp nails.

    2020-03-14: Everything painted, except I need to give a spot just above the front door a quick touch up.

    I'm wavering a bit on the ramp color, so I'll break that out into its own task. That's lower priority than getting garden tasks done.

  3. DONE paint shed ramps
    • State "DONE" from "STRT" [2020-04-04 Sat 17:49]
    • State "STRT" from "TODO" [2020-04-04 Sat 13:30]

    Bought a bucket of brown that matches the house roof.

    Done. This color is okay, but needs to be a bit darker and more red to match the roof. Looks pretty good despite this, but I might switch colors for future brown paint. Shed painting is now complete.

1.11.3 [3/3] redo basement general workshop

  1. DONE setup mitre box
    • State "DONE" from "STRT" [2020-01-19 Sun 01:33]
    • State "STRT" from "TODO" [2020-01-19 Sun 01:03]

    Set this up in the workshop room in preparation for cutting base trim.

    Done. Kinda crappy instructions, but eventually figured it out.

  2. DONE repaint workshop walls
    • State "DONE" from "STRT" [2020-02-15 Sat 23:19]
    • State "STRT" from "TODO" [2020-01-21 Tue 19:58]

    Remove all items from the general workshop, pull all base trim, remove switch/outlet covers, then repaint it. This will also serve as an interior wall painting practice run. Ensure I have the correctly colored paint before starting. If this is going well, also repaint the unpainted wall in the basement main area. When done painting, replace covers but leave all items out of the room until trim is complete.

    2020-01-21: Stuff removed, walls cleaned, covers removed, putty applied.

    2020-01-22: Pulled trim. Left some of the less damaged ones to try painting over. Putty is still wet though, so might have to let this sit for a few days.

    2020-01-23: Sanded down all non-wet putty. Installed some painters tape.

    2020-01-29: Checked new putty and it's still wet. Will wait another week.

    2020-02-07: Putty sanded. Still not perfectly dry, but tired of having all the stuff out in the main area. Will go ahead and paint as-is.

    2020-02-10: Painted. Will wait until dry to see how the colors match up and whether we need to touch up the edges. Also painted the unfinished basement wall. Will get another few cans of the same paint color.

    2020-02-14: Cleaned floor, replaced outlet covers, removed tape, etc.

    2020-02-15: Done. Local hardware store doesn't carry this brand of paint. Will check elsewhere. Used the half-bucket I have left to finish this job though. While at it, touched up various parts of the basement, which makes for a pretty substantive improvement.

    Reasonably close to a professional job, and good enough for a workshop. Should be good enough now to paint anything. Some lessons learned:

    • Spend more time making sure the surface is perfectly smooth, like for repaired holes. Once the paint looks better, these stand out as the main remaining imperfection.
    • Start the spackling as early as possible to give it time to dry completely.
    • Even small color changes require a lot more work. Factor that in when choosing colors. It might make more sense to just continue with an existing color than do all the work to change it.
  3. DONE replace workshop base trim
    • State "DONE" from "STRT" [2020-02-17 Mon 23:01]
    • State "STRT" from "TODO" [2020-01-02 Thu 23:57]

    Some of the trim (moulding) in both downstairs workshops came with water damage, due to various water-related mishaps. Fixing this myself should be cheap and relatively easy. Use painters tape where I pry off the boards to protect the drywall. Will start in the general purpose workshop to make sure I know what I'm doing. Once this is done, I should be competent enough to replace this elsewhere in the house.

    Ordered miter box with saw, flat bar, and stud finder.

    2020-01-02: Bought finishing nails, painters tape, tack hammer, nail set punches, white wood putty, and 3 8' base trim pieces.

    2020-01-03: Received all tools needed to do this job. However, I'll wait until I've cleared off some other tasks to focus on this.

    2020-01-15: Had an idea to use the vinyl trim currently in use in the basement bathroom to do the basement main area. This will save money, be water resistant, and not get damaged as easily.

    2020-01-16: Setup and tried out stud finder. Works pretty good.

    2020-01-20: Assembled mitre box. Blocked until walls are painted.

    2020-02-15: Repainted reloading room trim and fixed the not-to-be-replaced workshop trim.

    2020-02-17: Trim installed. Had one full piece left over and stored it for backup. Still need to finish putting all stuff back in the room.

    2020-02-17: Finally done and looks great. As a follow-up, I might shape one trim piece a little to go around a low outlet cover.

1.11.4 [3/3] get drill press and table saw

  1. DONE make homemade cross-slide vise
    • State "DONE" from "STRT" [2020-01-19 Sun 14:47]
    • State "STRT" from "TODO" [2020-01-18 Sat 13:24]

    Considered buying a cross slide vise for the drill press. Unfortunately, there's really only crappy Chinese ones and super-expensive real ones. The former have a lot of slop, and the latter cost $400+. Instead, I'll get some angle irons and 4 c-clamps. These can be rigged in a way with most items to either allow for one axis of sliding, or fully lock it down.

    2020-01-18: Bought aluminum angle iron and 4 2" c-clamps. Cost: $21. Width of press base is 7 11/16", so I'll cut it at 7 3/4".

    2020-01-19: Done. Cleaned up rough edges. Lubricated c-clamps.

  2. CNCL setup table saw
    • State "CNCL" from "TODO" [2020-04-28 Tue 14:16]

    Consider getting a rolling platform for this.

    I may still do this, but I've used it just sitting on the bench and it seems to work fine.

  3. DONE setup drill press
    • State "DONE" from "TODO" [2020-06-17 Wed 02:15]

    Was going to mount this in the garage, but I think I'll keep it indoors in the general-purpose basement workshop. As such, this will have to wait until I finish redoing the benches. In the meantime, bring it indoors, clean it up, and maybe test it. Perhaps I can c-clamp and use it in the meantime.

    2020-01-01: Cleaned. Holding off on mounting until I rearrange that room.

    2020-02-17: Room is ready for mounting.

    2020-02-24: Will try using this without drilling for now. Keeping this task though, in case I change my mind.

    2020-06-17: Calling this done, since I won't mount it any time soon.

1.11.5 [2/2] touch up interior paint

  1. DONE treat foyer door and frame.
    • State "DONE" from "STRT" [2020-01-31 Fri 16:58]
    • State "STRT" from "TODO" [2020-01-31 Fri 12:52]

    Clean and fix paint. Already partially done.

    Done. Condition: 90%->98%.

  2. DONE treat kitchen trim, windows, doors
    • State "STRT" from "BLCK" [2020-03-27 Fri 16:24]
    • State "BLCK" from "STRT" [2020-03-10 Tue 00:47]
    • State "STRT" from "TODO" [2020-02-18 Tue 14:07]
    • State "STRT" from "TODO" [2020-04-19 Sun 17:49]

    Clean and fix paint of:

    • Basement stairs door and frame (partially done already).
    • Double windows and frame.
    • Sink window and frame.
    • Base trim.

    2020-02-18: Sink window, frame, and surrounding area done.

    2020-03-03: A- did the double windows.

    2020-03-10: Out of touch up paint. Blocked until we get some more. Will just get a small can of pure white.

    2020-03-20: Got additional brushes from the craft supply shop.

    2020-03-28: Got small can of flat white. Now unblocked.

    2020-05-07: A- finished, along with many other parts of the house.

1.11.6 DONE clean up boat

  • State "DONE" from "STRT" [2020-02-02 Sun 16:57]
  • State "STRT" from "TODO" [2019-03-10 Sun 15:38]

Got a boat for cheap from the home seller. I was just going to buy or build a very tiny jon boat, but for $300 this one was too cheap to pass up and is way nicer than anything I'd otherwise end up with.

This boat is a Starcraft Fishmaster 1232. Length is 12' and beam is 4'. It appears that at least a wooden deck, lights, pedestal seat, and camo painting were added. It also has 2 cleats on the sides, one on the front, and two larger ones on the back. There are mounting brackets for front and back trolling motors. It also came with 2 trolling motors, a paddle, and a marine battery.

Even with just a trolling motor, I would need to register this boat if I operated it on public waters. This is not something I intend to do, as I have no boat trailer to transport it anyway. If I ever change my mind, I can get around that by just using the paddle or adding oar locks. Keeping this registered would eventually cost more than the boat itself. I would also have to pay sales tax on it.

Some stuff to do:

  • [ ] Get new drain plug: Skipping. The one there is fine. Looks like the one there is a standard cheap type, similar or the same as what Walmart sells in their boating section.
  • [X] Inspect condition of lights and wiring: These could use rewiring, but since I'm selling my battery, I'll just leave them as is. One of the lights is also broken.
  • [ ] Clean entire surface of boat and chairs. Flip over and check condition of hull.
  • [X] Remove elevated chair and base: Removed.
  • [X] Measure for tarp: Need a 16x10' tarp.
  • [X] Cover with tarp: Put half of tarp under boat and wrapped it around, then put rocks on the flap side. Seems to work okay, but sometimes needs straightening up after a wind storm or heavy rain.
  • [X] Measure wood deck: 39.5x17x0.75".
  • [ ] Remove cleats and soak in white vinegar for a few hours, then scrub off any rust: Skipping this.
  • [X] Cut 2 logs to prop boat on: Cut two pieces of the spare telephone pole we had. Braced those pieces with rocks. Boat will now rest upside down on these. Seems to work pretty good and is less cost/maintenance than a custom cradle or boat cover.

Got this into a state that it won't further deteriorate. Removed the tarp since after a winter, it already wore through and was letting water in. Then that water was stagnating and making things even worse than the would be otherwise.

Broke out the refinishing part of this project. That's lower priority, so I'll get around to that later.

1.11.7 DONE maintain driveway

  • State "DONE" from "STRT" [2020-03-27 Fri 18:07]
  • State "STRT" from "TODO" [2020-03-18 Wed 13:21]

Get a scraper blade for the tractor, order a load of gravel, then redo the driveway.

2020-03-18: Called Gary's and ordered a single dump truck load. They'll call back with scheduling options. I'll just spread it around myself with the front loader if I don't get a scraper in time.

2020-03-24: Received call around 0900 saying they'd be over after lunch. Later rescheduled for the next day between 0800-0900.

2020-03-25: No show, I guess. Will call back if I don't hear anything by tomorrow.

2020-03-26: Got call early in the morning, around 0730. Delivery arrived around 1000. Used about half the pile so far. The dump truck ran over and broke the culvert cover next to the garage though, so I'll have to replace this. While here, I asked the driver about the pond leak and installing a culvert between the ponds. He took my info to have them call me back with a quote on the latter. For the leak, he suggests I find it first to save on loads of clay needed. He thinks it might be the roots of one of the trees in that area.

2020-03-27: Task complete. Used the entire load. Did all of the worst spots, but could probably use another load next year, if I really wanted to get it perfect. On the other hand, I'm probably good as is for the next 2-3 years. Will reevaluate next Spring.

1.11.8 DONE restock birds

  • State "DONE" from "STRT" [2020-04-08 Wed 18:08]
  • State "STRT" from "TODO" [2020-04-08 Wed 14:30]

Consider getting these on these first days of availability, or as close as possible:

  • 2 Dark Brahma chickens, 2020-03-12.
  • 1 Peking duck, 2020-04-09.
  • 1-2 Narragansett turkey, 2020-04-16.

Also considering getting Black Jersey Giant chickens instead, available 2020-03-05.

2020-03-07: Decided to skip the turkeys this year. Went to check on Black Jersey Giants and they were sold out. After more thought though, I'm debating about whether to just add 2-3 ducks instead. The reason is to limit the amount of digging the chickens do around the property. 4 already dig holes in random spots that I then have to fill in. Ducks are more of a mess in the enclosure, but less when outside. Another benefit is only having to raise one group of birds. Leaning towards this, but will think about it for the next couple of days.

2020-04-07: Feed store is only doing curbside delivery. Call 540-662-2749 to order the ducks and then call again when arriving to pick them up.

2020-04-08: Ducks were available early. Got 3, extra water and food dispenser, and a bag of starter food. Will use my normal routine of raising these guys, but will put them out in the coop a couple weeks earlier than last time.

2020-04-13: Moved ducks to basement in large container. Putting a lid under the water dispenser helps keep down the mess. They'll stay here for a couple weeks.

1.11.9 DONE build duck house

  • State "DONE" from "STRT" [2020-04-26 Sun 16:29]
  • State "STRT" from "TODO" [2020-04-26 Sun 13:28]

Construct a house for the ducks to live in, with some short legs. Bottom will be open.

Done. Painted gray and affixed a 34"x34" piece of siding for a roof. Will put a couple large rocks on the roof to keep it from blowing off in wind storms. Will install once paint dries.

2020-04-27: Added some green to the trim. Installed outside.

1.11.10 DONE paint UTV dump bed dividers

  • State "DONE" from "STRT" [2020-05-05 Tue 15:59]
  • State "STRT" from "TODO" [2020-05-04 Mon 19:10]

Paint these with some of the remaining brown paint. These should then last the life of the UTV.

2020-05-04: Painted one side of these.

2020-05-05: Finished. Looks pretty good.

1.11.11 DONE install fly paper in attic

  • State "DONE" from "STRT" [2020-05-07 Thu 15:07]
  • State "STRT" from "TODO" [2020-05-07 Thu 14:37]

Attic design is one of those open air flow ones, which has the downside of letting bugs in. Install 2 fly paper strips, one next to each window, to reduce amount of regular cleaning needed. Already bought a 4 pack of these for $0.88.

Installed. Will check on these in a few months. If they catch stuff, I'll stock up on them.

2020-06-05: So far, they haven't done much. There also hasn't been tons of flies around lately though. Will check again later.

1.11.12 [2/2] redo shooting range

  1. DONE get rid of shooting table
    • State "DONE" from "TODO" [2020-01-01 Wed 15:09]
    • State "STRT" from "TODO" [2019-12-31 Tue 11:45]

    Would probably keep it, but it's all wobbly, heavy, and takes up too much space. Found another one online that is superior and works great on uneven ground. Due to condition, it's unlikely I'll be able to squeeze more than a few dollars out of it. Post this for free on Craigslist.

    Done. Guy that picked up lawnmower also took this, saving me some hassle.

  2. DONE redo shooting range
    • State "DONE" from "STRT" [2020-06-02 Tue 23:12]
    • State "STRT" from "TODO" [2020-05-27 Wed 18:42]

    My previous rimfire target got buried in some excavation work. Replace that and maybe add some extra metal targets for offhand shooting.

    2020-05-21: Ordered rimfire 5 plate assembly, handgun 2 plate spinner, and 1 8" AR500 plate. The AR500 plate comes without stand, so I'll have to build something. These, plus the paper target stand should be enough for our needs without littering the place with ugly stuff. These are actually pretty cheap, and I noticed they costed 3x or so in local stores. Also bought a 10 round 300 BLK Lancer magazine and metal G19 guide rod assembly (the previous one was a mislabeled G17 one).

    2020-05-26: Stuff arrived. Will hold off on setting up the rifle plate until I build something for it, since I'm thinking I might combine the paper target holder with this. Waiting until the pond excavation work is done before setting anything up, since I don't want these new targets to get buried again.

    2020-05-27: Tore down the old target stand. Will dry out the legs and reuse those, replacing the central boards. Also painted the rifle plate white.

    2020-05-29: Cleaned legs. Looks like they'll need a sanding.

    2020-05-30: Sanded and painted legs.

    2020-05-31: Constructed target stand. Looks pretty good.

    2020-06-01: Everything setup, except rifle plate.

    2020-06-02: Done. Looks great, removes an item to mow around, improves range safety, increases max distance for bench shooting, and covers all firearm types.

1.11.13 [4/4] do 2020 excavation projects

Was considering these optional, but neighbor's kid is back in the area from getting out of the Army early. Will take advantage of him doing these things to save some cash.

Done. Pretty big improvement of the property overall. Whether it's worth the money spent ($3200 or so) is probably open for debate. Excavation is definitely expensive. Will try to do more of this myself in the future, though that still isn't cheap. Doing small work with the pickax and shovel is free, but grueling.

  1. DONE install culvert between ponds
    • State "DONE" from "STRT" [2020-04-02 Thu 16:49]
    • State "STRT" from "TODO" [2020-04-02 Thu 12:47]

    Install a culvert of appropriate size where the UTV trail is around the pond and shape the drainage area to keep the water stream narrow and not have stagnant pools. This will allow UTVs to traverse this area without making a muddy mess, reduce the number mosquitoes, improve the appearance of the property overall.

    Done. Got a quote from Gary's for this for over $1700 and was thinking about doing it by hand instead. However, the neighbor's son was doing some excavating and offered his services. Total cost for paying him and buying the culvert pipe was $582.

    2020-04-04: Added some shale to the area. Might want to put some more directly above culvert later. Will evaluate after it rains.

  2. DONE fix ATV trail
    • State "DONE" from "STRT" [2020-04-16 Thu 17:36]
    • State "STRT" from "TODO" [2020-04-06 Mon 13:11]

    Top part of the trail has eroded a good bit. Needs to be touched up and ideally reformed with drainage ditches to prevent run-off going directly onto the trail.

    Hired neighbor's son again for skid-steer and excavator work, doing the ideal solution.

    2020-04-07: Excavation work is done. Just need to buy a 12-14' section of 6-8" culvert and bury that. Dirt pile is next to the channel for it. Will try to do this with hand tools, which will probably take a couple days.

    2020-04-09: Bought 2 4"x10' culvert sections. This is a bit smaller than I wanted, but I might just go for it.

    2020-04-11: Placed culvert, where it turned out we really did need the full 20'. Put rocks around it and started burying it.

    2020-04-12: Culvert buried and looks pretty good. Took a look around and there's 2 additional things I want to do. One is to shape a runoff area into the lower ditch for the new culvert, since it may be a little small for the amount of water that could come through during heavy rains. The other is to deepen the ditch near the bottom.

    2020-04-14: Touched up the fill-in which settled a bit. Also did the two ditch areas. Will give it a final pass after it rains again.

    2020-04-16: Did final pass. Calling this done. Now that it's easier to drive around back there, I'll keep an eye on it more. Might also do a smoothing pass with the front loader in the Fall.

  3. DONE attempt to plug pond leak
    • State "DONE" from "STRT" [2020-05-31 Sun 09:36]
    • State "STRT" from "TODO" [2020-05-27 Wed 00:57]

    The large pond has had a leak for awhile. Unless there's an overwhelming amount of rain, it'll top off about 2-3 feet below the culvert line. Prevailing theory is that a cluster of trees have roots that are burrowing into the shale on the side. This is a big gamble to fix, since the work is expensive. However, the main reasons for the going ahead with it are that the trees need removed anyway, and the guy doing it will touch up a couple extra things while here. Work scheduled for 2020-05-30. Paid upfront since he didn't have the money on hand to rent the equipment.

    Complete. Had to do a lot of cleanup from clay spills and clean up some backhoe sloppiness, but things are mostly back to normal now. Shooting backstop berm size was also increased. Things look promising on this fixing the issue, but we'll have to wait until we get more water input to find out for sure. If nothing else, the tree there is removed and some minor things are touched up.

  4. DONE dig out culvert opening
    • State "DONE" from "STRT" [2020-06-16 Tue 17:22]
    • State "STRT" from "TODO" [2020-06-16 Tue 16:11]

    A huge rainstorm occurred, causing a lot of runoff in the area. The only damage locally was the small 4" culvert I recently installed had its opening buried in mud. Dig this out. If it's perma-clogged, enlarge the runoff area into a proper ditch.

    Done. Culvert was not clogged, just buried. There's still a lot of loose debris around the area, so check back in a few weeks.

1.11.14 CNCL consider purchasing additional 20 acres

  • State "CNCL" from "STRT" [2020-10-10 Sat 18:02]
  • State "STRT" from "TODO" [2020-10-03 Sat 19:47]

The 20 acre lot across the road is now for sale. Try calling the owner directly since I have his contact info. If I can't get through, I'll call the realtor number.

2020-10-03: Called and talked to owner. The property was listed for $120k, which the owner does indeed want to try to get for it for awhile. Decided to risk letting him sit on it a bit, as I firmly believe that's over-market value.

2020-10-10: Property sold for $110k, which I certainly wouldn't have paid. Regrettable, but the only way this would've turned out differently is buying at peak panic prices, thereby making a poor financial decision.

1.11.15 DONE patch up garden fence

  • State "DONE" from "STRT" [2020-10-15 Thu 19:07]
  • State "STRT" from "TODO" [2020-10-15 Thu 18:47]

The deer that committed suicide on the fence bent it out a good bit. I'm going to redo all fencing at some point, so just patch this up with some wire or something.

Done. Should be good enough until I redo this. Looks like digging the buried part out is going to be a pain.

1.11.16 CNCL move old wood to berm

  • State "CNCL" from "INAC" [2020-10-15 Thu 19:09]

There's a scattering of old wood pieces behind the berm. Move these to the berm to increase its size. Some are quite large and would require the tractor to move. Might skip those.

Looked at this area, and this would be a lot of work for not much gain. Will keep it here for now just in case, but probably will skip this altogether. I'll reevaluate in the late Fall.

Decided to skip doing this. Will let these pieces continue to rot. I'll have plenty of less useful wood to put here over the years if I continue cutting logs myself.

1.11.17 DONE clear out remaining stuff from PA house

  • State "DONE" from "STRT" [2020-10-16 Fri 23:38]
  • State "STRT" from "TODO" [2020-10-13 Tue 12:45]

I think the family got rid of most of my boxes of stuff there, which unfortunately included most of the valuable/useful items. However, some stuff remains, so might as well go through it and take the items I can use.

2020-10-13: Grabbed 2 boxes worth of stuff. Still need to go through one final time and store the useful items. Also grabbed a broom, metal toolbox, and a few other useful random items.

2020-10-16: All stuff cleared out. Trashed some stuff, kept other stuff, and some stuff will go to auction.

1.11.18 DONE get car inspection

  • State "DONE" from "STRT" [2020-10-17 Sat 10:16]
  • State "STRT" from "TODO" [2020-10-17 Sat 12:00]

Need to do this in 2020-10.


1.11.19 DONE fix water system

  • State "DONE" from "STRT" [2020-10-22 Thu 08:20]
  • State "STRT" from "TODO" [2020-10-20 Tue 07:55]

Woke up today with no water. I think it's something in the well system, either bad pump, pressure tank, switch, or controller. Note that it's probably time to replace the submersible well pump, so even if this isn't the problem, I should do this soon.

Called D&D, who said they will schedule us and call back. Will check back this afternoon if I don't hear anything and will go take a shower at the Mother's house if it's going to be awhile. If I need to replace the well pump, it'll at least be until next Thursday before I can schedule this with the local well company (BW Smith).

2020-10-20: Fixed later the same day. Well pump was broken and a new one was installed (Goulds 10GPM). The plumbers didn't have invoices, so they'll mail me a bill. This pump should be good until 2035, if I want to proactively replace it then (which I probably should). Inspected the pump pipe while it was out, and had them replace 2 hose clamps that connected the two sections of pipe. 2 of these had the bolts rusted out and weren't doing anything useful.

2020-10-21: Received invoice to A-'s email address, for some reason.

2020-10-22: Paid bill over phone with CC. Total was $922, so maybe shop around next time I replace this pump.

1.11.20 [9/9] do 2020 cleaning

  1. DONE clean cabinet tops
    • State "DONE" from "STRT" [2020-01-05 Sun 19:23]
    • State "STRT" from "TODO" [2020-01-05 Sun 17:31]

    I gave these a pass when we moved in, but they need a thorough scrubbing, especially in the kitchen. For some reason, there's a lot of dirt up there even though the rest of the cabinets are super clean.

    Done. House slightly less gross now.

  2. DONE clean master bathroom shower door frame
    • State "DONE" from "STRT" [2020-01-13 Mon 23:45]
    • State "STRT" from "TODO" [2020-01-13 Mon 20:53]

    This has had calcified gunk on it since move-in. Was lower priority to deal with at the time, but definitely still want to make this nice and shiny.

    Done. Took about 2 hours of hard manual labor, but end result is a huge improvement and looks near new now.

  3. DONE clean garage
    • State "DONE" from "STRT" [2020-01-15 Wed 15:56]
    • State "STRT" from "TODO" [2019-12-30 Mon 15:06]

    Bought a shop vac, partially for this purpose. Use it to clean out the entire garage. Should be able to keep after it after this point.

    2019-12-30: Moved all fencing stuff to shed. Partially vacuumed/swept.

    2020-01-01: Cleaned most of the rest. One more pass should do it.

    2020-01-15: Finished cleaning. Looks pretty good, for a pole barn garage.

  4. DONE take junk to dump
    • State "DONE" from "STRT" [2020-01-17 Fri 14:37]
    • State "STRT" from "TODO" [2020-01-17 Fri 11:24]

    Combine a dump run with neighbor. Only have half a load myself, but it'll be nice to clear it all out.

    Done. Unfortunately, neighbor scratched my rear window while loading. She said she'd pay for the repair though.

  5. DONE do 2020 neighbor trash cleanup
    • State "DONE" from "STRT" [2020-01-19 Sun 15:43]
    • State "STRT" from "TODO" [2020-01-19 Sun 15:03]

    Before the grass starts growing, cleanup this year's worth of trash that blew over from neighbor's property.

    Done. Not that bad this time. I guess they only generate about a couple grocery bags worth per year and last year was the accumulation.

  6. DONE finish cleaning stairwell
    • State "DONE" from "STRT" [2020-01-19 Sun 22:44]
    • State "STRT" from "TODO" [2020-01-19 Sun 21:10]

    Already mostly done, just need to complete.

    Done. Doing that right was more work than I thought. Walls there are ready for repainting, though I'll probably wait awhile for that.

  7. DONE clean basement ceiling
    • State "DONE" from "STRT" [2020-02-02 Sun 22:58]
    • State "STRT" from "TODO" [2020-01-30 Thu 21:00]

    This is already partly done. Finish cleaning ceiling in the main area and replace any missing staples. This doesn't include the ceiling above the drop tiles, which is lower priority.

    Done. Was a ton of work, but really cleaned up the place. Might give it another pass and tidy up one final corner next year. Also I'll get a roll of the cheaper 4 mil plastic sheeting from Walmart to do the patching, which should be good enough for non-load bearing purposes.

  8. DONE clean stucco ceiling
    • State "DONE" from "STRT" [2020-02-08 Sat 23:30]
    • State "STRT" from "TODO" [2020-02-03 Mon 22:26]

    Did a quick pass on this when we moved in and recently repaired any major spots, but it stills needs a proper, full cleaning. Once done, make a final pass to check for small spots.

    2020-02-04: Used the shop vac with the brush attachment, which seems to be the optimal tool available. Kitchen and living room done. Will hold off on doing any more spot repair until I get a container of off-white touch up paint.

    2020-02-08: Finished. Another job that's more work than it seems. Hopefully won't be as necessary in the future with keeping the house sealed up better.

  9. DONE remove paint splotches
    • State "DONE" from "STRT" [2020-10-23 Fri 12:32]
    • State "STRT" from "TODO" [2020-06-11 Thu 16:39]

    There's a few dark spots on the basement floor. I think they're paint. Use paint thinner, bronze wool, and a paper towel to clean these off.

    2020-10-22: Made a little more progress on this.

    2020-10-23: Finished. Also found some white paint splotches that I cleaned up too. Basement looks slightly better now.

1.11.21 DONE setup grease gun

  • State "DONE" from "STRT" [2020-10-23 Fri 14:58]
  • State "STRT" from "TODO" [2020-10-23 Fri 14:45]

Need this for greasing the mower PTO shaft and maybe the trailer. Install the tube of automotive grease I already have.

Installed tube of automotive grease. Forgot to put my improved coupler on though, but I think I'll save that for a second grease gun for the tractor. Should be okay, since I won't be using this setup as much anyway. If that changes, get another one.

1.11.22 [7/7] do 2020 lawnmower maintenance

  1. DONE get rid of riding lawnmower
    • State "DONE" from "STRT" [2020-01-01 Wed 15:09]
    • State "STRT" from "TODO" [2019-12-31 Tue 11:45]

    Won't start. Tried recharging battery, but didn't help. Either the solenoid, seat safety switch, or something else in the electrical system is probably broken. Fix this myself, take it in to be serviced, or sell as-is. Now that I have the tractor, I don't need this anymore.

    Upon closer inspection, the mower is leaking oil everywhere. I'll just make use of one of the free lawnmower pickup services. Emailed a guy on Craigslist who will come get it.

    Done. Guy came and grabbed mower. He'll also take appliances, so might send him an email if we replace some stuff.

  2. DONE reattach mow deck
    • State "DONE" from "STRT" [2020-04-06 Mon 12:09]
    • State "STRT" from "TODO" [2020-04-06 Mon 10:30]

    Put this back on and note procedure.

    Done. Taking this off is easy, but it's a bit of a pain to get back on. Looks like the best method is something like this:

    • Raise the lift arms the whole way.
    • Lock the left arm pins open.
    • Nudge in the deck, while being careful to not hit the various pieces of the underside.
    • Line up and lower the lift arms to reattach the deck in the back. Lift each side until the pin goes in.
    • Lie on the ground and push in the PTO shaft. Ensure the splines are lined up. The collar needs to be pulled back pretty far and can be stiff. Easiest way to do this seems to be pushing with the left arm and pulling the collar with the right. Pull back on the shaft to ensure it's locked in.
    • Reattach the front two latch pieces.

    I might want to keep an eye on the bolts that adjust the spacing for the rear attachment pins. These look like they could back out with vibrations. Once I take this off later in the year, I'll lube up all these parts so they hopefully go in easier next time.

  3. DONE sharpen push mower blades (mid-summer)
    • State "DONE" from "STRT" [2020-07-07 Tue 20:10]
    • State "STRT" from "TODO" [2020-07-07 Tue 19:59]

    Do the mid-season blade sharpening.


  4. DONE sharpen push mower blades (end of season)
    • State "DONE" from "STRT" [2020-09-29 Tue 16:50]
    • State "STRT" from "TODO" [2020-09-29 Tue 16:00]

    Might as well front-load this.


  5. DONE service tractor
    • State "DONE" from "STRT" [2020-10-22 Thu 13:47]
    • State "STRT" from "TODO" [2020-10-15 Thu 11:21]

    Take tractor in for first service visit once done mowing. Needs oil change, lube replenish, (probably) air filter, and replacement seals on the front loader hydraulic cylinders.

    2020-10-11: Hosed off tractor, so should be good enough to go in for service. Will do the full cleaning when I get it back from that. See if stickers can get replaced (2 Kubota logo ones on the sides).

    2020-10-15: Called and scheduled appointment for the following week. They'll give me a call before the service tech comes out. Ordered the "general service" visit. Apparently, having the service done on-site is cheaper than having it picked up.

    2020-10-19: Tractor serviced. Tech says oil should be good until 200 hrs. Bill will arrive in mail, or I can call in and pay over the phone.

    2020-10-22: Paid bill over the phone. Total was $600-something. A little pricey, but won't have to do this for quite some time, so not bad overall.

  6. DONE get 1/2" socket set
    • State "DONE" from "STRT" [2020-10-23 Fri 19:53]
    • State "STRT" from "TODO" [2020-10-23 Fri 16:00]

    Check if I have a 1/2" socket set. Need these to work with the torque wrench. If not, get a full set with the wrench. I need to at least max out at 30mm, so might have to do an entire 3/4" set. Also make sure I'll have a 22mm one for the mow deck gear box.

    2020-10-23: Looks like my larger torque wrench is 1/2". I also have 3/8" versions of the smaller sockets. So, I just need the 30mm and 22mm individual ones, I think.

    Grabbed just these two sockets.

  7. DONE remove mow deck and sharpen blades
    • State "DONE" from "STRT" [2020-10-24 Sat 13:50]
    • State "STRT" from "TODO" [2020-10-23 Fri 14:18]

    Do this in the Fall after the grass stops growing. Note that every two years, I need to replace the gear box oil, starting now.

    2020-10-19: Bought a second set of blades so I can just quick-swap them and sharpen the most recently used set whenever I get around to it.

    2020-10-23: Deck removed. Note for the future: pick up the deck on the side with the deck PTO shaft so it doesn't come apart. This is always a pain to get back together. Maybe even tape it next time.

    2020-10-24: Done. Some of the blade nuts were super-torqued. I put the new ones on at around 50 ft-lbs, which will hopefully be enough. I still need to sharpen the old blades, but I'll do that whenever I have some free time. Note that after getting the deck PTO shaft back together, I taped it up, so remove that before remounting. Also seems the trick to get that back on is to keep rotating it around while trying to insert it. Perhaps it only goes on in one angular position.

  8. DONE pressure wash tractor
    • State "DONE" from "STRT" [2020-10-24 Sat 13:53]
    • State "STRT" from "TODO" [2020-10-24 Sat 12:43]

    Start doing this every Fall and Spring. Note to be careful not to spray into the radiator area.

    Done. Tractor wasn't too dirty this time. Could probably get away with just hosing it as long as I clean it every few mowing sessions.

1.11.23 DONE setup trail cam

  • State "DONE" from "STRT" [2020-10-24 Sat 16:07]
  • State "STRT" from "TODO" [2020-10-13 Tue 19:47]

A deer committed suicide on the large garden fence. Dumped the body in the lower forest clearing, so set the trail cam up there to see what eats it. Particularly interested if coyotes come by.

2020-10-13: Camera set up. Will leave it there for a month or so.

2020-10-24: Collected, but unfortunately it looks like the battery died either before or just after putting it up so the card was blank. From now on, always test the charge before placing in the future.

1.11.24 [3/3] slightly improve garage

  1. DONE get stool for outdoor workshop
    • State "DONE" from "STRT" [2020-01-21 Tue 14:36]
    • State "STRT" from "TODO" [2020-01-17 Fri 23:37]

    Either get a new stool for the indoor workshop and move that one outside, or get a new one for out there. Since the garage is dirty, I'd prefer a simple one that can easily be wiped off. I also intend to use this for shooting from the window, so it needs to not have casters. A- ordered, along with some better goggles.

    Received and assembled. Actually looks pretty good and is sturdy. Only complaint is the seating material seems a little thin and likely to need duct tape eventually.

  2. DONE repaint garage trim
    • State "DONE" from "STRT" [2020-02-03 Mon 18:12]
    • State "STRT" from "TODO" [2020-01-11 Sat 16:33]

    This paint needs some touch up. Since it's chip board, just paint over what's there. Found 1.5 buckets of the correct paint. Bought some brushes. Waiting for a series of dry days to do this.

    2020-01-11: Did one side. Color isn't the same as what was there, but is close enough of a match to the trim/roof. Since that's the case though, will have to do a full new coat.

    2020-02-03: Finished. Looks pretty good.

  3. CNCL setup power strip in garage
    • State "CNCL" from "TODO" [2020-10-28 Wed 12:17]

    Mount one of the super long strips to space out the power tools. Might cancel this, since I found another outlet under the bench in the middle.

    Canceling for now. If I build a table for the table saw, I'll reconsider this, but currently, I would get sawdust all over a power strip here.

1.11.25 DONE get second grease gun

  • State "DONE" from "STRT" [2020-10-28 Wed 21:37]
  • State "STRT" from "TODO" [2020-10-23 Fri 15:31]

Get another one of the Lincoln grease guns and a tube of whatever synthetic grease they sell at the tractor dealer. Install the improved coupler on it.

2020-10-23: Ordered. Also picked up a tube of Kubota branded grease. All they had in stock was the moly-lithium, so I guess I'll use that. Should be fine for a smaller tractor used lightly and occasionally.

2020-10-28: Received and setup with tractor grease.

1.11.26 [13/13] do 2020 garden

  1. DONE make 2020 garden plan
    • State "DONE" from "STRT" [2020-01-19 Sun 15:11]
    • State "STRT" from "TODO" [2020-01-11 Sat 01:18]

    Formulate this plan by end of 2020-01. So far, I know I'll want to at least add onions and carrots. I might also expand the small garden. Otherwise, I'll need to fix its fence door, which broke off in a wind storm.

    2020-01-11: Seeds ordered. Preliminary plan created. Will think about this a bit more to be sure it's what I want to go with. If I do get to the small garden expansion, I'll just add more corn and watermelons. I'll also throw sunflower and any spare pumpkin seeds in the hog pen.

    2020-01-19: Pretty happy with this plan and will stick with it for now. Depending on space, I may try to squeeze an additional pepper row in the big garden, probably Thai or cayenne.

    2020-01-22: Seeds arrived.

  2. DONE decommission berry patch
    • State "DONE" from "STRT" [2020-03-30 Mon 20:54]
    • State "STRT" from "TODO" [2020-03-30 Mon 16:45]

    This patch isn't doing anything useful, so pull the fence and stakes from it. Will still mow around these plants, just in case they make it though.

    Done. Moved fence as-is to temporarily enclose a new berry area adjoining the small garden. Might move the healthy blueberry plant over here too.

  3. DONE plant blueberry bushes
    • State "DONE" from "STRT" [2020-03-30 Mon 20:56]
    • State "STRT" from "TODO" [2020-03-30 Mon 18:50]

    Put these just north of the small garden. Fence this in.

    Done. Now have 2 fenced blueberry plants here.

    2020-04-01: Also moved the healthy blueberry plant from the old berry patch here.

  4. DONE prep garden
    • State "DONE" from "STRT" [2020-04-06 Mon 20:12]
    • State "STRT" from "TODO" [2020-02-25 Tue 17:18]

    Looks like I won't get to the garden expansion in time. So, just do the normal garden routine.

    • [X] Start seedlings, Habanero, 1 large cell tray: Done 2020-02-25.
    • [X] Start seedlings, Thai peppers, 1 large cell tray: Done 2020-02-25.
    • [X] Get more trays: Bought 4 of the large cell, which seem to only be sold at Home Depot. Done 2020-02-29.
    • [X] Start tomatoes, cherry tomatoes: 2 pots cherry tomatoes. 1 tray tomatoes, with 15 cells of Druzba and 3 cells of my old beefsteak. Done 2020-03-01. Update: Only 2 Druzba sprouted. If these survive, will have to save a lot of seeds.
    • [X] Start other peppers: 1 tray green pepper, 1 tray jalapenos, 15 cells cayenne, 3 cells Hungarian. Done 2020-03-01.
    • [X] Fix fence door: Now fully functional again. Done 2020-03-10.
    • [X] Thin out seedlings and normalize cells: Done 2020-03-15. Update: 2nd pass done 2020-03-18. Also added 4 beefsteak tomatoes in pots.
    • [X] Get more potting soil: Got 2 more bags. Should be good until next Spring. Done 2020-03-17.
    • [X] Fertilize: Cleaned chicken coop and put all plop in small garden. Was going to add neighbor's horse manure, but probably won't get around to it. Done 2020-03-20.
    • [X] Clear debris: Should normally do this by mid-March at the latest, but had to work around randomly spaced rain. Done 2020-03-31.
    • [X] Till soil: Gardens and raised bed tilled. Done 2020-04-03.
    • [X] Hoe soil: Done 2020-04-06.
    • [ ] Rake soil: Did the hoeing with the rake, so going to try skipping this.
    • [X] Start backup plants: Started 1 small cell tray of hot peppers and tomatoes. Second small cell tray of jalapeno and green pepper. Done 2020-04-06.
  5. DONE plant pear trees
    • State "DONE" from "STRT" [2020-04-07 Tue 20:00]
    • State "STRT" from "TODO" [2020-04-07 Tue 19:20]

    I think one of these never activated, but I'll plant both anyway. Current thinking is to put these north of the small garden, but will think about it some. Will need to fence these in.

    Decided to plant them in the location of the old berry patch. Enclosed the healthy one and the old grape vine in a spare section of low fencing. If this works out, will have to replace the fencing later. Also will need to remember to remove the twist wire affixing it to the supporting iron bar.

    2020-05-03: Second pear tree came back to life. He was leaning a bit, so added a stake.

  6. DONE clean up mulberry tree
    • State "DONE" from "STRT" [2020-04-30 Thu 17:52]
    • State "STRT" from "TODO" [2020-04-30 Thu 14:51]

    The remnants of electrical fencing are choking the mulberry tree. There are also several dozen nails and boards in it.

    Done. Pulled all nails reachable. Left a few that were dangerous to get to. Covered nail holes with brown paint. Removed swing. Removed wires, but had to leave two sections that the tree grew around. Tree looks pretty good now and should be safer to climb for picking berries.

    Once winter comes, it might be a good time to round up the rest of the electrical fencing.

  7. DONE enclose new raised bed
    • State "DONE" from "STRT" [2020-05-02 Sat 16:32]
    • State "STRT" from "TODO" [2020-04-08 Wed 11:49]

    I was thinking that I might be able to get away without fencing this in, hoping hot peppers would grow before the deer got to it. Turns out, these get eaten long before then. So, will have to fence it in. Already bought stakes and fencing, just need to set it up.

    2020-04-12: Installed stakes, but leaving fencing off for now until I plant.

    2020-05-02: Fence installed. The fencing is such that two sides can be easily exposed if needed, but that probably won't be the case if I keep peppers in here as planned.

  8. DONE fertilize plants
    • State "DONE" from "STRT" [2020-05-07 Thu 16:37]
    • State "STRT" from "TODO" [2020-05-07 Thu 16:16]

    Some of the plants in the flower bed on the south side of the house are a little unhealthy looking. The ground there is rocky clay, so will try adding some fertilizer to see if that helps. Already bought a container of powder fertilizer. Apply and add water. Will also use some on the fruit trees while I'm at it.

    Done. Fertilized by just dumping it directly on the ground without mixing it with water. It's going to rain all day tomorrow, so this will probably work just as good, I hope. Also just did the north half of the strawberry patch, to see if I can tell any difference.

  9. DONE plant garden
    • State "DONE" from "STRT" [2020-06-07 Sun 21:55]
    • State "STRT" from "TODO" [2020-04-25 Sat 13:50]

    Follow the previously-made plan files. Might do the directly outside plants a little early, since I have extra seeds. Looks like 2020-04-22 would be a good day for this, but check the 10-day forecast first.

    2020-04-25: Corn, acorn squash, pumpkin, and snow peas planted.

    2020-05-02: Spaghetti squash, watermelon, cantaloupe, green beans, and carrots planted. Small garden done.

    2020-05-13: Planted the two pepper buckets from last year. These were very root-bound. If I do inside peppers again, they'll need a bigger bucket. There was also a late frost last week, so will have to keep an eye out for stuff not sprouting.

    2020-05-14: Onions and both pots of cherry tomatoes planted. Started hardening seedlings.

    2020-05-15: 2 tomatoes planted as a first test run. Might've been a little too windy for it though.

    2020-05-16: 2 more tomatoes planted.

    2020-05-23: Neighbor gave us 4 brussels sprout and 2 abromsia tomato seedlings, so planted those. The latter 2 might be mislabeled, I think, so keep an eye on them.

    2020-05-24: Planted tray each of green, jalapeno, habanero, and thai peppers.

    2020-06-06: Planted all remaining tomatoes. Left remaining trays outside.

    2020-06-07: Planted all remaining peppers.

    2020-07-13: Planted round 2 of green beans, since the late frost killed most of the first batch, I think.

  10. DONE can tomatoes
    • State "DONE" from "STRT" [2020-08-25 Tue 21:45]
    • State "STRT" from "TODO" [2020-08-24 Mon 21:28]

    Try canning tomatoes, as it's one of the more useful things to have in canned form.

    Did 7 jars (the maximum the pot holds) with some leftovers. Worked out great and is certainly worth the trade-off. Will continue doing this for remaining loads of tomatoes and maybe other stuff next year.

  11. DONE can hot sauce
    • State "DONE" from "STRT" [2020-09-14 Mon 00:14]
    • State "STRT" from [2020-09-06 Sun 20:00]

    Make habanero hot sauce and can it. Collected first huge load of habaneros, so should be enough for multiple jars. Will also throw in whatever cayennes I have. Borrowed some small wide-mouth jars from M-. Once they come back in stock, get some to give back to her.

    Successfully complete. I won't get to these for at least 6 months, so will find out for sure then. Dumped most of my non-sealed hot sauce from previous years (minus one jar).

    I modified the preparation to save power and time by just dicing the peppers and boiling them with vinegar, salt, garlic, and garlic powder in the pot. Then I ran the result (once the vinegar mostly boiled off) through the food processor. The result went directly into the jar with some lemon juice.

  12. DONE collect trellises and stakes
    • State "DONE" from "STRT" [2020-09-24 Thu 19:36]
    • State "STRT" from "BLCK" [2020-09-22 Tue 18:39]
    • State "BLCK" from "TODO" [2020-06-18 Thu 14:34]

    After the first frost, collect all stuff. Collected the snow peas trellises after they were done already.

    2020-09-23: All trellises back in shed. Bars still out.

    2020-09-24: Stored bars.

  13. DONE save seeds
    • State "DONE" from "STRT" [2020-10-10 Sat 20:54]
    • State "STRT" from [2020-08-26 Wed 10:18]

    Make sure I save seeds from everything I want to have the option for next year:

    • [X] Cantaloupe (Monica version)
    • [X] Watermelon
    • [X] Snow peas: Low on seeds for this. Might still want to buy more.
    • [X] Cherry tomato
    • [X] Tomato (cherry/normal mix)
    • [X] Green pepper
    • [X] Pumpkin
    • [X] Cayenne
    • [X] Crookneck squash
    • [X] Tomato (normal)
    • [X] Tomato (beefsteak)
    • [X] Habanero
    • [X] Jalapeno
    • [ ] Spaghetti squash
    • [X] Corn
    • [X] Sunflower

    Will buy different onion, Thai pepper, and carrot for next year. Will also start over again on Spaghetti squash and maybe pumpkin, due to cross pollination. Next year I'll plant these a month apart to reduce this.

1.11.27 DONE service UTV and trailer

  • State "DONE" from "STRT" [2020-11-21 Sat 15:58]
  • State "STRT" from "TODO" [2020-10-21 Wed 11:21]

Take the UTV in for a service visit once it gets cold. Might as well drop off the trailer too while there to get inspected and grease reservoirs topped off.

Appointment scheduled for 2020-11-21 0900 for both. Getting the 50 hour service. Get everything staged the day before.

Done. Looks like the battery was going bad, so had that replaced. They also replaced the license plate holder on the trailer.

1.11.28 [10/10] do 2020 minor repairs

  1. DONE replace missing wall covers
    • State "DONE" from "STRT" [2020-01-03 Fri 02:15]
    • State "STRT" from "TODO" [2020-01-02 Thu 18:14]

    The basement unfinished wall has one light switch and one outlet that are uncovered. Might as well cover these.

    Done. Grabbed two standard size covers and mounted.

  2. DONE install missing door stops
    • State "DONE" from "STRT" [2020-01-19 Sun 15:05]
    • State "STRT" from "TODO" [2020-01-18 Sat 13:49]

    A few doors need these to prevent drywall damage.

    2020-01-18: Bought 3 of what I think are the same kind, from Lowes.

    2020-01-19: Job complete. Did an audit and will need 3 rubber floor stops for the rooms with vents in the way. Once I do the basement base trim, I'll probably need some additional normal ones too.

  3. DONE get rubber wedge stops
    • State "DONE" from "STRT" [2020-01-21 Tue 15:53]
    • State "STRT" from "TODO" [2020-01-20 Mon 13:52]

    Need 3: office, NE bedroom, and E master bedroom door. Get ones with a wide base, since they'll be on carpet.

    Done. Bought and put into place. Also got another one for the downstairs door, which is just a temporary measure until the trim is in place. If I feel like it later, I could add weight to them by filling them with rocks, held in place with wood glue.

  4. DONE maintain wood surfaces
    • State "DONE" from "STRT" [2020-01-05 Sun 17:36]
    • State "STRT" from "TODO" [2019-12-28 Sat 21:48]

    None of the wood furniture in the house has ever had any maintenance done. Use Old English scratch cover on all dark wood and Old English lemon oil on all light wood. Will also do all cabinets. Might take a week or two to get through everything.

    2020-01-02: Finished all basement items and smaller upstairs items.

    2020-01-02: Bought wood putty and stain markers. Will circle back around and use these on everything once done wiping stuff.

    2020-01-04: Over half way through upstairs items.

    2020-01-05: Done. That was a lot of work. Some furniture was returned to like-new state, others were already that way, and a few were beat up enough that the condition was just improved some.

  5. DONE fix garage lighting
    • State "DONE" from "STRT" [2020-01-16 Thu 15:20]
    • State "STRT" from "TODO" [2020-01-16 Thu 13:18]

    Only have one currently functional overhead light.

    Done. Now the middle and eastern lights work. West lights don't have tubes, but it's pretty bright in there now. Will grab those whenever I get around to it.

    Did these tasks:

    • [X] Test and remove any non-working tubes.
    • [X] Install long tubes in middle fixture.
    • [X] Dispose of all non-working tubes.
    • [X] Hook up and confirm functionality of middle fixture.
  6. DONE seal up basement door frame
    • State "DONE" from "STRT" [2020-02-10 Mon 11:24]
    • State "STRT" from "TODO" [2020-02-09 Sun 17:39]

    This doesn't leak like before, but if the rain comes in at a certain direction, it'll still make a small puddle. I think it's the bottom of the frame on the one side, where the board is slightly hollow. Get and use a can of Great Stuff Gaps and Cracks.

    2020-02-08: Bought a can of foam. Also noticed a light draft in the target area. Sealing this up should help improve heat retention and keep out bugs.

    2020-02-09: Applied to area. Also removed the insulation from the bottom on that side and replaced it with more foam.

    2020-02-10: Done. Cut dried foam. Confirmed draft no longer present. For follow-up, I'll keep an eye on this for the next few rainstorms. I'll also need to cut down the spacer boards before installing a door frame. I may also add some additional foam around the frame on the outside too.

    2020-03-01: A small remaining leak was reported. Applied additional foam on outside.

    2020-03-02: Cut new foam.

  7. DONE fix shovel rack
    • State "DONE" from "STRT" [2020-04-20 Mon 12:44]
    • State "STRT" from "TODO" [2020-04-20 Mon 12:03]

    The shovel rack is cracked. Drill a new hole in it and insert a screw.

    Done. Looks and functionality restored.

  8. DONE stain and finish shoe rack
    • State "DONE" from "STRT" [2020-05-11 Mon 15:38]
    • State "STRT" from "TODO" [2020-05-07 Thu 18:35]

    This is the shelf unit we found in the trash. This came unfinished and giving it a stain and finish similar to other furniture in the living room will help it match. Use dark walnut stain then give it a polyurethane coating.

    2020-05-07: Sanded off the water stains. Applied a coat of finish. Probably should've removed all of the previous finish, which I now think was a paint that was then haphazardly sandblasted a bit. When done, be sure to use an Allen wrench to tighten the legs.

    2020-05-10: Applied polyurethane.

    2020-05-11: Finished. Probably could be improved by another coat of polyurethane, but this is good enough for a shoe rack. Looks pretty good in the living room.

  9. DONE cut bolt inside mailbox
    • State "DONE" from "STRT" [2020-06-17 Wed 17:57]
    • State "STRT" from "TODO" [2020-06-17 Wed 16:12]

    This sticks up and sometimes packages get lodged in there as a result. Previously tried with my angle grinder, but it's too big.

    Fixed. Borrowed neighbor's angle grinder, which fit.

  10. DONE fix SW bathroom towel rack
    • State "DONE" from "STRT" [2020-10-14 Wed 20:00]
    • State "STRT" from "TODO" [2020-10-12 Mon 18:34]

    The brackets are present, it just needs a bar. I'll fabricate one out of a 5/8" square dowel.

    2020-10-12: Bought square dowel. Sanded and stained.

    2020-10-14: Applied finish.

    2020-10-14: Done. Looks pretty good.

1.11.29 [10/10] do 2020 wood stove tasks

  1. DONE use soot remover
    • State "DONE" from "STRT" [2020-01-24 Fri 08:07]
    • State "STRT" from "TODO" [2020-01-19 Sun 13:23]

    Have 3 in stick form and a canister of a similar product from neighbor. Use half the can. Wait until there's a mild/moderate wind vectored away from the house and toss this in.

    2020-01-19: Started using. Did 2 doses. Instructions say to use a little at a time, so will spread it out over a few days.

    2020-01-24: Done using canister. Returned remainder to neighbor. Seems to have helped some, I think. Will keep an eye out for more of the sticks.

  2. DONE shut down wood stove
    • State "DONE" from "STRT" [2020-03-27 Fri 18:09]
    • State "STRT" from "TODO" [2020-03-24 Tue 12:49]

    Looks like a good day to do this will be 2020-03-22 or 2020-03-23. Might be a bit of a stretch for the remaining wood though. I'll also do the preliminary stove cleaning and clean out the entire shed. Will save the rest of the cleaning for later once I have a brush.

    2020-03-24: Switched over to heat pump. Will let the coals cool off overnight before shoveling. Cleaned out shed of all wood chips and dust. Inside is ready for a new layer of stones.

    2020-03-26: Installed most of the stones needed. Didn't do the area in front of the stove yet in case I spill anything unloading the last of the ashes.

    2020-03-27: Task complete. Will do the thorough cleaning sometime before Fall. Starting next year, I'll pile ashes up in some location and let them sit for several months before putting in garden. This will allow all of the salts to be removed from them, which is the only downside to using ash as fertilizer.

  3. DONE clean wood stove and flue
    • State "DONE" from "STRT" [2020-09-08 Tue 22:15]
    • State "DONE" from "STRT" [2020-05-07 Thu 23:13]

    Once wood stove is shut down in the Spring, measure flue (looks 8") and get appropriate size brush and flexible rod (will need about 8'). Clean flue and interior. Might need a chisel.

    2020-03-28: Bought brush and pre-paid for a 6 foot rod. Go back in to pick that up on 2020-04-02. Also grab chisel then.

    2020-04-07: Picked up rod and bought chisel. Task is ready to be started.

    2020-04-19: Started on interior.

    2020-04-20: Cleaned part of the flue, but noticed creosote chunks collecting at the bottom. Will try getting out the shop vac and slurping those up. The vent that feeds into it needs cleaned too. Not sure how to get the ashes out of there yet. Seems like this stove is a bad design from a cleaning perspective.

    2020-06-03: Had idea to use the drain cleaner, which is a stiff but flexible metal strip, to try to clean this. Doesn't seem to be the best tool for the job, but might dislodge any chunks.

    2020-09-06: Cleaned out flue with shop vac, mostly. Looks like there's a catch area that's completely packed full of gross old ash that's turned to mud. Slurped up a good bit of this until the vac tube clogged.

    2020-09-08: Used the hatchet to hack away a good bit of the creosote in the burn chamber. Was going to take another stab at slurping up ash from the catch basin, but will call this done for the year since it's going to start raining again in a day. Feeling pretty confident this will improve stove efficiency, but will have to run it to find out for sure.

  4. DONE clean wood stove flue more
    • State "DONE" from "STRT" [2020-10-24 Sat 16:09]
    • State "STRT" from [2020-10-24 Sat 14:09]

    Decided to give this one final pass.

    Done. Filled another shop vac worth of dirt. The flue could use several hours of brushing, but is slightly better now. Also removed more gunk from the collection pipe.

    Note: in the future, use some duct tape around the shop vac sections so I don't lose them deep inside the flue with no way to get them out. This happened this time, but I was able to eventually fish it out with the brush handle.

  5. DONE order load of firewood
    • State "DONE" from "STRT" [2020-10-28 Wed 17:30]
    • State "STRT" from "TODO" [2020-10-19 Mon 14:44]

    Gary's sells tandem loads of firewood, which is about 3.5 cords. Maybe get one of these, just to make sure wood supply isn't an issue.

    2020-10-19: Ordered. They'll give a call before bringing it. Usually it only takes a few days for them.

    2020-10-20: Got a few calls, with changing delivery times. Last schedule was for delivery on 2020-10-21 0900.

    2020-10-21: Delivered and paid. A decent sized load. Need to stack. Asked the delivery guy about wood stove installations and he said there's a guy nearby off 29, maybe on the road to the left where the chicken farm is, or possibly to the right at the same intersection. Supposedly there's a sign. Also, if I get another load from these guys, ask for the non-internal wood stove cut. This is a little pricey, but very fast/convenient.

    Might get 1 more load in a couple weeks or give W- a call.

    2020-10-28: Finally stacked and cleaned up.

  6. DONE top off wood stove water tank
    • State "DONE" from "STRT" [2020-11-07 Sat 15:56]
    • State "STRT" from "TODO" [2020-11-07 Sat 15:00]

    Fill this up early to check for leaks.

    Looks good. Only a few gallons evaporated it seems, since it only took a few minutes to top off.

  7. DONE start wood stove
    • State "DONE" from "STRT" [2020-11-22 Sun 17:14]
    • State "STRT" from "TODO" [2020-11-22 Sun 15:04]

    Looks like a good day to do this will be 2020-11-22.

    Everything seems to be working great. Will definitely need more wood though.

  8. DONE cut firewood
    • State "DONE" from "STRT" [2020-12-15 Tue 17:12]
    • State "STRT" from "TODO" [2020-08-28 Fri 17:21]

    Cut and buy enough for next winter. Will use chains and truck or tractor to drag some logs out of the pile.

    2020-08-27: Tried dragging logs with truck and this works fine. My chain's a little shorter than I'd like, so I'll need to be extra careful or get a longer one. Attaching the chain to the straight dual-ball hitch seems the best solution.

    2020-08-28: Started cutting.

    2020-09-04: Chain saw is non-functional. Will try to get serviced or parts sent out. Should still be under warranty.

    2020-09-08: A- called the support line and they said they'll send a replacement saw. So, crisis averted, provided it shows up in a reasonable amount of time. Though the customer service is good, I suppose, calling in makes for a 3 hour hold. Only do this from a plugged in phone and have the ability to send pictures they'll request.

    2020-09-17: New chainsaw arrived. Resumed cutting logs.

    2020-10-13: New chainsaw keeps overheating, but I managed to fix the old one, so continuing to cut wood. For some reason, some of these rounds are very tough to split.

    2020-10-23: A few cords are cut, and with the existing 3.5 cords of ordered wood, we should be in a good place for winter. However, I'll at least do enough to fill up the outside stack too, so maybe cut one more cord and keep it coming in during the winter occasionally.

    2020-12-15: Now have enough wood to get through the winter. Will still continue to cut some when weather is favorable.

  9. DONE fix chainsaw
    • State "DONE" from "STRT" [2020-12-15 Tue 17:13]
    • State "STRT" from "TODO" [2020-11-08 Sun 15:58]

    The newer electric chainsaw isn't feeding oil. Hopefully, overheating didn't damage it. Remove the bar and clean it out thoroughly, and check the oilway to make sure it isn't clogged. Test it by running it in front of something to ensure oil sprays out.

    2020-11-08: Tried cleaning out the oilway. Only did the blade part, since I couldn't figure out a way to remove the oil pump part. Will give it a try next time I cut wood.

    2020-12-15: Calling this hopefully done. Will reopen if that turns out not to be the case.

  10. DONE order another load of firewood
    • State "DONE" from "STRT" [2020-12-30 Wed 08:15]
    • State "STRT" from "TODO" [2020-12-10 Thu 09:25]

    Get an additional load of the outdoor stove cut wood. This will get us through the winter, relieve any pressure to get the logs cut in time, and get a good base of wood for next year.

    2020-12-10: Ordered and got delivered same day. Got a large load. Might have problems finding room for it, but I'll figure it out. A little pricier this time, so ask for quote before ordering again.

    2020-12-13: Wood stacked. A little cleanup still needed.

    2020-12-30: Finally dried enough to clean up all the debris.

1.12 stuff

1.12.1 DONE finish organizing pegboard

  • State "DONE" from "STRT" [2020-01-16 Thu 15:23]
  • State "STRT" from "TODO" [2020-01-08 Wed 22:09]

This is functional, but if I can decide on an optimal arrangement for this, I can zip the hooks to lock them down and prevent wobble when removing stuff. Will wait until I have final tools. Already bought zip ties and ordered spare hooks.

  • [X] Receive additional hooks in mail.
  • [X] Mount workshop computer, if I can get it working.
  • [X] Decide where stuff should semi-permanently go.
  • [ ] Zip tie hooks.

Calling this done for now. I have a few additional tools I need to get, but that might be awhile. Otherwise, things look pretty good.

1.12.2 CNCL repair truck rear window scratch

  • State "CNCL" from "TODO" [2020-02-18 Tue 11:00]

Repair the scratch that is on the main rear window and center sliding window. This might not even be possible due to the UV coating on it.

Canceled. I suppose I'll just live with this, as it's not too bad and not worth the hassle. Info online seems to indicate it would require a full window replacement.

1.12.3 DONE deal with sick cat

  • State "DONE" from "STRT" [2020-02-20 Thu 17:02]

Meow Meow's tumor ruptured and is infected. Check to see how much it'll cost to fix. The tumor might also be cancer, in which case, it's probably a lost cause. She has also been in general decline for years now and very little about her isn't broken.

Done. Meow Meow had not just one, but many tumors, lymph node problems, and a host of other previous-unknown issues. All of this would require extensive tests and surgery, which at that age, would probably not even be viable anyway. Had the cat put down since she was in constant pain. Buried her in the back next to the shooting berm.

1.12.4 DONE setup fitness area

  • State "DONE" from "STRT" [2020-03-12 Thu 22:50]
  • State "STRT" from "TODO" [2020-03-12 Thu 21:21]

Will just start this with an adjustable bench. Might add a dumbbell rack and mat for the area later. Mat sections are available at Home Depot.

Leaning towards the REP Fitness AB-3000 FID. Buy direct from their site.

2020-03-02: After shipping, buying direct is exactly the same price, so I'll just get on Amazon, I guess. Will order in a few days, since I don't want it arrive when I'm on a forthcoming work trip.

2020-03-07: Ordered.

2020-03-11: Item arrived.

2020-03-12: Setup complete. Looks pretty good. Might keep it covered with a moving blanket when not in use. For now, fitness area is done.

1.12.5 DONE apply Rain-X to windshield

  • State "DONE" from "STRT" [2020-03-25 Wed 14:25]
  • State "STRT" from "TODO" [2020-03-25 Wed 14:01]

Found a bottle of this left by the previous homeowners. Will give it a try. Also found some polish that I might use later once it gets warm enough to wash the truck.

Done. Cleaned windshield and wipers with alcohol. Applied 2 coats of Rain-X with shop towel. Then wiped off with a clean shop towel. Will give this a try and see if it's worth the hassle. Still have plenty of the stuff left too.

1.12.6 DONE setup/test pressure washer

  • State "DONE" from "STRT" [2020-05-01 Fri 17:56]
  • State "STRT" from "TODO" [2020-05-01 Fri 15:37]

Bought a Greenworks corded electric pressure washer for use on the deck refinishing job. Set this up and try it out by washing the Mule.

Works great, though assembly instructions were a bit vague. Mule cleaned. Will do other vehicles when I have some spare time.

2020-05-04: Did all other vehicles, the trailer, lawnmower, and live trap. Might make a habit of doing this every Spring.

2020-05-05: Put box in attic. Instructions and a nozzle cleaning pick are there.

1.12.7 DONE setup fishing rod

  • State "DONE" from "STRT" [2020-08-19 Wed 23:10]
    • State "STRT" from "TODO" [2019-04-04 Thu 08:22]

Got a rig from the local auction house. It's a Berkley Cherrywood rod and a Penn 420SS spinning reel. Got for $42. Already owned tackle and line, so got this in order to be able to transfer fish. I think I'll get a new spool of lighter line though, since the one I have is 40lb.

  • [X] Separate all deep sea and very large tackle: Put into some of the small tackle boxes to take to auction eventually.
  • [X] Get some additional line and bobbers: Done. Got 14lb line.
  • [X] Install line: Installed 14lb line.
  • [X] Put swivel and sinker on line: Done.
  • [X] Let line sit on reel for a week:
  • [X] Practice casting and using reel.

Works pretty good. Needs some finger skills on the line itself for a perfect cast. Maybe later I'll try catching and releasing 1 or more of catfish, bass, and bluegill from the large pond, just to look at them. After that, I'll leave them alone unless I have good reason to do otherwise.

1.12.8 CNCL fix phone

  • State "CNCL" from "TODO" [2020-09-01 Tue 17:56]

Text messages on my Tracfone are either getting lost or coming in hours/days later. Wait a few days to see if this fixes itself. If not, either call support or post on

2020-08-31: Text messages seem to be received immediately now. Will give it another test on another day.

2020-09-01: Another day tested and seems to receive messages immediately. I guess it was not the hardware but local infrastructure. Canceling task.

1.12.9 DONE go fishing

  • State "DONE" from "STRT" [2020-09-20 Sun 21:19]
  • State "STRT" from "TODO" [2020-09-17 Thu 16:41]

Setup the fishing rod with a twister tail grub bait and see if I can catch a fish. I think people usually use jig head hooks with these, but I suspect a plain one will work too. Use the fish weighing scale to weigh it, if I catch one. Might be a bit late in the year to do this, so results may be disappointing.

2020-09-17: Got a few bites but wasn't able to reel anything in. Will try again later. There's a lot of algae out there now, which decreases effectiveness.

2020-09-18: Went out again for another 30 min or so, with the same results.

2020-09-20: Switched to a bobber, bullet sinker, swivel, and hook setup. Looks like I'll need more swivels. I prefer the cork bobbers too, so will get a couple more of those. Calling this mostly done for now, at least until late spring.

1.12.10 DONE make leather burnishing tool

  • State "DONE" from "STRT" [2020-09-23 Wed 21:40]
  • State "STRT" from "TODO" [2020-09-23 Wed 16:30]

Get a stick of hardwood and make one of these. Cut a notch in it for running along edges.

Left this unfinished and a little bulky in case A- wants it reformed some.

1.12.11 DONE organize computer cable collection

  • State "DONE" from "STRT" [2020-10-15 Thu 10:21]
  • State "STRT" from "TODO" [2020-10-13 Tue 19:49]

Get a tall tote for this.

2020-10-13: Tote acquired.

2020-10-15: Done. Moved some of the items that weren't computer parts or cables into the desk.

1.12.12 DONE replace sledgehammer handle

  • State "DONE" from "STRT" [2020-10-15 Thu 19:05]
  • State "STRT" from "TODO" [2020-10-11 Sun 18:26]

Missed a swing on a splitting wedge and the handle, which was already beat up and taped, snapped. Will need to get and install a new one.

2020-10-11: Got the step wedges out and the wood partially out. Need a narrower chisel to finish the job.

2020-10-12: Bought 1/2" chisel and used it to remove the wood. Looks like the hole is 1". Handles at the local hardware store might be a bit large, so will look around before going with one of those.

2020-10-13: Bought handle of appropriate size. This came with a wood wedge and the two metal step wedges.

2020-10-15: Done. Looks better than when I got it now. Note for next time: use the wood chisel to notch the slot where the wedge goes before driving it in.

1.12.13 DONE organize toolboxes

  • State "DONE" from "STRT" [2020-10-18 Sun 20:07]
  • State "STRT" from "TODO" [2020-10-17 Sat 18:27]

Got a second toolbox from the PA house. Since I have two now, clean both, organize the nicer tools into whichever is the nicer toolbox, then put the crappier one out in the garage. This will save a lot of trips inside when working in the outdoor workshop.

Done. Put plastic one outside.

1.12.14 DONE get air compressor

  • State "DONE" from "STRT" [2020-10-28 Wed 21:38]
  • State "STRT" from "TODO" [2020-10-25 Sun 16:24]

Can use this for general cleaning, cleaning the tractor mow deck and radiator, refilling tires, and probably a few other things. Need to research options.

2020-10-25: Ordered the Bostitch 6-Gallon Single Stage Portable Electric Pancake Air Compressor, 2 packs of 18 ga. nails, and an accessory kit that includes a blow gun and fittings for filling various tires and such. This compressor comes with a 15' hose. If that's not adequate after using this a bit, I might get a 50' one later. Holding off on that to see if one of the mountable winding spools might be something useful for the garage.

2020-10-28: Received stuff. Setup for 18 ga. nails and blow gun. I'll pick up some 16 ga. nails and a 50' hose at some point. Looks like the stapler takes T50 staples, which I already had some of for the manual stapler.

1.12.15 DONE get pepper grinder

  • State "DONE" from "STRT" [2020-11-03 Tue 12:53]
  • State "STRT" from "TODO" [2020-10-28 Wed 13:09]

Get one of these and a bag of peppercorns.

2020-10-28: Ordered the OXO Good Grips Accent Mess Free Pepper Grinder and a 1 lb bag of pepper.

2020-11-03: Received and tested as working.

1.12.16 DONE select free gift

  • State "DONE" from "STRT" [2020-11-10 Tue 17:54]
  • State "STRT" from "TODO" [2020-10-28 Wed 12:42]

Work sent out a list of free gifts for my 1 year anniversary. Go through them and select the most useful.

Got the USB-rechargeable flashlight. This has a light bar option, so good for working on stuff in the dark. Wanted the salt shaker/pepper grinder set, but looks like that one isn't available anymore. I'll add a task to get a pepper grinder too, since this seems like a good idea.

2020-11-10: Received. This item is actually nicer than I figured it'd be. Another feature is that you can use it to charge USB devices if needed. I think that is what the full-size USB port is for, whereas the micro-USB is for charging the flashlight itself. Left this in the reloading room, since the power strip there has USB charging ports.

1.12.17 DONE consider tool cabinet for inside workshop

  • State "DONE" from "STRT" [2020-11-11 Wed 21:09]
  • State "STRT" from "TODO" [2020-11-10 Tue 17:53]

There's an empty space below some wall-mounted shelves here. Might be a good spot for one of the tool cabinets they sell at hardware stores. Take some measurements and compare with the dimensions of the cabinets available.

Space measured to 31" width and 46" max height.

2020-11-10: Also considered the various higher-end ones, but decided to go with the cheap Craftsman, since I'm not using it all day. Ordered from Lowes. Will go grab it once I get the pickup confirmation.

2020-11-11: Picked up, assembled, and put some tools in. Looks pretty good. Might get the liner roll for the drawers.

2020-11-15: Picked up 2 liner rolls. Cut and installed liners in the cabinet and also did the workbench in the same room, since it's the same brand. Noticeable improvement of usability, and the tools don't shift around when opening the drawers now.

1.12.18 DONE get backup duck boots

  • State "DONE" from "STRT" [2020-11-25 Wed 18:18]
  • State "STRT" from "TODO" [2020-11-11 Wed 22:51]

Mine are starting to fray after 3 years. Get another pair staged up.

2020-11-11: Ordered an ugly color for a discount. Should also get 10% back on top of that from the CC.

2020-11-25: Received, finally. Apparently got lost in the postal system for awhile. These look pretty good, so I might get another pair if they're still on sale later.

1.12.19 [35/35] do 2020 firearms collection refactor

  1. DONE sell .223 barrel
    • State "DONE" from "STRT" [2020-01-08 Wed 11:19]
    • State "STRT" from "TODO" [2019-12-24 Tue 18:02]

    Will list this one on eBay. Once this is done, list the rest on SP forum.

    2019-12-24: Pictures taken and item listed at 1800 EST.

    2020-01-04: Looks like buyer is non-paying. Will have to use the resolution workflow for this. Will give it a couple days, then do so.

    2020-01-07: Opened unpaid item case. Buyer has 4 days to respond. Check back on 2020-01-11 (or maybe 1 day later) and close/relist the item. Go to My eBay->Account->Resolution Center to get to the screen to manage this.

    2020-01-08: Buyer finally paid. Mailed.

  2. DONE decide on AR-15 refactor plan
    • State "DONE" from "STRT" [2020-01-13 Mon 18:54]
    • State "STRT" from "TODO" [2020-01-13 Mon 18:54]

    Once I complete the Contender barrel refactor, I'll address whether I want to continue owning the current AR-15, replace it with something more optimal, or just sell it. As is, I currently don't use it. It is now also my only .223 firearm.

    My current thinking is to replace it with a 300 BLK AR pistol:

    • Can share as a suppressor host, with numerous benefits. Also wouldn't need additional, expensive adapters for other calibers.
    • I already handload for this and would just need an expander and crimp die. I can also work up minimal 200gr loads that still reliably cycle the action.
    • Would deprecate another uninteresting cartridge.
    • I can save my QD mount and sling for this.
    • Maybe get a complete lower and upper to save money, then maybe replace the trigger group if desired (currently like the MBT-2S).
    • Would probably want to run irons, likely the more precise Magpul MBUS Pro. Could also save the current MBUS on the FN 15 to save cash here.
    • Could still use this while waiting for the Form 4 approval.
    • Could always later get a .223 pistol upper for it later if I missed it.
    • Should be able to get $1300 for the FN 15, meaning the swap won't cost much or even be cash flow positive, depending on what I replaced it with.
    • Only caveat is that the FN 15 really is a great AR-15 rifle in .223. I should be sure I don't want one at all before parting with it.
    • Might need an H weight buffer for running subs w/o can, if building lower.

    Decided to go with this plan. Will keep the current AR until I finish this, in case I get around to using up the rest of the ammo. I'll probably consign this. I might also fabricate an 80% lower, but I'll wait until I finish my P80 to decide on how much I like the process.

  3. DONE decide on firearms refactor plan
    • State "DONE" from "STRT" [2020-01-14 Tue 23:23]
    • State "STRT" from "TODO" [2020-01-14 Tue 23:10]

    With the Contender and AR part of the setup decided, now's a good time to come up with a vision for the rest of the collection. Definitely want to reduce the overall number, have a core of items I'll actually use, and optimize for suppressor use. Deciding on this now will allow me to get started on selling stuff.

    Decided so far:

    • Finish selling Contender barrels.
    • Sell all milsurps except Type 99 and Luger.
    • Replace 92S with P80. This will have iron suppressor sights. Consign 92S. Wait to see if M12 holster fits. If not, include with 92S. There's some risk here in having a less than 100% reliable setup, but probably not a big deal since it's a range-only firearm. Considered CZ 75 SP-01 too. P80 costs more and isn't as nice, but opens more future options and I appreciate the educational experience.
    • Consign FN-15.
    • Get threaded barrel for G43. Will keep stock sights though. Hold off on this for awhile, in case I want to replace with another P80.
    • Once some of this stuff is cleared out, get recurve or long bow.


    • SiCo Omega 9k. Leaning for.
    • Replace Rolling Block .22 with CZ 457 Scout. Leaning against.
    • 10.5"+ .223 AR upper. Leaning against.
    • Get some spare grips for the Luger for range use.
    • Maybe sell Type 99.

    Potential future projects:

    • Threaded 9mm or .38 Spc Contender barrel. Put the reflex sight on this and the scope on the 300 BLK.
    • Remington 700 action in a suppressed 300 BLK SP build.
    • Once P80 comes out with the G43 version, build that and sell mine. Might want to wait until holster support catches up. Alternatively, go for a G26.

    This will reduce collection count to 9 (-6/+2), remove 5 chamberings, and recover a fair amount of money. Pretty happy with this plan. Will stick with the concluded decisions for now, since they represent a fair amount of work. Then, I'll revisit the current status and decide if there's further simplification that might help. Will try to wrap up all or most of this work by the end of the year, perhaps minus the consigning.

  4. DONE repair ce/44 stock
    • State "DONE" from "STRT" [2020-01-15 Wed 20:26]
    • State "STRT" from "TODO" [2020-01-15 Wed 20:19]

    There's a nick near the bolt I can carefully use some stain on to cover up.

    Easy fix. Mixed some golden oak and dark walnut to get the perfect color.

  5. DONE sell batch of items on SP forum
    • State "DONE" from "STRT" [2020-01-22 Wed 12:18]
    • State "STRT" from "TODO" [2020-01-10 Fri 08:27]

    List most of the remaining stuff I have for sale here. Should be able to move at least some of it, saving some listing fees on eBay. List:

    • .44 Mag barrel, choke, wrench.
    • .30-30 barrel.
    • Benjamin HB22, pellets, holster.
    • Luger holster, stripping tool.
    • ScopeRib III sights.

    Sell whatever is left after this on eBay. Once I get rid of these items, deactivate the remaining .30-30 rounds. If I want an air pistol in the future, I'll probably get the Crosman 1377 and add some wood grips. However, I think a .177 rifle would probably be more useful.

    2020-01-10: Listed. Will let this run a couple weeks. Air pistol sold right away. Payment received and item shipped.

    2020-01-22: No more inquiries for a couple weeks so marked for deletion. Rest of stuff will go on eBay.

  6. DONE sell .44 mag barrel
    • State "DONE" from "STRT" [2020-01-30 Thu 14:44]
    • State "STRT" from "TODO" [2020-01-22 Wed 20:53]

    List on eBay with choke wrench.

    2020-01-22: Listed.

    2020-01-28: Boxed up.

    2020-01-29: Sold for $171. Buyer paid. Ship out tomorrow.

    2020-01-30: Mailed.

  7. DONE build P80 slide
    • State "DONE" from "STRT" [2020-01-30 Thu 16:24]
    • State "STRT" from "TODO" [2020-01-14 Tue 02:31]

    Splitting this from the lower, since I might wait for a frame sale and color availability. This is also a bit safer, as in the unlikely event I change my mind, I can still use this on an OEM Gen 3 (or Gen 4 + adapter) lower. Will hold off on sights for now until I look around a bit. If the frame runs good, I might get an RMR-cut long slide for it too (but probably not).

    Stuff needed:

    • Slide.
    • Threaded barrel.
    • Thread protector.
    • OEM slide parts kit.
    • Channel liner tool.
    • Custom slide cover.
    • Metal polish.
    • Polishing bits.

    2020-01-14: Bought parts and most tools now to take advantage of sale. Got the Brownells slide and barrel. Thread protector is a Lone Wolf 2x28. Ordered a couple custom slide covers to try out since had to pay $10 flat shipping on those.

    2020-01-15: Ordered polish and polish bits.

    2020-01-17: Polish and bits arrived.

    2020-01-22: Received custom slide covers.

    2020-01-30: Received slide, barrel, thread protector, UPK. The somewhat overkill workflow used (in an attempt to eliminate variables):

    • Cleaned packing oil off slide, barrel, thread protector, extractor, etc.
    • Used impregnated buffer wheel on recoil spring.
    • Lubed recoil spring.
    • Used impregnated buffer wheel on striker spring and plunger spring.
    • Polished striker and plunger with Flitz. Skipped firing pin safety.
    • Trimmed channel liner burr.
    • Aligned spring cups to not align with striker spring end.

    Looks great. Hopefully frame construction goes as nicely.

  8. DONE get/install suppressor sights
    • State "DONE" from "STRT" [2020-02-05 Wed 21:20]
    • State "STRT" from "TODO" [2020-02-05 Wed 20:46]

    Decide which sights to get for this and install them. Use calipers to ensure the rear sight is aligned perfectly. Have some of the tools for this already. Note that if the rear sight doesn't go in by hand 1/3 of the way, file down one of the bearing surfaces gently until it does so. Current thinking is to go tritium for these, since they may be partially obscured by the suppressor. Trijicon sights seem like the best fit for the slide I ordered.

    Stuff needed:

    • Suppressor height sights.
    • Universal rear sight install tool.

    2020-01-31: Ordered Trijicon suppressor night sights while they were on sale. No risk here, since I'll use this slide either way. Also got the rear sight install tool.

    2020-02-05: Sights and install tool arrived. Installed. Was a bit of a pain to get on. Probably should've filed the rear down more. My bottle of blue Loctite seems a little runny though, so keep an eye on the front sight.

  9. DONE sell .30-30 barrel
    • State "DONE" from "STRT" [2020-02-07 Fri 10:14]
    • State "STRT" from "TODO" [2020-01-29 Wed 22:23]

    List on eBay. Deactivate remaining 10 rounds after it gets bids. Save primed brass and projectiles.

    2020-01-29: Pictures taken and ready to post. Will do so tomorrow evening.

    2020-01-30: Listed at 1900. Got unlucky and someone else listed the exact same item right after me.

    2020-02-06: Sold for $203.50. Will ship out tomorrow.

    2020-02-07: Shipped.

  10. DONE deactivate .30-30 rounds
    • State "DONE" from "STRT" [2020-02-07 Fri 21:11]
    • State "STRT" from "TODO" [2020-02-07 Fri 20:41]

    Save the projectiles and brass.

    Done. Tried very slowly pushing out the live primers with the decapping die. Worked pretty good.

  11. DONE build P80 lower
    • State "DONE" from "STRT" [2020-03-01 Sun 17:13]
    • State "STRT" from "BLCK" [2020-02-26 Wed 20:49]
    • State "BLCK" from "TODO" [2020-02-16 Sun 10:18]

    Will roll the dice on whether I get in-spec rail modules. Waiting for an on-sale ODG or Cobalt lower. Have some tools but need a few more, most of which are generally useful. Tape off the internals when building to keep dust out of the frame.

    Stuff needed:

    • P80 frame.
    • OEM LPK.
    • 1 OEM or P80 mag.
    • Gen4 ejector.
    • 2000 grit sandpaper.
    • Hosco Fret Cutter.
    • X-Acto knife set.
    • Rubber polishing bits.
    • Dremel right angle attachment.
    • Dremel Brad point bits.

    2020-01-15: Decided to skip the fret cutter, since I have no use for it apart from this. Will just use the X-Acto, Dremel, files, and sandpaper and go slow. Also skipping the Dremel right angle attachment. Instead of using that to start the 4M hole, I'll use my normal drill for that. Otherwise, all tools ordered. Will consider started when I order actual parts.

    2020-01-28: Ordered frame.

    2020-01-31: Ordered Gen 4 trigger housing for the ejector.

    2020-01-31: Ordered LPK, 1 mag. Also found and ordered cheaper fret cutters. For $20 shipped, it was worth saving me all that sloppy grinding.

    2020-02-03: Fret cutters arrived.

    2020-02-05: Gen 4 ejector, LPK, and mag arrived. Blocked until the lower arrives.

    2020-02-26: Received frame and started lower build. Did the channel and tab removal.

    2020-02-27: Swapped 336 ejector for 30274, and finished the build. Despite being super careful, had a very slight hole alignment issue that wasted many hours. Eventually gave up and went with just running the bits the whole way through with my hand drill while the locking block was in. Everyone recommends against this, but it seems to have resolved that issue. After several rounds of leveling out the rails, it now feels about what it should, I think. Only remaining issue is that if I manually cycle it very slowly while holding the trigger, it sometimes fails to return to battery until I release it. Hoping that will even out with some use. Will need to put a few rounds through it to confirm function.

    2020-02-28: Tested M12 holster and it fits, though tightly. Will keep it for that.

    2020-03-01: Test fired and ran about 10 rounds through it fine. Calling this done and successful.

    Probably won't build any more of these, since they're actually kind of a pain to get just right. Also, I only have use for one anyway. Will use this for awhile and decide whether to sell the 92S or not.

  12. DONE build AR 80% lower
    • State "DONE" from "STRT" [2020-03-03 Tue 20:14]
    • State "STRT" from "BLCK" [2020-02-27 Thu 21:24]
    • State "BLCK" from "TODO" [2020-02-16 Sun 10:20]

    Fabricate an 80% lower receiver as part of my 300 BLK build. Considering the 5D Tactical lower and jig system. Would need to buy a router and some cutting oil for this.

    2020-01-28: Ordered lower, jig, and bits during sale. 5D is backed up a bit right now though, so might be a few weeks. Got the 7075 lower, so might want to borrow a neighbor's corded drill for the pilot hole. Also bought router.

    2020-02-27: Unblocked. Will start this as soon as it's warm enough to work in the garage and I have some free time.

    2020-03-01: Jig setup complete.

    2020-03-02: Router setup complete. Be sure to return the accessory knob, base plate, and collet/collar when done.

    2020-03-03: Completed. Went super slow on this due to using the harder aluminum. Took about 3 hours. Used my cordless drill for the hole drilling, which worked, but just barely. I think if I ever do one of these again, I'll stick with the 6061.

  13. DONE build 300 BLK AR
    • State "DONE" from "STRT" [2020-03-03 Tue 23:54]
    • State "STRT" from "TODO" [2020-03-03 Tue 20:44]

    Will do this after the lower is complete. Tracking this now in case of sales.

    2020-01-30: Grabbed most upper and lower parts from Optics Planet during a sale, saving $160 or so. Would still need sights at least.

    2020-01-31: OP called about upper and BCG availability. Offered a discount on some replacements, so I went for it. Also bought armorer's wrench and BEV block.

    2020-02-07: All parts ordered so far arrived. Ordered MBUS Pro front and rear sights, which are the final functional parts needed.

    2020-02-15: Received sights. Upper is now usable. Will still need to swap the brake (once I get the suppressor) and add a QD scope later for load development.

    2020-02-29: Confirmed I have the correct Allen wrench of appropriate length for grip installation. It takes a 3/16". However, the LPK came with the same grip my carbine does. Will use it for now, but might replace it later with an MOE-K2+.

    2020-03-03: Build complete. Everything seems to have gone together functionally. The safety selector seems a little off as the detent channel doesn't let it ride exactly at 90°, but it's only off by a few degrees. Might replace it later if it bothers me. Also could use another QD sling swivel. I also didn't stake the castle nut until I try a few rounds through it. Now done with builds and probably new firearms overall. Will do a round of improvements on this once I confirm functionality.

    Reflecting on the builds experience, I guess it was somewhat educational and rewarding to do this myself, and the end results are great. However, the act of doing them was rather unpleasant, especially for the P80. Doing either a second time would remove most of the frustrating points, but I'm having a hard time justifying why I'd want additional ARs or P80s. I'll hang onto my 5D jig for awhile, just in case, then maybe try to sell it.

    2020-03-08: Test fired and cycles. However, I did notice that it's not quite cycling back far enough to engage the mag catch on the last round (and probably never goes back that far). I suspect it would run fine with supersonics, and I'll do a follow-up test against non-bulk ammo. Since its so close, I'll probably just leave it this way, loading hotter subs and I suspect it'll run perfect with a suppressor too. Other Aero upper owners online report similar behavior (gas port is .109"), so I'm confident it's not the build itself. I might also try a lightweight BCG later if I really want perfect function unsuppressed.

  14. DONE tune 300 BLK AR
    • State "DONE" from "STRT" [2020-03-14 Sat 18:47]
    • State "STRT" from "TODO" [2020-03-10 Tue 00:01]

    Some minor follow-up on this build. Replace safety selector and kinked selector spring. Try out a pistol-angled grip and a hand stop. Get a second QD swivel for the sling. Will run some comprehensive tests after this. This is a functionality tuning. If this goes well, I'll do another round to morph it into its final form of a load development platform.

    2020-03-09: Ordered stuff. Includes a kit of multiples of the various springs, which is probably just good to have around.

    2020-03-10: Lubed up BCG and charging handle. Added a very light coat of white lithium grease to the buffer spring. Runs a little smoother now, I noticed. Looks like this BCG likes to be oiled up. Note that buffer weight is 3.5oz.

    2020-03-14: Installed parts. Everything looks good, except that the safety selector is still off by a few degrees. That means it's either the frame or trigger off a hair. I'll just leave it since it's not really noticeable and works fine. Apart from that, not sure I like the rubbery texture of the MOE-K2+ grip, but I'll give it a try for a bit. The angle of this grip is a small improvement though.

    Now I just need to do some factory ammo tests, then another tuning round to get it configured for load development.

  15. DONE consign some milsurps (round 1)
    • State "DONE" from "STRT" [2020-05-09 Sat 14:06]
    • State "STRT" from "BLCK" [2020-05-06 Wed 10:46]
    • State "BLCK" from "STRT" [2020-02-15 Sat 23:17]
    • State "STRT" from "TODO" [2020-01-15 Wed 12:14]

    Need to sacrifice some of these to pare down the collection a bit. I still like milsurps, but my plan was to keep the collection more in this direction if I didn't have a property I could discharge firearms on. Since that's not the case, I can switch out of collector mode and cash out some of the extraneous items. I'd like to keep at least one rifle and the Luger though. I think I'll do this in three rounds, with the first getting rid of the older k98 w/ bayonet, since I'll definitely never shoot it and want to make sure the workflow here works. If so, round 2 will be the 38H and C96, and round 3 will be the last rifle (probably the other k98).

    First step is to check with the local shops to see if they offer shipping service. Ask if they need an FFL copy for mailing.

    2020-01-15: My local FFL will do shipping out, needing the standard FFL copy of recipient. Took pictures and submitted consignment request. Also decided to swap the order around, and will do the other k98 next. Got call back from auction house in a few hours. Later received the contract and FFL copy. Just need to print out forms/FFL and drop it off. Be sure to get tracking number.

    2020-01-16: Dropped off. Will need to go back to pay for the shipping cost though. They'll give me a call, they said.

    2020-01-17: Paid for shipping.

    2020-01-21: Auction house called to notify of receipt of shipment, so should be good until I get my check. Local FFL forgot to get me that tracking number, but it's apparently not needed. Since this worked out pretty good, I'll use this same system for the rest.

    2020-03-03: Received email that it'll be in the 2020-04-01 online auction, for some reason. Disappointing, to say the least. Another point in the getting out of firearms collecting column.

    2020-03-26: Sold for a (surprising) $2250. Will turn a decent profit on this one. Check should be mailed out around 2020-04-29.

    2020-05-06: Received check a few days ago, but will need to wait for a day to go to the bank.

    2020-05-09: Deposited. Task complete.

  16. DONE test fire 300 BLK AR
    • State "DONE" from "STRT" [2020-06-17 Wed 18:02]
    • State "STRT" from "TODO" [2020-06-17 Wed 15:58]

    Only tried 220gr. UMC subs so far. Here's some other combinations to rule out issues. Will do these once my scheduled mods are in. Might consider the lightweight BCG depending on results. Will do a hot sub handload ladder (3 rounds each, 0.5gr steps) after this, or further mine tweaks.

    Done. This is very close to perfect. One minor tweak would put it over the edge, but I might just leave it as-is until I get the suppressor. I'll have a bit more gas then and it should run 100%. I might still get the BCG if I have the same performance on the lower end of subs though, since I'd rather run 195-208gr around 1000fps.


    • 3 rounds 220gr UMC: Ran fine.
    • 3 rounds 208gr Hornady Black 300 BLK rounds: Ran fine, locked bolt back on last round, but not the whole way.
    • 3 rounds supersonic 300 BLK: Ran fine.
  17. DONE test fire P80
    • State "DONE" from "STRT" [2020-06-19 Fri 12:31]
    • State "STRT" from "TODO" [2020-06-19 Fri 12:11]

    Put a couple mags through this to test the new LW guide rod assembly.

    Done. Runs perfect.

  18. DONE order rifle suppressor
    • State "DONE" from "STRT" [2020-08-22 Sat 13:32]
    • State "STRT" from "BLCK" [2020-08-21 Fri 07:41]
    • State "BLCK" from "STRT" [2020-02-15 Sat 23:16]
    • State "STRT" from "TODO" [2020-01-10 Fri 19:31]

    As part of my firearms refactor plan, get one of these for the 300 BLK and eventual AR refactor. Leaning towards the Silencerco Omega 300, which would also be usable with any other rifle caliber with a compatible barrel. Already did some of the groundwork for this, just need to place order, then go through the submit forms process. I might consider a 9mm and rimfire one after this, but only once I use this one for awhile. If I get a 300 BLK AR build done, try out the ASR mount. If suboptimal, I can switch to the Q Plan B + Cherry Bomb combo.

    2020-01-10: Ordered and paid for. Pre-tax, was $795. I think this doesn't include the direct thread adapter or flat end plate, but this place has an assortment of the accessories in stock. Will take a few days for it to arrive, then I'll go back in and fill out the forms.

    2020-01-30: Called to check on it, but it hasn't arrived yet. They also ordered a gray one instead of the black I asked for.

    2020-02-07: Can arrived. Will go in on Monday or Tuesday next week.

    2020-02-12: Filled out paperwork. Just need to send it to the various parties and include a check.

    2020-02-15: Paperwork sent. Now blocked for the next 4-10 months or so.

    2020-08-21: Got call saying suppressor is ready for pickup.

    2020-08-22: Picked up suppressor. Came with a direct thread adapter and the muzzle break/adapter. Doesn't have the flat end cap though, which I may consider ordering sometime. Will keep stamp with the box in the safe. Also fired 5 rounds through the Contender and it works great. Currently leaving it direct thread mounted on the AR.

  19. DONE consign some milsurps (round 2)
    • State "DONE" from "BLCK" [2020-08-22 Sat 13:33]
    • State "BLCK" from "STRT" [2020-03-19 Thu 18:00]
    • State "STRT" from "TODO" [2020-03-19 Thu 13:58]

    Changed this plan to include moderns since there's panic buying going on right now. Will locally consign the FN-15 ($995), 92S ($325), and 38H ($495). Local shop is the way to go when possible, since the commission is much lower.

    2020-03-19: Consigned at these prices: FN-15 ($995), 92S ($325), and 38H ($495). They seem confident in them moving quick. They'll call when items sell. Donated my remaining .32ACP ammo to a guy there that carried one. I also now no longer have a .223 firearm, but I'll hang onto the ammo for now while I debate getting a cheap pistol upper for it. I could see myself possibly getting around to handloading for it.

    2020-08-22: Got check for $2008. The 38H sold for $860, surprisingly. FN-15 sold for $1100. As a result, came out a bit ahead on this batch. Will deposit check week after next.

  20. CNCL install ASR mount on AR
    • State "CNCL" from "STRT" [2020-08-25 Tue 18:19]
    • State "STRT" from "TODO" [2020-08-25 Tue 16:13]

    I've put 5 subs through it on the AR while direct threaded and the gas system seems to run perfect suppressed. So, might as well swap in the ASR mount so I have a brake if ever using it normally. Use a drop of Loctite on the threads. Run 3-5 rounds through it after mounting.

    Mounted briefly, but is clunky enough that I'll just stick with direct thread. Current reasoning:

    • It's unlikely I will ever want to shoot the AR unsuppressed.
    • Makes it less convenient to jump back to the Contender. The ASR adapter should be torqued down pretty hard, and I wouldn't want to be undoing that regularly.
    • The locking system isn't as nice as hoped.
    • The manual strongly warns not to use a stock crush washer and instead use the included spacers. That'd be fine, except they're not that great. When torquing down, they splat out. Unfortunately, I would need spacers since the muzzle break aligns vertically without them.
    • The ASR mount does add a little length.

    The trade-off to going direct thread on the AR is that I need to remember to re-tighten after 5 or so rounds due loosening because of heat differential.

  21. DONE get mag loader for G19 mags
    • State "DONE" from "STRT" [2020-09-01 Tue 17:50]
    • State "STRT" from "TODO" [2020-08-28 Fri 14:52]

    One of these should be worth a few dollars to save the finger abuse of loading double stack, single feed mags. I had been downloading them in the past several years to not have to deal with it.

    2020-08-28: Ordered a green colored Uplula.

    2020-09-01: Received and seems to work great.

  22. DONE consider silent capture spring system for AR
    • State "DONE" from "STRT" [2020-09-01 Tue 17:52]
    • State "STRT" from "INAC" [2020-08-28 Fri 14:18]

    One of these might reduce the action noise of the 300 BLK AR when suppressed, or at least the spring part of it. I suspect that's not the majority of the noise, and most is due to the bolt reciprocating. So, this would be a minor benefit at most. According to the JP flow chart, I'd probably want the JPSCS2-15H2. One thing to consider is that I'm running a standard weight carbine buffer now, and it runs fine. I may want to not go with the H2 weight.

    2020-08-28: Ordered. Decided to go with the JPSCS2-15, which is standard weight. This also allows me to swap in the tungsten weights later if over-gassed. Spring kits are also available for further tuning.

    2020-09-01: Acquired. However, looks like I won't be able to use this in my current pistol buffer tube. I guess the carbine length is different from the pistol length in CMMG kit. I'll hang onto it in case I have a different buffer to use it with later.

  23. DONE get scope and QD base
    • State "DONE" from "STRT" [2020-09-01 Tue 17:52]
    • State "STRT" from "TODO" [2020-08-26 Wed 08:09]

    I recall there being 2 best QD bases. Research and get one of those. Also get an adjustable magnification scope (maybe 3-9x).

    2020-08-26: Order placed. Decided upon:

    • Midwest Industries 30mm QD Scope Mount Picatinny-Style with 1.4" Offset.
    • Vortex Diamondback HP 4-16x42mm.

    Was going to go with a Leupold, but this Vortex was on sale for $200 instead of the normal $350. The Leupold VX-Freedom AR 4-12x40 is $500, and may have been overkill for a dedicated load development scope. I'll save that cash for when/if I do a more classy build. Only semi-downside to this scope is no target turrets or FFP.

    2020-08-28: I'm kinda stupid apparently, and ordered the 30mm base while the scope is a 1" tube. Ordered a new base. Will keep the 30mm one though, since I'm sure I'll buy a 30mm scope at some point.

    2020-09-01: New mount received and scope installed. Laser boresighted. Looks like this setup should work out great. Might want to get some flip-up lens covers at some point.

  24. DONE replace laser boresight
    • State "DONE" from "STRT" [2020-09-01 Tue 17:52]
    • State "STRT" from "TODO" [2020-08-28 Fri 14:36]

    Old one broke, so need to replace. I can still use one, since swapping optics around is something I intend to keep doing.

    2020-08-28: Went with the Wheeler Professional, which is a little pricey but looks like it'll not be the kind of cheap plastic stuff the previous one was. Cost was $75 on sale, which is the best I've seen it for over the past year.

    2020-09-01: Received and sighted the Contender 300 BLK barrel's red dot and AR scope.

  25. DONE sell .223 ammo
    • State "DONE" from "STRT" [2020-09-10 Thu 18:00]
    • State "STRT" from [2020-09-10 Thu 16:00]

    Considered building a .223 upper, but pretty sure that would be a waste of money as I'd never use it. Decided to commit to permanently deprecating this cartridge from the list.

    Sold to neighbor for $60. -1 chambering.

  26. CNCL consider bipod
    • State "CNCL" from "TODO" [2020-09-23 Wed 21:39]

    I might want a bipod for the AR pistol. Two options:

    • Magpul: Minimal fuss for AR use and directly connects to M-lok.
    • Harris: Could be used elsewhere with any rifle that has a front swivel stud.

    Not sure what to do yet. For the AR, this will take up the space used by my handstop currently. Before getting, try out the shooting bench a few times to see how much I'd benefit from it. From the bench, the shooting angle is slightly downwards to the target area, so a bipod might actually get in the way.

    After thinking about it a bit, I think I'll stick with bags + front rest. This avoids all of the connector issues with bipods and will work with everything.

  27. DONE get tripod for chronograph
    • State "DONE" from "STRT" [2020-09-25 Fri 15:27]
    • State "STRT" from "TODO" [2020-09-22 Tue 09:21]

    Neglected to notice that this didn't come with one. Just buy something cheap.

    2020-09-22: Ordered the Amazon Basics one for something like $20 or $24.

    2020-09-25: Received. This is actually a really nice item. Tried chronographing some loads but I think I was too close, or should've taken off the sunshades since it was cloudy. Will try again once I load up some more cartridges.

  28. DONE backorder some 300 BLK factory ammo
    • State "DONE" from "STRT" [2020-10-03 Sat 16:03]
    • State "STRT" from [2020-08-24 Mon 19:20]

    Since I want to start by semi-duplicating the load of 208 gr. Hornady Black, backorder 100 rds of this. Once this arrives, I'll get the chronograph, QD mount, and scope. I might also backorder some 208 gr. projectiles. This might take awhile due to the panic buying, or even not be fulfilled at all. If this works, might want to do this a second time, potentially with even a larger order.

    2020-08-24: Order placed.

    2020-08-26: Went ahead and ordered the chronograph while taking advantage of a scope sale. Also grabbed some rings for the Contender in case I want to temporarily put my pistol scope on that.

    2020-09-23: Ordered some 200 gr. Sierra MatchKing. Grabbed the Sierra load data PDF. Will do a test run of these with a similar powder charge to the Hornady 208 gr. BTHP. If that works, might get more of these.

    2020-09-25: The 200 gr. Sierra bullets arrived. Will try handloading a few of these next round. If these work out, I might bulk order a bunch, then just forget about this for now.

    2020-09-27: Ordered another 100 of SMK.

    2020-09-29: With these projectile orders, brass was what I was lowest on. Found some Nosler for a reasonable price on Midsouth Shooters, so ordered that. Also grabbed 50 Starline in .308 while I was at it, since I'll eventually get around to working up a load for this.

    2020-10-03: Got another 200 brass, so calling this good. I'll leave the backorder in.

  29. DONE get front rest
    • State "DONE" from "STRT" [2020-10-10 Sat 20:50]
    • State "STRT" from "TODO" [2020-09-25 Fri 22:15]

    Tried shooting from the garage window as planned during my range refactor and this works pretty good. I will need some decent elevation on the front and rear, however. Instead of getting bipods for everything, I'll just get a front rest and save some cash.

    2020-09-25: Ordered the Caldwell Rock Deluxe front rest on sale for $65. Also grabbed various 300 BLK powders for load dev, additional SMK bullets, a 30 rd Lancer mag (just in case they are hard to get later), and a few other random items.

    2020-10-10: Acquired and setup rest. Put in new bin in garage, along with bags.

  30. DONE get flat end caps for suppressor
    • State "DONE" from "STRT" [2020-10-14 Wed 16:55]
    • State "STRT" from "TODO" [2020-10-06 Tue 20:24]

    Not a huge deal, but will save some weight and maybe direct a little more of the blast forward. Once the grey ones are back in stock, get a .30 and .224 one.

    2020-10-06: Ordered the .30 flat end cap, .224 flat end cap, and 1/2x28 direct thread mount. Gave up waiting for the gray .30 flat end caps and just got the FDE one. Not ideal, but should look fine with the wood on the Contender and FDE mag base plates on the AR. Don't actually have a direct use for the .224 cap and mount right now, but the idea is that they'll be useful if I do the .218 Bee custom barrel.

    2020-10-14: Items arrived. Installed 30 cal flat end cap.

  31. CNCL sight in reflex sight
    • State "CNCL" from "STRT" [2020-10-15 Thu 11:23]
    • State "STRT" from "TODO" [2020-09-23 Wed 16:13]

    A laser boresight is incoming, so wait until that comes in first. Use the screwdriver that's in the original box to make adjustments. Once I have the factory ammo to do so, sight it in all full range length, then check POI at half-range.

    2020-09-01: Laser boresighted. I suppose I could sight this in with handloads if my factory ammo order never shows.

    2020-09-23: Sighted in at 20 yds. Might hold off on this in case I want to swap the scope on though.

    2020-10-15: Decided to switch this back to the scope for now. That scope might end up on the .30 Herrett barrel later, but I'll keep the red dot off until I get the Model 10 and have it setup.

  32. DONE ponder future optimizations
    • State "DONE" from "STRT" [2020-10-17 Sat 18:01]
    • State "STRT" from "TODO" [2020-10-14 Wed 18:01]

    Since I'm going to be in the area to consign some more stuff, do another pass on the collection refactor plan.


    • Consign remaining 2 milsurps.
    • Swap .22 rifle: The .22 rolling block is nice but the trigger on it is 8+ lbs, making accurate shooting troublesome. I may want to swap this for something better, like a CZ or Cooper. Keep sling.
    • Sell 80% lower jig once I'm sure I won't build another one.
    • Pick up Model 10 once complete and get a scope for it.
    • Get light (maybe) and holster for P80.
    • Get QD flashlight for AR for nighttime varmint defense.
    • Stock up on reloading supplies.
    • Give M12 holster to neighbor, who has an M92.

    Still considering:

    • Maybe 1 final Contender barrel, perhaps 12-14" in .218 Bee, with threaded muzzle. Could be a good host for the pistol scope. Holding off on this for awhile to be sure I want to do this and in case I can get an SSK frame, in which case I'll get it in stainless.
    • Maybe send the scope base .30 Herrett barrel into SSK to get threaded. Supposedly prices are reasonable.
    • Maybe consign the G43.
    • Maybe swap out the Arisaka for a CZ 527 (one of the threaded models) in 6.5 Grendel. Leaning against, due to it not sharing projectiles with anything else and reports that some have issues finding a load that will group with it. Can't do this until reloading supplies come back in stock anyway, so will think about it.
    • Instead of the above, maybe just consign the Arisaka. I've noticed after 3 years of having a shooting range that I have more firearms than I can realistically use. I could probably just have the Contender, AR, .22, and falling block, and still have more than enough to stay busy on the range. Only caveat is that I might use it more when retired.

    Going with this plan. From right now, this will be -3/+2 firearms and -1/+0 chamberings, including the already ordered Model 10. With this much stuff still undecided, I'll do another thinking pass in a year or so.

  33. DONE put scope on Contender 300 BLK barrel
    • State "DONE" from "STRT" [2020-10-17 Sat 19:10]
    • State "STRT" from "TODO" [2020-10-17 Sat 18:17]

    Already bought new rings for this, so mount this scope here temporarily. Will use this as primary handloading test platform until the Model 10 is in action. This will save chewing up brass, among other things.

    Done. First use of torque wrench to get perfect in/lbs.

  34. DONE get weapon light for P80
    • State "DONE" from "STRT" [2020-10-26 Mon 14:28]
    • State "STRT" from "TODO" [2020-10-22 Thu 20:59]

    This will convert the P80 into the primary HD firearm. Considering the TLR-7. Decide for sure whether I want to go this route, since the holster choice is determined based on it. I'm a little iffy on going with a light on this, so holding off for now.

    2020-10-22: Decided to give it a try. Ordered TLR-7. Will order holster once I confirm mounting fitment and function.

    2020-10-26: Received and mounted with the default universal mount piece. Seems to fit pretty snugly with no movement. Will have to put a few rounds through to test.

    2020-11-04: Test fired 2 mags with the light on and it seems to run fine.

  35. DONE organize cartridge boxes
    • State "DONE" from "STRT" [2020-10-26 Mon 14:29]
    • State "STRT" from "TODO" [2020-08-28 Fri 09:54]

    Once done refactoring collection, organize the ammo storage boxes. I might switch to the 20 round sleeves. Will also need to get additional boxes for the new cartridges. Can use the RM-50 that 7TCU is in now for .308. Another idea is to build some perfect ones myself using the drill press. To do that, I'll have need a stepper drill bit, some acrylic plates, hinges, and latches. Rimmed cartridges will have to be tip-down. That would make these boxes expensive, so it's probably better to just buy some, as they're only a few dollars each.

    2020-08-28: Ordered one of the Frankford Arsenal boxes for .218 Bee, and these seem to be the best quality of the ones I've used so far. Might want to standardize on this, but I'll hold off until I have a perspective on how much I want to keep loaded up.

    2020-10-22: Ordered another of the Frankford Arsenal boxes for .308 Win.

    2020-10-26: .308 box received. I'm thinking that since after this last box, I have at least one for each chambering. I'll hold off on really stocking up for now, since I'm thinking we might eventually get a 3D printer, and I could make my own perfect boxes at that point.

1.13 personal improvement/maintenance

1.13.1 DONE ponder current relationship with ephemeral tech

  • State "DONE" from "STRT" [2020-06-06 Sat 23:28]
  • State "STRT" from "TODO" [2020-06-06 Sat 13:18]

Reformatting my projects lists made me confront the vast tracts of time poured into tech that is now utterly useless. A lot of that can be blamed on job immediacy and was lazy-loaded, which is a part of this system that works well. I don't lament this as much in the past, since earlier in the career it still helped with context. That benefit is significantly lessened now. There are 2 aspects of tasks in this category that stand out:

  • For some of the required-for-work items, I might've been able to get away with really sucking at them and still have gotten the job done.
  • Some things that seem like they are nice to have open up huge trees of yak shaving and other ancillary work.

Pondered. For the first category, a focus more on the goal than the technology would allow for more accurate fitting of my demand profile. I think I'm better at this than when I started though. Hopefully my task tracking refactor will close the gap.

For the second, a goal-oriented approach will also help some, but mainly just avoiding them unless there's a commensurate payoff at the end is probably the way to go.

Along those lines, I'm going to:

  • Cancel all JavaScript-related tasking. This is about as ephemeral as it gets and has the tree-spawning problem big time. In fact, it's quite never-ending here.
  • Cancel some of the tools here that are attempts to find ever-so-slightly more optimal alternatives to stuff that works, with maybe the only exception being Emacs packages related to stuff I use all the time.
  • If I can start making a dent in some of these long-lingering tasks here, I can be then consider pulling some of these things back in.
  • Will also make an effort to just look into stuff at a surface level. I'll consider the exploratory task closed, and only then queue up follow-up work after an informed cost/benefit analysis is done. This should be SOP for new technologies in this category.

This should be a good start. Will review how things are going next year.

2020-06-07: Task cleanup complete. Canceled a lot of tasks. This list is way more manageable, focused, and represents effort that can realistically be accomplished. I'm also tempted to bail on TAPL, ATITAPL, and Coq to skip on working in OCaml. Coq can easily be replaced with Agda (which I ruled against earlier). The books are a tougher call though, since I'm not sure there's an alternate path to deep type theory knowledge.

1.13.2 DONE fix tooth

  • State "DONE" from "STRT" [2020-01-23 Thu 12:55]
  • State "STRT" from "TODO" [2020-01-20 Mon 09:27]

A molar with an old filling has a loose chip, still attached. Figure out how to use new dental insurance and get this fixed.

2020-01-19: Found my dental card. Will call 2020-01-20.

2020-01-20: Scheduled appointment for 2020-01-23 0800. Insurance will also work here, though it's out of network.

2020-01-23: Managed to get this all done in one day. New crown installed and a proactive root canal done.

1.13.3 DONE renew passport

  • State "DONE" from "STRT" [2020-02-15 Sat 14:57]
  • State "STRT" from "TODO" [2020-01-06 Mon 17:34]

Old one expired 2017-07-15. Need 2 pictures for the passport. Get 2 extra for the suppressor form 1 while at it.

2020-01-06: Got pictures. Turns out I only need 1 for the passport. Completed form, wrote check, and packaged up letter. Just need to drop it off at the post office.

2020-01-08: Package mailed. Probably will get this back in a month or so.

2020-02-15: New passport arrived. Now good until 2030-02-11.

1.13.4 DONE make popcorn

  • State "DONE" from "STRT" [2020-04-18 Sat 17:11]
  • State "STRT" from "TODO" [2019-09-14 Sat 12:30]

Already harvested the weird, small, red popcorn. Will try shelling, washing, and making some.

Decided not to save seeds of this breed for next year, since working with them is too much hassle. They also seem to not like the conditions here too much, since several stalks produced no ears at all. If I can find some more normal popcorn seeds in subsequent years, I'll try those instead.

Worked out great. Put 2 tbsp of oil in pot. Add 1/3 cup of corn. Turn heat up to max. Shake occasionally once a lot of the kernels have popped. Melt 3 heaping spoons of butter and pour on popped corn. Add salt. Might reconsider growing some of these since it worked out so well. And despite not producing a lot, this is probably more than enough popcorn for 2 people.

1.13.5 DONE make Thai pepper flakes

  • State "DONE" from "STRT" [2020-06-07 Sun 16:46]
  • State "STRT" from "TODO" [2020-06-07 Sun 00:16]

Was given many bags of dried peppers, more than I'll ever be able to use whole in cooking. However, I can use them as pepper flakes, so turn them into those. Should close the gap until the garden starts producing more.

Done. Turns out these are árbol peppers, some kind of Mexican variety. These seem to taste okay and are a bit under the hotness of Thai. Made two containers worth of flakes. These aren't the ideal peppers for this, since the flakes end up a bit bigger than I'd like. Still usable though.

1.13.6 DONE devise personal improvement plan

  • State "DONE" from "STRT" [2020-03-02 Mon 08:56]
  • State "STRT" from "TODO" [2020-03-01 Sun 18:54]

Since I have external life pretty tidy, now might be a good time for some self-reflection. While focus was elsewhere, internal entropy may have accumulated. Also, human bodies and brains generally need upkeep as they age. A lifetime of office work has done me a few disfavors in some areas. Some of this might be harder to track here.

Done. This is probably good for a first round. Will work on these and reevaluate. Now that I've thought about it a bit, I do conclude that more energy spent here will probably have better returns than, say, additional home improvements. So, whenever I can improve the self, it should get the energy investment priority.

The plan:

  • Main focus should be losing the extra 15 or so lbs. Already tracking, but I obviously have a problem completing this. Go back to Soylent-only lunches, since that seems to work best.
  • Talk slower. I noticed I might speak a bit too fast, and especially around here, that can come across a bit abrasive.
  • Maybe work on my weird south-central PA accent a bit. I think it sounds slightly off to people not from that area. Not sure if this is fixable.
  • Consider a minor hair transplant procedure. I inherited thick, but slightly sparse hair from the mother. Not terrible and I never really though about it before, but a small optimization here will improve life in a small but noticeable way. If I like how this goes, I'll consider other elective procedures of the non-invasive variety.
  • Build home fitness area. Adding tracking task.
  • Start getting up at 6:30, and using the extra time to take care of all personal hygiene, cleaning, making bed, etc. This will ensure every day is started with no dangling small tasks. Pair this with a similar routine pre-sleep.

1.13.7 DONE get new retainers

  • State "DONE" from "STRT" [2020-03-23 Mon 14:09]
  • State "STRT" from "BLCK" [2020-03-19 Thu 21:41]
  • State "BLCK" from "CNCL" [2020-01-23 Thu 12:56]
  • State "CNCL" from "TODO" [2020-01-15 Wed 11:49]

Call dentist and see if they can order more of these. Down to my last one, which is badly cracked.

2020-01-15: Found another pair I didn't know I had. Still need to stock up, but I'll be good until my next dental visit. Will inquire about it then.

2020-01-23: Reopened. Was at dentist for tooth fix, so had them order 3 of these for me while there. They'll call when they get them in, or I'll call if no word in 1 month.

2020-03-02: Called to check on these and they hadn't ordered them. They said they will do so now though, and get 2 sets.

2020-03-19: Items have arrived and are awaiting pickup.

2020-03-23: Picked up items. Looks like these are $150/pair.

1.13.8 DONE do 2019 taxes

  • State "DONE" from "STRT" [2020-04-11 Sat 13:20]
  • State "STRT" from "TODO" [2020-04-11 Sat 12:25]

By mid-March, waste a few nights again feeding The Greedy Hand.

Submitted. Managed to get a small $1.2k total return. Got this pretty streamlined now, so this went faster than usual. Not having resource trusts helps a lot. Also didn't itemize, which is another big time killer.

1.13.9 DONE update résumé

  • State "DONE" from "DONE" [2020-06-17 Wed 21:10]
  • State "DONE" from "STRT" [2020-06-17 Wed 21:09]
  • State "STRT" from "TODO" [2020-06-17 Wed 20:57]

Won't refactor it any this time. Just add latest work history and truncate some less impressive stuff to keep it short.

Updated. I having some ideas for redoing the entire structure or at least content at some point. Not a priority though. Also added blackout function for the redacted version that turns any text into black bars.

1.13.10 CNCL ponder CS/math (re-)education

  • State "CNCL" from "TODO" [2020-06-26 Fri 22:47]

I know enough now to redo my CS education, optimally focused towards specific end goals. This will take years, but I think it'll be worth it. This workflow is a merger between CS, math, and programming goals that takes me to where I want to be, with the end goal being represented by being fluent in interactive theorem proving in a dependently typed, purely functional language like Agda. This end goal, however, shouldn't be confused with the point of the effort. Each step along the way represents a significant paradigm shift in thought and skills. This plan ignores remedial topics in which I'm comfortable with my current proficiency. Longer term, I still want to do actually useful stuff, so start thinking about a way to transition this into application in the real world.

The progression of topics:

  • General "mathematical thinking": There are several options here, one approach is through formal logic, the other more proof-focused. I'll probably do a combination of both, but proof solving is a higher priority and more generally useful.
  • Abstract algebra: Study this to the depth covered by an intro-level course's textbook. Apart from being foundational to later work, this also rolls up a lot of minor math topics I would otherwise be remiss to exclude.
  • Theory of computation: A meta-subject I only need some gap-filling on. Read a single, but carefully chosen, text on the subject.
  • λ-calculus: A mostly remedial effort, narrowing focus from the larger topic of computation to one towards functional programming.
  • Haskell: Switch from Clojure to Haskell as primary language.
  • Category theory: A multi-part effort involving several books, from intro to intermediate.
  • Type theory: In parallel or interspersed with the category theory topics, do the progression of 4-5 type theory texts.
  • Agda/Coq: Keep Haskell and Clojure as main languages, but switch all self-study in languages one of these two, depending on which seems to have a more robust community (probably Coq).
  • Dependent types: Supposedly Coq and various Haskell extensions support dependent typing. After understanding the base theory, try applications of it here.

I'll have a good idea of where I want to go next after this once I get there. But, I can already imagine multiple options now:

  • Apply some of these ideas to real software.
  • Pivot from PLT to language and compiler design.
  • Progress into formal methods.
  • Round out self-study with some ancillary topics like information theory or some of the AI subfields I never spent much time with.
  • Go deeper into academic study of type theory, collecting and reading the best papers on the topic.

Will start this as soon as I clear off my more SE-related goals. I might also defer it for another couples months after that to do a front-end technologies refresher for pragmatic reasons.

Canceled. Decided to think about this slightly differently, and generally have a plan for the next 3 years or so. That's already represented here in this file, so won't bother writing it up in one place. I will note that this is a more focused plan that accounts for the current level of free time available. The plan I was working towards here was a bit too broad, includes some things I'm no longer interested in, and was generally unrealistic. As a result, it kind of stalled out and very little progress was being made at all.

1.13.11 CNCL do year-end review for 2020

  • State "CNCL" from "TODO" [2020-07-13 Mon 09:01]

Context: Had a mostly productive 2019, mostly focusing on non-technical, real life cleanup. I did lose a good chunk of half of the year to the local job I took, and while that had other benefits, it did cost a lot of productivity. The general plan for 2020 is to split effort between RL tasks and technical ones. Early year will be focused on home improvement, followed by personal, then technical, with some overlap.

Goals for 2020:

  • Distraction management: This requires constant vigilance, so it's still on this list. No major changes. Play minimal video games, read less fiction, watch little to no non-educational videos, and spend as little time driving as possible (get more stuff delivered whenever possible, even if it costs a little more).
  • Health: No reason I shouldn't be able to finish this off this year. A top priority.
    • Setup fitness area in basement.
    • Maintain wake schedule of 0700-2300.
    • Get Lasik surgery.
  • Work:
    • Get competent enough with work codebase to have it on autopilot.
  • General life:
    • Grow 2020 garden and expand garden space if possible.
    • Plan and execute a personal improvement pass.
    • Do all property maintenance and improve it as much as possible.
    • Finish workshops and office.
    • Finish cleaning house.
    • Do my Org refactor, or at least try it out.
  • Self-study:
    • Conclude Clojure wrap-up by reading at least 2 books and internalizing the job-related features I'm not as familiar with.
    • Consider doing a meetup lecture on some topic.
    • Get started on at least one side project.
    • Refactor targeted skills portfolio.

Canceling these year-end reviews. With the Org refactor, they are no longer necessary. I'll still take a few minutes to think about this, and review everything accomplished in that year. During that time, I may queue up some macro-goals for the coming year. For things that really do need to be done in a certain time frame, use C-c C-d (M-x org-deadline) to specify a completion date. This is more flexible than only doing this for the end of the year.

1.13.12 DONE get dental cleaning

  • State "DONE" from "STRT" [2020-07-27 Mon 11:32]
  • State "STRT" from "TODO" [2020-07-27 Mon 08:32]

Almost forgot about this. Appointment is on 2020-07-27 0945.

Done. Next appointment on 2021-04-22 1000.

2 Project List (2019)

2.1 Computer Science/Programming

2.1.1 DONE Type Systems (paper)

  • State "DONE" from "STRT" [2019-01-24 Thu 17:21]
  • State "STRT" from "TODO" [2018-08-30 Thu 21:49]

An paper introducing formal thinking about type systems, extracted from the Handbook of Computer Science and Engineering. This might be a good review prior to starting a formal self-education curriculum.

Quite good and covers a lot of ground. I'm also thinking now that I might be able to get by with the basics and not need the huge course on the topic I devised. There's value in the underlying theory, but internalizing those details seems to be more appropriate when implementing type systems, not using them. I'll still read some of my planned texts anyway though, and see how I feel about this notion later on. Didn't finish, due to wanting to get a more thorough treatment of the more complex topics in textbook form.

2.1.2 DONE C# 7.0: In a Nutshell

  • State "DONE" from "STRT" [2019-05-24 Fri 21:07]
  • State "STRT" from "TODO" [2019-04-25 Thu 15:46]

Read most of this for the new job, since I think this is one of the languages used. Get a practical refresher of C# and an overview of its features since 3.5. Maybe read up to chapter 9.


  • ref and out qualifiers can be used on function parameters. out is suggested as a solution for multiple value return.
  • Null coelescing operator: Returns a default value if expression is null, e.g. string s = something ?? "nothing";
  • Null conditional operator: Returns null if object is null instead of throwing a NullReferenceException, e.g. string s = o?.ToString();
  • switch statements can match on types and include a when clause.
  • using static can be used to import all static members of a namespace.
  • Expression-bodied method syntax, which can also be used in constructors, local functions, and properties: int f (int x) => x * 2;
  • The this keyword and colon can be used in constructor declarations to call constructors of differing parameters.
  • Deconstructors allow one to assign fields to parameters, similar to a deconstructing bind in other languages. Define a special method named Deconstruct, with fields as out parameters. Use with this syntax: (int x, int y) = o; or var (x, y) = o;
  • When instantiating classes with public fields, use this syntax: new Foo(){x = 1, y = 2};
  • The as operator can be used to downcast an object, returning null if it fails instead of an exception.
  • In addition to type checking, the is operator can introduce a type-casted variable: if (o is Foo f) { Console.WriteLine(; }
  • To inherit the constructor of a base class, use this syntax: public Subclass(int x) : base(x) {}

Some of these post-3.5 features seem like a little bit of syntax bloat, without much substantive payoff. Others are rather nice though, and overall it's a better language now. Stopped after chapter 4, since I started writing some and feel pretty confident with it now. Also went through all the LINQ examples in LINQPad, which follow this book.

2.1.3 CNCL Learn You An Agda

  • State "CNCL" from "TODO" [2019-07-31 Wed 21:38]

An very short online book for learning Agda. More of a tutorial, really.

Skipping Agda in favor of Coq, at least for now.

2.1.4 CNCL Dependently Typed Programming in Agda

  • State "CNCL" from "TODO" [2019-07-31 Wed 21:38]

This appears to be one of the most useful Agda texts. I may consider following this with Verified Functional Programming in Agda (which I have a copy of).

Skipping Agda in favor of Coq, at least for now.

2.1.5 DONE Pro TypeScript: Application-Scale JavaScript Development

  • State "DONE" from "STRT" [2019-07-31 Wed 21:40]
  • State "STRT" from "TODO" [2019-06-06 Thu 19:02]

Seems like a recent and probably okay book on the language. Will read chapters 1-6, 8, and 9, with skimming the boring stuff.


  • const is equivalent to a let, but with immutability.
  • To create a union type, implement multiple interfaces with the & operator, e.g. type u : a & b;

Read a little, but very dull and boring. This is a reasonably competently constructed version of a modern multi-paradigm Java or C#, but I'm going to try to just muddle through with what I know so far. Calling this done.

2.1.6 DONE From design patterns to category theory (blog series)

  • State "DONE" from "STRT" [2019-07-31 Wed 21:43]
  • State "STRT" from "TODO" [2019-06-16 Sun 22:13]

Looks like maybe a good series on applied category theory. Normally wouldn't read such things in blog form, but making an exception here as this looks pretty high quality.

Repetitive, with points highly belabored, but communicates the concepts clearly to its intended audience (OOP developers). There are a few points where I'd quibble with the wording though. Wrote a bit of C# code to see what a library of interfaces that implement these ideas might look like, and it seems to be a smart way to organize functionality, though it's not really possible to model them as completely as in Haskell. For interface inheritance, the only one that seems to make sense is Semigroup -> Monoid. However, it's hard to imagine a pressing need for this that's worth the trade-off. Probably just better to stick to using the language as-intended, especially since anything you'd want to do in C# would require a lot of libraries for the heavy-lifting, and those won't meld well with this custom algebraic structures.


  • Semigroups, lacking an identity element, can only accumulate over a non-empty collection. One can create a non-empty collection type for this.
  • Quasigroups: A magma where its possibly non-associative binary operation ⊗ has the property that for any a, b in Q, there exists two elements x, y for which a ⊗ x = b and y ⊗ a = b. A quasigroup with an identity element is a loop.

Read all of the monoids, semigroups, and functor content, but started getting bored. The C# implementations are tedious and obfuscate the concepts. A better and more concise guide is this one:

2.1.7 DONE Learn Windows PowerShell in a Month of Lunches

  • State "DONE" from "STRT" [2019-09-03 Tue 18:17]
  • State "STRT" from "TODO" [2019-07-31 Wed 21:56]

The last job-related book I should need to read. This was the least lame-looking book on the subject I could find that is relatively recent. Will mostly skim this one to just get the most basic level of competence. After this, I can get back to stuff I actually care about, I hope.


  • Change font to Lucida Console.
  • Run Update-Help to grab the latest and full help files for all commands currently available. Update-Help can and should be run periodically.

Unreadably boring. Quit after a couple chapters. Got a little context, so calling this good enough.

2.2 General Non-fiction

2.2.1 DONE 2018 F-150 Owner's Manual

  • State "DONE" from "STRT" [2019-01-20 Sun 22:48]
  • State "STRT" from "TODO" [2018-08-20 Mon 13:36]

Read this and the supplementary booklets. Study warranty information carefully.


  • Key fobs conveniently take CR2032.
  • Use the Towing chapter for setting up trailer backup assist.
  • Reset the oil change indicator after changing the oil.
  • Wiper blades can be cleaned with a damp cloth.
  • Bulb types are listed here when/if I need to replace them.
  • Change the oil every 7500-10000 miles of normal use.
  • Be sure to replace cabin air filter every 20k miles.
  • Jack is behind the rear passenger-side backrest. To release the spare tire, use the key on the covered keyhole in the rear bumper.

I'm thinking regular service visits every 10k is probably the best route. Check the maintenance schedule (pages 558 and 559) before each visit and ensure that the needed stuff gets done.

2.2.2 DONE Samsung ME16K3000AS manual

  • State "DONE" from "STRT" [2019-01-21 Mon 13:39]
  • State "STRT" from "TODO" [2019-01-21 Mon 11:54]

Learn all the features of the new microwave.


  • There's a lot of specific recommendations here for different food types. Maybe consult this when defrosting specific items.
  • To use other power levels, hit the power button, and enter a number, then the time. The default, level 10, is actually not optimal for most of the stuff I cook. 7-9 is probably better. Use 4 for reheating frozen stuff and 2 for melting margarine.
  • Using multiple power level stages might be a good idea for defrosting then cooking frozen food.
  • Always use "Eco mode". Hit this button and the display will go out and reduce standby power.
  • Occasionally clean the door seals.
  • Use the bottom light to illuminate the stove area instead of illuminating the whole kitchen.
  • Maybe replace the charcoal filter every few years. This is what's used for internal venting, I think.

2.2.3 DONE Craftsman CMXGGAS030733 manual

  • State "DONE" from "STRT" [2019-03-16 Sat 16:09]
  • State "STRT" from "TODO" [2019-03-15 Fri 21:09]

Read this and test it out and come up with a maintenance plan. Also find out what oil it needs.


  • Uses 10W30 oil.
  • When plugging in 110V devices, note the order of outlets to use.
  • Turn on the generator with no load, then slowly activate each load, allowing it to stabilize between additions.
  • To turn off, shut off all loads first, then stop generator. Push off switch, then turn off fuel valve.

Also tested the generator and it works. The engine seems nice, but the rest of it is Chinesium. However, it should be good enough to get the job done.

2.2.4 DONE Kubota BX2380 manual

  • State "DONE" from "STRT" [2019-05-26 Sun 10:52]
  • State "STRT" from "TODO" [2019-05-05 Sun 09:16]

Read this in its entirety. Note any maintenance I need to do outside of scheduled dealer visits.


  • Be sure to remove the SMV sign before towing.
  • Takes 3.5qt 10W-30 oil.
  • Always let the engine warm up for awhile before moving any hydraulics.

I'll probably just take this into the dealer for servicing every 2 years or so.

2.2.5 DONE Getting Started with Berkeley DB Java Edition

  • State "DONE" from "STRT" [2019-11-01 Fri 18:44]
  • State "STRT" from "TODO" [2019-10-21 Mon 06:53]

Reading for work. Will skim/skip the irrelevant parts, like the DPL.

Skipped all DPL content. Read chapters 1, 2, 7-10, skimming the latter group. Also grabbed the Java Edition, which has HTML docs, including this. This has other documents that could be useful references.

2.3 Fiction

2.3.1 DONE Aurora

  • State "DONE" from "STRT" [2019-01-10 Thu 22:44]
  • State "STRT" from "TODO" [2018-12-23 Sun 04:27]

Another recommended AI-focused hard scifi novel.

There's two main components of this novel. The first is the narrative itself, which is largely uneventful, with dull parts drawn out in great detail, and ends up being mostly pointless. The other is the application of various ideas from math and computer science. Unfortunately, these are obviously understood by the author at only a pop-science level, and are often misapplied. For example, the author obviously doesn't understand what the halting problem actually is, and thinks it just means non-terminating processes that need some kind of escape hatch. So, it's hard to find much good here, and even worse, the uninitiated would come away from it thinking incorrect things about certain topics. Most of the rest of this author's works seem to have his politics getting in the way of good story-telling. That's not quite as bad of a problem here, but I'll be skipping him from now on.

2.3.2 DONE The Coming Collapse series

  • State "DONE" from "STRT" [2019-01-15 Tue 02:23]
  • State "STRT" from "TODO" [2019-01-13 Sun 19:09]

I already read the first entry, Patriots. I'll give the rest of the books that currently exist a try, though I expect to get bored before finishing them. This series is notable for each entry being about the same event, but told from various perspectives and geographic areas.

  • Survivors: Not as good as the first novel, which isn't all that great either. This is definitely an installment, as not much is actually resolved here. In fact, many open threads are introduced.
  • Founders:
  • Expatriates:
  • Liberators:

Skipping the rest of these for now, but I'll maybe read Founders at some much later date if I get the urge for more of the same.

2.3.3 DONE Flood series

  • State "DONE" from "TODO" [2019-01-20 Sun 00:41]

Another Stephen Baxter hard scifi novel series. This is about seismic activity releasing large quantities of subterranean water. Sounds a bit boring, but I'll give it a chance.

  • Flood: Quitting about 25% in.
  • Ark:

Definite miss on this one.

2.3.4 DONE Sprawl Trilogy

  • State "DONE" from "STRT" [2019-02-10 Sun 07:21]
  • State "STRT" from "TODO" [2019-01-20 Sun 20:24]

The progenitor of a genre. In fact, I'm rather sad the future didn't turn out this way.

  • Neuromancer: Surprisingly mediocre, though historically significant, I guess. Couldn't help but notice how much early Shadowrun directly takes from this.
  • Count Zero: Read about 75%.
  • Mona Lisa Overdrive: Skipping.

Gibson has a particular writing style that works sometimes, but usually doesn't and just gets in the way of following the narrative. These novels do exist in a very creative universe for the time, and really could've used better paths through them. Reading these turned into a bit of a chore, and I lost interest in finishing the trilogy.

2.3.5 DONE The Hollow Man

  • State "DONE" from "STRT" [2019-02-20 Wed 02:51]
  • State "STRT" from "TODO" [2019-02-17 Sun 01:32]

Supposedly one of the better locked-room mystery novels.

A pretty good mystery novel, but not really solvable by the reader without a lucky guess. Correctly identifying what happened hinges on a timeline being incorrect that the reader would have no clue for doubting.

2.3.6 DONE The Lost Symbol

  • State "DONE" from "STRT" [2019-02-23 Sat 18:51]
  • State "STRT" from "TODO" [2019-02-21 Thu 17:43]

Will give the next in the Robert Langdon series of novels a try, though I'm partially expecting to be disappointed.

Well written and a good mystery thriller with plenty of opportunities to learn new stuff. The main downside is the inclusion of pseudoscience in the form of noetics.

2.3.7 DONE Inferno

  • State "DONE" from "STRT" [2019-03-02 Sat 02:35]
  • State "STRT" from "TODO" [2019-02-24 Sun 16:21]

The 4th entry in the Robert Langdon series.

The weakest of the 3 of these I've read, maybe mostly due to the lack of depth available in the topic chosen. On the other hand, it has the most believable plot. Learned a bit about Venice and Florence too.

2.3.8 DONE The Wandering Earth

  • State "DONE" from "STRT" [2019-03-03 Sun 01:49]
  • State "STRT" from "TODO" [2019-03-02 Sat 03:56]

A novella by Lui Cixin.

An interesting idea, but short such that the idea isn't explored in much depth.

2.3.9 DONE A Meeting with Medusa

  • State "DONE" from "STRT" [2019-03-05 Tue 19:40]
  • State "STRT" from "TODO" [2019-03-03 Sun 10:07]

A 1971 Arthur C. Clarke novella related to airships in Jupiter's atmosphere. If I like this, there's a sequel written by Baxter and Reynolds called The Medusa Chronicles.

Just okay, but nothing special. Will skip the follow-on novel, since this world doesn't seem particularly compelling.

2.3.10 DONE A World Out of Time

  • State "DONE" from "STRT" [2019-03-07 Thu 11:38]
  • State "STRT" from "TODO" [2019-03-06 Wed 01:48]

A 1976 Niven novel about cryosleep and various other topics. Two other novels share the same universe if I'm interested in it.

A great story at first, but then gets pretty boring. Will skip the other novels, since they seem a bit more in the science fantasy genre.

2.3.11 DONE Proxima series

  • State "DONE" from "STRT" [2019-03-11 Mon 08:55]
  • State "STRT" from "TODO" [2019-03-09 Sat 18:49]

A new Stephen Baxter series about planet colonization.

  • Proxima: Quite good, mostly. Has a complex, intertwined story with a mostly interesting setting and a few interesting ideas explored. Only downside is (part of) the ending that introduces the sequel, which includes a particularly lame idea of an alternative history where ancient Rome propagates into the future.
  • Ultima: Reluctantly skipping as this really runs with the implausible alternate history content.

Baxter should probably just condense the good ideas from his various series into single novels. Removing the bad ones and his ability to write endless pages of filler would make for great reads.

2.3.12 DONE BLIT

  • State "DONE" from "STRT" [2019-04-28 Sun 14:51]
  • State "STRT" from "TODO" [2019-04-28 Sun 14:39]

A short story about geometric objects being discovered capable of crashing the human brain.

Great idea, but terrible writing.

2.3.13 DONE The Other Gods

  • State "DONE" from "STRT" [2019-04-29 Mon 21:00]
  • State "STRT" from "TODO" [2019-04-29 Mon 20:49]

A Lovecraft short story I somehow missed.


2.3.14 DONE Coding Machines

  • State "DONE" from "STRT" [2019-10-15 Tue 15:21]
  • State "STRT" from "TODO" [2019-10-15 Tue 14:10]

A comp-fi short story.

A somewhat interesting and realistic take on primitive artificial life.

2.3.15 DONE Responsibility

  • State "DONE" from "STRT" [2019-10-16 Wed 09:57]
  • State "STRT" from "TODO" [2019-10-15 Tue 15:48]

Another comp-fi short story.

Very short, but a good idea that deserves a full story.

2.3.16 DONE Honor Harrington series

  • State "DONE" from "STRT" [2019-10-23 Wed 23:38]
  • State "STRT" from "TODO" [2019-03-13 Wed 19:37]

A huge military scifi series by Weber. There's also some spin-off series, but I'll stick to the core for now.

  • On Basilisk Station: Okay, but not particularly noteworthy. Perhaps hampered by not covering a very exciting subject matter for most of the book. Has a suitably well thought out lore for space travel and naval combat.
  • The Honor of the Queen: Better than the first. Quite good on the naval warfare side, but a little hamfisted on the setting.
  • The Short Victorious War: Okay, but has a fair amount of character filler. Glosses over some of the naval combat that probably would've been more interesting.
  • Field of Dishonor: Rather boring, being mostly just about politics.
  • Flag in Exile: Pretty good, by comparison. All of the anti-sexism stuff is getting a bit old by now though.
  • Honor Among Enemies: A bit dull. Has a bunch of trope-laden subplots.
  • In Enemy Hands: More of the same, and a particularly predictable entry. Does introduce some less 1-dimensional secondary characters though.
  • Echoes of Honor: Long, with a larger amount of boring content.
  • Ashes of Victory: Lots of boring nothing.
  • War of Honor: Mostly political intrigue. Sometimes this is interesting, but often is a chore to read as it goes on for hundreds of pages. Much of the lesser interesting parts of this could've been condensed or even excluded with no effects on the main plot.
  • At All Costs: More personal drama, but occasionally includes some worthwhile naval tactics. Last several chapters are quite good and include the first truly large-scale fleet battle of the series.
  • Mission of Honor: Incorporates some mystery thriller elements, to reasonably good effect.
  • A Rising Thunder: Far less filler and generally a good read, though only a couple things of actual substance happen.
  • Uncompromising Honor: Finally done. A reasonably good conclusion, though it does leave at least one dangling thread.

This series is scifi derivative of C.S. Forester's Horatio Hornblower series. Has a well designed mythos behind it and is occasionally well-written, getting better as the series progresses. Could use some serious condensing and pruning, like other Weber works. Still worth reading, as it's obvious when the narrative shifts into the lower-quality content, usually about relationships or cats, and which can be safely skipped or skimmed.

2.3.17 DONE The Doomsday Conspiracy

  • State "DONE" from "STRT" [2019-10-28 Mon 09:14]
  • State "STRT" from "TODO" [2019-10-27 Sun 15:23]

A conspiracy thriller, supposedly somewhat decent at least.

Completely mediocre.

2.3.18 DONE Ghost Fleet

  • State "DONE" from "STRT" [2019-11-12 Tue 00:23]
  • State "STRT" from "TODO" [2019-10-28 Mon 12:58]

A 2015 military techno-thriller. Includes a lot of modern naval warfare, supposedly.

Competently sourced, but probably draws too much from present day trends with no room left for innovative ideas. Actual plot is rather stock and formulaic. Has some naval combat, but lacks any clever tactics.

2.3.19 DONE The Crystal Spheres

  • State "DONE" from "STRT" [2019-11-12 Tue 17:16]
  • State "STRT" from "TODO" [2019-11-12 Tue 00:29]

A Brin scifi short story about intentional isolation of the solar system.

About one idea: the planetarium hypothesis of the Fermi paradox.

2.3.20 DONE The 2020 Commission Report

  • State "DONE" from "STRT" [2019-11-23 Sat 08:58]
  • State "STRT" from "TODO" [2019-11-18 Mon 14:27]

Full title is The 2020 Commission Report on the North Korean Nuclear Attacks Against the United States, a speculative fiction work made to resemble a post-event governmental report.

Having read many actual reports in real life of the type this emulates, this one isn't convincing. The style and content are significantly off. I also know some about this topic from previous work, and many speculative events and characterizations don't even closely fit. Worst of all is the author's present day political bias on full display, fully killing immersion. Tried just skimming through the lacking content, but eventually gave up.

2.3.21 DONE Not Alone series

  • State "DONE" from "STRT" [2019-12-25 Wed 00:07]
  • State "STRT" from "TODO" [2019-11-24 Sun 07:08]

A rather unknown series about first contact.

  • Not Alone: Follows a group of normies with a heavy focus on media reaction to first contact. Content is mostly filler, with the remainder being boring and nothing special. Protagonist might be a self-insert.
  • Second Contact:
  • The Final Call:

The content of this series is of no interest to me, so skipping the rest of it.

2.4 Technology/software

2.4.1 DONE deprecate SLIME and Maxima

  • State "DONE" from "STRT" [2019-02-06 Wed 12:49]
  • State "STRT" from "TODO" [2019-02-06 Wed 12:44]

Remove SLIME config from my base Emacs setup. With no intentions of writing CL any time soon (or ever, really), this will help de-bloat it a good bit. I'll also remove Maxima and just put it back later if I actually use it again.

Backed up setup to unused_init.el.

2.4.2 CNCL projectile

  • State "CNCL" from "STRT" [2019-03-03 Sun 00:41]
  • State "STRT" from "TODO" [2018-07-02 Mon 10:19]

A project-management/navigation package for Emacs. One useful default is that it considers git repos to be projects.

Canceling this for now. Might revisit later though.

2.4.3 DONE Component

  • State "DONE" from "STRT" [2019-03-03 Sun 00:41]
  • State "STRT" from "TODO" [2018-08-06 Mon 09:34]

A Clojure framework for DI-like state management of services with dependencies. Been meaning to look at it for a while, since I occasionally have such things in programs.

Maybe also check out this use case:

This is more for genericizing the management of anything stateful. A more common use case I might be in the market for is a global cache that I might otherwise just have a naked global Atom for. At a higher level, it's for declaring the order of stateful setup/tear-down. I do appreciate keeping this stuff in one place and top-level. Equally of interest is the ability to stub out parts of the system object, like for testing. I will definitely be using this from now on for any stateful apps.

I may circle back around here when I have little more time and create a new n-tier template that uses Component.

2.4.4 DONE fix Clojure stack

  • State "DONE" from "STRT" [2019-03-22 Fri 18:01]
  • State "STRT" from "TODO" [2019-03-21 Thu 21:10]

Hadn't used this in a few months and it bit-rotted. Redo everything with the latest versions.

Updated CIDER and cider-nrepl to 0.21.1. Updated lein to 2.9.1.

2.4.5 DONE Visual Studio Community Edition

  • State "DONE" from "STRT" [2019-03-23 Sat 16:35]
  • State "STRT" from "TODO" [2019-03-04 Mon 12:54]

Set this up to see the state of the IDE and F# development.

Some extensions I might want:

  • Visual Studio Productivity Power Tools: A collection of mostly UI improvements.
  • Web Essentials: A collection of web-related additions, like supporting markdown, CSS, etc.
  • Trailing Whitespace Visualizer: Also removes.
  • Resharper: External and payware. Skipping here.

Looks like it has some minor improvements from when I last used it. NuGet seems to be the package manager of choice too. Didn't use this much though, since I don't actually have any .Net programming to do (and hopefully never will). Another big change is Git and GitHub integration.

2.4.6 DONE create simple React site

  • State "DONE" from "STRT" [2019-04-26 Fri 08:22]
  • State "STRT" from "TODO" [2019-03-02 Sat 23:40]

Get a workflow for creating a basic client-side site in React.


  • Create a project folder, initialize git, and host it somewhere if desired.
  • Run: npm init
  • Run (-D installs as dev dependencies): npm i webpack webpack-cli -D
  • Create src subfolder.
  • Create index.js in src. Maybe put a placeholder of: console.log("hello");
  • Add start and build targets in package.json.
  • Test current dev setup with npm run start and/or npm run build.
  • Run (-S installs as project dependencies): npm i react react-dom -S
  • To support compilation to ES5, install babel: npm i babel-core babel-loader@7 babel-preset-env babel-preset-react -D

    Note: babel-loader@8 doesn't work with the version of babel-core (6.x) that is currently pulled in by it.

  • Create webpack.config.js file with babel-loader config.
  • Create .babelrc file to specify babel-loader options.
  • At this point, react is ready to use in index.js and an index.html can be created (also in src).
  • Add html-webpack-plugin to inject the JS file into index.html: npm i html-webpack-plugin -D
  • Add html-webpack-plugin configuration to webpack.config.js.
  • Run: npm i webpack-dev-server -D
  • Edit package.json to run webpack-dev-server for the start target.
  • Now running npm start will run a dev server and auto-rebuild on changes. If the --open flag was included, this will auto-launch a browser.

Was gonna add some more features to this, but it is working now at least. Might circle back around to this once I have more free time.

2.4.7 CNCL play-clj

  • State "CNCL" from "TODO" [2019-05-25 Sat 02:05]

Was previously going to learn LibGDX, but then this Clojure wrapper to it came out. Seems quite excellent and I'll probably make this my replacement lightweight game library. There's also play-cljs, which is on top of p5.js.

Looks a bit dead. play-cljc is also out now too. Maybe check that out instead if I really want to give this a try.

2.4.8 DONE AWS Cloud Practitioner training

  • State "DONE" from "STRT" [2019-05-30 Thu 21:30]
  • State "STRT" from "TODO" [2019-05-27 Mon 15:36]

Take the 4.5 hour free course, which might help provide a contextual overview of services. My intention was to skip the exam, but looks like work wants me to do it later, since they're kinda cert junkies.

Somewhat informative. I knew some of this, but it did tie together a lot of the common services. Could use some audio balancing and getting constantly timed out of the course listing page is annoying though. I might use Elastic Beanstalk for some soft launches.

2.4.9 DONE ShellCheck

  • State "DONE" from "STRT" [2019-06-29 Sat 10:25]
  • State "STRT" from "TODO" [2019-06-29 Sat 10:17]

A Haskell program for checking shell scripts. Don't have an immediate usage for it, so just take a look and note if I want to keep it in mind.

Looks great. Can integrate with Emacs. Will do so if I ever start writing a lot of shell scripts (which hopefully will never happen). Also good to add to a build configuration as a failure condition if a project ever includes scripts. Added note to maybe include in my next OS setup to install via stack. Also has packages available for both OpenBSD and FreeBSD. There's also a Docker Hub container for it.

2.4.10 DONE Triplebyte quiz

  • State "DONE" from "STRT" [2019-07-18 Thu 22:27]
  • State "STRT" from "TODO" [2019-07-18 Thu 21:24]

This YC-funded company has an online programming quiz that supposedly acts kind of like an inverse multiplexer for the technical part of interviews. This won't do anything for me, since they don't currently do this for remote positions, but I'll still give it a try and see how I do.

Did the generalist quiz. Not bad, and I think I got all of them correct. Unfortunately, they don't tell you your score.

2.4.11 DONE clean up UPenn Clojure exercises

  • State "DONE" from "STRT" [2019-07-27 Sat 12:58]
  • State "STRT" from "TODO" [2019-07-26 Fri 22:06]

Did this when I first started getting serious about Clojure. It's kinda embarrassing now.


2.4.12 DONE redo windows machine(s)

  • State "DONE" from "STRT" [2019-07-29 Mon 22:31]
  • State "STRT" from "TODO" [2019-07-10 Wed 11:24]

Now that I have an MSDN subscription again, I'll update everything on the Windows side of the network.


  • [X] Download all ISOs and installers and store on backup drive.
  • [-] Keys to claim and write down:
    • [X] Windows 10 Pro.
    • [X] Visual Studio 2019 Enterprise.
    • [X] Windows Server 2019 (+ various related keys).
    • [ ] SQL Server 2019 CTP3.0. Maybe hold off on this until I quit, since this is a preview.
    • [X] SharePoint Server 2019.
    • [X] Office Pro Plus 2019.
    • [X] Visio Pro 2019.
    • [X] Project Pro 2019.
  • [X] Get new 256-512GB SSD for main computer.
  • [X] Setup workstation with Windows 10 Pro and the non-server apps above, plus SSMS and latest .Net Framework (check if VS2019 installs this first).
  • [X] Re-install all normal Windows apps I use occasionally.

A usability downgrade, but I guess if I want to keep a gaming rig around, I don't have much choice. Decided not to upgrade hardware, since the benefits are marginal. Also debated setting up a spare box for Server 2019 and the various server applications, but decided not to in order to spare needless overhead. Might still do that in the future, but only if I decide to do some serious Windows development involving server interaction, like something needing SQL Server. I'll keep it as a backup option if needed for future remote work.

In such a situation that I do setup a Server 2019 box, it could include SharePoint Server 2019, Azure DevOps Server 2019, SQL Server 2019 (when released), and Project Server 2019. This will be a headless box, with RD-only access. Other tasks could include hosting VMs that I can connect to remotely (maybe Hyper-V can do this?), but said box would need some beef.

Also upgraded VMware Workstation Player version and a few minor apps. Didn't bother with some others though. Looks like copying over the steam/steamapps folder works for transferring games.

2.4.13 DONE Debian 10.0.0 VM

  • State "DONE" from "STRT" [2019-08-11 Sun 18:25]
  • State "STRT" from "TODO" [2019-08-11 Sun 15:16]

Currently using 9.5.0. Not sure I'll bother, but leaving this as a reminder in case I have some free time. Try to get xmonad integration with Gnome working:

Done. Skipping the xmonad setup for now.

2.4.14 CNCL FsCheck

  • State "CNCL" from "TODO" [2019-07-31 Wed 21:58]

A QuickCheck library for .Net. Written in F#, but can be used in C# too. Good for modeling laws of group/category theory concepts. Might skip if I don't get around to this before quitting the current job.

Skipping this, but I'll keep it in mind in case I ever write any .Net code.

2.4.15 DONE setup FreeBSD 12.0 VM

  • State "DONE" from "STRT" [2019-08-22 Thu 21:42]
  • State "STRT" from "TODO" [2019-08-19 Mon 22:38]

See about getting ZFS on all or most partitions.


  • Did a full disk ZFS install with encryption.
  • Switched to xmonad from ports instead of stack-based.
  • Switch Xorg to use DBUS instead of HAL.
  • Various minor updates.

Had a few minor ports build issues, but looks like it'll be a working setup. Since this is just a test VM, I skipped the kernel/userland build. For encryption, I think I'll be skipping this in a full disk setup. Had daily power outages while I was compiling stuff on this VM, and in the last one, geli was unable to decrypt the disk. This left the entire VM useless. I was going to just do encryption on the laptop, but now I'm definitely not doing it anywhere, even if this is unlikely. In fact, I'll probably just stick to UFS there. Maybe later I'll work on just encrypting /home.

2.4.16 DONE ZFS (revisited)

  • State "DONE" from "STRT" [2019-08-22 Thu 21:47]
  • State "STRT" from "TODO" [2019-08-19 Mon 22:38]

Now that have some more resources on FreeBSD, I might want to use ZFS. This will still be a single disk, so it'll be a 1 disk stripe VDEV.

Some thoughts/pre-research notes:

  • Might still want to set copies=2 for self-healing for /home.
  • Looks like ZFS requires the whole disk.
  • Try making a freebsd-boot and freebsd-zfs.
  • ZFS calls what would be partitions mapped to paths on the FS as datasets (e.g. zroot/home -> /home).
  • LZ4 compression is on by default. This is pretty good about not compressing binaries and is a good tradeoff of CPU for disk I/O.
  • Skip de-duplication, since it wastes too much RAM.
  • Need to look into encryption, if I want to duplicate on the laptop. Requires a bootable non-encrypted partition.
  • Can use snapshots for risky OS operations, like full upgrades. Can also use clones for testing stuff.
  • Can use send/receive to ship an FS to a backup, like a USB drive. This is smartly selective, like rsync, but on a block level.
  • Use zfs scrub regularly, like once a month on regular-use systems. Probably should crontab this.

Follow this guide:

For my current drive, set ashift=13. This sets vfs.zfs.min_auto_ashift. Can also be checked with zdb | grep ashift.

Only thing left to do is actually try this out on real hardware, keeping an eye on I/O performance.

2.4.17 CNCL Twelf

  • State "CNCL" from "TODO" [2019-08-22 Thu 22:07]

A dependently-typed logical language more powerful than Prolog. Comes with its own Emacs mode and is available as a FreeBSD port. Probably will skip, but will at least consider it once I clear off some of the queue.

Will use Coq and (probably) Dependent Haskell for this instead.

2.4.18 DONE upgrade FreeBSD workstation

  • State "DONE" from "STRT" [2019-08-30 Fri 22:10]
  • State "STRT" from "TODO" [2019-08-12 Mon 21:18]

Thinking about grabbing a pre-configured ZaReason Zini 1880, which seems to be a rebranded NUC8i3BEK. I'd then retire my current NUC, and keep it as backup. Total cost for my desired specs (i3-8109U, 16GB RAM, 120GB M.2 SSD) would be $600.

After some thought, decided to just build it myself:

  • Intel NUC8i3BEK
  • Samsung 970 EVO 500GB - NVMe PCIe M.2 2280 MZ-V7E250BW
  • HyperX Kingston Impact 2x16GB 2400MHz DDR4 260-Pin HX424S14IBK2/32

Reasons for upgrading:

  • Fan in 5.5 year old current NUC is starting to make annoying noise. Cleaning doesn't seem to help. Might be the bearing going out.
  • Current NUC is pretty marginal but acceptable for current use. However, anything requiring any beef requires me to use a VM on the gaming rig. REPL startup is annoyingly slow too.
  • Upgrading resource capacity will make running containers of any size feasible.
  • 8th gen NUCs have an improved cooling solution with a larger fan.
  • New NUCs come with WiFi on the MB (Intel Wireless-AC 9560).
  • NUC8i3BEK hardware seems fully supported by FreeBSD, by my best guess.
  • USB 3.0 support, 1 extra front USB port, and a side microSDXC slot.
  • NVMe M.2 and modern RAM = super performance improvements. Current NUC is a 1.1Ghz Celeron 847 with 8GB of DDR3 1333Mhz. For the SSD improvement, it's 247MB/s vs 1666MB/s sequential (avg). RAM performance benchmarks show about a 2x improvement. CPU is about 5x.


  • NUCs are much more expensive now.
  • Power usage is higher even on bottom-line models.
  • Would rather have a new AMD CPU.

This build would be $887 from ZaReason (vs. $565 here), and I'm not sure which brand of RAM/SSD I would get. So, no reason to buy pre-built when it only takes 15min to assemble. Parts ordered on 2019-08-12.

2019-08-20: All parts acquired. Need to dd USB drive and copy all stuff to a junk VM and/or the laptop.

2019-08-28: NUC assembled and base OS installed with Xorg and Emacs up. One downside noticed so far is the Intel Wireless-AC 9560 isn't yet supported by iwm. Work is in progress though, so it might be in 13.0.

2019-08-30: Kernel and world compiled and installed. Still have to setup Docker and bhyve, but I'll split off those tasks, since it's the first time I'm doing those.

This worked out great and was definitely worth the cost. Overall speed of the system has been dramatically improved. This setup should be more than adequate until the fan goes out, which will hopefully be a long time. As for the old NUC, I'll keep it around as a test bed for alt-OS hardware installs, e.g. NixOS, or maybe make it an OpenBSD box if I can get a bedroom desk.

2.4.19 DONE convert Emacs addons to use ELPA

  • State "DONE" from "STRT" [2019-08-31 Sat 00:08]
  • State "STRT" from "TODO" [2019-08-30 Fri 22:37]

Go through all of my manually-installed packages and convert as many as possible to pull from ELPA. I recently rewrote the package.el config, so managing these automatically shouldn't be as sloppy. This will also make my init more self-contained. Some addons are starting to get larger dependency trees now too, which makes manually managing these a chore.


  • magit (removed ghub, magit-popup, with-editor)
  • wttrin (removed xterm-color)
  • powerline
  • aggressive-indent
  • lusty-explorer
  • diminish
  • elscreen
  • git-gutter
  • emms
  • gnuplot
  • flymake-cursor
  • htmlize
  • markdown-mode
  • multi-term
  • paredit
  • rainbow-delimiters
  • rainbow-mode
  • volatile-highlights
  • web-mode
  • js2-mode

2.4.20 DONE update all Emacs addons

  • State "DONE" from "STRT" [2019-08-31 Sat 01:00]
  • State "STRT" from "TODO" [2019-08-30 Fri 22:37]

Upgraded to 26.2, so might as well update all addons that still don't have ELPA entries.


  • org-present


  • pabbrev

Not much to do after migrating most of this to ELPA.

2.4.21 DONE deprecate redo+

  • State "DONE" from "STRT" [2019-09-01 Sun 14:01]
  • State "STRT" from "TODO" [2019-09-01 Sun 14:20]

Instead of using this addon, try C-g C-_. Add subsequent C-_ calls to continue redoing and C-g C-_ to switch directions again.

2.4.22 DONE switch to AUCTeX from ELPA

  • State "DONE" from "STRT" [2019-09-01 Sun 14:36]
  • State "STRT" from "TODO" [2019-09-01 Sun 14:26]

I'll still want to install this port to pull in dependencies, but using this from ELPA will allow for less sloppy init. I could even install it from ports, then remove the leaf and keep the dependencies, though I'll probably just leave it there to keep the leaf ports list clean.

2.4.23 DONE fix HDMI audio

  • State "DONE" from "STRT" [2019-09-01 Sun 01:05]
  • State "STRT" from "TODO" [2019-08-31 Sat 11:02]

In FreeBSD 12 using the current drm-kmod, HDMI audio won't come back after the monitor goes to sleep. This can only be restored by rebooting. Seems like this has been a problem since Haswell.

Tried a few things, the most promising of which were some creating a /usr/local/etc/X11/xorg.conf.d/serverflags.conf file. Unfortunately, nothing worked. I'm not really committed enough to it to start messing with the kernel code, so I'll just live with it and reboot the rare times I want to watch a movie. I'll try upgrading to 12.1 when it comes out and hope that it's fixed by then.

More generally, I've been noticing a lot of slop in FreeBSD lately. I'm also getting a bit tired of fixing broken stuff (and worse, living with the bugs) in every release. I may start seriously considering switching OSes here soon. I'll put off getting too invested in bhyve while I ponder this. One thing I've been thinking is that all this BSD-specific knowledge is rather useless in the Linux-dominated commercial world, and containers have been decreasing the business case for BSD on the server side.

If I circle back around to this later, try using drm-next-kmod and check out some of this guy's ideas:

2.4.24 CNCL fix Intero setup

  • State "CNCL" from "STRT" [2019-09-01 Sun 01:52]
  • State "STRT" from "TODO" [2019-09-01 Sun 01:18]

This has been broken for awhile. I've updated stack, switched to using the locally installed version, but Intero's startup is still non-functional. Either figure out what's wrong or redo it from scratch. If I'm having problems still, I can also check out ghcid, which is significantly less complex and still integrates into Emacs, or Dante, which is a fork of Intero.

Maybe read this:

And these:

I think the reason this was breaking was being I used stack install intero, which will only work until GHC is upgraded.

Still broken. This setup should work, but seems the FreeBSD implementation of this isn't used commonly enough to stay working. Yet another reason to consider my possible OS switch.

2.4.25 CNCL bhyve

  • State "CNCL" from "TODO" [2019-09-01 Sun 17:33]

The hypervisor VM manager, specific to FreeBSD. I'd like to switch most of my VM use (minus games) to this, in order to leave my gaming rig off most of the time, thereby saving power. OpenBSD has similar capability with vmm.

There are, however, some downsides to VMs in bhyve:

  • Not portable cross-platform the way that VMware or VirtualBox images are.
  • Not optimal for graphical consoles, though it supports them. It seems the recommended approach is to use X forwarding over SSH.

Will try to get at least a Debian or Ubuntu VM up. My hope is that VM usage won't be as much with docker-freebsd around. This should just give coverage on the few Linux apps/games I might want to use and also provide some sandboxing that I can conveniently roll back with ZFS.

Pretty sure I'm going to switch out of FreeBSD, so canceling.

2.4.26 CNCL docker-freebsd

  • State "CNCL" from "TODO" [2019-09-01 Sun 17:34]

I have some ideas for containerizing various things. Since Docker is nearly ubiquitous now, this will also just be useful to get some extra familiarity with. This is just setting it up and testing it out. Later, I'll make a set of aliases to kick off various containers. Maybe install docker-compose too.

Pretty sure I'm going to switch out of FreeBSD, so canceling.

2.4.27 DONE Proof General

  • State "DONE" from "STRT" [2019-09-01 Sun 18:14]
  • State "STRT" from "TODO" [2019-09-01 Sun 18:04]

Set this up to use Coq.

Had to use the MELPA version, as the one in stable is broken. Enabling the toolbar (M-x tool-bar-mode) is actually useful here, at least until I get used to the commands. I might add company-coq later, but will try using this as-is for now.

2.4.28 DONE which-key

  • State "DONE" from "STRT" [2019-09-01 Sun 21:58]
  • State "STRT" from "TODO" [2019-09-01 Sun 19:56]

CIDER recommends this for navigating its very large tree of commands.

Activated this for AUCTeX, CIDER, and org. Seems nice to be able to navigate the command tree for modes like these. I'll try using it a bit and see if it ever actually comes in handy.

2.4.29 DONE dockerfile-mode

  • State "DONE" from "STRT" [2019-09-02 Mon 00:19]
  • State "STRT" from "TODO" [2019-09-02 Mon 00:11]

A small major mode, just for Dockerfile support.

Use C-c C-b to build.

Add a line like this for specifying the image name. Without this, it'll prompt for one:

## -*- docker-image-name: "your-image-name-here" -*-

2.4.30 CNCL Void Linux

  • State "CNCL" from "TODO" [2019-09-03 Tue 18:16]

Try out this distro. Might want to try it with the Nix package manager, though the default looks good too (which I may want to start with). Try it out on a VM.

Skipping for now.

2.4.31 DONE consider switching workstation to Linux

  • State "DONE" from "STRT" [2019-09-03 Tue 21:03]
  • State "STRT" from "TODO" [2019-09-03 Tue 20:25]

I never really thought the day would come, but I'm seriously considering switching out of the BSD world, at least for the laptop/workstation.


  • Hardware compatibility. Probably the biggest cause here is total BSD desktop usage is at its lowest point ever, under 0.1%.
  • Laptop power efficiency.
  • FreeBSD has been an annoyingly buggy mess lately. It's starting to actively get in the way of getting work done.
  • Lots of FreeBSD ports are going unmaintained. If this keeps up, it'll start looking more like OpenBSD, with huge gaps in things I can actually do with my computer.
  • BSD is irrelevant in the workplace these days, at least for anything I'd ever do. Containerization has killed BSD's exclusive feature I'd be interested in (jails). The remaining ones are more network-focused. By contrast, more Linux internalization will be a net benefit.
  • Huggate, while it didn't have much of a overall effect, has cuckified the BSD community to some degree and was never rolled back. A few of the contributors who also owned testicles have stopped in protest, leading to some of the above.
  • Intero, Conkeror, audio, and various other things would once again work. In fact, I could basically get exactly the user experience I aim for in FreeBSD, and without all of the hard work of getting 90% of the way there.
  • It wouldn't take 2 weeks to setup my OS. I mainly just want to write code, not be a sysadmin. This section of this file tends to be full of busy work that adds nothing to my overall QoL.
  • While the rest of the system might be a bit chaotic, I'll have more energy to focus on keeping $HOME perfect.
  • No need for Linux compatibility layers. This is required for increasingly more in BSD these days.
  • Some added gaming options, though I probably won't take advantage of this.
  • When stuff does go wrong, I'll have more resources to actually fix it.


  • I'll never want to dig into kernel or other internals, since the code is a mess.
  • systemd.
  • Linux audio stack is a horrible mess, though I've never had a problem with it and can just ignore it.
  • Security is slightly more of a concern.
  • Debian also has a few SJWs trying to power-grab, though it looks like they're mostly contained. This wouldn't be a problem if I switched out of it later though.
  • BSD documentation is much better than Linux.

One possible vision is to use Debian locally and switch the VPS to OpenBSD. Then, I'll work on getting a viable ArchLinux or NixOS setup in my spare time and switch to that. Arch has long been my favorite distro for various reasons, including borrowing some of the good ideas from BSD. NixOS might be an even better alternative for my use cases though, since I don't need Arch's support of up-to-date packages.

Decided to go forward with the conversion and try doing all my real work in a Linux distro for awhile. Will evaluate the results after a few months. The plan is to try Manjaro in a VM first, then provided that works out nicely, install it on the laptop, then the workstation.

My conclusion is based upon rethinking what I really want out of my OS. There are minor factors here, but the three big ones are:

  • On a spectrum from "just works" to "everything configurable and built from scratch", I'm a bit more in the middle than the point I'm currently operating at. Windows, OSX, and even distros like Ubuntu do too much, but Arch and FreeBSD waste too much of my time with little payoff. Sinking several weeks per year into such activities is a big tax on getting interesting things done. I'll trade tracking current for stability, up to being a few months behind.
  • The current setup is actively prevented from doing work due to unfixable bugs. I can fix some of the OS-level bugs I encounter, but will never have the insight into the ever-changing internals enough to fix all of them. I've consistently had to just live with at least a few annoyances in every release for the past few years. Manually porting software is also error-prone and a lot of work.
  • The intersection between my interests and OSes is very low.

However, I should definitely revisit this trade-off later when I have more free time. When that time comes, re-examine all OS options again too.

2.4.32 CNCL setup Manjaro VM

  • State "CNCL" from "STRT" [2019-09-04 Wed 21:58]
  • State "STRT" from "TODO" [2019-09-03 Tue 21:03]

Manjaro (currently #2 on distrowatch) is an Arch-based distro that treats Arch as its test-bed. It still supports rolling releases, but with a 2 week lag for stability testing. Will try building off of the Architect ISO. I can also grab more obscure packages from the Arch User Repository. Try getting my full dev stack up, minus printing and Samba.

Has video driver issues out of the box, which I don't feel like fixing. Might check back on this distro some day.

2.4.33 DONE update Emacs on Windows

  • State "DONE" from "STRT" [2019-09-07 Sat 12:25]
  • State "STRT" from "TODO" [2019-09-05 Thu 20:31]

Try out my current setup there and fix anything that doesn't work. Package up ~/.emacs.d so I can use it at work.

Updated Emacs version and retooled config. Should work out of the box now, with the only exception of commenting out w3m config if not present. I could do more with browser integration and such, but I don't actually intend to use it on Windows for more than quick text editing at work, so it's not worth the hassle.

2.4.34 DONE Docker (Windows)

  • State "DONE" from "STRT" [2019-09-08 Sun 12:01]
  • State "STRT" from "TODO" [2019-09-07 Sat 22:30]

Setup Docker on Win10, in order to run containers anywhere. Also install Docker Compose and Kitematic (which might come with the installer).

Installed Docker Desktop (37877). This comes with Docker Compose. Both are in %PATH%. Installed Kitematic, but it does have some bug where it can't pull through the UI. Command line pulling still works though.

Noticed this enabled Credential Guard, which breaks VMware. Disabled this using a script called DG_Readiness_Tool_v3.6.ps1, run with:

DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot

But then that breaks Docker (turning off Hyper-V, I guess). So, looks like I have to choose between running Docker or VMware. Will go with the latter unless I have a good reason not to. I was hoping Docker would be less clunky on Windows when connected to the internet, but that seems to not be the case. I'll stick to using it in other OSes.

2.4.35 DONE install Manjaro on laptop

  • State "DONE" from "STRT" [2019-09-15 Sun 22:55]
  • State "STRT" from "TODO" [2019-09-09 Mon 07:07]

Wipe FreeBSD off laptop and try getting a fully functional setup there. If this works out nicely, I'll do the same on the workstation. I might stick with the i3 WM on the laptop though, just for ease of connecting to networks.

Took a few days of tweaking, but things work here pretty good now. Did several things worthy of note:

  • Created a file to track setup procedure.
  • Modded i3 moderately, mainly to behave more like my xmonad setup, which I find pretty optimal.
  • Got power management setup the way I want using xfce4-power-manager.
  • Connected AUR.
  • Tested the important programming stacks, like LaTeX and Clojure.

This is a nice setup, and I'm glad I gave it a chance instead of sticking with what I've always used. The general OS-level things I prefer in BSD over Linux are there, but are behind the scenes enough for me not to notice them much. Probably the main downside is the increased resource usage, but I shouldn't notice it on my new hardware. The next install should go super fast.

Some things I could still do, but I'll put off until I get it on the workstation:

  • Figure out where package downloads are copied so I can save download time.
  • Confirm stack and Intero work together nicely.
  • Get Conkeror working.
  • Do some additional i3bar and Conky tweaking. Get the i3bar to auto-hide on start.
  • Setup nginx.

2.4.36 CNCL pinentry-emacs

  • State "CNCL" from "STRT" [2019-09-22 Sun 08:03]
  • State "STRT" from "TODO" [2019-09-20 Fri 20:50]

By default on Manjaro, GPG decryption doesn't work in terminal mode. Supposedly, using this script is a workaround.

  • Download script to ~/bin and chmod u+x it.
  • Create a ~/.gnupg/gpg-agent.conf and add this line: pinentry-program $HOME/bin/pinentry-emacs
  • echo RELOADAGENT | gpg-connect-agent

This didn't work, and just breaks it completely. Will have to come up with another strategy. Tried using gpg -d file.gpg > file from the CLI, but this also uses the graphical popup. Maybe try integrating the included pinentry-emacs binary next time.

2.4.37 DONE install Manjaro on workstation

  • State "DONE" from "STRT" [2019-09-22 Sun 08:30]
  • State "STRT" from "TODO" [2019-09-15 Sun 23:10]

Get things working at least as good as they now are on the laptop. Do my standard FreeBSD backup routine, then install Manjaro on the workstation. Upon completion, I should be able to leave my main rig off except for playing games. Be sure to copy /var/cache/pacman/pkg from the laptop to save time downloading stuff.

So far, everything worked out okay except for:

  • HDMI audio seems to work, but I can't switch output to it. I've worked around that hooking the amplifier to the headphone jack, but that's less than ideal.
  • GnuPG 2 insists on using the graphical passphrase prompt. I can use pinentry-curses from the CLI, but not from within Emacs.

Overall, this is a huge improvement, at least on the stability front. I'll wrap up the remaining ancillary setups, try to fix the two annoyances above, then finally start thinking about what to do about the VPS.

2.4.38 DONE Jira (introduction)

  • State "DONE" from "STRT" [2019-09-23 Mon 12:12]
  • State "STRT" from "TODO" [2019-09-23 Mon 15:52]

Update general knowledge of Jira. I've used this before, but in pre-Git days. This is just a pre-loading knowledge task to ease my future transition using it. I'll schedule a follow-on task if needed, once I learn the subset of features used and if there's enough complexity to warrant it. Generally, I haven't had to do that for tracking software though.

Read a couple overviews and tutorials. Since Jira covers so many use cases, this branches pretty quickly. As I don't want to waste a bunch of time learning parts of the system I won't use, I'll call this good. Seems pretty simple overall.

2.4.39 CNCL Gorilla REPL

  • State "CNCL" from "TODO" [2019-09-28 Sat 16:01]

Possibly the best data science solution for Clojure at the moment.

Might revisit later if needed.

2.5 Games

2.5.1 DONE Underrail

  • State "DONE" from "STRT" [2019-01-06 Sun 12:03]
  • State "STRT" from "TODO" [2018-12-17 Mon 21:29]

A 2D-isometric RPG, highly reminiscent of Fallout 1/2. Got on a GOG sale for $5.99.


  • Use the build tool to plan characters. Set all stats to 3, level to 25 (the max), then max out the skills desired and backfill the prereqs:
  • Looks like this uses SFML. This is about the level of detail I wanted for a 2D isometric game, though that would require a lot of building on top of SFML since it's not a full engine. It does have bindings in other languages, including Haskell and Java, though I'd have to look into it to see how complete they are. I'd imagine it's probably easier to use a native library.
  • Use junkyard surprise (a food item) to boost base stats to get by stat checks. This can raise a random stat +1 or +2.
  • If playing a single weapon character, wear some items like boxing gloves or jack knife in the off weapon slot for the equip bonuses.

Great game and one of the best 2D-isometric games out there. This game expects a deep understanding of game mechanics, min/max builds, and crafting. My first character was an unplanned pistol/knife character with no crafting skills and he found himself hopelessly outclassed by mid-game. Restarted with a stealthy crossbow/traps user. Might try a stealth/psi or unarmed build next time, or just the same build but dropping the bio, chem, and traps skills.

2.5.2 CNCL Nocturne

  • State "CNCL" from "TODO" [2019-01-06 Sun 23:21]

A 1999 adventure game, now available as abandonware.

This runs, but is buggy and clunky to the point of being nearly unplayable.

2.5.3 CNCL Space Station 13

  • State "CNCL" from "TODO" [2019-01-06 Sun 23:39]

Supposedly a unique concept. Multi-player, however, so maybe just give it a try for a bit.

Watched a few videos of it and will skip.

2.5.4 DONE The Operational Art of War III

  • State "DONE" from "STRT" [2019-01-13 Sun 19:46]
  • State "STRT" from "TODO" [2019-01-13 Sun 18:43]

There's a huge genre of TBS wargames that have minimal graphics and are mostly on hex-based grids by convention. These supposedly have a lot of strategic depth. I'd at least like to give one of them a try, and TOAW3 is often cited as one of the best (the very expensive War in the Pacific: Admiral's Edition is another).

The copy I have was stuck in bin/cue format. Converted this to an ISO using bchunk on a Linux VM. Deleted the bin/cue copy. Installed to my WinXP VM. Note that this is better at a lower resolution, like 1600x1024.


  • A copy of the manual is included in the install.
  • Read the tutorial .doc file while doing the tutorial mission.

Maybe I'm missing something, but I don't see the appeal. It's hard to get a good picture of the conflict at the operational level such that one can devise anything like a clever strategy. Also, the text and icons are nearly unreadable at high resolution. There exists a new version that fixes a little of the clunky UI, but requires buying a new copy.

2.5.5 CNCL HELLION (in development)

  • State "CNCL" from "TODO" [2019-01-15 Tue 02:51]

A game supposedly focused on realism and survival in space. Currently in early access. Looks like development might be stalled, so definitely don't buy. I find the concept appealing, so it costs nothing to check back in a few years, just in case the unlikely thing happens and this game turns out great.

Looks to be one of those games forever in early access, plagued by bugs and other problems. Forgetting about this one.

2.5.6 CNCL Stellaris (purchase)

  • State "CNCL" from "TODO" [2019-01-23 Wed 23:44]

Another space 4x game, released in early 2016. This one looks quite polished. Already has a DLC. Wait until maybe around 2020 or so. Keeping this as my currently most promising 4x game, but will replace if something better comes along before it's reasonably priced. I've been too disappointed with this genre to pay more than $15 or so.

Skipping due to 4x fatigue.

2.5.7 CNCL Command: Modern Air/Naval Operations (purchase)

  • State "CNCL" from "TODO" [2019-01-24 Thu 17:24]

Super expensive ($80), but looks like a true Harpoon successor. Keep an eye out for a sale. Probably better to buy from Matrix Games' site, which allows for registration of the serial on Steam. Was last on sale for $28, which is still too much for a Google Earth application. Multiple DLCs are also available and can easily double the price if all are bought. These will need to be bundled with the main game before considering to purchase.

Skipping. Might revisit the notion of playing this, but paying more than a few dollars for a Google Earth interface to a naval equipment database doesn't seem to make much sense to me. Plus, I'm not sure I actually like this genre of games. I have seen it on deep sale for about $26, so I may reconsider if it goes even lower.

2.5.8 DONE Legends of Aria (early access)

  • State "DONE" from "STRT" [2019-02-01 Fri 21:33]
  • State "STRT" from "TODO" [2019-01-29 Tue 16:23]

A modern UO clone. Was going to skip it since it seems surrounded in crowdfunding scandals, but I'll try it out on sister's account.

Tried a miner/blacksmith for awhile. This does seem to have the core UO experience intact, at least from the perspective of a non-combat character. I also appreciate the more AFK-friendly aspects of tradeskill mechanics. On the other hand, this is still dreadfully boring. At least in this version, there are numerous bugs and sloppy design too. Would've been much better in 2D. Might check back later once the game is more done, but currently it requires downloading the entire client every time it's updated.

2019-11-02: Checked back and the game died.

2.5.9 DONE American Truck Simulator

  • State "DONE" from "STRT" [2019-02-15 Fri 10:13]
  • State "STRT" from "TODO" [2019-02-09 Sat 20:26]

Probably one of the more realistic driving sims. Also interested in it to practice backing up trailers. Got on sale for $4.99. There's a bunch of DLCs for it, but not sure I'll actually want to play this enough to justify buying those.


  • Set the launch options in Steam to -nointro.
  • Backed up all mods. Note that I may not want to enable the economy mod until I get established if I ever restart.

The best driving sim I've played. If it was a bit better, I'd maybe even consider getting a wheel/pedals/shifter for it. Probably my main complaint is how the distances have been squished, highways unrealistically curvy, cities ridiculously small, and on-ramps too short. It isn't this difficult in real-life to not have an accident. Would've greatly preferred just having one state, but with realistic sizes. There's also a fair number of bugs and minor oversights too.

2.5.10 CNCL Crusader Kings II

  • State "CNCL" from "TODO" [2019-02-17 Sun 01:41]

Got for free on Steam.

Tried it a little, but I guess this isn't really my kind of game.

2.5.11 DONE ADOM 3.3.3

  • State "DONE" from "STRT" [2019-02-17 Sun 22:10]
  • State "STRT" from "TODO" [2019-02-16 Sat 21:10]

Try the terminal version. If there's monetization issues, go back to 1.2.0, which I have a copy of. 1.1.1 is also still available on FreeBSD.

Played a few games, but this seems inferior to ToME enough that I'm not really interested in playing it in a dedicated fashion. A couple of things seem needlessly annoying in the game, particularly the constant eating requirements. I'll keep it around on FreeBSD as one of my backup games though.

2.5.12 DONE Alias "The Magpie"

  • State "DONE" from "STRT" [2019-02-20 Wed 13:55]
  • State "STRT" from "TODO" [2019-02-18 Mon 18:25]

The 2018 IFComp winner.

Pretty good writing at times, though it has at least one obscure verb and some strict preposition usage that hung me up a bit.

2.5.13 DONE Grimnoir

  • State "DONE" from "STRT" [2019-02-20 Wed 22:50]
  • State "STRT" from "TODO" [2019-02-20 Wed 14:28]

The 2018 IFComp 4th place winner. This completes my scan of the 2018 IFComp games. Like with 2017, another lackluster showing.

Almost good, but has a few problems, bugs, and content lifted from Wikipedia. Still worth playing though, I suppose, and I rather like the game mechanics used here.

2.5.14 CNCL Avanor

  • State "CNCL" from "TODO" [2019-02-23 Sat 20:13]

Another rogue-like, similar to ADOM. Available on FreeBSD.

Decided I might play this one on FreeBSD some, but not going to dedicate any serious time to it.

2.5.15 CNCL DCS World 1.5

  • State "CNCL" from "TODO" [2019-02-23 Sat 20:31]

The current DCS version, released in 2015-10. Comes with free access to the Su-25T and TF-51D. There's no reason not to at least give these aircraft a try and master their controls.

If I decide to get any modules, the current two highest quality are the KA-50 and A-10C. I particularly like the KA-50's insane number of switches.

Skipping since I seem to not like flight sims anymore.

2.5.16 DONE Orwell

  • State "DONE" from "STRT" [2019-10-14 Mon 16:38]
  • State "STRT" from "TODO" [2019-10-13 Sun 13:00]

Was going to skip this, but have a free copy, so I'll give it a try.

Worth a play and entertaining for a few hours, but glad I didn't pay for it.

2.5.17 DONE 1866 (Mount & Blade mod)

  • State "DONE" from "STRT" [2019-10-21 Mon 21:55]
  • State "STRT" from "TODO" [2019-10-21 Mon 14:04]

A post-civil war era mod for Mount & Blade.

In some ways, this is better than the base game, but still has a lot of the same issues. Fun for a bit, but not something I want to play for days, especially with it crashing regularly.

2.6 Programming projects

2.6.1 CNCL rewrite pexpect scripts

  • State "CNCL" from "TODO" [2019-09-07 Sat 14:19]

Rewrite these in some other language besides Python. Once I do so, I can deprecate my entire Python development stack and just keep around the built-in python-mode around on Emacs and the Python interpreter pulled in by Xorg. There's a list of libraries here:

Maybe I can use the Java library via Clojure's interop. Also I might just deprecate these scripts altogether, since I don't use them much now.

The only one of these I used was my pweather script, but integration in Emacs is more convenient. So, won't bother with this.

2.6.2 DONE create l1j-en milestone build

  • State "DONE" from "STRT" [2019-09-07 Sat 22:12]
  • State "STRT" from "TODO" [2019-09-07 Sat 10:11]

Will wrap this project up for now. If the team gets active again, I might work on it some more later, but I'm pretty happy with how it is.

  • [X]

    Merge in all stuff from dev. This will require some git magic, since it won't merge cleanly anymore: Did this:

    git checkout dev
    git merge -s ours master
    git checkout master
    git merge dev
  • [X] Merge in the java9 branch changes: Done. Closed issued.
  • [X] Create the M10 DB build. Close issue on commit.
  • [X] Move or de-tag all issues labeled "Milestone 10".
  • [X] Update README.
  • [X] Merge master back into dev.

The only possible remaining task is a migration back to GitHub. But, will have to coordinate that with the other guys.

2.7 Computer science/programming goals

2.7.1 CNCL Docker

  • State "CNCL" from "STRT" [2019-11-28 Thu 02:21]
  • State "STRT" from "TODO" [2019-08-12 Mon 22:01]

Already have some familiarity and experience with this. Generally, I'll increase this slightly to integrate it into some local infrastructure. However, I don't want to go too nuts with it since this space is pretty fluid and containers are pretty far on the IT side of things. In fact, one of the main reasons I'm interested in Docker is to reduce overall IT overhead. One limiting factor is that Docker's dominance in the containerization field is waning some.

  • [X] Create account on Docker Hub.
  • [X] Install Docker for Windows and Kitematic (see task).
  • [ ] Install Docker on Manjaro.
  • [ ] Suck less at Docker commands and creating Dockerfiles.
  • [ ] Suck less at using Docker Compose.
  • [ ] Consider containerizing some of my apps.
  • [ ] Consider containerizing some of my infrastructure, like web server, database, and anything else that requires customization or locks data into.
  • [ ] If the above works, update the VPS to be able to run containers or get a cheaper Linux one to do the same on.
  • [ ] Look around Docker Hub and see if there are any images I want to keep handy and/or use regularly.
  • [ ] Add Docker as skill to resume.

Gained a bit more familiarity here, but I'd rather not deep dive on it as planned without a direct need for it. My job switch negates the immediacy and there's been some serious contenders for the throne in this space recently.

2.8 General life

2.8.1 DONE replace basement door

  • State "DONE" from "STRT" [2019-01-02 Wed 17:21]
  • State "STRT" from "TODO" [2018-06-25 Mon 15:52]

This door is a good candidate for replacement. The previous owner thinks it was just a spare door that was laying around, and predates the house. It's also too small for the opening, and as such, has a sloppy framing job done. I could probably live with that, but it also leaks water into the basement during heavy rainfall. I'll be using this as a test run for contracting through Home Depot. Consultation appointment is scheduled for 2018-06-25.

2018-06-25: Contractor came out and gave quote of $4300 for a full double door setup, screen, new frame, and installation. A little more than I wanted to pay, but it sounds like I'll get a good end product, so I'll give this a try. Lead time will be 6-8 weeks, however, so this will be in the queue for awhile.

2018-07-19: Appointment set for 2018-07-20 for remeasuring, supposedly necessary before parts ordering commences. Actual day of work is supposedly 2018-08-31.

2018-08-31: No call, no show. Called to complain about it and they rescheduled for 2018-09-11T08:00:00 - 2018-09-11T10:00:00. They said they'd give us some compensation for the inconvenience.

2018-09-11: Contractor showed, but door was wrong size and didn't come with a screen door. Supposedly, we're going to restart the process now. Also confirmed that my job order should have a note in it about getting compensated for poor service.

2018-10-12: Called to check job status.

2018-10-16: Home Depot called back and scheduled installation for 2018-11-03, with the same contractor. Asked about measurements, the screen door, and compensation for inconvenience. On the latter, the rep said that Ray, the project manager, would be notified to include that in final billing.

2018-12-12: Received call and scheduled install for 2019-01-02 0800-0100.

2019-01-02: Door replaced. Looks pretty good. Only downside is the screen door kinda blocks easy access to the lower key. Will just use the deadbolt for this. Supposedly, will get a $250 gift card in the mail in the next week or so.

Will definitely not use Home Depot for installations in the future. It's too easy to get lost in the workflows they have and there's no room to accommodate anything going wrong, which apparently is more likely to happen than not. Worst of all is the price, which is terrible.

2019-02-11/2019-02-13: Called and reminded Brice to send gift card, which never showed. He said he'd referred it to Ray.

2019-03-21: After more nagging, they claim we'll receive the gift card by 2019-04-04.

2019-04-01: Finally got gift card. Will use it to buy freezer. I now consider this annoyingly long and frustrating saga complete.

2.8.2 DONE get rid of some junk

  • State "DONE" from "STRT" [2019-01-08 Tue 21:12]
  • State "STRT" from "TODO" [2019-01-07 Mon 12:36]

Got rid of most of the junk items laying around from the previous home owners, but there's still at least 3 pieces left: a dump truck tire, half of a metal barrel, and a big piece of styrofoam.

2019-01-07: Grabbed items from forest and put them near shed. Also grabbed a wood/wire semi-enclosure back there too. Neighbor is going to the dump soon, so I'll tag along to see where it is and how the pricing works.

2019-01-08: Going to the dump is pretty painless. The nearby one is called the Hampshire County Transfer Station. Tires do cost a little extra, but otherwise it's pretty cheap.

2.8.3 DONE check out tree stands

  • State "DONE" from "STRT" [2019-01-08 Tue 21:18]
  • State "STRT" from "TODO" [2019-01-08 Tue 14:14]

There's 2 tree stands on the property, of unknown status.

Inspected and cleaned these up. One looks in great shape and is pretty nice and large. This one is also in a good overwatch position over some trails. The other is older and will soon be of questionable safety to be in. I'll maintain the first, but let the other degrade and/or tear it down at some point. This one is also not really in that great of a position.

Also cleaned up a bag's worth of trash found around these and nearby.

2.8.4 DONE neuter Stripey

  • State "DONE" from "STRT" [2019-01-14 Mon 15:52]
  • State "STRT" from "TODO" [2019-01-14 Mon 11:00]

Get Stripey neutered when we take him in for his final booster shot. After that, he'll never go to the vet again (at least, until the end). Appointment is on 2019-01-14 0815-0830.

Successfully snipped.

2.8.5 CNCL fix microwave

  • State "CNCL" from "STRT" [2019-01-15 Tue 20:50]
  • State "STRT" from "TODO" [2019-01-10 Thu 23:58]

The microwave stopped working during a very close lightning strike. I think and hope that it's just the main fuse. The model is a Samsung SMH1622S.

To get to the fuse:

  • Unplug the microwave.
  • Remove the 3 screws holding the top panel, open the door the whole way and pull the panel out.
  • Remove the 2 longer screws holding the control panel in and slide it down (or maybe it was up). These are hard to get to, so I used a screw bit and pliers.
  • Pull out the metal guard above where the control panel was.

Looks like the fuse is a M0805101 or WPM0805101. Ordered a replacement.

Installed new fuse, but apparently more than the fuse was fried. Will have to buy a replacement.

2.8.6 DONE replace microwave

  • State "DONE" from "STRT" [2019-01-21 Mon 11:41]
  • State "STRT" from "TODO" [2019-01-16 Wed 20:40]

Broken microwave is 29 7/8" wide and 16 1/2" high. It's a 1.6 cu.ft. capacity. The current model Samsung of the same capacity is the same width and only slightly taller, so it'll probably fit.

Ordered microwave and scheduled delivery and install on 2019-01-21. Will get a call the day before to schedule delivery window, I think.

2019-01-20: Delivery will occur between 1000-1600, with a call 30 min before arrival.

2019-01-21: Installed and works. Model is a Samsung ME16K3000AS. Grabbed a copy of the manual PDF. Will take old microwave to dump once I get enough stuff.

2.8.7 DONE test humidity in basement

  • State "DONE" from "STRT" [2019-01-21 Mon 22:55]
  • State "STRT" from "TODO" [2019-01-16 Wed 16:39]

Use a digital hygrometer to see what the humidity range is, and whether it could use a dehumidifier. It might not need it now that the door is fixed, which I suspect was the main humidity source. Pull battery from hydrometer when done.

Maxed out at 48%, but is usually in the 30s. A dehumidifier wouldn't be useless, but I could probably get away without one. Will think about it.

Update: Looks like humidity does actually get rather high in the basement in the summer. I'll definitely want a dehumidifier.

2.8.8 DONE post-work life optimization

  • State "DONE" from "STRT" [2019-01-22 Tue 00:21]
  • State "STRT" from "TODO" [2018-09-14 Fri 19:57]

My job is pretty in line with the things I already do in life, at least technically and with it being flexible about physical presence. In fact, I'd probably stay longer if the human interaction component was rewarding or at least neutral.

Sans a job there's a fair amount of room for optimization. I might split these up when the time comes, but for now this collects ideas to implement after this becomes a reality.


  • [X] Take a little time off after leaving to cleanse the brain. Keep this period to under a month, if possible, but ensure that I completely repair any brain damage incurred by being around so many mentally ill worker drones and over-socialized urbanites. There are many standard behaviors I've subsumed that are only optimal because of interacting with such individuals. I definitely don't want any of those dragged along as habits when not needed. Took off one month.
  • [X] Setup voice mail on the phone and auto-ignore all calls. Just check them once every few days at most. This will prevent me from getting interrupted by all those spam calls. Alternatively, see if there's a way to just let a whitelist of numbers come through and have the rest go to voice mail. If auto-ignore isn't possible, just turn down the ringer volume. Disable text messaging if possible.
  • [X] Ignore IRC almost all the time. Only pay attention to it when working on the game project.
  • [X] Update government sticker collections.
  • [X] Switch to only using mutt for email.
  • [X] Clean out all work-related files I have laying around. Delete any codebases that don't have anything useful in them.

Done. Might also audit all stuff and do a maintenance pass.

2.8.9 DONE check temperature around boiler

  • State "DONE" from "STRT" [2019-01-24 Thu 17:13]
  • State "STRT" from "TODO" [2019-01-24 Thu 16:43]

There used to be some insulation here that was removed to replace the recirculation pump. I'll use the infrared thermometer gun to check for major heat leakage and see if it's worth replacing it.

There's some heat leakage here, but it's not nearly as much as the front. If I have some spare insulation later, I'll put some here, but it's not a big loss point.

2.8.10 DONE get wood stove thermostat fixed

  • State "DONE" from "STRT" [2019-01-25 Fri 12:01]
  • State "STRT" from "TODO" [2019-01-11 Fri 15:30]

This sometimes fails to shut off the HVAC fan without yanking the power cord on it. Looks like a simple fix, but something a professional needs to do. Will try local guy recommended by neighbor first.

2019-01-11: Left a message.

2019-01-18: Got in touch with guy and he said he'd call back on 2019-01-22 or 2019-01-23, with a tentative work date of 2019-01-24 or 2019-01-25.

2019-01-22: Visit scheduled for early 2019-01-25.

2019-01-25: Replaced broken relay on HVAC unit. Also asked for advice about full system. Contractor suggests getting an electrical heat backup installed since the heat pump is nearly ineffective at very cold temperatures. This will require replacing a lot of the main unit, however. Will consider doing this when the heat pump needs to be replaced, which might be smart to do in another 3-4 years (if I want to do so proactively). He also suggests getting the heat pump an annual checkup in March of every year (since it can be tested in both hot and cold modes more easily then). I might try stretching that to every 2 years.

2.8.11 DONE replace caulking (round 1)

  • State "DONE" from "STRT" [2019-02-17 Sun 20:45]
  • State "STRT" from "TODO" [2019-02-10 Sun 10:48]

The caulking behind the master bathroom sinks and hall bathroom counter is cracked and needs replaced. Also do around top of shower(s). Looks easy to do this myself, with only the old caulk removal being a pain.

2019-02-12: Did both sinks.

2019-02-17: Hall shower done.

2019-02-19: Also redid master bathroom shower.

2019-03-19: Redid caulking on SW sink.

2.8.12 DONE get more firewood

  • State "DONE" from "STRT" [2019-02-28 Thu 17:52]
  • State "STRT" from "TODO" [2019-01-05 Sat 18:59]

Looks like at least 3-4 cords are needed to get through a winter. Started here with about 1/2 cord, got another 1/2 delivered, and collected a little extra around the property. Then load 2 was delivered on 2019-01-05.

2019-01-28: Cut a partial truckload of free wood and hauled it back from a property north of Capon Bridge.

2019-01-28: Second load of free wood acquired. Could use 1-2 more, at least.

2019-01-29: Another load randomly showed up. Guy said he'd bring another in 2 weeks, which if that happens, we'll be good for the winter.

2019-02-05: All wood currently owned split and stacked.

2019-02-09: Another mostly-full truckload of free wood acquired.

2019-02-15: Grabbed a little from the forest in back.

2019-02-28: Another wood load delivered. Should be good for the winter. Will still get some as available for next winter though.

2.8.13 DONE get utility trailer

  • State "DONE" from "STRT" [2019-03-03 Sun 12:22]
  • State "STRT" from "TODO" [2019-01-19 Sat 10:49]

Mule is 52.6" wide and 106.7" long, meaning I'll need at least a 5'x10' trailer. Go look at the ones available at Leonard of Winchester. Once I get this, consider getting a cover for it.

Got a 5'x10' one (note that this is the inside, usable dimensions), model Carry-On Trailer 5X10GW from Romney Cycles, since it was a bit cheaper. Note that while plates are lifetime, inspections are supposed to happen yearly. In this county though, most people just ignore that. I might get it occasionally when bringing in the Mule for service since it'll already be there though. GVWR is 2190 lbs. Keep this in mind when hauling and buying equipment.

Follow-up tasks:

  • [X] Get title in mail.
  • [X] Get license plate in mail.
  • [X] Mount plate.
  • [X] Get registration card and put in truck glove compartment.
  • [ ] Devise some kind of cover for it, probably with a tarp/bungees.
  • [X] Paint over some of the chipped areas.

Skipping covering it for now. Note that the registration and license plate don't expire, but inspection stickers are only good for 1 year. I'll probably risk skipping this, since I won't use it much. I might get an inspection for it if I take it in for maintenance in a few years.

I still need to setup the trailer for the truck's backup assist feature.

2019-03-15: Finished setting up trailer backup assist. Doing so on the private road works fine. Will have to keep an eye on that sticker though, since it's dangling off a bit. I put a bit of duct tape around it, which might help some. If it becomes a problem, I'll bolt or preferably weld on a metal plate for it.

2.8.14 DONE fill holes in walls

  • State "DONE" from "STRT" [2019-03-04 Mon 15:36]
  • State "STRT" from "TODO" [2019-03-04 Mon 23:07]

Fill all holes in the walls from nails with spackling paste.

This really improved interior visuals. Used putty instead of paste, which works fine but is more difficult to use it seems. On the other hand, it's also less messy and easier to do a small spot repair. Using a latex glove while doing this is a good idea. Might also use this for any drywall cracks at painting time.

2.8.15 DONE clean up HVAC diffusers

  • State "DONE" from "STRT" [2019-03-08 Fri 22:39]
  • State "STRT" from "TODO" [2019-03-08 Fri 21:33]

I cleaned most of these when we moved in, but there's still a few dirty ones.

Cleaned. One of them has bent fins, and I'll pick up a replacement for it next time I'm at Lowes. The item is the 15" Accord Ventilation Baseboard Diffuser.

2.8.16 DONE fix vinyl siding

  • State "DONE" from "STRT" [2019-03-13 Wed 15:00]
  • State "STRT" from "TODO" [2019-03-13 Wed 13:51]

There are a couple of damaged spots in the front of the house and several nails in the north side. There exists some product specifically for this task. Use a silicone sealant or vinyl siding patch. See report.

Did this and also pulled all nails the previous owner used to hang their collection of metal frogs from. Used silicone sealant. Will keep an eye on it to make sure the holes stay filled and don't turn brown.

2019-03-21: Found another hole and plugged it. This one is next to the side door and is pretty large. It also has something that looks like a flat thumb tack inside of it. Decided to leave it in place and apply sealant over it. Check back on it later. If it's not sealing well, it might be a good candidate for a patch.

2.8.17 DONE fix garage roof flashing

  • State "DONE" from "STRT" [2019-03-15 Fri 17:34]
  • State "STRT" from "TODO" [2019-03-15 Fri 16:34]

There's a piece missing on the NW corner. I think I have the piece somewhere.

Done. Also replaced the too-long nail I put in as a temporary fix.

2.8.18 DONE build a raised bed

  • State "DONE" from "STRT" [2019-03-16 Sat 12:40]
  • State "STRT" from "TODO" [2019-03-09 Sat 14:54]

Get 4 8ft 2x10" treated boards and 4 short square posts (or 48" of posts total). Build a square and put it next to the other raised bed, perhaps separated by a couple feet.

2019-03-09: Bought lumber. Local shop only had 1x10", so I got those instead. Will have to brace them with some metal bars.

2019-03-11: Raised bed built. Lined it up with the other one, spacing them by 32". Also added metal bars at the central point for each board.

2019-03-12: Moved 4 Mule-loads of poop-dirt into raised bed.

2019-03-13: Added a decent layer of ash from the wood stove. This should balance the pH towards alkaline a little.

2019-03-15: Leveled.

2019-03-16: Hauled in a load of normal dirt from the small garden and leveled again.

This worked out quite well. 2x10"s would've been better, but bracing seems to make this a non-issue. Note that all the rocks from the dirt brought in are in the corners. I'll dump the final load of ashes in here when I shut down the wood stove for the season too.

2.8.19 DONE touch up trailer paint

  • State "DONE" from "STRT" [2019-03-20 Wed 16:13]
  • State "STRT" from "TODO" [2019-03-20 Wed 17:33]

There's a few spots of exposed metal on it that are starting to rust a bit.

Repainted all exposed spots I could find, including the jack. Probably should've sanded them down first. Will do that next time.

2.8.20 DONE level hog pen dirt

  • State "DONE" from "STRT" [2019-03-19 Tue 15:26]
  • State "STRT" from "TODO" [2019-03-19 Tue 13:48]

Flatten all of these craters, which collect pools of water, and fix the fence line. Do this before the grass starts growing in it again.

Done, but will have to let it rain a few times to ensure it's good. I guess as long as it's close, it'll probably be okay eventually. Also straightened the west posts some.

2.8.21 DONE fix flood light

  • State "DONE" from "STRT" [2019-03-23 Sat 16:58]
  • State "STRT" from "TODO" [2019-03-23 Sat 12:45]

With the house I got a free portable twin stand flood light, which seems to be a Regent TQS1000. Replace the burnt out bulb (4.7" 500W, I think), clean it up, and test. Also check if the backup bulb is stocked. Be sure to use gloves when handling 1000W halogen bulbs.

No backup bulb on this model, at least that I can find. Cleaned up the paint splatter on one of the lenses. Bought a 3 pack of bulbs. 2 left in light bulb drawer. Only other thing I could do to this in the future is get a wide pipe or hose clamp for the junction between the two bottom sections, since it seems a bit wobbly. It works fine as is now though, so probably won't bother.

2.8.22 DONE get riding or wide area lawnmower

  • State "DONE" from "STRT" [2019-03-24 Sun 16:12]
  • State "STRT" from "TODO" [2019-03-24 Sun 12:05]

The electric lawnmower works and is still my preferred method of mowing grass. However, it doesn't work well when the grass is even a little wet and if it rains a lot I can easily get behind. I'll use a riding or wide area lawnmower in those situations and to clear the areas that I won't regularly mow. I'll still leave large tracts of the lawn unmowed next summer, just to save fuel/energy. Even when owning this new mower, I'll still do as much as possible with the electric one, both for the edges and around buildings, but also generally.

Some models considered: Cadet XT2 LX42, CC 800, John Deere E110.

Decided to go used and cheap. This was to save tons of money, but also because I might get a compact tractor with a mower deck later. Got a 15-18 year old Craftsman LT1000 917-287010 for $350 on Craigslist. Had the seller replace the head gasket. Mowed down all of the overgrown backyard with it and it ran decent enough, with a few quirks. It could probably use some more attention, but I'm thinking I'll just do the minimal to keep it running. I'll take the deck off at some point, clean it, sharpen the blades, add grease if it can take any, and inspect the belt. Need a torque wrench first though.

2.8.23 DONE fix electrical issues

  • State "DONE" from "STRT" [2019-04-01 Mon 10:31]
  • State "STRT" from "DONE" [2019-03-29 Fri 09:24]
  • State "DONE" from "STRT" [2019-03-28 Thu 12:35]
  • State "STRT" from "TODO" [2019-03-11 Mon 11:29]

Some stuff I need an electrician to do:

  • Fix outlet in basement bathroom: Has an open ground and is not GFCI protected.
  • Fix crosswired front exterior outlet: Ensure this is GFCI protected.
  • Fix outlets by stove: The GFCI (ground fault circuit interrupter) will not reset on these.
  • Fix outlet in east master bathroom: Replace with GFCI switch one.
  • Address light above sink: This causes lights on the other switch to flicker.
  • Get transfer switch installed for generator: Ask about what kind of generator the switch will operate with and the plug type.

Once this is done, I can seal up the basement ceiling.

2019-03-11: Gave up trying to reach the 2 local electricians. Called L&T and they said they'd call back with a time they can come out.

2019-03-13: Electricians showed up for a consultation visit. Developed plan for transfer switch. Need to go buy a generator first, with at least 7000W/30amp output. There's a Craftsman one at Lowe's now that would work.

2019-03-14: Bought generator, Craftsman model CMXGGAS030733. Called electrician back to inform them of outlet type. They'll be back in contact when work can be scheduled. Assembled generator base/wheels and put in shed with a plastic cover.

2019-03-16: Finished reading manual and testing generator. Has a few quirks and is unpleasantly loud, but should work. Next is for the electricians to show up and do the job.

2019-03-26: Job scheduled for 2019-03-28 0900.

2019-03-28: Everything done, except the front outlet, which apparently doesn't have power at all. I'll just cap that. They also found a few problems on the breaker box wiring and fixed that. I unbent a spare hose holder and mounted it under the deck for the cable to wrap around. Be sure to keep the plug dry.

Backup power procedure: On the transfer panel, turn off the PE switch. Go out and turn on the generator and let it warm up. On the transfer panel, turn on the generator switch. Do the reverse to shut off.

These guys also do heat pumps, and I might use them for a replacement later. They also think it might be possible to just add the electric heat element to it too. Maybe call them this or next Fall to look at it.

2019-03-29: Reopening. After testing everything, I noticed that now the SW bathroom light/fan and SW closet light no longer work. These were working the morning before the work was done. Called and they said they'd be back in touch to fix it next week.

2019-04-01: Fixed. Electricians came out and just tightened the ground on that circuit. Now that I think about it, that might be the cause of the non-functional front outlet.

2.8.24 DONE sell trolling motors

  • State "DONE" from "STRT" [2019-04-01 Mon 21:23]
  • State "STRT" from "TODO" [2019-03-03 Sun 12:20]

I have 2 trolling motors and a marine battery. These would be nice if the pond was bigger, but I can paddle across it in a couple minutes. So, I might as well sell them. Selling these also means one less battery to maintain/replace.

  • [X] Get battery tender and charge battery: Battery charged.
  • [X] Recharge and test battery: Battery works. Minn Kota motor tested and works too.
  • [X] Figure out what models the motors and battery are: Small motor is an older Minn Kota, unknown model (possibly 65B). Plug is a female 3-wire 12V. Larger motor is a Minn Kota Endura 40 ($200 new). Battery is an EverStart 29DC with a protective case ($89 new).
  • [X] Clean up motors and battery: Cleaned.
  • [X] Write listing ad: On post.txt on my Linux VM.
  • [X] Take pictures of items: Done.
  • [X] List (on both Winchester and Eastern WV) all items together: Listed on 2019-03-11.
  • [X] Conclude sale (or take to auction): Sold for $150 ($140 + $10 meet halfway fee). Deleted listings.

Glad to be rid of this stuff. This also recoups half of the money I paid for the boat and accessories.

2.8.25 DONE caulking (round 2)

  • State "DONE" from "STRT" [2019-04-03 Wed 11:44]
  • State "STRT" from "TODO" [2019-04-02 Tue 16:31]

Get a tube of clear caulk and seal up a few spots. Can't think of much to do with this, so seal it up as best as possible to hopefully use more of the tube later. Only doing because the cable hole needs filled now.

  • [X] Fill hole for transfer switch cable.
  • [X] Put thin strip above kitchen sink.

Might also do around the kitchen sink. Will think about it.

2.8.26 DONE get and setup chicken coop

  • State "DONE" from "STRT" [2019-04-03 Wed 17:54]
  • State "STRT" from "TODO" [2019-01-21 Mon 12:05]

Was given a chicken coop, currently located next door property, in exchange for pig sitting.

  • [X] Measure platform: Dimensions are 96"x73".
  • [X] Measure coop: 73"x51", with the supports on the long dimension much shorter.
  • [X] Retrieve coop: Transferred. This thing is super heavy. Should hold about 7 chickens comfortably.
  • [ ] Maybe repaint coop to match other structures: Skipping. This is red, which doesn't match anything, but is a really nice painting.
  • [X] Clean inside of coop: Done.
  • [X] Turn to face away from wind: Done.
  • [X] Repair hinges: Replaced these and added a hook latch.
  • [X] Stage kennel fencing: In place.
  • [X] Build ramp up platform: Build one out of an old platform from the mulberry tree. Might mod it some more if it doesn't work too well.
  • [X] Buy extra fencing: Currently have 4 6x10' sections.
  • [ ] Paint top of platform: Skipping.
  • [X] Get feed tub from pig pen and clean it up: Done. Left it outside for rain to clean it off some more.
  • [X] Setup old fencing: Done. Probably should've plotted it out first, but did some retroactive measuring and got it positioned pretty good, I think.
  • [X] Buy chickens: Bought 6 Dark Brahma on 2019-03-19. They look maybe 7-10 days old. One had a condition known as pasty butt, which seems fixed now.
  • [X] Get heat lamp: Done. Also got a few other things.
  • [X] Buy 50lb feed bag: Done, in shed.
  • [X] Modify the feeding trough with walls: Duct taped cardboard to the sides. This should keep them enclosed until they're big enough to go into the coop, at which point it should also be warm enough for them to be outside.
  • [X] Buy ducks: Bought 4 Rouen ducklings on 2019-03-26.
  • [X] Get some bales of straw/hay (or pile up some grass clippings): Got a small bale, but will use clippings once they go outside.
  • [X] Setup new fencing: Done. This was pretty painful. Should've just bought pre-made sections, since moving this will cause it to fall apart. Also could've made it 400 sq.ft. instead of 300 sq.ft. Had to mod it in a few places to get it to not be a square and still have the door work.
  • [X] Bury fence bottoms: Done.
  • [X] Build a larger feeder and watering station: Feeder built using the 5 gallon bucket and PVC pipe method. Maybe put this on some rocks to elevate it a bit. Since I have two waterers, I'll hang one on a pot hanger outside and put the small one in their house.
  • [X] Untangle some chicken wire: Done, and using it to keep them in the bin they're growing up in.

All that's left now is for them to get bigger and go outside. I'll put the chickens out first, probably in 1-2 weeks, and the ducks out a week later.

Might also paint the roof green to slightly better match the rest of the buildings. Will save this for when I redo the garage base paint.

2019-04-09: Put chickens in coop.

2019-04-23: Put in ducks. Decided I didn't want the ducks making a wet mess inside the chicken coop, so I built an enclosure for them by adding sides to the shade platform. Repurposed some of the neighbor's painted fence wood for it. This is open on the north side currently, so I might want to have a plan to further enclose it in the winter.

2.8.27 DONE clean up small parts organizer

  • State "DONE" from "STRT" [2019-04-04 Thu 00:12]
  • State "STRT" from "TODO" [2019-03-29 Fri 10:42]

With the house I got a free organizer with drawers. It contains various fasteners like bolts and such. Clean this up, reorganize it, and bring it inside to the indoors workroom. Also grab the empty small fishing tackle boxes, which I might use some of for the same purpose.

Collected almost all spare fasteners and electrical parts here. Left out the nails and screws still in their boxes though.

2.8.28 DONE fix culvert output

  • State "DONE" from "STRT" [2019-04-04 Thu 16:48]
  • State "STRT" from "TODO" [2019-04-04 Thu 18:13]

The culvert between the ponds has eroded the stone base under one end. Collect some rocks and refill this area. Find some nice flat shale to use where the water runs constantly.

Put a fair number of rocks here. Looks good now, but will check back on it in a month or two.

2.8.29 DONE clear pokey plants

  • State "DONE" from "STRT" [2019-04-04 Thu 20:59]
  • State "STRT" from "TODO" [2019-04-01 Mon 16:47]

There's a ton of wild raspberries and other annoyingly thorny plants in various locations around the property. This is probably too much to keep clear, but I'll at least try to keep them down in areas where I plan to do annual string trimming.

I cleared the ones I needed to in order to finish clearing the hillside. Will probably do some more occasionally when it's dry during the summer. Once the new raised bed has stuff in it, I'll switch to burning this stuff in the fire pit out front, which is probably better anyway since it can hold a lot more.

2.8.30 DONE rekey all doors

  • State "DONE" from "STRT" [2019-04-05 Fri 20:37]
  • State "STRT" from "TODO" [2019-03-28 Thu 15:39]

Get all external doors rekeyed to a new, unified key. Do this after getting the basement door replaced.


  • Rekey all doors to same key.
  • Add a metal guard to the side dead bolt.
  • Get the lock on the normal door in the garage fixed.
  • Replace the keypad for the main garage door.

2019-01-11: Checked local hardware store and they only do so if you take all the locks off and bring them in. Will check for locksmiths further out. Try using this company:

2019-03-28: Talked to company on the phone and emailed in my list of things to fix. They said they'd be back in touch early next week and probably come out then too.

2019-04-04: Got call back and confirmed appointment for 2019-04-05 around 1400. Also sent in pictures of locks.

2019-04-05: Done. Side doorknob/dead bolt replaced. The deadbolt here was in the wrong position and the locksmith moved it. Dead bolt guard installed and embedded into the frame. Basement doors rekeyed, but locksmith advises that the handle lock is of low quality and can unset itself. Will continue just using the dead bolt. Garage normal door works now, but the doorknob still is a bit misaligned. May want to replace, but will now no longer blow open as is, if locked. Garage door keypad replaced with newer version and same code set. Saved instructions to folder.

2.8.31 DONE renew car registration

  • State "DONE" from "STRT" [2019-04-08 Mon 10:01]
  • State "STRT" from "TODO" [2019-04-08 Mon 12:59]

This would normally be easy, but I guess I need to pay the property tax on it before I can register it. Go to the county assessor's office and see if I can pay that ahead of time or get an exemption affidavit. Then complete the registration on Need to resolve this by 2019-05-01.

Was able to just take care of it on-site at the DMV. Got temporary new registration and will receive the official one in the mail. Put new sticker on plate. Will still need to go to the assessor's office and declare ownership of the car and trailer though.

Update: Went to assessor's office and was added to mailing list. Will receive a declaration form in 2019-07 and a bill in 2020.

2.8.32 DONE test out electric string trimmer

  • State "DONE" from "STRT" [2019-04-08 Mon 15:54]
  • State "STRT" from "TODO" [2019-03-28 Thu 17:50]

Got one of these that uses the same batteries as the lawnmower. Uses dual string cartridges. If this works fast enough, do all around the pond and down the hill past the chicken coop. I'll also remove some or all of the thorny bushes around the area while doing so.

2019-04-06: I had ordered some replacement cartridges, but these don't fit. However, it looks like winding string is pretty easy. Next time, get a spool of 0.080" line and load 10 ft.

2019-04-08: Done. I'll still clear out some more thorny bushes, time permitting.

So, I didn't mow these areas at all last year. My estimate is that I can clear all of these hills in about 7-8 hours of work, as long as I do it on a very dry day in early spring when I'm just trimming mostly dead grass. So, I think I'll do just that and not even bother trying to mow these hills. This will also allow trees that naturally spring up to grow in places I want them to, as long as I'm careful not to hit them. This will be way less work overall and lots of thick grass here will prevent erosion. Apart from that, I'll also occasionally use this (maybe once a month or so) during the summer to tidy up around the edges of buildings, around the shores of the ponds, around fences, and the path up the hill to the neighbor's property.

This works pretty good. Speed 1 is good for light grass, and makes the battery last longer. I'll stick to manually feeding string, since apparently the plastic button and spool can wear out.

2.8.33 DONE 2019 tree plan

  • State "DONE" from "STRT" [2019-02-01 Fri 12:01]
  • State "STRT" from "TODO" [2019-04-11 Thu 01:06]

This includes more fruit trees and blocking the south wind with some evergreens. I'll see how this works out this year and cycle on it again next year if needed.

  • [X] Plant the walnuts I grabbed in some buckets: Planted 1 walnut in one bucket, 2 in another. If they grow, I'll transfer them to larger buckets, then put them in the ground in 1-2 years. Give these 1.5 years before giving up.
  • [X] Plant some yellow poplar: Grabbed some poplar seeds while lumberjacking. Put a bunch of seeds in each of two buckets. If these sprout, will thin them out and let them grow for awhile. Give these 1.5 years before giving up.
  • [X] Straighten out plum tree: Did both of them, since the other was leaning just a little too.
  • [ ] For wind-blocking trees, I'll spread some pine seeds around a strip on the side of the hill facing the large pond (excluding the part that would block the pond view from the porch). Also try transferring some small ones from the mountain. Then, I'll not mow that strip and hope for the best. I'll be able to fill in any gaps in later years. This may take several years to come to full fruition. Pine is probably the best for this spot since it likes rocky soil and is evergreen. Pine cones open in mid/late-spring and the seeds have wings on them. Maybe try transferring some saplings from the hill into buckets too.
  • [X] Go to the garden shop around April and get some additional fruit trees.
    • 2 pear.
    • 2 cherry. Skipping these this year.

I may take the neighbor's suggestion and get pre-grown trees for the hill from the local garden shop, maybe next year. Plum trees are still alive and seem to be doing well. Pears are bare roots, so will keep them in pots for a year.

2.8.34 DONE collect (f)unemployment

  • State "DONE" from "STRT" [2019-04-15 Mon 17:39]
  • State "STRT" from "TODO" [2018-09-13 Thu 08:35]

I was hoping this would happen, and it did. Instead of just quitting my job, I managed to get my position eliminated first. So technically, that means I was laid off. This then means I can file for unemployment and can reclaim some of the massive amounts of money I've lost paying for it since I was 16. There may be blocking factors since I moved to a new state, however, but it's still worth a try.


  • [X] Figure out what benefits there are, how to file, and other details.
  • [X] On 2018-09-15, or shortly thereafter, file a claim: Claim filed on 2018-10-04. 2018-10-05: Turns out I need to file in my former state of employment. Will start over.
  • [X] Find site for VA unemployment filing and do so: Claim filed on 2018-10-08.
  • [X] Wait to see if I get approved and come up with strategy for my unsuccessful weekly "job search".
  • [X] Restart initial claim: Apparently, you have to start submitting weekly claims right away, but I didn't since I didn't know if I'd be approved. There was also documents saying you could wait 28 days, which turned out to not apply to claims. Restarted on 2018-10-29.
  • [X] Start filing weekly claims. Filed first claim on 2018-11-05
  • [X] Activate debit card.

Looks like I have this running smoothly now. Once this is done, I'll update with my thoughts on whether it's worth the trouble or not.

2019-03-27: Accepted offer, with 3 weeks to go. However, I'll still be able to max out claims by doing phone call-ins for the remaining weeks. It's been a bit annoying having to navigate all the rules and spam 2 applications per week. I'm also now on a bunch of recruiter lists, and will probably get more job spam for years. However, I made a bit over $9k doing this, so it was definitely worth it. Only thing I would do different is file immediately after leaving the job and choosing the direct deposit option (since I could've just used my normal CC to buy stuff and gotten the rewards cash for it).

2019-04-03: Got audited. This involves an hour-long call with a rep where they ask a bunch of (mostly redundant) questions. They also hone in on a specific week and the contacts made. Thankfully, I kept perfect records and should have no problems. Saving email verification of each contact helps here, as I was able to provide screenshots of them. If I don't hear anything back about this by mid-May, I should be in the clear.

2019-04-15: Final claim filed.

2.8.35 DONE fix flood damage to ATV trails

  • State "DONE" from "STRT" [2019-04-25 Thu 18:24]
  • State "STRT" from "TODO" [2018-07-09 Mon 22:21]

The county was hit by severe flooding in 2018-06. The only negative effects here were some erosion damage to the ATV trails in back. My plan here is to use the wheelbarrow and shovel to fill in the gaps created by runoff. Also, see if I can redirect water flow around or to the sides of the paths. This will take many hours, but should get better end results versus borrowing a tractor with a front loader.

Side note: I will now start tracking all non-trivial home tasks here, to exclude recurring maintenance. The number of tasks done now should be less, and thus not overwhelm this file with mundane, non-technical filler.

2018-07-12: Filled in the crater (mostly), leveled out some of the deep ruts, and did an experimental Mule bed-load of fill on the far side of the stream. Will now wait until it rains a 2-3 times to see how it settles or if it washes away.

2018-07-28: Added more crater fill of grass pulled from driveway.

2018-08-21: About 2 weeks ago, the back path was redone with a skid steer by neighbor for $200. He also filled the crater completely. Still need to go up there with pick and shovel to create the drainage gutter on the side.

2019-04-25: Was going to dump the rest of the dirt pile back there, but it's holding up pretty good. As for the drainage ditch, I've combined that under my excavation ideas in case I get a tractor with a backhoe. If not, I'll reschedule doing that manually.

2.8.36 DONE clean up wheelbarrow

  • State "DONE" from "STRT" [2019-04-25 Thu 18:32]
  • State "STRT" from "TODO" [2018-07-10 Tue 08:50]

Got a free wheelbarrow, but it's been neglected for many years. It's of the design commonly used for cement mixing.


  • [X] Fill tire with air: Done but it slowly leaks out.
  • [X] Tighten bolts: Used 1/2" socket.
  • [ ] Remove tire: Looks like this is probably rusted in place. Would also probably not be able to reuse the handles after removing it the brackets too.
  • [ ] Get new tire (or seal the leaks):
  • [ ] Clean off rusty parts:
  • [ ] Put new coat of paint, white outside, black supports. Skip inside probably.
  • [ ] Consider repainting wood handles brown:

New plan: Will just use this for ashes and other dirty jobs until it falls apart. I might get another wheelbarrow to replace it (or just in addition to it) before that happens. If I happen to get a jug of tire fixing fluid (like the Slime brand), I'll use it on the tire. Otherwise, I'll just pump it up every once in a while.

2.8.37 DONE replace truck mats

  • State "DONE" from "STRT" [2019-05-01 Wed 08:38]
  • State "STRT" from "TODO" [2019-04-30 Tue 10:30]

Currently using ill-fitting mats in the front and cardboard in the back. Get some fitted OEM mats.

Ordered some from the dealership, picked them up, and installed them. They look pretty good, and don't have too many places for dirt to get caught.

2.8.38 DONE dispose of all junk

  • State "DONE" from "STRT" [2019-05-03 Fri 09:50]
  • State "STRT" from "TODO" [2019-05-02 Thu 21:45]

Have a full truck-load of junk, mostly collected from around the property, in the garage. Time to take it to the dump. Clearing this stuff out will also make room for the tractor and Mule to fit into the garage together.

Done. Costed about $15. A trip to the dump, including unloading, seems to take <1.5 hrs.

2.8.39 DONE consider purchasing tractor

  • State "DONE" from "STRT" [2019-05-06 Mon 09:18]
  • State "STRT" from "TODO" [2019-05-02 Thu 14:51]

After some thought, I think there's enough utility in owning a tractor for use around the property. I could certainly get away with not owning one, but I also would count any depreciation as worth it for the experience as well. Some things I would use it for include: lawn mowing, driveway/trail maintenance, moving heavy items, moving dirt/gravel/rocks, clearing snow, leveling, and fencing.

I considered getting a backhoe variant, but have decided firmly against it, due to the cost vs. utility. Owning it also means a bit of additional inconvenience in maintenance and storage. I do have a lot of excavation ideas, but I can rent a proper excavator for a $200-300/day, plus some of those tasks can done with just the front loader.

Attachments/accessories I might want:

  • Front loader.
  • Mower deck.
  • Grill guard.
  • Post-hole digger.
  • Wood chipper.
  • ROPS-mounted roof.
  • Grapple (requires front hydraulics).

2019-05-02: Went to look at and test drive a Kubota. Decided to get the BX2380, with front loader and 54" mower deck for a total of $16700, including tax. Later got a call that it would be delivered the next day.

2019-05-03: Delivery rescheduled for 2019-05-03T14:00:00.

2019-05-04: Tractor delivered. Tested it out a bit and seems great. 2 year full warranty coverage and 5 year (I think) powertrain warranty begins now. To mow with it, turn it on and leave throttle on idle speed, lower deck and engage PTO, then increase throttle to mowing indicator on control panel (540, I think). Still need to conclude final payment amount by debit card on 2019-05-06. Will either get a call on that day, or I'll call in myself before noon.

2019-05-06: Transaction concluded. Should get receipt by email.

Later, I'll probably at least get a scraper or box blade for it for driveway maintenance. Then, I can level the driveway and just have some stone delivered on top of it. Currently leaning towards the Land Pride RB1660, which is about $800 or less.

2.8.40 DONE get Mule serviced

  • State "DONE" from "STRT" [2019-05-18 Sat 13:14]
  • State "STRT" from "TODO" [2019-05-01 Wed 08:38]

Take this in for a regular service visit around April or May. Also get the broken plastic fixed on the passenger side and recenter the steering wheel.

I'll also consider adding a snow plow and winch while there. I got a price quote for the full setup at $936, so I won't do it unless I have more money coming in by then. Just the winch, mount, and switch is about $375. Also will consider adding a horn.

If I have some free time, try putting Mule on the trailer to test strap position.

2019-05-01: Dropped off.

2019-05-14: Informed it's ready for pickup. Will do so on 2019-05-18, before 1600. Will need to do it early in the morning, sometime after 0900.

2019-05-18: Picked up. Seems to run a little better. Plastic piece was replaced under warranty.

2.8.41 DONE install sling swivel studs

  • State "DONE" from "STRT" [2019-06-01 Sat 20:25]
  • State "STRT" from "TODO" [2019-04-10 Wed 13:24]

Since I most commonly use the .22 rifle, I'll get a sling added to it. Could probably do it myself, but since it was expensive, I'll just spend $30 to have it done properly.

2019-04-10: Dropped this off at the Augusta gun shop. They recommended a barrel band on the front, which I agree with. Lead time is 4 weeks though, but I guess I don't need it before then.

2019-06-01: Picked up rifle. Looks pretty good. Will still need to get a sling though.

2019-12-08: Got a leather sling on Amazon and mounted it. Had to remove the stud screw from the front band though, since they look to not be lined up perfectly. Seems to work okay, but will keep an eye on it and consider replacing it with a higher quality one later if it's a problem.

2.8.42 DONE 2019 garden plan

  • State "DONE" from "STRT" [2019-06-02 Sun 21:39]
  • State "STRT" from "TODO" [2019-03-10 Sun 13:25]

Based on results from 2018, this is an optimization plan to incorporate lessons learned, and continue experimenting with a few additionally desired vegetables. After planting, I'll also try the newspaper weed control method this year. Spread those out, spray with water and add leaves (and maybe a little dirt) on top.

Big garden: Jalapeño, habanero, cayenne, green pepper, sugar pea, bush bean, tomato. I'll do the tomatoes in two batches again, staggering the 2nd group by 1.5 months. Probably something will fail by then, so I'll use those plants as filler. Bush beans don't require a trellis. Sugar peas do, so build one for this row and reuse it after first harvest. Extra space will go to more watermelons.

Small garden: Popcorn, field corn, sunflower, pumpkin, spaghetti squash, watermelon. Sunflowers will be in two rows towards the western side. Then interchanging rows of corn and squash/melons. The corn rows will stop 6' short of the east fence. The squash/melons will be planted in squares, so some of them have full exposure outside of the corn rows.

Flower bed: Cilantro, in pots.

Berry patch: Same.

Old raised bed: Same.

New raised bed: Cayenne, habanero. Maybe some extra jalapeño if I have room.

In pots: Might do some late start cayenne or habanero peppers, and bring them inside before first frost.

2019-02-07: Seeds purchased.

2019-03-10: Green peppers, cayenne, habanero, jalapeño, cherry tomato, and 2 tomato started indoors. Smaller tray filled with dirt and will double up on everything planted so far in 2 weeks. Turns out I do still have some sweet corn, which I might plant later in the year. The spaghetti squash seeds rotted, so will need to buy a pack of those.

2019-03-13: Bought pack of spaghetti squash seeds. Got a bunch of free random seeds in the mail. Might use some of them if I have spare space later in the year.

2019-03-14: Raked and burned all debris in both garden plots.

2019-03-23: Started tilling gardens. Small garden half done.

2019-03-25: Planted 24 each of tomato, green pepper, and habanero in one seedling starter tray.

2019-03-27: Big garden tilled.

2019-03-29: All tilling complete.

2019-03-30: Bought cayenne seeds and a packet of hot pepper mix (anaheim, hungarian wax, cayenne, jalapeño, ancho). Planted final seedling batch.

2019-04-09: Small garden hoed.

2019-04-11: Hoed and raked big garden. Measured big garden prepared space as 22x48'. Planned layout for big garden in big_garden-2019.png.

2019-04-11: Raked small garden, built first level of pea trellis, and planted peas. Once the peas grab the first string, I'll put some tomato trellises in the center area and add subsequent levels. I did use all of my peas though, so won't have enough for a second planting unless I buy more. Should be good on garden tasks for the next couple weeks.

2019-04-23: Measured small garden usable space at 27.5x17'. Planted popcorn, field corn, sunflowers, spaghetti squash, pumpkin, pumpsghetti, and acorn squash. Marked rows with sticks. Created map in small_garden-2019.png. Added trellises to peas row in large garden.

2019-04-24: Moved two mystery squash sprouts to small garden. Planted bush beans, watermelon, and cantaloupe in large garden.

2019-04-25: Raked raised bed again. Planted a row of pepper mix 6" from the north side of the raised bed, just to use up the pack. Also noticed that some kind of squash are growing in the hog pen.

2019-05-03: 2 tomatoes and 18 green peppers planted. Tomatoes transferred to larger tray. Started 2 more tomatoes and some more jalepeños in pots.

2019-05-06: Large cell tray of hot peppers planted in raised bed. Will have room there, so I'll try starting the spare bag of Thai peppers.

2019-05-07: Cayenne, jalepeños, and pepper mix rows planted in big garden.

2019-05-09: Planted remaining green peppers.

2019-05-12: Weeded all gardens between rows. Keeping the weeds down when small seems to be the way to go, and way less work overall.

2019-05-12: Started 12 Thai peppers and 6 habanero. Will plant as many as I have room for outside and the rest in pots. If I put them all outside, I'll start more for pots later. Thinned everything that was over-planted and weeded around plants. Will do a final thinning pass once plants aren't in danger of being eaten by rabbits.

2019-05-18: Planted the 2 cherry tomatoes.

2019-05-19: Planted most tomatoes. Have 6 or 7 left.

2019-05-29: 3rd level of pea trellis installed.

2019-06-02: More tomatoes planted. Still have 2 left, but they need a few weeks to grow. Will also fill in spots where peppers died with remaining. Calling this plan done and pretty much fully in effect now.

Overall, this garden seems like it should be significantly more productive (maybe even twice as much) as last year. Still to decide is whether I want to keep the pea trellis in place and reuse it next year. Will evaluate once we see how it goes. These are definitely a lot more work than the other stuff.

Notes for next year:

  • Buy 1 or 2 more of the large cell trays.
  • Start seeds earlier, in mid-February at latest. Start habanero in early February.
  • Start all tomatoes in one huge batch, with more of them in full pots. I'll still stagger planting them, in case of late frost or animal attack.
  • Planting harvested seeds has a higher failure rate, so save several times what I think I'll need.
  • Keep trays out of tall, wet grass while hardening plants, since slugs will crawl onto the plants and eat them. Maybe just leave them under the porch.
  • With regular weeding, I can just run through the gardens with the hoe and kill all weeds in an hour or two. Then come back around and do some touch up near the plants. In 2018 I'd neglect them and it would take days to clear everything and many things got choked out. This approach should make carrots possible for next year.
  • The plan is to use the tractor to expand at least the small garden and redo the fencing there for next year. If so, I'll reserve an area for grapes and blueberries.
  • Peppers need more care and hardening to not splat when transferring them outside. Did better this year than last though. Maybe starting them earlier will help too. I'll need to plant way more though, to accommodate losses.
  • If I finish the small garden expansion, I'll swap the plantings, with squash in the big garden. Will plant the 2 Northland blueberries I have in pots on the north side.
  • Intersperse pumpkins and/or squash with corn, since they seem to like a little shade and grow larger as a result. Space corn out a little more next time too.

2.8.43 DONE buying stuff: round 3

  • State "DONE" from "STRT" [2019-06-02 Sun 21:42]
  • State "STRT" from "TODO" [2018-09-03 Mon 18:06]

This stuff list is lower priority or precondition-dependent. I'll fully populate it once I do some post-move budgeting. I need to balance this stuff against some potentially costly services.

I will at least need:

  • [X] Glock 43 and OWB holster: Switching to this as primary winter carry. Was going to wait on this, but saw one on consignment with accessories for $399. Came with a kydex OWB which works great.
  • [X] Ladder: Got a 10' step ladder from the house seller for $150.
  • [X] Truck or SUV: Got a new 2018 F-150 XLT.
  • [X] A few gallons of distilled water: Used for batteries and coolant.
  • [X] UTV: Bought a Kawasaki Mule SX 4x4 XC Camo. Added a plastic roof, rear-view mirror, and trailer hitch. Total cost, including tax, was just over $9000.
  • [X] Large watering can: Acquired.
  • [X] Electric chainsaw and bottle of bar chain oil: Got the Greenworks 60V 18" from Lowe's, along with another battery (bringing my total to two).
  • [X] Wire cutters: Got some heavy duty ones.
  • [X] New mattress, size queen: Got a T&N for $575.
  • [X] Drain snake or Zip-It: Got a drain snake. It's okay, I guess. Turns out I didn't need it, but it'll be good for a cheap insurance policy.
  • [X] Hose, spray nozzle, sponge: Got sponge. For the other stuff, I'll just keep the 2 hoses and nozzle left by the previous owner.
  • [X] Spool of wire: Grabbed a 0.25 mile spool of electrical fence wire.
  • [X] First aid kit: Got an IFAK.
  • [X] Freezer bags: Got a box or two.
  • [X] 2-3 trash cans with lids: Got 3 from Walmart for relatively cheap.
  • [X] Ratchet set and another set of sockets: Got a 1/4" set.
  • [X] 5/8" trailer hitch pin: Got straight one. Also useful to use as a punch for driving out large pins on tractor attachments.
  • [X] Feed or snow shovel: Got a feed shovel with an extra long handle.
  • [X] Reactive .22 target: Got a simple spinner.
  • [ ] 1/2" metric and standard socket set: Skipping for now. Probably will want at some point though.
  • [ ] Outside thermometer: Remembered that I have an infrared thermometer gun. I'll just use that.
  • [X] A few funnels of different sizes: Got a 3 pack, which I'll keep in the kitchen. Might still get a few larger ones later.
  • [X] Tarp: Got a 10x12ft one. Might get another one with eyelets for boat.
  • [X] Hose: Have 2, but got another metal one.
  • [X] Pipe wrench: Will try to get by with just one, but some jobs do require two. I do have the tongue and groove pliers that might do in a pinch.
  • [X] Drill pump: Got a cheap one.
  • [X] Hydrometer: Got a cheap, single AA battery one. Also has a thermometer and tracks the range of humidity and temperature seen.
  • [X] 2 fire extinguishers: Acquired.
  • [X] Spare chainsaw chain: Acquired.
  • [X] Battery tender and leads: Acquired.
  • [X] Backup heat source: Got a single-element tank top heater that fits on propane tanks.
  • [ ] Large jug of Permethrin: Dilute this to .05% and make tick repellent. Skipping for now.
  • [ ] 3 piece file set with different file shapes: Skipping for now. Probably will get eventually.
  • [X] Tow chain with hooks: Got 14' one.
  • [X] Angle grinder: Got the DEWALT 20V cordless, since it shares the same battery as my drill. Ordered grinder, wood, and masonry blades.
  • [X] Feeler gauge: Got both imperial and metric.
  • [X] Teflon tape: Got 1/2" roll.
  • [X] Chain sharpening files: Bought the Stihl 2 in 1.

Moving remaining few items to my other shopping list.

2.8.44 DONE clear off dirt pile

  • State "DONE" from "STRT" [2019-06-16 Sun 21:53]
  • State "STRT" from "TODO" [2019-04-25 Thu 18:26]

Still have half of the dirt pile left over from excavating the septic riser lid. Clear this off.

2019-04-25: Cleared off most of this and filled in the edges of the hog pen and potholes around the gravel pit. Will let it rain a few times and collect the rocks. Will also see how much more I need to remove at that time.

2019-06-16: Cleared off rocks. Might be good enough now.

2.8.45 DONE fix missing roof shingle, flashing, and siding gap

  • State "DONE" from "STRT" [2019-07-07 Sun 13:12]
  • State "STRT" from "TODO" [2019-05-12 Sun 19:48]

A section of flashing blew off during a wind storm in early 2018. This should be fixed at some point to avoid water damage to the frame. There is also a missing top shingle on the south side and a small gap in the siding on the east side (just above the electrical outlet).

2019-05-12: Guy came to inspect job. Scheduled work for 2019-05-18 in the afternoon. He'll also fix the front door frame that is loose.

2019-05-19: Door frame and siding gap fixed. Turns out the missing shingle isn't actually missing after all. The original roofers just never extended it the whole way. However, while up there, the roofers noticed that the seals around the vents needs to be replaced. The flashing will need to be ordered, so he'll do that and the sealant next time. Also got a super rough estimate for metal roofing at $16500, which I'll probably do in 9 years.

2019-06-10: Called contractor back. He's still looking for a piece, but will just install what he has if he can't find it (this weekend, supposedly). Will have to paint it later if this happens. Color is "sierra beige".

2019-07-06: Gave up on contractor and fixed this myself with the help of a neighbor. Went halfway on a scaffold rental since he needed to fix his roof as well and used a spare piece from their job. Setting a rented scaffold up is a bit of work and definitely a two man job, but works pretty good. The only downside is the piece is the off-white, but it isn't that noticeable. I'll add repainting it (which I can probably do with just a ladder) to the list for later. Left a message for the contractor that if he still wanted to do the sealant around the flues and vents, he's welcome to. However, I expect we won't hear from him, so closing this.

2.8.46 DONE get/setup dehumidifier

  • State "DONE" from "STRT" [2019-07-29 Mon 21:48]
  • State "STRT" from "TODO" [2019-07-28 Sun 17:18]

This isn't necessary, but would improve cleanliness of the basement enough to be worth the TCO. A good use of the additional funds I have coming in now. Tested the humidity and during the summer it can get up to 70%.

Bought the Toshiba 70-pint one at Home Depot for $200.

Seems to work pretty good. Basement QoL improved a good bit as a result.

2019-12-01: Trying to use the automatic mode by setting the desired % (I think I did this by having it in no mode and using the arrows). Comfort and Continuous modes don't recognize this setting. Also, the filter light will automatically come on after ever 250 hours. Remove the filter and clean it by washing it out, let it dry off, replace, then hit the button to reset.

2.8.47 DONE freeze jalapeños

  • State "DONE" from "STRT" [2019-09-28 Sat 19:46]
  • State "STRT" from "TODO" [2019-09-14 Sat 17:45]

Apparently you can just slice and directly freeze these. Will give it a try, since they'll otherwise go to waste. If this works, it'll save a fair bit of money, since it's one of the vegetables I regularly buy when not in season. Should be able to get at least two batches.

2019-09-15: First batch done.

2019-09-28: Second batch done. Might be enough for 1-2 small bags, but if not, I'll just use the rest for normal use.

2.8.48 DONE medical maintenance

  • State "DONE" from "STRT" [2019-10-06 Sun 07:11]
  • State "STRT" from "TODO" [2019-07-15 Mon 08:00]

I seem to be in good health, but I haven't had eye/dental checkups in a while. Get this stuff done while I temporarily have insurance.

  • [X] Get eye appointment: Got new contacts and glasses. Prescription only changed slightly. Determined to be a viable Lasik candidate. Will queue that, though I might not get to it for awhile. Will have to get it done at a facility in Mclean, so I might grab a hotel for the night to rest the eyeballs if I do. Insurance should provide at least a minor discount, and I can use the HSA for it too.
  • [X] Get dental appointment: Had a tooth ache that needed looked at. Got a cleaning and exam on 2019-07-31. Turns out I need a root canal and crown. Next cleaning scheduled for 2020-07-27 1000.
  • [X] Get root canal: Scheduled for 2019-08-27 1100.
  • [X] Get dental crown installed: Scheduled for 2019-10-03 0800.
  • [ ] Get Lasik surgery: See email from 2019-07-19. Might wait until I fill up some HSA cash for this.

Will do Lasik later, probably in the spring at the earliest, due to job switching.

2.8.49 DONE make cayenne pepper flakes

  • State "DONE" from "STRT" [2019-10-06 Sun 07:14]
  • State "STRT" from "TODO" [2019-09-14 Sat 12:40]

Last year I had about 8 or so cayenne plants and ran out of flakes mid-winter. Probably won't have enough to last the year this time, but will make as much as possible. Next year, plant twice as much cayenne. Batch 1 is already pre-dried, so starting oven drying.

2019-09-15: Batch one complete. I'm thinking oven-drying might go faster if I remove stems first.

2019-10-06: Second and third batch complete. There's even still a fair quantity of cayenne out in the garden still. I'll either make more flakes or hot sauce out of it.

2.8.50 DONE get firewood for next winter

  • State "DONE" from "STRT" [2019-10-06 Sun 08:11]
  • State "STRT" from "TODO" [2019-04-07 Sun 10:42]

Get all wood for next winter queued up ahead of time. Will need 4-5 cords. Use the grated platforms I have to stack some, if they'll support the weight, and cover with my spare tarp. Maybe call Gary's Excavating and see if they'd deliver a full load of logs or if I can buy and pick up some of the split wood they have in their pile.

2019-03-17: Cut a load of wood from local property. Guy says we can keep collecting until September or so.

2019-03-26: Load delivered and stacked.

2019-04-06: Load delivered and stacked. Wood delivery guy says his neighbor has several poplar trees free to collect. Probably won't have time to though.

2019-08-05: Called local logger from Augusta that will deliver a full tri-axle of logs for $600. Supposedly, this equates to 9-11 cords, which is a huge savings. He said he'll call the night before. Go get some cash from the bank to pay for this. If I don't hear from him in a month, call the local excavator and get a couple cords delivered.

2019-08-11: Wallace stopped by randomly. Says he'll start delivering again, so I told him to keep the loads coming. If I get a few loads from him, I'll just keep the logs as backup/supplement, if they actually arrive.

2019-08-16: Got another load of wood. Stacked.

2019-08-21: Another load arrived.

2019-08-24: Final load arrived. Should have enough for the winter, if I start the furnace a little late.

2019-09-02: Cut the neighbor's dead tree, which should add a little extra buffer.

2019-09-25: The logger finally showed up and did indeed deliver a full truck load of fine looking wood. I've definitely got enough for several years now. I might still continue buying a few loads from the other guy next year too though. In the meantime, I won't touch this stuff so as to keep it maximally preserved. When I do start working on it, maybe get the tractor out a push the pile a little flatter, to avoid accidents.

2019-10-06: All wood split and stacked.

2019-11-03: Reactivated wood stove once the lows started being consistently in the 30-40F range.

Now should be good for the winter. I'll try burning some of the really old stuff this time, if I can get to it at the bottom of the pile.

2.8.51 DONE fix generator

  • State "DONE" from "STRT" [2019-11-15 Fri 13:40]
  • State "STRT" from "TODO" [2019-11-15 Fri 16:45]

Power went out on 2019-11-12 and tried to use the generator for its first test run. It failed to start. My guess is it either has problems starting when cold or managed to somehow break just sitting around for the last few months since the last test run. First, test the former theory by running it when it's warmer during the day sometime.

Runs after testing in warm weather. It spit out some white smoke when I started it, but evened out after a minute. Will store this in the basement from now on. In retrospect, I probably should've just bought the more expensive Honda.

2.8.52 DONE sight in .300 BLK red dot

  • State "DONE" from "STRT" [2019-11-21 Thu 16:58]
  • State "STRT" from "TODO" [2019-11-21 Thu 15:38]

This is only currently bore-sighted.

Was way off, but got it mostly dialed in within a couple inches. Might want to do another round at further distances. While out there, I cleaned up the target stand and removed all the staples from it. This is a great barrel, and capable of very tight groups. I wouldn't be against getting another one made by MGM, but I probably need to sell a few of my extraneous ones first.

2.8.53 DONE partially maintain driveway

  • State "DONE" from "STRT" [2019-11-22 Fri 12:44]
  • State "STRT" from "TODO" [2019-11-22 Fri 11:32]

Use up the rest of the gravel pile, which isn't much. This is also a test run to see how scraping goes with just the front loader.

Finished. Only did just behind the house since I didn't have enough gravel for anything more. This works pretty good, but I think I still need a proper scraper blade for doing it properly and getting the grade just right. I am thinking I should be fine with maintaining it myself once I have that.

2.8.54 DONE swap sights on 7mm TCU barrel

  • State "DONE" from "STRT" [2019-11-25 Mon 00:58]
  • State "STRT" from "TODO" [2019-11-25 Mon 23:36]

Take the ScopeRib III off and put back in its bag for now. I might put these on my 9mm barrel later, or save for a future build.

Done. Will use up the rest of the 7mm TCU ammo and probably sell this and the dies. This is a nice chambering, but now that I have the 300 BLK barrel, this one is a bit redundant and I prefer 300 BLK over this. Wait until there aren't any others listed before selling, as sometimes these go for super cheap.

2.8.55 DONE come up with plan for Contender barrel collection

  • State "DONE" from "STRT" [2019-11-27 Wed 22:18]
  • State "STRT" from "TODO" [2019-11-25 Mon 12:14]

My current collection made sense when I was going to indoor ranges and optimizing for squeezing novelty into each trip. I also wanted to stick to factory ammo. Now that I have a property with a shooting range and occasionally have to shoot varmint/predator animals, it's less so. Though still not a bad collection, it doesn't cost much to refactor it, so I might as well go ahead and rebuild it into the ultimate collection for my interests and use cases. This is part of a larger refactor/reduction of the firearms collection.

Some goals:

  • A majority of rimmed cartridges.
  • 4 barrels, with a hard limit of 6.
  • Common projectile calibers and powders when possible.
  • Sharing parent cases when possible.
  • Weird chamberings optimized for the Contender, but with dies/brass available, or at least easily formed without expensive intermediate resizing dies.

Thought a good bit about what I want the barrel collection to ultimately be. Here's my current best guess (updated 2019-12-02):

  • 10" .22 LR, octagon, irons: Keep.
  • 9.1" 300 BLK, bull, red dot: Keep. Maybe replace with reflex sight.
  • 10" .30 Herrett, bull, irons: Buy an old factory barrel and keep it stock. Brass is available from Buffalo Arms and EABCO.
  • 8.5" .218 Bee, bull, scope: This would be a custom barrel. Put the 2x Leupold on this. Buffalo Arms sells loaded ammo that I could use to get started with, until I collect all the correct dies. Might also be willing to get a pre-owned one, since they show up sometimes. Stepped octagons do exist, but are rare.
  • 10" .30-30, octagon, irons: Keep. Main hand cannon barrel and a brass source for the .30 Herrett (though I can just order some).

That means I'll sell .22 w/ rings, 7TCU, .44, 9mm, .223, in that order. This would be -2/+2 calibers and -5/+2 barrels. Will lose money on some and make a profit on others, probably ending up as a wash. Also will sell the ScopeRib III. All 3 handloading cartridges can share IMR 4227 powder (and some others). Even with 5 total barrels, it might still make sense to get a second frame to leave the .22 LR barrel on.

2019-12-09: Decided to replace the .30-30 with a second .30 Herrett. This will subtract an additional caliber. I'll just buy some extra brass for this instead of trying to form my own.

2019-12-18: Decided to switch the red dot on the 300 BLK with a Burris Fastfire III and Weaver base. Might try putting the red dot on the AR, or sell it, but I'll wait until I try out the Fastfire first.

2.8.56 DONE get rid of extra windows

  • State "DONE" from "STRT" [2019-12-01 Sun 12:31]
  • State "STRT" from "TODO" [2019-11-26 Tue 19:57]

We have two dual-pane windows, size 73"x40"x1" and 73"x44"x1", that came with the house. They're very heavy and of inconvenient sizes, nor can I think of anything useful to do with them. So, list them for free on Craigslist just to get rid of them.

Posted on 2019-11-27T00:57:26Z. Got a taker, scheduled for pickup on 2019-12-01.

Guy showed up and grabbed them. Now I can repaint the garage trim. The taker was also a glass guy, and he suggested that I can fix the garage window by removing the section with the broken pane and bringing just that into a glass place. Will have to cut a plywood board to cover this while it's being fixed.

2.8.57 DONE sell extra .22 LR barrel

  • State "DONE" from "STRT" [2019-12-03 Tue 11:50]
  • State "STRT" from "TODO" [2019-11-25 Mon 11:19]

Sell the 10" .22 LR octagon Contender barrel with scope rings. I have this and the same barrel with iron sights, and wanted to wait awhile to see if I prefer one over the other on this property. The iron sights one seems to make more sense here. If I need to shoot something small longer range, I'll use the .223 barrel.

Listed, bought by someone (I think it was $176 or so) and shipped.

2.8.58 DONE get new workbench

  • State "DONE" from "STRT" [2019-12-03 Tue 21:56]
  • State "STRT" from "TODO" [2019-11-26 Tue 13:07]

I'll need a new bench for my reloading setup. I can also use this for various other things too. While at it, I'll also rearrange the secondary workshop, which this will go in. I might also pull out the old netbook and hook it up down there for looking up things online. Will have to redo the OS install first though.

I considered building my own, but found one called the UltraHD Lighted Workcenter that includes drawers, integrated light, pegboard, and power strip. this works out, I might get rid of the desk in the workshop room and replace it. It's unlikely I could build something equal to this. Cost was $236+tax. If this works out, I might even consider another one for the main workshop.

Done. Also cleaned and rearranged the room. This setup nice and is a great product. Only complaint is that the wood is easy to scratch. Will have to get a rubber mat for the work area. Only thing left to do is mount the press on it. I may consider adding a small vise to it later, which could be useful for annealing. I already have one in the garage though, so will hold off on that.

2.8.59 DONE get/install safe

  • State "DONE" from "STRT" [2019-12-08 Sun 00:05]
  • State "STRT" from "TODO" [2019-12-01 Sun 15:44]

While I have a basement with a concrete floor that would be perfect for bolting a heavy, classic-style safe to, I'm a bit reluctant to go that route due to spring and heavy-rain humidity. Also, those safes tend to be way bigger than what I'd ever need and are often very difficult to move. A popular present day option is the lighter-weight safes that are then secured somehow to floors or heavy frames. These are claimed to give equivalent security to the more impressive-looking heavy safes. Having studied the subject a bit, I'm pretty confident that while this is undoubtedly marketing hype, it's still at least partially true.

Two main options I'm considering:

  • 52" standing safe that can contain the entire collection, plus have room for other stuff.
  • Under bed safe just for my AR and handguns. The remaining collection, which is just milsurps and single shot sporting rifles, can go into a standard gun cabinet in the living room.

Safe ordered. Got the SecureIt Agile Ultralight Model 52. Seems perfect for the small collection. Even with the Black Friday sale, this was overpriced, but decided to go for it anyway. Will mount this next to my Jerker desk and get a bolt long enough to thread through one of the holes on the side and into the existing holes in the desk frame. May need a riser to get them to line up, or I can look for a thin, long cable lock.

May still get a proper gun cabinet for the living room, but not entirely sure since then this would mostly be empty.

2019-12-05: Still waiting on delivery, but had an idea. I can swap the lockable doorknob to the workshop with the one to the gun closet. Then, I can build a heavy-duty stand that can't fit out the closet door. Once that's in place, I can put the safe on that and bolt it to the stand. Will hold off on this until I see what the humidity looks like down there next summer. If it's too high, I can still do this, but I'll need a small 30-pint dehumidifier just for that room.

2019-12-06: Accessories box arrived. Still need the actual safe itself.

2019-12-07: Safe arrived and assembled. Setup was a little annoying, but it came together nicely and looks pretty good. All stuff fits in there great too. I also feel much better about this stuff being secured. Will add the dehumidifier bags to the next Amazon order. If/when I move this downstairs, I might want to remove door (will have to remove the top and internal pieces to do that) to reduce weight.

2020-03-30: Added 4 pistol pegs. 3 are currently in use. Cabinet now complete.

2.8.60 DONE find a new jacket

  • State "DONE" from "STRT" [2019-12-08 Sun 00:10]
  • State "STRT" from "TODO" [2019-11-29 Fri 19:28]

Need different light jacket for wearing off-property and on-property when not doing anything dirty. Keep this one clean.

Ordered the Arc'teryx Gamma MX in black, size medium.

Arrived and is pretty nice. A good fit already, but will look perfect once I lose another 10 lbs.

2.8.61 DONE fix basement ceiling

  • State "DONE" from "STRT" [2019-12-08 Sun 20:20]
  • State "STRT" from "TODO" [2019-12-08 Sun 18:30]

Re-tape the ceiling plastic where its fallen off.

Done. Also cleaned the ceiling a bunch. Could probably use a final touch-up, but I'll do that later. Looks way better now.

2.8.62 DONE sell 9mm barrel

  • State "DONE" from "STRT" [2019-12-09 Mon 12:16]
  • State "STRT" from "TODO" [2019-12-03 Tue 19:42]

This is a super rare 9mm factory barrel, much coveted to own. Was a great barrel for range trips and cheap centerfire shooting, but a little redundant now that I'm building a reloading bench. Being highly sought after, I might as well sell it and cash it in while I can. Have a current offer for $245 shipped, which I'll probably pass on.

Was going to sell this later, but happened upon a guy who was looking for one on the SP forums. Asked for $260, to which he agreed. Need to box up, wait for payment, then ship.

2019-12-09: Payment received and barrel shipped. Transaction complete.

2.8.63 DONE install new tractor coolant cap

  • State "DONE" from "STRT" [2019-12-10 Tue 13:26]
  • State "STRT" from "TODO" [2019-12-10 Tue 13:36]

Got contacted by equipment company and informed that a new coolant cap was issued by the manufacturer. Maybe this was a recall or something. Cap eventually arrived, just need to install it.

Done. Was an easy swap.

2.8.64 CNCL use Gnuplot and Soylent to lose weight

  • State "CNCL" from "STRT" [2019-12-10 Tue 13:40]
  • State "STRT" from "TODO" [2018-01-07 Sun 01:04]

Living in a tiny box and working in front of a computer all day has made fitness a problem area. However, I refuse accept living with size 32 pants (which should be at most 30). I put consistent effort into this, and I've noticed that that this effort has been load-bearing–without it, things quickly start getting way worse. That means I need an even bigger investment in order to move the needle. Upcoming life changes should make this easier, but I'm rebooting this effort now.

The plan:

  • Food intake: Max 1 normal meal and 1 light meal per day. If a meal goes over 1.2k calories, skip the light meal. A light meal is defined as one Soylent dose or <600 calories of normal food. Zero snacking or purchasing of snacks is allowed.
  • Normal food composition: Shift non-Soylent meals to be a multi-component entrée that includes vegetable sides. Make an effort to reduce carbohydrate consumption (which is where most of my calories originate). This is based on my theory that when I do consume food with significant mass, it tends to be calorie-dense. Lots of side vegetables have mass, yet low calories.
  • Exercise: Maintain output here.
  • Track weight every Monday morning in Gnuplot file.
  • Current end goal is 184 lbs. Will consider further goals once reached.

Success here is a mere test of will. When done, re-evaluate on optimal way to finish the job and get to maximum physical fitness.

2019-07-05: Currently following plan pretty closely and goal within sight (only 16 lbs to go). Muscle mass is much higher now, so reaching the final target will be a bit harder than when I had weak noodle arms. However, if I can stick it out the rest of the year, should at least get very close by 2020.

2019-12-10: Going to end this and switch from using Soylent. New plan will have alternative details.

2.8.65 DONE get and setup reloading equipment

  • State "DONE" from "STRT" [2019-12-12 Thu 18:08]
  • State "STRT" from "TODO" [2019-11-26 Tue 14:52]

Order the basic equipment that I'll need to build a reloading bench. I figure the kind of semi-minimal setup I want will cost about $1000.

Decided to take advantage of the current sale at Midway and order most of what I'll need. Ordered:

  • Hornady Lock-N-Load Press: This is a single stage press. Decided not to go with the kit, since it's full of cheap accessories of which I'll have to replace most of anyway.
  • RCBS Universal Hand Priming Tool: I think I'll want to hand prime instead of on the press, but not sure.
  • Lee Primer Pocket Cleaner: This one includes both small and large primer sizes, unlike most others.
  • Hornady Universal Reloading Tray: Might try making perfect fit wood ones later.
  • Imperial Case Sizing Wax: Decided to go with this instead of the spray.
  • Hornady Shell Holder pack: Should match press and hold any shell I'll use.
  • Hornady Lock-N-Load Die Bushing: Press supports this system. These mate with the dies and maintain setting between swaps. Might get additional sets of these later.
  • RCBS ChargeMaster 1500: A digital powder scale. The most expensive item here, but was 20% off.
  • RCBS Chamber and Deburring Tool: This and the primer pocket cleaner negate the need for a electric station.
  • Hornady New Dimension dies in 300 BLK: Not sure if I'll reload much for this, but I got it to practice on.
  • Loadbooks volumes 1 and 2 for the Contender: Is missing some cartridges I might be interested in, like .219 Donaldson Wasp, but has most of the important ones.

This all came out to $707 including tax. Rather expensive and adds a pile of physical possessions, but I think it'll get enough use to be worth it in my case. I also intend to downsize in other areas to compensate for it.

2019-11-30: Ordered some of the rest of the stuff needed. Total for this stuff was $260.

  • RCBS case neck brushes and handle.
  • Grace USA Delrin Tip Brass Hammer 8 oz.
  • Frankford Arsenal Impact Bullet Puller.
  • Lyman Universal Trimmer Power Pack with Case Trimmer Kit, Power Adapter and 9 Pilots.
  • MTM Universal Powder Funnel Set 17 to 45 Caliber.
  • Inline Fabrication Ultramount for Hornady Lock-N-Load Classic Single Stage Press.
  • Also got a cleaning mat and replacement patch jig while I was at it.

At some point I will/might want mounting bolts/nuts/washers, chronograph, neck reamer/turner, c-clamps, roller press handle, some extra cartridge boxes, (probably wet) tumbler, and tumbler media. Also might want to fabricate a dust cover for the press.

2019-12-03: First set of stuff arrived. Setup what I could.

2019-12-05: Second set of stuff arrived. Assembled press mount and bolted press to it. Looks like I'll need 4 1/4" (2.5-3") bolts, 4 standard washers, 4 fender washers, and 4 Nylock nuts. Get those, drill the holes, and install the press mount. I may countersink the bolts on the bottom to keep them flush, at least on the side where the drawer is (may need a larger wood bit for that). Also need to get a board to mount the case trimmer.

2019-12-06: Went to hardware store and bought bolts, washers, nuts. Used those to affix the mount to the workbench. Thanks to some careful measuring, this turned out great. Went to the local ammunition supply store (which is pretty barren) and got:

  • 100 Hornady .30 cal 225gr BTHP Match.
  • 50 Hornady .218 Bee brass.

Also placed a HAZMAT order of:

  • 4lbs WIN 296.
  • 1000 Federal 210.
  • 1000 WSR.
  • 1 box each of .25ACP and .218 Bee.

Pretty close to having everything, just need a box of .30 cal 130gr SP and .224 cal 45gr V-MAX or similar. Will hold off on the final batch of stuff until I get a working 300 BLK load.

2019-12-10: Last round of stuff ordered, of mostly nice to have items:

  • 100 Hornady .30 cal 130 gr SP.
  • RCBS Ultrasonic Case Cleaner.
  • RCBS Case Cleaning solution.
  • RCBS Gun Cleaning solution.
  • Ransom Master Mat.
  • Pack of Burris paper targets.

2019-12-12: All stuff arrived. Setup complete. Might consider getting a Lee hand press for just decapping (keeping the main press clean). Plastic funnels also rather suck, so I'll replace those with metal ones. Current hand priming only, but may use the press just for large primers. Otherwise I consider this done, with everything turning out great. After a year or two of using this, I'll revisit the setup and consider expanding into some related areas or just leave it as is.

2.8.66 DONE get .30 Herrett barrel

  • State "DONE" from "STRT" [2019-12-16 Mon 11:27]
  • State "STRT" from "TODO" [2019-11-28 Thu 23:59]

Give this chambering a try. Find a later model stock factory 10" bull, dies, and get/make some brass. Once I get the reloading bench operational and practice on 300 BLK, try developing a load for this.

Posted a WTB on SP and got an offer for barrel, dies, and 100 brass. Negotiated to $250 for the lot. Only downside is it has a Weaver base. Will think about whether I want to stick with that or get irons for it. It's got a fixed front sight, and so it would need the long, rectangular, rear sight with the rounded triangle on the side (which is probably my favorite rear sight). The side-mount silhouette sight would probably work too. I also might just keep this as-is and still get another stock one, but I'll wait until I try it out first.

2019-11-29: Sent money order. Seller indicated he'd throw an extra 50 newly fire-formed brass as well, along with some more mixed brass.

2019-12-03: MO arrived and item shipped. Should get it around 2019-12-06. Leave feedback on the forum and delete WTB thread when it arrives.

2019-12-09: Decided to grab a second .30 Herrett with factory irons, which I got for $153. Then I'll put the scope on the one with the base. Will have to eventually sell the .30-30 barrel then to compensate, but I'll wait until I have a working load for .30 Herrett and can churn those out reliably.

2019-12-10: First .30 Herrett barrel, dies, and brass arrived.

2019-12-16: Picked up irons barrel at post office. Once I make and test out some cartridges, I'll decide whether to keep both or sell one. If keeping both, I'll either put the scope or Match Dot on it.

2.8.67 DONE get .218 Bee barrel

  • State "DONE" from "STRT" [2019-12-16 Mon 11:27]
  • State "STRT" from "TODO" [2019-12-06 Fri 10:26]

This is my second of 2 new barrels, replacing 5 or 6 others I don't use as much. Will hold off on this to make sure I'm committed to the idea and will keep the .223 barrel until I get it. Currently thinking 8.5" bull, 1-12 twist, blued, Super 14 forend spacing, 6-flute, 5" Picatinny base, burnt bronze flute and base color. Saved this on wish list. I might email them first to see if they still offer the Weaver bases or if they have options for irons. While waiting, I'll keep an eye out for used factory barrels in the chambering.

My original idea was for .219 Donaldson Wasp, then .256 Win Mag. .218 Bee seems superior to both for me, as it: requires only basic dies, has no complex resizing operations, factory brass is available, is efficient in a short barrel, uses less powder/smaller projectiles, and shares the .224 caliber.

Found a .218 Bee octagon with the stepped base on eBay, which the seller wanted entirely too much for. He used the offer feature to advertise it for $300, and I got another $5 off with a coupon. Still too much, but worth it for me, since I don't have to waste a lot of time looking for or ordering one. This will be irons only. Will grab a box of ammo for it first before I get all the dies and brass. Barrel should arrive before 2019-12-18. Also picked up 50 Hornady brass.

2019-12-16: Picked up at post office. Will take this out back for a test fire once the weather clears. Once that works, get dies, 40gr .224 projectiles, and a Hornady #7 shellholder.

2.8.68 DONE cover all unused basement power strip outlets

  • State "DONE" from "STRT" [2019-12-14 Sat 17:54]
  • State "STRT" from "TODO" [2019-12-16 Mon 13:54]

I have extra plug covers, so might as well keep dust out of these outlets.

Did this around the various outlets and power strips. Will keep an eye out for others.

2.8.69 DONE sell 7TCU barrel

  • State "DONE" from "STRT" [2019-12-21 Sat 20:56]
  • State "STRT" from "TODO" [2019-12-18 Wed 18:17]

After thinking about it awhile, I've decided to discontinue using this caliber. While it's definitely a good one, it adds little when I can use the 300 BLK for the same purposes (more in fact, since 300 BLK can shoot super or subsonic). Since it's a handloading cartridge that doesn't share caliber with other cartridges, I'd have to be pretty invested in it in order to keep it around. Deplete the remaining 7mm TCU ammunition and sell this along with the dies. Be sure to post the listing in the evening, say around 8PM EST. I've already replaced the original factory irons. Won't get much for this one, since the market's flooded, but I also didn't pay much for it either.

Shot most of the remaining ammo. Still have a few rounds left I might not bother with.

2019-12-18: Pictures taken and post written.

2019-12-20: Item listed at 19:35 EST. Can safely deactivate remaining rounds now.

2019-12-21: Accepted an offer for $150, so should be able to close this out early and get on to selling the rest of the stuff. Seller immediately paid so sent it out on the same day.

2.8.70 DONE install reflex sight on 300 BLK barrel

  • State "DONE" from "STRT" [2019-12-22 Sun 02:24]
  • State "STRT" from "TODO" [2019-12-22 Sun 01:19]

Swap the red dot for the new reflex sight on the 300 BLK barrel. I might later use the red dot on the AR or the .30 Herrett barrel with base. For now, I'll just put it back in the box.

Mounted. Need to sight it in though. Also, my laser bore sight is now dead. I might consider getting an MGM 3-4" Picatinny mount for this to replace the Weaver mount, thus allowing the sight to mount further back. Then, I could save the Weaver for a potential future build.

2.8.71 DONE remove scope from .223 barrel

  • State "DONE" from "STRT" [2019-12-22 Sun 03:24]
  • State "STRT" from "TODO" [2019-12-22 Sun 02:54]

Uninstall the Leupold FX-II from the .223 barrel, in preparation to sell. IIRC, these old Weaver rings are tight, so be careful not to mar the scope finish. I might want to go ahead and bend/break the rings to avoid that. I have some extra rings I can include in my listing instead anyway.

Scope removed and back in box. I did bend the Weaver rings' clamps a bit, but this should be fixable if I want to use them again. I stuck them in the desk drawer. I'll toss them if a situation doesn't arrive in a few years. I then put my spare Leupold rings on the base (I'll replace these with better ones later). Will sell barrel with those and the Allen wrench for them.

2.8.72 DONE deactivate remaining 7TCU rounds

  • State "DONE" from "STRT" [2019-12-24 Tue 15:48]
  • State "STRT" from "TODO" [2019-12-22 Sun 21:21]

Figure out how to use the bullet puller and deactivate these rounds. Dump powder in garden and save bullets. Since this brass isn't good for anything else, just toss it. Bring in a piece of wood to use the bullet puller with.

2019-12-22: Assembled bullet puller and pulled all 7TCU rounds. Will let the primers soak overnight before disposing. As an aside, I did notice these rounds were loaded quite hot, completely filled to the base with compacted powder.

2019-12-24: Task complete.

2.8.73 DONE setup small bench vise

  • State "DONE" from "STRT" [2019-12-30 Mon 22:23]
  • State "STRT" from "TODO" [2019-12-30 Mon 16:21]

Get a small bench vise to be shared between the basement workshops. Not sure where I want to put this yet. This one will be a cheap one. If I need some precision or heavy duty vise work, I'll use the one in the garage. Ordered a 4.5" import.

Received bench vise. Turned out I had the hardware to mount it already, so did so. Put it in the reloading room. It is mounted into an MDF bench and close to the edge, so I'll have to remember not to use it for anything involving significant torque. Otherwise, this looks good and is in a great spot. If I ever remove it later, I can cover up the holes with the mat.

2.9 Macro-goals

2.9.1 CNCL switch to OpenBSD

  • State "CNCL" from "TODO" [2019-01-11 Fri 00:31]

Even if I was on the Core Team's side with huggate, I'd still need to part ways with FreeBSD due to the exodus of others leaving due to it. I've been meaning to give modern OpenBSD a look, so this is fine with me anyway. Here's the plan for getting as comfortable as I am with FreeBSD with it, and hopefully surpassing that level.


  • [ ] Read Absolute OpenBSD.
  • [ ] Read the OpenBSD FAQ.
  • [ ] Install OpenBSD on a VM.
  • [ ] Install OpenBSD on my laptop, and see if I can get all the important hardware working. Backup plan here is to use NixOS.
  • [ ] Install OpenBSD on workstation.
  • [ ] Replace VPS with OpenBSD.
  • [ ] Publish OpenBSD version of setup guide.
  • [ ] Replace FreeBSD bookmarks with OpenBSD ones.
  • [ ] Take a peek at autoinstall(8) for automating installation.

Canceling for now. Might revisit this later to see if it supports more of the applications I use.

2.9.2 DONE new job skills familiarization

  • State "DONE" from "STRT" [2019-09-21 Sat 08:07]
  • State "STRT" from "TODO" [2019-05-24 Fri 22:16]

Trying out a local federal contracting job for a bit. Have some reservations about it, but a detailed cost/benefit analysis shows a quantifiable benefit to giving it a shot and no real risk. However, the biggest downside is the tech stack. If working more seems to make sense, I might look around for a remote job later.

Instead of this hanging around forever, I'll do this in two stages. First is just to get a high-level overview of the core technologies. After being there for awhile, I'll might add a few specific items to deep dive on.


  • [X] C# refresher: Read book, wrote code, went through LINQ examples.
  • [X] .Net Core familiarization: Read overview and made a few projects. Might spend more time on this later, or just lazy load.
  • [X] Learn Docker: Made a Hello World container in Docker for Windows.
  • [X] AWS ecology scan: Did the 4.5 hour AWS Cloud Practitioner training.
  • [X] Entity Framework familiarization: Learned this a little on the fly.
  • [ ] TypeScript familiarization: Going to try to skip this and just pick up what I can from Angular.
  • [X] Get just above incompetent in Powershell.
  • [ ] Angular 7 familiarization.
  • [ ] Learn Kubernetes:

This is a sort-of decent job, but an especially good one for the area. Here's my (very preliminary) cost/benefit analysis so far. I'll revisit this after being there several months.


  • A reasonably smart, professional, friendly team.
  • A good work/life balance. I still have time left over to accomplish most of my non-work goals.
  • Could do this long-term, if I decide to.
  • Refreshes my skill set a bit on practical development. This might help later for some of my personal project ideas.
  • Might be a few forthcoming outlets for ML or FP (more than the FP features of the multi-paradigm languages in use).
  • Keeps clearances active and updated.
  • Once I subsume the domain, I'll probably have plenty of cognitive surplus.


  • Location is on-site in a government space, with the typical restrictions for this kind of work.
  • -2 hours/day on commuting.
  • Tech stack is mostly a bit dull and uninteresting.
  • Code too intertwined, hard to debug, and reason about. Can definitely do anything here, but the ancillary complexity is high.
  • Too much methodology overhead.
  • Can't leverage most of my higher-end, more productive skills and tooling. Poor overlap with interests.
  • I'm with a BigCorp for the first time, with all the expected downsides (though a few upsides too).

I think this is mostly on the positive-leaning side for the short term, but I'll revisit this balance and take action as necessary later if/when it changes. Also, since I'm not doing this out of need, I'll have to think about how work fits into my current FI life.

2019-09-21: Decided to take a remote Clojure position, which is a huge upgrade. So, canceling the remainder of this stuff.

2019-10-06: Post-job analysis: Since I have the option of returning later if I want, I've thought a bit about the 6 months here. A pro I would add is that the team synergy on the project was quite high and positive. The main added con would be how life-dominating the job was. If I want a local job again, I'll probably first explore other options, to include private sector, before seriously considering it. If WFH goes well, I'll perhaps form a strategy about better positioning myself for that exclusively.

2.9.3 DONE year-end review for 2019

  • State "DONE" from "STRT" [2020-01-01 Wed 18:56]
  • State "STRT" from "TODO" [2020-01-01 Wed 18:21]

Context: Spent most of 2018 super-productive, though mainly not in the areas this file is focused on tracking.

Goals for 2019:

  • Distraction management: This requires constant vigilance, so it's still on this list. No major changes, but definitely play fewer video games and/or be less completionist while doing so.
  • Health: Starting the year off in a good enough place to plausibly close the gap on this by year's end.
    • Get a weight bench and use it when not doing any manual labor outside.
    • Switch to Soylent lunches when I have no self-grown food available.
    • Daily single full meal should always be primarily home-cooked and consisting of cheap items from the produce department or garden.
    • Get snack food consumption (like chips and pretzels) to near zero, even as meal sides. Sides should be things like vegetables or beans.
    • Weight goal: 184 lbs.
    • Keep a semi-normal schedule for waking hours of 0800-2400, or something close to that.
    • Get caught up on dental and eye exams. Consider Lasik surgery if possible.
  • General life: Things are almost optimized here, but there's still some remaining work.
    • Finish UI. This should end around April.
    • Implement new garden plan. This should improve output by a significant margin over 2018.
    • Keep an eye out for remote Clojure or other functional jobs. I'll also ponder my general financial outlook and determine whether I should increase my buffer by working a stint locally. I could also consider whether it makes sense to do so in order to purchase the neighboring plot of land, stockpile supplies, or the like.
    • Fix remaining big items on property list.
    • Finish remaining large item purchases for property. I think these are just riding lawnmower, generator, and maybe some other stuff (check list).
  • Self-study: Did very little of this in 2018 due to the physical world dominating my time, but I should be able to make plenty of headway on this now, unless anything unexpected happens.
    • Clojure wrap-up: Read Applied Clojure and quickly go through the Clojure-related technical tasks (mostly libraries).
    • Dedicate a huge chunk of time to Haskell.
    • Consider doing a meetup lecture on some topic.
    • Do at least a couple side projects. Start with some easy ones that have big skills payoffs.
  • Miscellaneous:
    • Finish redoing all computers. The laptop and VMs are done, but still need to do the workstation and VPS.
    • Finish refactoring targeted skills portfolio and review everything here one more time to make sure it's in line with that.
    • Maybe refactor this file to better track real life projects.


  • Distraction management: Did great first 2/3 of the year, then got sloppy when I started working for home for a couple months. After that, managed to replace timesinks with home tasks, mostly.
  • Health:
    • Weight bench: Still need.
    • Soylent lunch: Started in March. Helped quite a bit, but then quit after going WFH.
    • Single full meal: Started in March. Switched to garden stuff in summer. Got sloppy towards end of year.
    • Snacks: Semi-failure here.
    • Weight goal: Got half-way.
    • Wake schedule: Started in March. Stuck to it.
    • Eye/dental: Eye exam done, contacts/glasses updated. Dental in progress. Lasik still to do.
  • General life:
    • Work: Took an on-site federal job. This wasn't too bad, but also too life-consuming. Left for a remote Clojure job after 6 months, which was the right call. This is pretty close to optimal. I did lose many months of personal productivity due to this though.
    • Big property items: Done. Started work on nice-to-have stuff.
    • Large purchase items: Done. Decided to get tractor for mowing.
  • Self-study:
    • Clojure wrap-up: Refreshed skills. Still need to read Applied Clojure and learn a few libraries.
    • Haskell: Refreshed Haskell knowledge. Gained a better intuition for the category/group-theoretic abstractions. Didn't have any time to proceed further due to jobs.
    • Meetup lecture: Haven't had time due to jobs.
    • Side projects: Had some time for this, but decided to invest it into property improvement. I think this was the right call.
  • Miscellaneous:
    • Redo computers:
      • Windows box done. Decided not to upgrade hardware. Upgraded all MS software, thanks to having an MSDN subscription for awhile.
      • Workstation: Full hardware replacement, including new monitor. Switched to Manjaro.
      • Laptop: Same hardware, but switched to Manjaro.
      • VPS: Still to do. Need to investigate whether I can switch this to Linux.
    • Refactor targeted skills: Still need to do.
    • Org refactor: Still need to do.

3 Project List (2018)

3.1 Computer Science/Programming

3.1.1 DONE Learn You a Haskell for Great Good

  • State "DONE" from "STRT" [2018-08-28 Tue 22:52]
  • State "STRT" from "TODO" [2015-08-06 Thu 13:51]

It's been a couple years since I wrote much Haskell, so this will get me back into it before doing a larger text.

This book gets either praise or not, depending on who's asked. At first I rather liked it, and accordingly started taking close notes. However, I've settled on an opinion somewhere in the middle for it. Most of the info you want is in here, but some things are too verbose and others not tied together as well as they could be. The tone of this also gets old quick. As a result, I stopped most note-taking around applicative functors. I'll cycle over all of this again with Hutton's Programming in Haskell, which is supposedly better.

3.1.2 DONE Why Types Matter (slides)

  • State "DONE" from "STRT" [2018-08-30 Thu 21:48]
  • State "STRT" from "TODO" [2018-08-29 Wed 08:13]

A 96-slide deck introduction to type theory and applications. Hoping there's some helpful contextual framing here.

I rather dislike slides, but I really hate slides that incrementally load content. There is some good introductory content in here, I guess, but not much of it.

3.1.3 CNCL The Lambda Papers

  • State "CNCL" from "TODO" [2018-12-11 Tue 23:36]

Having already skimmed these some, I've observed a lot of stuff in here that make these not particularly enlightening. For one, the code is antiquated and not really too close to any modern Lisp syntax. These are also very much a product of their time, and include a lot of context within the academic environment from which the ideas arose. That would probably be of interest to CS historians focused on the topic (if any even exist), but isn't useful today. Another big factor is that most any functional programmer worth his REPL prompt will already know most of the stuff here, as it's presented in a more digestible form in places like SICP.

The bits worth reading today are likely confined only to their commentary on the lambda calculus itself. Just read those parts.

Read some of these, but there's a lot of uninteresting parts too. In fact, the ratio is far too high. Skipping the rest.

3.1.4 CNCL The C Programming Language (2nd Ed.)

  • State "CNCL" from "TODO" [2018-12-11 Tue 23:37]

C is on my shortlist of languages to use for the rest of my life. So, doing the exercises here will be a good refresher. I'll just do those without doing any build management or special tool use.

I have a hardcopy of the 1st edition and a mobi copy of the 2nd. If I do bother to read this, I'll probably just read the mobi version casually. Since I already know it, spending too much time here is probably a waste.

Canceling C from my language portfolio, unless I have a direct need in the future. I'll probably switch to Rust or Go if I need to have any lower-level personal projects.

3.1.5 CNCL Learn C the Hard Way

  • State "CNCL" from "TODO" [2018-12-11 Tue 23:37]

These "Hard Way" books tend to be a little sloppy, but are okay for language intros for non-academics or practice-heavy language refreshers. This will probably be good enough C practice for me, especially if there's a gap between reading this and TCPL.

Canceling C from my language portfolio.

3.2 Math

3.2.1 DONE Introduction to Mathematical Thinking

  • State "DONE" from "STRT" [2018-11-22 Thu 12:04]
  • State "STRT" from "TODO" [2017-04-16 Sun 03:18]

This is the textbook for a 10-week Coursera course of the same name. This is also the initial text recommended by this guy's "path to programming language theory enlightenment":

I'll give this a try, as it's of moderate length and just in case there's something I've missed in my haphazard academic and self-taught math education.

Took notes and did exercises in practice/misc/ To keep things moving, I skipped a few of the really tedious/redundant exercises. I might move these out to another math-related project later.

Okay in some respects, though lacking in others. I doubt almost any HS grads (one of the targeted audiences) would be ready for this. I would also prefer topic introduction not occur inside of exercises. Splitting them makes the text more versatile. I completely disagree with not providing answers, as would've been nice to check my work and confirm correctness. This would have also prevented me from not being able to solve certain problems.

Left off on page 67, but calling it done due to not getting as much out of it as I'd hoped.

3.3 General Non-fiction

3.3.1 DONE Snakes of West Virginia

  • State "DONE" from "STRT" [2018-01-24 Wed 13:00]
  • State "STRT" from "TODO" [2018-01-24 Wed 11:12]

This is a PDF put out by the WV DNR. Snakes like to hide in piles of wood, fallen trees, and tall brush, so encountering them is pretty much inevitable.

Only two are poisonous, the northern copperhead and timber rattlesnake. If I see one of those, I'll unfortunately have to shoot it for safety reasons. All the others are harmless. Even so, the chances of a fatal snake bite are astronomically small and only a few people have ever died from them in the state. I probably won't worry about it in that case.

Copperheads have a brown, coppery color with hourglass-shaped stripes. Both poisonous snakes have larger diamond-shaped heads, which the non-poisonous ones don't have.

3.3.2 DONE The First World War

  • State "DONE" from "STRT" [2018-01-29 Mon 10:19]
  • State "STRT" from "TODO" [2015-12-04 Fri 07:27]

I've read this back in college, but lacked some of the context necessary to understand everything completely.

Pretty good, but seems biased towards the British perspective. Since I've read up on WWI extensively elsewhere, I can say much missing context prevents it from being a comprehensive narrative. This is in line with my earlier experience reading it, back when I knew nothing about the conflict. The general approach here might have been okay if the length was longer. I'd have preferred it stuck to one type of analysis or perspective, however. My choice would've been grand strategy.

3.3.3 DONE 2018 Kawasaki Mule SX manual

  • State "DONE" from "STRT" [2018-02-22 Thu 01:33]
  • State "STRT" from "TODO" [2018-01-29 Mon 03:11]

Thinking about getting one of these for the new property. Read the full 156 page manual first to see if there's any deal breakers.


  • Uses regular 87 octane gas.
  • Has a carburetor and choke.
  • Along with hill climbing and pulling heavy loads, also be sure to use low gear for normal driving at low speeds.
  • A differential allows for an outer wheel to rotate faster than the inner wheel during a turn. This has numerous advantages, like equalizing torque, reducing tire wear on turns, causing less damage to surfaces, etc. Locking the differential forces them to turn at the same rate. This can provide an advantage when the traction under each wheel noticeably varies but you don't want to vary individual wheel speed. Situations might include mud, climbing rocks, or in snow.
  • I'll have to check this in person, but it looks like an OEM trailer hitch is available. This is the "bracket" and not a receiver tube, it seems.
  • Maybe check the wheel bearings lube after a lot of use? The manual doesn't say out to do this, however.
  • Since I'll probably not run this excessive distances, default to the 1 year maintenance schedule (or maybe 1.5 years to save some money).
  • Be sure to at least run the engine every 2-4 weeks to keep the battery charged.
  • When washing, be sure to cover the muffler rear opening with a plastic bag and the ignition switch hole with some tape.

There's a lot of maintenance data here that I'll use as a reference when I need to perform certain tasks. The user-level maintenance should be no problem.

3.3.4 CNCL The Design and Implementation of the FreeBSD Operating System (2nd Ed.)

  • State "CNCL" from "TODO" [2018-02-23 Fri 02:02]

The most recent (2014) FreeBSD internals book. Will read this instead of The Complete FreeBSD, which is now rather old.

FreeBSD went full-SJW with a new CoC. They then doubled down on it. I'm sitting out the controversy and will hope for a positive outcome. But, experience shows that once you let the SJWs in, it's hard to dislodge them. I'm canceling all future FreeBSD work until I see a complete reversal. Since that's unlikely to happen, I'll be working on a plan for migrating to a different OS in the future.

3.3.5 CNCL FreeBSD Porter's Handbook

  • State "CNCL" from "TODO" [2018-02-23 Fri 02:04]

The Handbook claims reading this can help when fixing broken ports (an all too common problem on FreeBSD). Maybe I can fix broken ones I need myself.

Won't be contributing to FreeBSD until CoCgate is positively resolved.


  • State "DONE" from "STRT" [2018-02-24 Sat 20:29]
  • State "STRT" from "TODO" [2018-02-24 Sat 12:03]

An ezine, similar to b4b0 in that it incorporates the same mid-2000s EFnet scene.

Not that great. Only has a few articles worth reading.

3.3.7 DONE My Twisted World: The Story of Elliot Rodger

  • State "DONE" from "STRT" [2018-04-29 Sun 10:36]
  • State "STRT" from "TODO" [2018-04-27 Fri 18:42]

An incel manifesto and autobiography, I guess.

Well, I read the whole thing. I used to enjoy reading stuff like this, but I think I'll pass on it from now on. After mentally retooling a bit to be a manager, I emulate mental states more naturally now and reflexively doing so with crazy people hurts my brain.

3.3.8 DONE The Scythe Book

  • State "DONE" from "STRT" [2018-05-17 Thu 09:56]
  • State "STRT" from "TODO" [2018-05-03 Thu 09:59]

A book about scything that came bundled with my scythe.

Pretty poorly written, actually. Full of opinions, rumors, and just bad writing. Most of the book is also useless filler.

3.3.9 DONE Space Empires IV manual

  • State "DONE" from "STRT" [2018-07-08 Sun 07:33]
  • State "STRT" from "TODO" [2018-06-25 Mon 11:22]

The 118 official manual. Will also read the SE4 wiki pages.

Well, I read it.

3.3.10 DONE HTZ

  • State "DONE" from "STRT" [2018-07-10 Tue 22:39]
  • State "STRT" from "TODO" [2018-07-10 Tue 09:42]

A 3-issue zine (or at least, that's all I have) that may capture some of the identity and internal propaganda of the left-leaning "hacktivist" scene from the mid-2000s.

Nobodies with grandeur delusions. Righteous indignation and sanctimonious fury in good measure, and though terminally unhappy people be they, this is pretty mild compared to the modern standards. Perhaps these same mouths are frothier now. Some observations:

  • Everyone that disagrees with me is a right-wing fascist. Skilled hax0rs trade skripts to exploit vendor-announced vulnerabilities in PHP CMSes. I forgot to patch my CMS because I was too busy taking credit for a protest that I attended and fascists compromised my server, which is an attack on free speech. I exploited their CMS, thereby defending freedom, and have been unjustly arrested by the FBI.
  • There are many, many technical inaccuracies here, which is especially telling since the technical content is all entry-level. Even worse, the vast majority of what's little is here is boring PHP code that does nothing interesting.
  • Likewise, there's a lot of inaccurate information about how the government works and was modified after 9/11. Just one example: this claims that "Total Information Awareness" is a new government agency, created under DARPA.
  • These guys sure like to repeat themselves, but I guess propaganda is usually like that.
  • The full laundry list of mid-2000s left talking points is here. Interestingly, nothing has really changed about most, but no one seems to care about the majority of them now. I guess this stuff doesn't age well.

While amusing in a cringe-inducing way for a little, this gets boring quick.

3.3.11 DONE Confidence Remains High

  • State "DONE" from "STRT" [2018-07-13 Fri 17:48]
  • State "STRT" from "TODO" [2018-07-11 Wed 22:58]

A late-90s zine from the often-hated so1o himself.

Big difference between the pasted content and the original stuff here, with the latter being pretty pathetic shell scripts and short C programs mostly full of printf calls. Definitely not as funny as their opposition (though probably of roughly equal skill).

That there exists a world of h4x0rs waiting for programmers to be sloppy and release software with security oversights never fails to amaze me.

3.3.12 DONE ~el8

  • State "DONE" from "STRT" [2018-07-14 Sat 16:16]
  • State "STRT" from "TODO" [2018-07-14 Sat 08:23]

A 3-issue Efnet H/P zine from the late-1990s.

Meh. A few amusing bits and lots of 13375p34k, but mostly boring.

3.3.13 DONE feh

  • State "DONE" from "STRT" [2018-07-14 Sat 23:46]
  • State "STRT" from "TODO" [2018-07-14 Sat 16:18]

A 4-issue Efnet zine from the mid-1990s.

Surprisingly unremarkable.

3.3.14 DONE The Definitive Guide to SQLite

  • State "DONE" from "STRT" [2018-08-14 Tue 01:02]
  • State "STRT" from "TODO" [2018-08-12 Sun 02:41]

SQLite is the standard embedded database. I'll just skim this book a bit to not be completely clueless and/or until I get bored. Judging from the TOC, it looks like this topic doesn't really deserve a full book, as it's at least half ancillary filler.

Very boring, as expected. There's some useful CLI help early on though.

3.3.15 CNCL 2015 Explorer Owner's Manual

  • State "CNCL" from "TODO" [2018-08-16 Thu 00:47]

Read this and the supplementary booklets. Maybe skim some of the parts that are just reference.


  • Always use the tire inflation PSI from the tire label on the vehicle, even if it's less than the value recommended by the tire manufacturer.
  • Check tires for wear bars, which indicate when it should be replaced. Generally, replace them when 2mm of tread depth remains.

Traded in car.

3.3.16 DONE 12 Rules for Life

  • State "DONE" from "STRT" [2018-11-04 Sun 23:08]
  • State "STRT" from "TODO" [2018-10-16 Tue 01:45]

Nominally a self-help book, but I'm interested in it for its perspectives on the meta-reality of perception and myth. This is a potential blind-spot in my knowledge base, and one that I've perhaps been inconvenienced by due to my prior lack of an internal model for non-scientific cognition. In other words, the thoughts of most humans are governed by the things Peterson talks about, and not scientific materialism.

This is a potentially life-changing book. If properly read, this goes far beyond simple self-help, hitting on deep, latent truths that we have intrinsic in our thoughts and neurobiology. This book is dense with complexity and profundity. Even just the crafting of the prose is articulate and precise.

I also have a confession to make: Noticing him as a cultural phenomenon, I wrongly dismissed Peterson as simply delivering a personal brand through needless verbosity. In reality, we're in the presence of a great thinker of the highest caliber with, among other things, a functional message that can transform an immense quality lives or even all of society for the better.

I could see this having immediate positive effects on my life as I read this. As it left me wanting more, I did end up consuming a large amount of Peterson's content in other media until the point at which it started getting redundant. I must also add that, in the right environment, Peterson is possibly the world's greatest orator, capable of speaking in real time in a manner that I didn't think possible by any human.

Being disposed to skepticism, I also read a large amount of the endless criticisms of Peterson. Probably the most coherent is SSC's and its followup, but almost all of them haven't put the time into criticizing the actual content, or worse, being willfully ignorant of it. The honest critiques most commonly (and understandably) makes the error of not learning the language used, which includes redefinitions for many already overloaded terms, in particular ones from religion. That said, he is human, and has made a few definite errors in select statements, though these don't seem substantive and are very rare considering such a large corpus.

I'll give this some time to integrate and reread this in couple years to ensure I've extracted all of the useful insights. I might also read Maps of Meaning. While there's a lot more I could write about this topic, I'll just focus on the things I will personally change, including:

  • Abandon cynicism, except in jest. Perhaps an exception for it could be made in factually hopeless situations, but there is probably going to be something more constructive one can do.
  • Re-examine motivations for human interactions. I've gotten better at not trying to best others in some game of intellectual dominance, but the suggestion of trying to go further and treat others as if they have something of value to offer is probably the next step.
  • Always tell the truth. When the consequences are dire, don't lie. Again, I'm already doing pretty good here, but government/manager work has made me much better at bending truth or being deceptively selective about what I say. I've also spent a lot of work time politically scheming in zero-sum contexts. In fact, I'm quite a natural at it now. This has the potential to create toxic cognitive dissonance with cascading effects and generally only gives short term gain.
  • Slightly refactor how I track progress here. Specifically, I'll drop the long lists of criticisms of things, and just mention overall quality and maybe some tips for avoiding wasting time as a note to myself should I want to revisit it. One exception might be for conceptual content, but disagreement isn't really negative. Instead, I'll focus on extracting whatever value is present, should a work prove less than great.
  • Keep in mind that irrational or factually incorrect solutions can still be "true" in the sense that they work and have a basis in our meta-reality. More so, they have deeply ingrained neural circuitry that has been selected for and bug-tested for fitness over millions of years, or even longer. Some of the details of the complete theory here conflicts to a degree with my more computational model for cognition. There are areas of real life where that model is less optimal than this one. At the very least, it can help prevent blindness to solutions that one can't arrive at using my preferred model.
  • For the above point, as well as traumatic events, uncomfortable aspects of reality I lack agency over, and other such things, work to integrate or ignore them instead of uselessly flailing against them.
  • Remember that pain is inevitable and even necessary, so don't shirk from it. Growth and pain avoidance both result in suffering, but only one delivers what Peterson defines as meaning.
  • For public speaking, keep in mind two important tips:
    • Focus on various individuals in the audience and speak to them conversationally.
    • Know some multiple (like 10x) more than what you present. The talk should then be a path navigated through that knowledge space, pulling in the best and most relevant information around it.
  • Double down on my preferred manner of speaking. Recent intellectual thought on persuasion and negotiation has been headed in the other direction, but Peterson is living proof that articulate, careful, and dense speech can work and is ultimately more rewarding. While speaking to one's audience is still important, default to the highest end possible.
  • Read more hard books, write more at the edge of my ability, and always have a queue of interesting topics to discuss.
  • Re-visit some of my long-term goals and the process of goal-selection. I think I'm close to a good system, but getting things wrong is expensive. The focus of reviewing them will be on two principles:
    • Ensure the next goal in some area is something that extends competence to the next level.
    • Overall goals should be something that, as Peterson might say, justifies the tragedy of being.

3.3.17 CNCL Absolute OpenBSD (2nd Ed.)

  • State "CNCL" from "TODO" [2018-12-16 Sun 22:35]

My current thinking is to replace FreeBSD with OpenBSD on the server and workstation. If my laptop's wireless isn't supported, I'll maybe try NixOS there. I'll read this book to get some context first, then read the OpenBSD FAQ in its entirety. As this book is from 2013, I'll not commit any finer details to memory.

Read some, but canceling for now. I'll reluctantly stick with FreeBSD for the time being since it supports the dev stacks I need. However, I'm going to reduce the effort I invest into system internals and not participate in the online community. I do think OpenBSD is a better OS overall, and will check back in later to see if it fulfills my needs at that time.

3.4 Fiction

3.4.1 DONE After Life

  • State "DONE" from "STRT" [2018-01-05 Fri 02:26]
  • State "STRT" from "TODO" [2017-12-28 Thu 01:43]

A recommended AI-focused hard scifi novel. Using the EPUB version, but it's also available online here.

Turning this into a good story would mean changing almost everything. No good ideas, cringe-worthy pop culture references, needless sleeze, and ultimately pointless in the end.

3.4.2 DONE Vortex

  • State "DONE" from "STRT" [2018-01-19 Fri 04:40]
  • State "STRT" from "TODO" [2018-01-07 Sun 03:56]

The final novel in the Spin series. I'm a bit wary, since I found Axis so unnecessary (at least in the form it took).

One note-worthy quote, regarding tragedy of the commons situations: "They hadn’t given much thought to long-term consequences, but how could they? They had no reliable mechanism by which they could think or act collectively. Blaming those people for the death of the ecosphere made as much sense as blaming water molecules for a tsunami."

Pretty lame, unfortunately. No good ideas, no compelling plot, uninteresting characters, and pointless ending. Finishing this turned into a real chore.

3.4.3 DONE Pillars of Eternity short stories

  • State "DONE" from "STRT" [2018-02-23 Fri 00:08]
  • State "STRT" from "TODO" [2018-02-16 Fri 03:54]

A series of 5 official e-books, produced by Obsidian. The first four are publicly available on the site and I got the 5th from purchasing the game. Will give it a try, but will quit if they're not that great.

  • The Ratcatcher: Meh.
  • Blood Register: Meh.
  • The Reaping: Kinda crap.
  • Until He Started Screaming: Read a bit and quit.
  • The House of Wael: Read a bit and quit.

One of my complaints about PoE was the writing quality. It's an unusual case, being competently composed and much labored over, yet lacking anything that would make one want to read it. It reads like a team of millennials with zero life experience showed up to work every day and worked on it, which is probably the case. This is as true for these e-books as in the game.

3.4.4 DONE The Lost Stars series

  • State "DONE" from "STRT" [2018-03-26 Mon 23:15]
  • State "STRT" from "TODO" [2018-02-26 Mon 18:50]

A military scifi novel series that follows Beyond the Frontier. This one focuses on the Midway system featured in previous entries. After this is a prequel series called The Genesis Fleet (being written) and a continuation trilogy called The First Stars (not yet started), should I want to keep going.

  • Tarnished Knight: Only okay. Hopefully is just setup for a more interesting series. As is, I'm not sure this was the most compelling setting.
  • Perilous Shield: More of the same.
  • Imperfect Sword: Contains a book-specific narrative about a neighboring system, which in most ways is better than the previous entries.
  • Shattered Spear: Mostly decent, but the series ending exposes severe Deus ex machina.

Not a bad series, but only as a spin-off from the previous saga. Would have a hard time standing alone. Has a few annoying typos, errors, and oversights.

3.4.5 DONE Blindsight (reread)

  • State "DONE" from "STRT" [2018-04-03 Tue 18:37]
  • State "STRT" from "TODO" [2018-03-28 Wed 23:29]

Reread this in preparation for reading Echopraxia.

Great novel and worth a reread. Lots of original ideas and a worthwhile central one, suitably explored. This is a good example of the opposite of the kind of user-friendly writing that Asimov exemplified. Writing here is dense, technical, and skips huge chunks it expects the reader to fill in. It makes for a rewarding activity for the non-passive reader.

3.4.6 DONE Echopraxia

  • State "DONE" from "STRT" [2018-05-17 Thu 06:26]
  • State "STRT" from "TODO" [2018-04-03 Tue 18:37]

A novel in the same universe as Blindsight, which I rather liked.

Has a couple of good ideas, but the implementation doesn't come together on this one. Ended up being something of a chore to read.

3.4.7 DONE Takeshi Kovacs series

  • State "DONE" from "STRT" [2018-06-24 Sun 08:09]
  • State "STRT" from "TODO" [2018-05-19 Sat 10:49]

A semi-scifi series by Richard Morgan. Might be crap, but will give it a look.

  • Altered Carbon: Tightly interconnected plot with decent writing. Has some skippable sleeze. Fails as a mystery novel by my measure though, as the reader is left unable to speculate due to insufficient clues.
  • Broken Angels: More of the same, yet less well thought-out of a plot and with extremely dull pacing/advancement.
  • Woken Furies: Skipping.

3.4.8 DONE Liber AL vel Legis

  • State "DONE" from "STRT" [2018-06-25 Mon 08:24]
  • State "STRT" from "TODO" [2018-06-24 Sun 23:35]

Probably the foundational text of Thelema. Might just be filled with nonsense.

Nonsense gibberish, and not the entertaining kind.

3.4.9 DONE Camouflage

  • State "DONE" from "STRT" [2018-06-30 Sat 17:32]
  • State "STRT" from "TODO" [2018-06-25 Mon 23:26]

A Joe Haldeman novel about a personality dichotomy between super-intelligent beings and a BDO, perhaps.

Readable, but more of a adventure story than anything. Most compelling when in BDO-mode, which is only a tiny fraction of the content. The story's antagonist was particularly one-dimensional, with the only revelation being completely predictable.

3.4.10 DONE Mindbridge

  • State "DONE" from "STRT" [2018-07-03 Tue 10:53]
  • State "STRT" from "TODO" [2018-06-30 Sat 23:12]

A novel by Joe Haldeman involving the Cygnus Loop among other things.

Actually rather bad. Jumps all over the place in time, intersperses random things like articles, has plot-irrelevant sleeze, and shifts perspective, all to no benefit to the story. I did briefly think the story might redeem itself during a later narrative shift, but was again disappointed.

3.4.11 DONE Grainne War/Aftermath series

  • State "DONE" from "STRT" [2018-07-06 Fri 23:34]
  • State "STRT" from "TODO" [2018-07-03 Tue 22:12]

Also called the Freehold series. Looks like another military scifi series. Will definitely at least require skimming over the smut, which the books contain at least some of. Might still otherwise be too low-brow. Will bail if necessary. Listings vary on order, so I just ordered them by publish date.

There's a follow-up series to this, called Ripple Creek, not yet scheduled here.

  • Freehold: At 150 pages in, I must have endured at least a dozen sex scenes. Has some poor editing with misspellings and grammar errors. Where this story is going is pretty predictable and I doubt I'll get enough out of it to justify the time to read the whole series. Cutting my losses now. This setting is mildly intriguing though, and I could imagine it getting a better treatment with an author more up to the task.
  • The Weapon:
  • Contact With Chaos:
  • Rogue:
  • Angeleyes:

3.4.12 DONE Starquake

  • State "DONE" from "STRT" [2018-07-13 Fri 18:36]
  • State "STRT" from "TODO" [2018-07-10 Tue 08:56]

The sequel to Dragon's Egg.

Rather forgettable and full of filler. Adds little of note to the creative lore of the original. A bunch of contrived stuff happens, with predictable results. A better concept for a sequel would've been humans questing for the hidden information the first novel ended with.

3.4.13 DONE In Death Ground

  • State "DONE" from "STRT" [2018-07-19 Thu 14:24]
  • State "STRT" from "TODO" [2018-07-15 Sun 00:47]

Another military scifi novel. One in a series, called Starfire, but I'll give just this one a try before committing, since this is the author who wrote Out of the Dark. Remainder of the series is listed here:

My favorite combination: hard scifi, military scifi, and naval strategy/combat. Good in some ways, lacking in others. Writing is occasionally quite good, but these islands of goodness are amid a sea of mediocre writing. Leaves out irrelevant personal details, making the conflict the main focus. The warring civilizations themselves are the main characters. Some of the scifi elements are straight from the mid-90s, with the most regrettable being the unimaginative ETI races. Will continue with the series, at least reading the sequel.

3.4.14 DONE The Shiva Option

  • State "DONE" from "STRT" [2018-07-25 Wed 20:45]
  • State "STRT" from "TODO" [2018-07-19 Thu 14:24]

Sequel to In Death Ground, concluding its story. In the same series are a prequel and a few other books, only loosely connected to this one and its predecessor.

Very much more of the same. The course of the conflict described here, while somewhat realistic within the confines of the Starfire lore, is ultimately rather unsatisfying. Even real life conflicts have more interesting developments at the strategic level than this one does. Still worth a read, but a little more story planning would've gone a long way.

3.4.15 DONE The Last Ship

  • State "DONE" from "STRT" [2018-08-12 Sun 02:31]
  • State "STRT" from "TODO" [2018-07-25 Wed 20:45]

A cold war naval novel. Supposedly okay, but has some lengths of content where skimming or skipping ahead is highly advised. Will give it a try.

Here be an author that is unarguably capable of high quality writing. Maybe he needs someone to point him in a meaningful direction, because this is mostly wasted on banal musings about two things: mundane, everyday things that no one really needs another dose of dinner table philosophy on; and detailed, specific reflections obviously gleaned from a life as a naval officer, but of no interest even to me, someone interested in naval warfare. The latter may be due to the author's rather uninteresting naval career as a public relations officer. Normally, I would value a novel so dense with reflective tangents, as the happenings of a fictional tale are really of marginal practical value. But, after slogging through hundreds of pages of it, I started skimming past it unless it immediately looked interesting.

That leaves the plot itself, which is actually rather thin. Not only would it have worked better without the jumping in time, it would make more sense in-universe too, since this is supposed to be the reflections of the main character as events unfold. Generally, I've found post-apocalyptic fiction to all meld into a dull sameness, with very little room for real innovation. That's true here too and it'd have to be. If he had been notably creative in the genre back in the 1980s, those innovations would have been solidified as tropes by now. As it is, reading about meeting basic needs like food and shelter is just not interesting enough for 100s of pages. The novel is at its best when it's a US Navy warship, in action. Sadly, those times are very rare.

3.4.16 DONE The Long Earth series

  • State "DONE" from "STRT" [2018-09-23 Sun 05:46]
  • State "STRT" from "TODO" [2018-09-16 Sun 01:34]

A 5 part novel series about infinite Earths, in this case connected and used as a device to explore lack of resource limits. On its surface, parallel worlds is a tired concept for me, and I'd rather see infinite resources explored via other means (like asteroid mining). I might still give it a try though.

  • The Long Earth: Not actively bad, but also not good either. Seems a bit devoid of interesting ideas, generic characters, and a generic plot.
  • The Long War: Read a little, but this one is actively bad. Skipping the rest of this series.
  • The Long Mars:
  • The Long Utopia:
  • The Long Cosmos:

3.4.17 DONE Borne

  • State "DONE" from "STRT" [2018-10-02 Tue 02:19]
  • State "STRT" from "TODO" [2018-09-30 Sun 10:10]

A new VanderMeer novel. There's also an in-universe follow-on to this called The Strange Bird.

This one just doesn't come together as a believable and immersive world. Was about to quit about 1/4 in, but seemed promising for a little while. Then it got boring and predictable again. Fails to deliver in the end. Will skip the next entry.

When a fictional world vastly diverges from reality, effective world-building is super critical. This one reads like a fantasy novel, and maybe is okay for people for whom that genre appeals to.

3.4.18 DONE The First Formic War trilogy

  • State "DONE" from "STRT" [2018-10-12 Fri 02:05]
  • State "STRT" from "TODO" [2018-10-06 Sat 09:46]

Technically just part of the series of Ender's Game novels, following the 10 entry core series. However, I wasn't planning on reading those and will just risk trying this prequel series as a standalone experience. Will cancel if that isn't working out too great. I'll put this off for a bit in case I change my mind about reading the full series. before starting.

  • Earth Unaware: Has the essentials of a good story, only marred by some plot-irrelevant filler. A few plot holes exist, and most of the characters are rather uninteresting.
  • Earth Afire: Mostly useless filler. More inconsistencies and a few factual errors. Has a little kid semi-Mary Sue.
  • Earth Awakens: Wraps everything up in a bit too unbelievable of a way. Has same issues as other entries, though not too bad.

Probably could've been condensed into one novel by leaving out all the filler. This stuff is pretty easy to skim past though, so excluding it leaves a readable story.

3.4.19 DONE Intelligent Design: Message from the Designers

  • State "DONE" from "STRT" [2018-11-09 Fri 09:24]
  • State "STRT" from "TODO" [2018-11-08 Thu 22:10]

The founding book of Raëlism. Since this is 414 pages, I'll just read the creation myth. This is in a book contained within this one, called Le Livre qui dit la vérité.

This is actually a pretty creative interpretation of selected parts of the Bible. However, it fails on a lot of the details, venturing into areas which would have probably better been skipped or provided alternative explanations. Some examples include Samson's hair being an antenna from which he could communicate with aliens, plant and animal life being created 22000 years ago, and the alien homeworld being less than a light year away.

3.4.20 DONE The Road Not Taken

  • State "DONE" from "STRT" [2018-11-09 Fri 22:41]
  • State "STRT" from "TODO" [2018-11-09 Fri 21:50]

A short alien invasion story by Harry Turtledove, whose bibliography I went through and only found this story potentially interesting.

A mildly amusing examination of how areas of technological development could potentially be ignored if certain other areas are focused on. Maybe humans are doing this by optimizing for delivering ads online at the expense of progress elsewhere.

3.4.21 DONE The Visitors

  • State "DONE" from "STRT" [2018-11-10 Sat 14:32]
  • State "STRT" from "TODO" [2018-11-10 Sat 00:49]

A Simak novel about an alien invasion, possibly by enigmatic BDOs.

Could be entertaining for some, but generally lacking by my measure. Strangely, this turns into a commentary on America's love for cars.

3.4.22 DONE Starfish

  • State "DONE" from "STRT" [2018-11-16 Fri 23:02]
  • State "STRT" from "TODO" [2018-11-10 Sat 23:10]

The most recommended Peter Watts novel. Available free online at:

White not as good as Blindsight, this still has all of the fine trademarks of it, including the pessimistic view of communication, critical analysis of consciousness, and technically dense prose.

One interesting point: Sigmoid functions are a special form of the logistic function, where the range is monotonically increasing. These are proposed as a model for "self-replicating information string" evolution in error rate vs time. Differences in these result in competition/parasitism.

3.4.23 DONE Heechee saga

  • State "DONE" from "STRT" [2018-11-23 Fri 21:24]
  • State "STRT" from "TODO" [2018-11-17 Sat 06:22]

A 6-book scifi series. Supposedly good. Will try the first at least. "The Gateway Trip" is a collection of short stories.

  • Gateway: Pretty good and a compelling world, though slightly dated. Includes a short story prequel at the end of this novel, which is also worth reading. I appreciate the enigmatic nature of the ETIs here, though I'll be surprised if that holds throughout the rest of the series. While this has good scifi, the majority of the book is dedicated to the psychology of the main character. Normally, I'd hate that, but it is somewhat well done here.
  • Beyond the Blue Event Horizon: Quite bad. One of those examples of exposition ruining a story. Also lacks the atmosphere of the original. Has lots of filler I skimmed over.
  • Heechee Rendezvous: Read a little. Decided to quit since this series just keeps going downhill.
  • The Annals of the Heechee:
  • The Gateway Trip: Tales and Vignettes of the Heechee:
  • The Boy Who Would Live Forever: A Novel of Gateway:

3.4.24 DONE John Matherson series

  • State "DONE" from "STRT" [2018-12-12 Wed 00:29]
  • State "STRT" from "TODO" [2018-11-23 Fri 21:27]

The sequel novels to One Second After, which I read in 2014. Probably will have to skim some filler.

  • One Year After: Pretty bad. Skimmed most of this.
  • The Final Day: Equally bad, if not worse.

A good example of the results of writing a main character too much like the author.

3.4.25 DONE Starship Troopers (reread)

  • State "DONE" from "STRT" [2018-12-22 Sat 06:05]
  • State "STRT" from "TODO" [2018-12-13 Thu 20:12]

Read this about 20 years ago, but glossed over much of the content. Will give it another try. I've been meaning to queue up a few more of Heinlein's other novels too.

Still good, but not as compelling as I remember.

3.5 Technology/software

3.5.1 CNCL MongoDB

  • State "CNCL" from "TODO" [2018-02-23 Fri 02:05]

I'm definitely at least suitably competent with MongoDB, though I could probably benefit from a slight increase. There's little point in going too deep though, since I mainly only interrogate data on it through a CIDER REPL.


  • [X] Install MongoDB on workstation and server. I was doing a source install of this, but my current FreeBSD version is far enough ahead for the aggregation pipeline features.
  • [ ] Master all features provided by monger. Read guides and code API. Write some code with it.
  • [ ] Briefly scan the online manual.
  • [ ] Maybe skim the book MongoDB in Action (2nd Ed.).

Learned enough of this by osmosis to get work done. I'm less interested in this for my own work. I'll replace this with a Riak task instead.

3.5.2 CNCL update CUPS setup on FreeBSD

  • State "CNCL" from "TODO" [2018-02-24 Sat 01:28]

print/cups-client is no more. Figure out how to get printing working again.

Canceled. Might try to do the same on OpenBSD, once I get the basics working the way I want.

3.5.3 DONE Iridium

  • State "DONE" from "STRT" [2018-02-23 Fri 21:55]
  • State "STRT" from "TODO" [2018-02-23 Fri 21:23]

Replace my full-featured web client installs (which I occasionally need for web development) on both Windows and my dev VM with Iridium. This is a privacy-focused client. It's Webkit-based, but with all Google-specific functionality removed.

Only did this on Windows and tested on an OpenBSD VM.

  • Added uBlock Origin. Be sure to go into settings and disable extra stuff.
  • Added ZenburningChrome UI theme.
  • Added Dark Mode. This is similar to darken-page, but is modal for all pages after activation.
  • Changed default search engine to DuckDuckGo.
  • OpenBSD version does pull in a lot of dependencies. However, if I switch my dev VM to OpenBSD, I might put it there for web development. I certainly won't put it on my workstation.

About as good as a modern, mouse-centric web client can be expected to be.

3.5.4 DONE qutebrowser

  • State "DONE" from "STRT" [2018-02-23 Fri 22:21]
  • State "STRT" from "TODO" [2018-02-23 Fri 20:15]

OpenBSD doesn't support Conkeror currently. Looking at this as a possible replacement. Looks decent at a glance, but is Qt-based. Not crazy about it being implemented in Python either.


  • After starting it up the first time, run :adblock-update.

This is actually a nice web client so far. While I would prefer Emacs keybindings, the vi ones are definitely more efficient for a web navigation, though I'm not sure the modes add much. It might be worth the overhead. Will try it out in a VM for awhile before deciding.

3.5.5 DONE youtube-viewer

  • State "DONE" from "STRT" [2018-04-28 Sat 11:04]
  • State "STRT" from "TODO" [2018-04-27 Fri 08:12]

On the rare occasion I need to watch a video about something, it'd be nice to not to have to use YouTube's garbage web interface. This is in pure Perl, so it should run anywhere. Only using the CLI version here, but a GTK2 UI exists.


sudo cpan Module::Build
perl Build.PL
sudo ./Build installdeps
sudo ./Build install

Works okay, kinda. One downside is I don't see a way to install this non-globally. Detects players, so plays stuff in mplayer for me. Thus, mplayer commands work when watching videos. Another big one is that since this streams the video, mplayer will exit if you try to navigate around the video past the buffer. It will also exit if you pause the video for a long time then come back later.


  • The help menu is contextual and displays more options when results are active.
  • In the config file, ~/.config/youtube-viewer/youtube-viewer.conf, I might want to update the hashbang.
  • In the config file, I can change videoDefinition to "standard" for slow computers.

I'll keep this around on my laptop for the rare lecture or such, but will try to stick to my general life goal of not watching any video at all.

3.5.6 DONE pre-upgrade Emacs yak-shaving

  • State "DONE" from "STRT" [2018-07-02 Mon 10:13]
  • State "STRT" from "TODO" [2018-07-02 Mon 09:16]

I was going to put this off until upgrading the Emacs version, but work needs align with doing a pass on this now. I'll do another one and fix any broken stuff in isolation after upgrading my workstation.

Stuff did:

  • Upgraded all ELPA packages.
  • Since CIDER was upgraded, upgrading cider-nrepl and other dependencies in profiles.clj.
  • Updated pabbrev.el.
  • Updated volatile-highlights.el.
  • Updated rainbow-delimiters.el.
  • Updated geiser.
  • Updated python-mode.el.
  • Updated web-mode.
  • Updated rainbow-mode.
  • Updated js2-mode.
  • Updated markdown-mode.
  • Updated aggressive-indent-mode.
  • Updated elscreen.
  • Updated multi-term.el.
  • Updated lusty-explorer.
  • Updated EMMS.
  • Updated with-editor.
  • Updated Magit.
  • Updated org-present.el.
  • Updated xterm-color.
  • Updated wttrin.el.
  • Updated htmlize.el.
  • Updated powerline.el.
  • Deleted beacon from .emacs.d/lisp.
  • Byte-compiled the top level standalone elisp files.

Skipped updating SLIME since I'm considering deprecating it. Will decide when I upgrade my workstation, since I'll maybe skip the CL stack then.

3.5.7 DONE SQLite

  • State "DONE" from "STRT" [2018-08-14 Tue 01:11]
  • State "STRT" from "TODO" [2018-08-12 Sun 11:26]

There be many applications for embedded databases. My main interest is for game data and mocking client/server DBMSes. This looks simple enough that I could probably get by with a 10-minute tutorial, but I'll invest some effort to make sure I don't miss anything important. Will try to integrate it into my webapp-template project.


  • A good standard routine is to run .headers on and .mode column to optimize data returned for display. Use .show to look at all settings.
  • Use .schema to describe tables.
  • To export a DB, run .output file.sql and .dump. Return output back to stdout with .output stdout.
  • Looks like CSV export only works on a per-query basis. Either change settings manually of if I want to enclose fields in quotes, use .mode csv.
  • Import dump files with .read file.sql. .import can read CSV, but ensure the separator character and header setting is correct.
  • Invoking commands from the CLI: sqlite3 test.db .dump > test.sql. The CLI can also read from stdin.

Learned this good enough. Created a database for my webapp-template project. Noticed once again that the displeasure of using a DBMS is proportional to how heavy-weight it is. Another option is the H2 database, which is rather popular in the Java world. I'll stick with SQLite for now, but might consider H2 if I've got a JVM project in mind.

3.5.8 DONE disable Steam friends list

  • State "DONE" from "STRT" [2018-08-21 Tue 11:15]
  • State "STRT" from "TODO" [2018-08-21 Tue 11:12]

Steam changed to popup a chat UI upon startup. See if there's a way to disable this and note it for future gaming rig setups.

Change the shortcut on the desktop to include: -nochatui -nofriendsui

I really regret having bought a dozen or so games on Steam. It really sucks having them locked into their platform. I'll forgo buying from Steam in the future, even if there's a huge sale.

3.5.9 DONE fix port forwarding

  • State "DONE" from "STRT" [2018-09-02 Sun 10:53]
  • State "STRT" from "TODO" [2018-09-02 Sun 10:50]

Currently I can't ssh into the home network from outside. Same for pulling up internal websites. Probably need to set forwarding rules on the DSL modem, which is also a router. From there, it should point to my primary router. At the current time, the DSL connection is out, so I'm queuing this for later.


  • My normal AP has the IP of Confirm this under the My Connected Home tab.
  • Port Forwarding is under the Firewall settings.

Just did SSH for now. Tested and works.

3.5.10 DONE LaTeX Beamer

  • State "DONE" from "STRT" [2018-09-13 Thu 20:04]
  • State "STRT" from "TODO" [2018-09-13 Thu 11:51]

A document class for creating slides for presentations. If you want to include embedded rendered math markup in a presentation, you can either use this or images snipped from a normal LaTeX document.

Works great and is easier than I thought it'd be. Remember to double-compile the presentation, or the page numbers might be incorrect. There are various online resources for previewing themes and colorthemes. Use a grid one to pick the combination I want for any given presentation.

3.5.11 DONE upgrade to CIDER 0.18.0

  • State "DONE" from "STRT" [2018-09-17 Mon 10:35]
  • State "STRT" from "TODO" [2018-09-17 Mon 10:20]

This version is now out but not on ELPA. This is a reminder to check back in a few days. Also upgrade cider-nrepl, of course.


  • C-c M-x (M-x cider) replaces C-c M-j (M-x cider-jack-in).
  • M-x cider now has a bunch of startup modes. cider-jack-in-clj is the same as the old cider-jack-in.

3.5.12 DONE Brave

  • State "DONE" from "STRT" [2018-09-20 Thu 22:56]
  • State "STRT" from "TODO" [2018-09-17 Mon 13:17]

A privacy-centric, open source browser. Has an ad-blocker already built in. Consider replacing Iridium with this on both Windows and the Linux VM.

This has a few strange UI quirks, but nothing deal-breaking. Has a decent set of privacy settings that can be enabled.

3.5.13 DONE update Linux VM

  • State "DONE" from "STRT" [2018-09-20 Thu 22:58]
  • State "STRT" from "TODO" [2018-09-20 Thu 12:19]

Redo this in Linux Mint for now, but I'll circle back around to this and do it in a different distro later.

OS setup, configured, and brought up to date. Emacs and Clojure development enabled.

3.5.14 DONE switch Linux VM to Debian 9.5.0

  • State "DONE" from "STRT" [2018-09-23 Sun 23:39]
  • State "STRT" from "TODO" [2018-09-23 Sun 17:52]

I was going to use Mint for l1j-en development, but the Eclipse package is broken. Will try Debian (Stretch) and see if that fixes things. If so, I'll delete the Mint VM.

Setup notes:

  • Update /etc/sudoers.
  • Edit /etc/apt/sources.list and comment out the CD-ROM line.
  • Turn off screensaver and lock.
  • Edit keyboard layout options and set "Hyper is mapped to Win keys".
  • Install VMWare Tools, or probably just open-vm-tools package. Note that instead of ifconfig, specify /bin/ip during install.
  • Setup shared folders.
  • Install emacs, auctex, w3m, eclipse, zsh, rxvt-unicode, curl, apt-transport-https, git, mysql-server.
  • Install Leiningen.
  • Follow instructions on Brave's GitHub account to install it via apt.
  • Generate SSH key pair and upload public key to GitHub, Bitbucket, and
  • chsh to zsh.
  • Edit /etc/hosts.
  • scp over .zshrc, .emacs, .emacs.d, .Xdefaults.

Well, I got this up and running, but when I get some free time, I'll still try redoing this in Arch or something better. The no-dynamic resizing of the desktop kinda sucks.

3.5.15 DONE setup Arch Linux on laptop

  • State "DONE" from "STRT" [2018-12-11 Tue 19:58]
  • State "STRT" from "TODO" [2018-12-09 Sun 20:56]

Give this a try and update my file.

Installed this on my spare laptop, and it works. Would have to dedicate many more days of research to get it perfect though. I might keep this as a VM option for later, or give Source Mage a try for comparison.

3.5.16 CNCL update to FreeBSD 11.2

  • State "CNCL" from "STRT" [2018-12-11 Tue 19:59]
  • State "STRT" from "TODO" [2018-11-26 Mon 10:31]

I still want to switch to OpenBSD, but I still need to be productive in the meantime. 12.0 is coming out around 2018-11, so maybe hold off on it if I don't get around to it soon.

Looks like stack doesn't have a binary for this version of FreeBSD, so I'll have to go with the ports-installed version.

www/libxul is currently broken in FreeBSD, so suspending this to attempt the OpenBSD leap now.

2018-12-11: FreeBSD 12.0 was just released, so I'll switch to trying that instead.

3.5.17 DONE try out MX Linux 17.1

  • State "DONE" from "STRT" [2018-12-11 Tue 23:17]
  • State "STRT" from "TODO" [2018-12-11 Tue 20:59]

A distro based on Debian stable. Maybe replace my Debian VM with this.

Note: Use open-vm-tools-desktop instead of VMware-tools.

Works fine, and XFCE is okay, I guess. I'll perhaps use this next time instead of Debian whenever I remake my office docs and games Linux VM.

3.5.18 DONE setup FreeBSD 12.0 VM

  • State "DONE" from "STRT" [2018-12-15 Sat 04:55]
  • State "STRT" from "TODO" [2018-12-12 Wed 20:46]

Install 12.0 on a VM and get Xorg, xmonad, Conkeror, Emacs, AUCTeX, and stack working. If all that is functional, I'll proceed with a laptop setup.

Did most of it and it works so far. Moving forward with laptop install a little early to save some time, hopefully. Also updated and will copy over the distfiles to save download time.

3.5.19 CNCL doas

  • State "CNCL" from "TODO" [2018-12-15 Sat 05:05]

Consider replacing sudo with this.

Canceling, due to stack expecting sudo. I could still install doas and use that, but I don't want to have to configure two commands just for that. I might still switch to it if I setup an OpenBSD box without stack.

3.5.20 DONE ZFS

  • State "DONE" from "STRT" [2018-12-16 Sun 22:33]
  • State "STRT" from "TODO" [2018-12-16 Sun 14:36]

Determine if I should use ZFS on my workstation. Just read up on it and see if there's any downsides versus UFS.

I suppose the main ZFS benefit for me is snapshots, but I'm not sure I'll make much use of those. It could save some time experimenting in a VM, however, but most of that for me is testing to get a complete base system working when a new version comes out. I guess I'll skip it for now, since it adds some overhead without much payoff. If I ever setup work servers, personal business servers, or large fileservers, I might want to revisit it.

3.5.21 DONE try out OpenBSD 6.4

  • State "DONE" from "STRT" [2018-12-16 Sun 22:34]
  • State "STRT" from "TODO" [2018-12-09 Sun 01:02]

Install this on my spare laptop and see how far I get on having a complete development setup. Doing a VM install first. Will update

In 2014, a lot of the apps I need for doing work were deprecated from ports. This includes Conkeror and AUCTeX. I could still go ahead with it and do such things in a VM, but I'll give FreeBSD 12.0 a try when it comes out. I'm still somewhat inclined to run OpenBSD on the laptop and maybe just use FreeBSD on my main workstation. For now, I setup a functional OpenBSD VM for occasional use.

3.5.22 CNCL update to xmonad 0.13

  • State "CNCL" from "TODO" [2018-12-16 Sun 22:35]

I think I'm already using this on my laptop. See release notes:

Also check out:

Keep an eye out for this version being pushed to the repo. Do a stack update and check ~/.stack/indices/Hackage/packages/xmonad to see what version is current.

Already updated to 0.15 with OS upgrade.

3.5.23 DONE setup FreeBSD 12.0 on laptop

  • State "DONE" from "STRT" [2018-12-20 Thu 18:36]
  • State "STRT" from "TODO" [2018-12-15 Sat 04:57]

Get everything I use working here.

Unfortunately, Conkeror seems hopelessly broken on FreeBSD at the moment. Everything else works though, so I'll just put up with it on the occasion that I need a full-featured web experience.

3.6 Work-related

3.6.1 DONE presentation on types

  • State "DONE" from "STRT" [2018-11-14 Wed 20:35]
  • State "STRT" from "TODO" [2018-11-10 Sat 13:35]

The idea behind this talk is to bridge the gap between modern typed FPLs and Clojure. The subtopics include:

  • Basics of what it means to be dynamically typed.
  • Other type concepts at work in Clojure, like extrinsic typing.
  • How do deal with types in Clojure code.
  • core.typed and the concept of optional typing.
  • How constraint-based programming like spec can be used to satisfy some of the problems associated with lacking types.
  • Some basic type theory.


  • Check out core.typed, and write up a quick example.
  • Read Types and Programming Languages.
  • Create presentation in LaTeX Beamer.

Cut some content due to splitting my time with someone else. Still ended up talking for 2 hours though, so it's probably a good thing I didn't write up a core.typed example.

3.7 Games

3.7.1 DONE The Wizard Sniffer

  • State "DONE" from "STRT" [2018-01-19 Fri 20:03]
  • State "STRT" from "TODO" [2017-11-29 Wed 17:00]

Winner of IFComp 2017.

Original and pretty entertaining. The game's only true puzzle might be a bit much for non-programmers though. There's a couple mechanics that are a bit weird, like switching followers. Worth playing, I'd say.

3.7.2 DONE Cabela's Big Game Hunter

  • State "DONE" from "STRT" [2018-01-20 Sat 13:30]
  • State "STRT" from "TODO" [2018-01-20 Sat 11:23]

Since I have the PS2 emulator working, I'll try one of these hunting games for it.

I guess these games are all pretty much garbage. Avoiding them forever.

3.7.3 CNCL Phantasy Star Generation 1

  • State "CNCL" from "TODO" [2018-02-03 Sat 04:29]

The English translation of the "enhanced remake" for the PS2 of the original Phantasy Star (which was on the SMS). Will need a PS2 emulator to play this.


  • Installed PCSX2 1.4.0. Only did the controller setup, left everything else default.
  • Creates a user folder, under which is a directory for the PS2 BIOS ROM.
  • Use F4 to set game speed to unlimited. This is useful for skipping boring stuff and speeding up repetitive tasks like XP farming.
  • Hold X to walk faster.
  • Use the automatic battle option to save button pressing.
  • Walkthrough:

This works pretty good, but I'm skipping it since it has annoying first person dungeons. Will play PSG2 instead.

3.7.4 DONE Phantasy Star Generation 2

  • State "DONE" from "STRT" [2018-02-06 Tue 02:54]
  • State "STRT" from "TODO" [2018-02-01 Thu 01:21]

The beta version of the English port of the PS2 version of Phantasy Star 2.


  • At least read the gameplay and background info here:
  • I couldn't get the Enhancer item generation chain to work correctly, despite trying two different ways. Since it requires days to redo this, I just used Cheat Engine to stick in the Golden Stone. I searched for a Trifluid (value 4128911) and replaced it with the stone (value 4128937). Then I completed the turn-in normally. This seems to break the save though, so only do it after saving at the first town on the other planet.

A very generic JRPG experience. The new content really isn't much help either. Things that would be improvements, like expanding the view area, aren't done. I can't remember how many of the many annoyances were present in PS1, but this definitely has a lot of them. Overall, not worth the time. Since I'm skipping PSG1, uninstalled PCSX2.

3.7.5 DONE Dragon Quest I & II

  • State "DONE" from "STRT" [2018-02-08 Thu 03:48]
  • State "STRT" from "TODO" [2018-02-06 Tue 23:22]

Grabbed the English translation of this Super Famicom remake of the first two Dragon Warrior games (originally for the NES). Supposedly it fixes some of the annoyances.


  • In Snes9X, turn off sound sync to fix audio clipping.
  • In DQ2, the ship treasure location highlighting doesn't work. The method I used was to go 2 half-tiles west of the peninsula north of Lianport and keep searching every half tile while heading north.
  • There's a lot of bugs in these ports. Use save states constantly. Sometimes the game will get corrupted runtime memory and need to be restarted and loaded from a save.
  • Disable Snes9X's frame skipping to speed up farming. Doing it at warp speed still takes many hours, however.

Finished both games. Attempted to auto-kill everything in the game by holding down the A button, and was able to do so with only a few exceptions for bosses.

These are definitely bad games, very poorly designed and uninspired. On the surface, one would think that DQ2 is the better game, but it's actually worse for various reasons. Trying to figure everything out in DQ2 without a walkthrough would be an exercise in frustration.

3.7.6 DONE Carmaggedon TDR 2000

  • State "DONE" from "STRT" [2018-02-09 Fri 16:10]
  • State "STRT" from "TODO" [2018-02-09 Fri 15:51]

Got a free copy on GOG, so might as well try it out.

Unplayable. Induces massive nausea. Had to quit after 10 minutes before I puked.

3.7.7 DONE Old School Runescape

  • State "DONE" from "STRT" [2018-02-10 Sat 12:21]
  • State "STRT" from "TODO" [2018-02-09 Fri 22:12]

One of the official Runescape versions. This one is supposedly from around 2007.

Well, I played it some. Then I got bored. I also got depressed since the game is full of bots.

3.7.8 DONE Dragon Quest III

  • State "DONE" from "STRT" [2018-02-21 Wed 22:16]
  • State "STRT" from "TODO" [2018-02-16 Fri 20:12]

The unofficial English translation of the SNES port of the original NES game. I seem to recall this one being the better of the series. Will try my normal method of power-leveling and using auto-attack.

The best of the series, by far. Still pretty simple and full of mindless content. Played about 90% of this with frame skipping off, saving many days of work. The next would've been the DQ4 remake on PS1, but I think no translation exists nor would I want to continue anyway.

3.7.9 DONE Ford Simulator 5

  • State "DONE" from "STRT" [2018-03-10 Sat 23:50]
  • State "STRT" from "TODO" [2018-03-10 Sat 23:20]

The last (I think) in a series of promotional "games" made by Ford to showcase their lineup.

Probably better to just watch a video of this than actually play it. Even better would be to do neither.

3.7.10 CNCL GTA: San Andreas: First Response

  • State "CNCL" from "STRT" [2018-03-12 Mon 02:04]
  • State "STRT" from "TODO" [2018-03-10 Sat 23:07]

A mod police mod for this game. There's also a unmarked CVPI mod too.

Installing this breaks my install for some reason. Instead, I installed a few Crown Victoria cars and drove around a bit until I quickly got annoyed by the game's driving mechanics. GTA V has a decent enough of driving mechanics such that I might give it a try some day instead.

3.7.11 DONE Hearthstone

  • State "DONE" from "STRT" [2018-03-18 Sun 01:13]
  • State "STRT" from "TODO" [2018-03-17 Sat 22:35]

A F2P card game by Blizzard. Never tried a card game before, so I'll give this one a try.

This might have been okay, but the business model ruins it. Buying card packs is straight P2W, along with loot box style gambling. Also, I'm not really a fan of this genre's randomness factor involving battles revolving around card decks. I'm not sure if it would work, but I'd rather see a game where I construct the deck ahead of time in anticipation of the opponents abilities and deck, then have random rolls for damage. Uninstalling.


  • State "DONE" from "STRT" [2018-03-20 Tue 01:21]
  • State "STRT" from "TODO" [2018-03-19 Mon 20:49]

A 2D isometric adventure game, free on GOG. Sequel to the rather crappy STASIS, and supposedly worse.

Has only two types of puzzles: easy and nonsensical. Ends quickly and without resolving much. Not really a good game, but it's okay for being free, I guess.

3.7.13 DONE Penultimate Destination

  • State "DONE" from "STRT" [2018-04-06 Fri 18:29]
  • State "STRT" from "TODO" [2018-04-06 Fri 10:31]

The second most popular MUD (the first is full of furries). I think this one might still be a sex-based MUSH, but I'll look around to see if there's any RPG content. 9500

Looks to be a chat-only MUD, entirely centered around sex talk.


  • State "DONE" from "STRT" [2018-04-29 Sun 23:18]
  • State "STRT" from "TODO" [2018-04-08 Sun 18:33]

One of the more popular fantasy-themed RPG MUDs. 3000

Has a wiki with maps and other info here:

Played for a few days and had fun for a bit, but don't really have time for this right now. Might try again in the late fall/winter. Seems like a decent MUD, but probably involves a lot of grinding. Having maps available for a MUD is rather a necessity to save massive time. Will probably skip any that don't have them available.

3.7.15 DONE Flare RPG

  • State "DONE" from "STRT" [2018-05-04 Fri 09:45]
  • State "STRT" from "TODO" [2018-05-02 Wed 07:38]

An open-source 2d isometric game engine. Try out one or more of the dev-made demo games. This looks unlikely that it's something I'd want to use, since it's optimized for action RPGs, but it's worth a quick look.

This is a clone of the Diablo 2 engine, and while not really my preference, does a pretty good job of that. The Empyrean campaign is pretty decent, and would probably make action RPG fans happy.

3.7.16 DONE Shadowrun (Genesis version)

  • State "DONE" from "STRT" [2018-05-27 Sun 21:04]
  • State "STRT" from "TODO" [2018-05-25 Fri 21:45]

Technically a replay, since I've played this to completion about 15 years ago and a few times in high school. Mostly interested in how it holds up and what game mechanics made it so compelling.

Definitely not as good as I remember, but still a good game. Certainly better than the SNES version and one of the few still-playable console games. I do get the feeling that the game may have been rushed towards the end. The plot of this game is also very unsatisfying and remarkably thin when you look at it in isolation.

As a kid, I used to think the original Shadowrun mythos was epic and endlessly fascinating. It's still pretty good, and I like it better than the straight fantasy competitors or even modern Shadowrun, but I now realize how universally derivative it is. The strong point is definitely the Neuromancer influences and their tight integration into a physical world.

3.7.17 DONE Depths of Peril

  • State "DONE" from "STRT" [2018-06-02 Sat 21:09]
  • State "STRT" from "TODO" [2018-06-02 Sat 16:35]

An action RPG from 2007, or thereabouts. Already had a copy, so will give it a look. I've briefly played this before, but can't recall if I liked it or not.

A reasonable set of game mechanics, I guess. Playing against the clock and doing RNG chores is not what I want to do with my time though.

3.7.18 DONE Helherron 2.1055

  • State "DONE" from "STRT" [2018-07-05 Thu 18:20]
  • State "STRT" from "TODO" [2018-06-02 Sat 22:34]

Apparently the author of this is still working on it. Checking in to see if the game is playable now.

Finally completed this. This is a pretty solid tactics-centric rougelike. There's lots of content here, and a play-through takes weeks. The only downside is that it gets a more than a little repetitive.

3.7.19 DONE Space Empires IV

  • State "DONE" from "STRT" [2018-07-10 Tue 09:05]
  • State "STRT" from "TODO" [2018-07-07 Sat 09:32]

The 4x game that is supposed to be the best at ship design. Was interested but was still going to skip this due to being a bit burnt out on 4x. However, it was on sale for $1.49 on GOG, so might as well give it a try.

Try this later with the DevNull mod, which supposedly fixes the majority of the bugs in the game. However, it also adds some things like space monsters, which I'm not sure I want. This and many other mods are included in the extras/ directory.

Possibly the best 4x I've played so far, or at least a close second after Stars!. For an older game, it does do a good job of covering all the core genre features too, and competently. Of course, there are things I'd probably change about it:

  • I'd prefer that warp point usage not be instantaneous. As it currently stands, the length of edges in the galaxy map don't matter. This also makes for a very spatially small-feeling game world.
  • Supplies get consumed way too fast. Understandably, this is necessary given the previous point. I'm fine with supplies/fuel being a factor, but it's tedious as is. Options for research to mitigate this would've been nice too.
  • Could use some more game creation options like allowing placement of players on the map.
  • Though the races aren't quite as stock as usual, they're still not that creative. There's a few isolated areas where they can play differently, but it's pretty minor.
  • While it's true this game does give more options than normal for ship design, there really aren't that many clever things you can do with it. Ship roles are designated by technology available, and it's pretty obvious what the optimal layout would be given those parameters. I'm thinking a better ship-based 4x game would be fleet-based almost exclusively (perhaps excluding colony ships and scouts), and have a UI optimized for their creation, maintenance, and use.
  • As usual for 4x games, diplomacy sucks and probably should've just been left out.
  • I'd tweak the mechanics to be less planets, but have them with more space for facilities. Colonization should be a more involved affair to balance this. Sending a colony ship to colonize a "tiny" planet, with the only purpose of setting up a single facility seems rather silly. Also, a large part of the game is churning out colony ships to spam the game world as fast as possible.
  • The UI needs optimization in many ways. Many of the game's bugs are UI related.
  • I'm pretty sure the game cheats.
  • As usual, empire management really grinds game progress to a halt as a medium or large map fills out with a lot of units/colonies.

Playing all of these 4x games is really repetitive since they're all so similar. I'm also starting to think that the underlying conception of the genre is flawed in some deep, and possibly intractable, ways (not unlike the AoE-clone RTS genre). If they could have realistically gotten better fundamentally, they probably would have by now, given how many come out every year. I don't even see the incremental "improvements" as anything but cycling on feature focus. 20 years from now, 4x will be exactly the same, just possibly with better graphics and more cemented genre conventions.

Played a few games but the tedium turned into a real grind. Not a fan of paying for 4x games, but I guess $1.49 is about right for this. Skipping the mods, but if I ever do come back here, that will be my excuse.

3.7.20 CNCL Tempest 4000

  • State "CNCL" from "TODO" [2018-07-10 Tue 09:11]

Look into this when it's done. So far, it just looks like a graphical rework of Tempest 2000. That version was a good game, but had many flaws that need fixed here for me to be interested.

Skipping for sure. At casual glance:

  • The sound effects are a downgrade. 2000 had meaty explosions and all sound really meshed well. Some stuff here is unbalanced, like the iconic "superzapper recharge" sample being nearly inaudible. Others like "yes yes yes" are removed. New samples aren't as fitting into the, uh, abstract nature of the game, or something.
  • Uses the exact same soundtrack. The original has some good selections, but some of the tracks were sub-par and should've been replaced/remixed.
  • Something seems off about the graphics. Perhaps it's too clean. More pixel chaos would capture the previous incarnation's feel better.
  • Maybe my biggest annoyance: including a minigame after every single level. This took one of the more annoying things about 2000 and made it even more prevalent. All minigames probably needed to be either removed or redone.
  • The number of enemies increased, but are easier to kill. I'd have liked to see the game more focused on testing skillfully applied precision and less about spamming hordes of enemies. More variance between level groups, with differing optimal strategies, would've been nice too.
  • The only real improvement I see is that with higher resolution, you can make out stuff that's coming or is on the upper end of the grid. On the Jaguar, you could only see a pixel or two.
  • Overall, this is an uninspired remake, probably made by day jobbers with no particular affinity for what made 2000 great. My default expectation for a remake is that it'll be a downgrade, so I'm not particularly disappointed.

3.7.21 CNCL Sang-Froid: Tales of Werewolves

  • State "CNCL" from "TODO" [2018-08-05 Sun 08:16]

Got for free on GOG.

Skipping, even though I have a copy. Too heavy on the time-critical action mechanics for my taste.

3.7.22 DONE Avadon: The Black Fortress (revisited)

  • State "DONE" from "STRT" [2018-08-24 Fri 23:52]
  • State "STRT" from "TODO" [2018-08-02 Thu 11:51]

I might be capable of giving this another try. One can get the whole collection of these RPGs for cheap, so I'm using this one as a test to see whether I could conceivably want to do that.

This game actually does have a surprisingly huge amount of content. All of my original criticism still holds, and I'd also add:

  • Tough enemies are only so because they play by different rules than the player, like getting more attacks per round or being able to move twice.
  • The trash mob combat is a real time waster. Having everything except vitality reset shortly after a fight takes away the only potential purpose for them of resource management.
  • Especially late game, battles are often just about chaining AoE attacks. There is little practical difference between any of the classes in this sense.
  • Endgame combat is a mess and full of annoyances. Infinitely respawning enemies, enemies that can hit 3 or more times per round, stunlock, etc. Worst of all, one of the main ending options is basically impossible to accomplish due to boss mechanics that weren't fully thought through.

There's potential here for a good game, but there's way too many downsides. Finishing this became a real chore and timesink. I'll be skipping the remaining RPGs from this developer.

3.7.23 DONE Ultima Online

  • State "DONE" from "STRT" [2018-09-05 Wed 23:41]
  • State "STRT" from "TODO" [2018-09-03 Mon 18:17]

Now F2P, so might as well give it a look.

So, so boring. Made a blacksmith and got related skills to 50. Started going a little further on a few of them, but progress is painfully slow. The UI needlessly makes this slow progress even more painful. Not sure what useful things I could even do with higher level skills, so I think I'll call this done. I'll leave the game installed for awhile in case I want to look around occasionally.

3.7.24 DONE Endless Sky

  • State "DONE" from "STRT" [2018-09-10 Mon 23:36]
  • State "STRT" from "TODO" [2018-09-10 Mon 13:02]

One of the top-down, 2D space trading/combat games, in the vein of Escape Velocity. This one is open source and in active development.

Maybe read the wiki:

Got up to a mid-level ship, but this gets old pretty quick, so I'm bailing. Judging from the forums, the game also gets pointless once you amass a fortune. So, the game is mainly the interim period where you farm missions. Gameplay rather sucks and combat especially does. That said, the game is nicely made, has a good UI, and generally looks good for a modern 2D game. Having played a few of the games in this genre, my conclusion is that it's another one of those genres that has innate flaws in its core design. The Elite-clone genre, which is similar, solve most (but not all) of these issues.

Perhaps a better game along these lines would be to have a game world where huge transport ships, hauling massive quantities of cargo and passengers, make very lengthy trips and fare the various hazards (both environmental and security-related). This also would preserve the feeling of actually being in space. Even better might be to make it convoy-based and/or during wartime. I might see if I can flesh out a workable game concept from this.

3.7.25 DONE Noir Haven

  • State "DONE" from "STRT" [2018-09-13 Thu 11:48]
  • State "STRT" from "TODO" [2018-09-13 Thu 11:08]

A text-only MUCK at 7878. Not sure I'm too interested in the setting though.

I guess this is just for chatting. If I was gonna engage in chat with online randos, I'd probably just do it on Freenode in some CS channel.

3.7.26 DONE Land of the Rair

  • State "DONE" from "STRT" [2018-09-21 Fri 22:14]
  • State "STRT" from "TODO" [2018-09-17 Mon 08:41]

A normal RPG from the creator of IdleLands. Still in development, but playable now.

Poorly conceived and not something I'd want to play, at least in its current state.

3.7.27 DONE Shroud of the Avatar

  • State "DONE" from "STRT" [2018-10-01 Mon 12:13]
  • State "STRT" from "TODO" [2018-09-14 Fri 21:09]

There's a free trial available for this, which is now released. It's obvious this was a pretty epic crowdfunding failure. But, I'll give it a try anyway, since it's free.


Lots wrong with this game. Pretty good lists about its shortcomings already exist online. I'll just add 3 points:

  • This game suffers from a emergent property of P2W games, where most of the development effort is focused around catering to whales. This results in a lackluster gain experience for normal players. Something a non-whale player might want to look out for, e.g. with Star Citizen.
  • Even if everything in the game were fixed today, it has still been running in persistent mode for a long time. During that time, there have (and still are) tons of exploits that players have been constantly using, effectively ruining the multi-player aspect of it.
  • The developers, including Lord Shittish, are SJW scumbags.

Not wasting any more time on this. Quitting now while I'm ahead.

3.7.28 DONE GTA V (single player)

  • State "DONE" from "STRT" [2018-10-01 Mon 12:15]
  • State "STRT" from "TODO" [2018-03-24 Sat 18:02]

Grabbed on Steam for $30. Will attempt to be a law-abiding citizen. Might try the online version later, where perhaps it's easier to do that.

The online version really only has spaz-type players that aren't any fun to share a world with. Missions take forever to load and turn the main world into a mini-game lobby. Sticking with single player.

Didn't really play this too much. Driving is better in the game, but I'd still prefer a more sim-like experience. Usable mirrors (and/or backup cameras) and the ability to turn your head effectively to look around in first-person mode would go a long way. The driving model could still use a few tweaks in direction of making cars handle more realistic too. As it is now, it's still optimized for an action-focused experience. But, I suppose that's what the target audience really wants.

On the good side, this game is a ton of content for the price.

I'll probably come back to this sometime to drive around a bit more, but I think I'll skip this series from now on, especially if they continue in the direction of more microtransactions.

3.7.29 CNCL Wasteland 2 (purchase)

  • State "CNCL" from "TODO" [2018-10-15 Mon 14:58]

Seems lacking in depth on the items/stats/strategy side of things compared to JA2 1.13+AFS. It does have some other unique features, like it supposedly includes at least some procedurally generated content. I've read a few bad points about it, and negative reviews suggest I'll probably dislike it for things like it's random loot system and lack of variety. Get this on GOG if I do, but wait until it's extremely cheap (under $10 at most).

Gonna skip this. I'll reconsider, maybe, if I find it for a few bucks in the future and in the unlikely case that I'm overwhelmed with free time.

3.7.30 CNCL Chrono Trigger

  • State "CNCL" from "TODO" [2018-11-10 Sat 22:35]

Normally I hate JRPGs, but supposedly this is one of the best video games of all time, so maybe it's an exception.

Played a little and I think I'll skip this. Seems passable, but definitely too thin of a world and combat system for me.

3.7.31 CNCL Neocron 2

  • State "CNCL" from "TODO" [2018-11-17 Sat 21:24]

A F2P 2002 FPS MMORPG. Maybe try it out for awhile.

Can't get this to run properly on my computer, even with manually replacing DLLs. Giving up.

3.7.32 CNCL Planescape: Torment: Enhanced Edition (purchase)

  • State "CNCL" from "TODO" [2018-11-24 Sat 19:46]

Might be willing to give this another go. Wait until around $5 on GOG. Since I have a CD version of it too, I might be willing to just use that instead.

Looks like I can just use my old CDs and install a high resolution mod and get the same thing.

3.7.33 CNCL Superpower 2

  • State "CNCL" from "STRT" [2018-11-25 Sun 21:05]
  • State "STRT" from "TODO" [2018-11-25 Sun 20:50]

I have a CD copy of this in my collection. Find it and give it a try. I only put a couple of hours into it previously.

Game is nonfunctional on Win7. The copyright protection says it works on XP, but trying that there gives the same error.

3.7.34 DONE System Shock 2 (modded)

  • State "DONE" from "STRT" [2018-11-28 Wed 16:47]
  • State "STRT" from "TODO" [2018-11-25 Sun 21:27]

Arguably one of the better games ever made, though the stock version is a bit hard to look at. Try out a fully modded setup of this game, which supposedly modernizes it to some extent. Use the SS2Tool utility to manage mods and sync the manual installation.


Did a non-PSI Navy run, using the wrench as much as conveniently possible. The modded version of this game really looks great. I wish modern FPSes were made with such clean graphics. Might try an OSA run some years from now.

3.7.35 DONE Tales of Maj'Eyal 1.5.10

  • State "DONE" from "STRT" [2018-12-08 Sat 16:09]
  • State "STRT" from "TODO" [2018-11-29 Thu 22:39]

Includes the second expansion to ToME, with a complete 1-50 campaign. Recent versions have supposedly made the game's plot-related enemies not so lacking in variety. I'd still like to do an oozemancer run and maybe another solipsist run. Could also play this on FreeBSD, since there's a port available now.


  • Install the Ignore Race/Class Locks mod, located here:
  • Also added respec mods.
  • Check out the "Somebody shut that dog up" mod if barks, howls, and eagle screeches get annoying.
  • A good progression:
  • Buy Combat Training category in Last Hope for 50gp.
  • Buy Mindstar Mastery in Zigur for 500gp. Take an alchemist escort before learning this and get Psiblades if a Solipsist.
  • The above applies for Staff Mastery in Angolwen.
  • Use the altar at Mark of the Spellblaze to corrupt the Heart of the Sandworm Queen. This looks like circular floor tiles.
  • Always manually pick up chest loot, since autoexplore won't grab it usually.
  • If running an anti-magic shield, getting armor with on-hit equilibrium bonuses can make it run permanently.

Unfortunately, it looks like they nerfed drops in Ruined Dungeon. For races without XP penalties, it's possible to find yourself under-geared by then. I created a small mod that comments out the emptyDrops() call in data/zones/ruined-dungeon/zone.lua.

Beat the game with a necromancer, which is now my favorite class in the game. Also played a yeek solipsist, skeleton archer, skeleton skirmisher, thalore oozemancer, and yeek summoner for awhile. Summoner and oozemancer mechanics, while interesting, make for a lot of tedious micromanagement. Archer and skirmisher are very simple classes, where you basically do the same thing the entire game. Necromancer really has a lot of complex synergies between talents and more persistent summons.

3.7.36 CNCL Tyranny (purchase)

  • State "CNCL" from "TODO" [2018-12-08 Sat 20:38]

Uses the Pillars of Eternity engine. Looks like it might be okay, but will wait until it's under $20 and all expansion packs are bundled. Check back around 2019 or so. Probably will skip entirely though, since it doesn't look that great.

Guess I'll skip this.

3.7.37 DONE Pioneer

  • State "DONE" from "STRT" [2018-12-08 Sat 22:57]
  • State "STRT" from "TODO" [2018-12-08 Sat 21:46]

An open source space sim. An Elite-clone, but has a more realistic universe lore.

There's some nice stuff here like Newtonian physics and a clean UI, but this game isn't really to the point of being enjoyable to play yet. Maybe check back in 5 years.

3.7.38 CNCL Red Storm Rising

  • State "CNCL" from "STRT" [2018-12-08 Sat 23:59]
  • State "STRT" from "TODO" [2018-12-08 Sat 23:47]

A 1989 sub simulator for DOS. Try to get this working correctly in DOSBox. Looks like it might be mildly entertaining.

Runs fine in DOSBox, but the game itself is a bit rougher than I'd like. I already have plenty of more modern subsims, so I'll skip this and play those instead.

3.7.39 DONE Loot Box Clicker

  • State "DONE" from "STRT" [2018-12-09 Sun 20:24]
  • State "STRT" from "TODO" [2018-12-09 Sun 15:42]

An idle game about opening loot boxes, I think.

Too simple and too much clicking. I guess this is how loot boxes work though. Also has some bugs in it.

3.7.40 DONE Swarm Simulator

  • State "DONE" from "STRT" [2018-12-09 Sun 23:50]
  • State "STRT" from "TODO" [2018-12-09 Sun 23:27]

Yet another open-source idle game.

Too click heavy. Given the amount of clicking, too much navigation. Lots of wasted space could've been used for displaying more stuff on screen.

3.7.41 DONE Galactic Civilizations II: Ultimate Edition

  • State "DONE" from "STRT" [2018-12-11 Tue 00:08]
  • State "STRT" from "TODO" [2018-12-10 Mon 20:52]

Got a copy for free, so will give it a try sometime.

Okay, but also nothing amazing. Has a few things that I don't like in 4x games, like space being too cramped. I'll shelve it for now and maybe come back to it if I get the urge to play the genre again, which I'm rather burnt out on currently.

3.7.42 DONE Space Company

  • State "DONE" from "STRT" [2018-12-11 Tue 19:52]
  • State "STRT" from "TODO" [2018-12-09 Sun 20:26]

Another open-source idle game.

Not bad for a theme, the constantly expanding storage mechanic ruins it. Even worse is that you can only expand storage when full and it costs your entire inventory of that resource, making it the most egregious example.

Cloned the source and played locally. Changed a few multipliers to speed things up a bit. By mid-late game, the math really breaks down here. One would have to play this game for years to get to the end.

3.7.43 DONE Drakan: Order of the Flame

  • State "DONE" from "STRT" [2018-12-13 Thu 20:06]
  • State "STRT" from "TODO" [2018-12-12 Wed 14:21]

A 1999 adventure game, now available as abandonware. Originally played this through around 2000 or so.


  • Install the official patch first, then the community patch.
  • Also disable lens flares on the in-game settings.
  • Always make a manual save (and don't overwrite it) when leaving the dragon, since sometimes he gets stuck when flying to you.

A pretty good game, though even with patches it has some bugs and a few engine quirks. Some good points are that enemies are usually stronger than you and have to be outsmarted, and swinging melee weapons is more realistic than the overdone moves in most modern games. This is also pretty advanced for its time.

About half way through, I lost a hour or so of progress due to the dragon getting stuck and me forgetting to backup save for long time. So, decided to quit since it was getting repetitive anyway. The early game higher quality anyway, with it getting restrictively linear with fewer side areas. The later enemies generally only have one tactic that works against them too.

3.8 Programming projects

3.8.1 CNCL bf

  • State "CNCL" from "TODO" [2018-08-31 Fri 08:52]

bf is easy to learn (already learned it once before), but a real challenge to write programs in. Maybe implement a few of my favorite algorithms in it. One way to debug bf code is to use bf2c, which converts what you write into something legible. There's also an Emacs mode for the language, of course. Could use the Haskell interpreter for this.

No longer interested in this enough to actually spend the time.

3.9 Computer science/programming goals

3.9.1 CNCL minimal front-end competence

  • State "CNCL" from "STRT" [2018-08-31 Fri 09:09]
  • State "STRT" from "TODO" [2017-04-02 Sun 00:37]

Get from knowing mostly nothing about modern front-end development of the client-side, web app kind to at least being able to slap something together. I'll rely on my general programming skills to compensate for my lack of ecosystem knowledge when/if I have to do anything here. I'd really hate to do this, but it would be useful at work and I think I can do it in a minimally intrusive way. Try to squeeze this whole half-assed effort into 3 weeks.

Already read Front-End Developer Handbook 2017, which did provide a little context. I might give at least the trends part of this a glance every year from now on.

The plan:

  • [X] Read up on npm.
  • [X] Look into MathJax and replace all math on my sites with it.
  • [X] Read up on highlight.js.
  • [X] Read up on Grunt.
  • [X] Maybe read up on Mithril.
  • [ ] Read up on Webpack.
  • [ ] Read up on ESLint.
  • [ ] Read/skim Eloquent JavaScript: A Modern Introduction to Programming. This will be my reintroduction to the language.
  • [ ] Read selected parts of Understanding ECMAScript 6: The Definitive Guide for JavaScript Developers. Take notes.
  • [ ] Read up on React. Maybe grab a book on this and/or split it out into its own topic.

This was going okay, with the exception of being boring. I'm still going to cancel it for now, to be replaced by doing basically the same thing in ClojureScript. I might resurrect this regardless of how that goes, for two reasons:

  • Knowing Java and JavaScript are a good insurance policy if I roll a critical failure in life one day. This is counterbalanced by JavaScript's ephemeral nature.
  • For better or worse, JavaScript is one of the core technologies that the world is built upon. Knowing more about it means understanding the world better. The downside here is that the whole web part of it is a giant kludge.

3.10 General life goals

3.10.1 DONE block sites with /etc/hosts

  • State "DONE" from "STRT" [2018-01-06 Sat 03:06]
  • State "STRT" from "TODO" [2018-01-06 Sat 02:30]

As part of my 2018 plan to further remove distractions from my life, I'll block various sites using the hosts file method. To do this, edit /etc/hosts and add entries that look like

Some comments:

  • This method works great, but it is not a solution for an underlying problem of being vulnerable to distractions. But like any brain-rewiring effort, not reinforcing the neural pathways that make up the undesirable behavior is a necessary component. Since these are information foraging activities, the brain is in a variable reward cycle, making the behavior extinction resistant. Removing the exploit altogether is a separate task.
  • I only added a dozen or so entries that I know I've wasted time on in the past. Whenever I spot myself wasting time somewhere, add it to the file.
  • While I'm at it, I'll also block any biased/propaganda sites, pay sites, and sites with embedded popups.
  • This isn't a panacea. There are sites that have both useful info and tons of useless info. It would be easy to still waste time there since I'm reluctant to lock myself out of the useful stuff.
  • I'm only doing this on my main workstation for now, where I do most of my work. I might copy it over to my laptop next after awhile.
  • Also added hosts that do client-side coin mining. Used this list:

2018-12-16: Added a list of domains that serve up ads, tracking cookies, and other scummy traffic I don't want. This results in a significant speedup on some sites.

3.10.2 CNCL no/less refrigeration

  • State "CNCL" from "TODO" [2018-01-07 Sun 02:06]

A refrigerator costs about $1/day in electricity to run (for an efficient model), and getting rid of it zeros out this cost. Another option is to switch to a mini-fridge. Either way, a full size refrigerator and freezer is a waste of money since it's mostly unused space and sometimes completely empty. Will wait until I'm done with apartment life for this, since there's no point in lugging around my own mini-fridge in the meantime. If I ever choose to unplug an apartment fridge, be sure to leave the door open to avoid mold.

I may re-imagine this concept to include a chest freezer and a mini-fridge. The deep freezer will be useful if I'm raising a lot of my own food.

Update: Looks like I can afford to run a refrigerator now. I'll definitely get a chest freezer too. I still want to save electricity as much as possible, of course, but the point of this task no longer really applies.

3.10.3 CNCL DIY Soylent

  • State "CNCL" from "TODO" [2018-01-07 Sun 02:11]

This recipe seems promising, provided I remove the added flavoring. May want to look into reducing the molybdenum though.

However, I should look around a good bit first and see if there are better options, or completely devise my own from scratch. Decide whether to completely replace bought Soylent with this, depending on confidence level in my recipe. I'm slightly less inclined to do this now that Soylent's price has dropped 23%, but I'm still somewhat interested in the idea of saving all that money and being non-dependent upon the existence of a single company.

Update: I'm no longer inclined to do this. I've settled into using this max 1 meal/day and Soylent powder is cheap enough for me. Another reason is the difficulty is replicating the vitamin/mineral balance. I consider that worth the $1.54 for 400 calories. Even if I ate nothing but Soylent, it would cost about $2810/year, which is a huge improvement from my current food costs.

3.10.4 DONE buy property

  • State "DONE" from "STRT" [2018-01-17 Wed 09:08]
  • State "STRT" from "TODO" [2017-12-01 Fri 07:23]

A long-time goal of life has always been to extricate myself from the hive. The time has come for the final realization of that goal. The main trade-off will be being a home owner. However, I'm sure that if I do it right, it'll be a net positive effect on life, and not just by a small margin.

My general goals of this effort are:

  • Protect a sizable chunk of net worth against inflation (low property taxes are necessary here for this to work).
  • Move to a rural or semi-rural area.
  • Own a fairly large plot of land.
  • Own an appropriately-sized, utilitarian house.
  • While self-sufficiency isn't a goal, increase the amount for which I provide for myself.
  • Keep one foot in the door with marketable technology skills, my urban acquaintances, and some of the minor benefits of the city. This means I'll not move too far out such that I'm completely isolated from these things. This is a minor goal, and I'm willing to sacrifice this for optimizing other things.

This entry is just noting this effort here for life journal reasons. See full details, goals, strategies, and notes in

This went extremely well, particularly considering it was my first time. In retrospect, there were a few minor areas of optimization, but nothing major. I am now the owner of some real property, free and clear. I can't envision any part of this being a mistake, but I'll remain vigilant in that regard. No matter what, this was motivation to quickly acquire a very thorough education in a big part of the real world that renters are sheltered from.

Lessons learned:

  • This is a complex process with many steps. It would be significantly more complex if I was getting a mortgage. Apparently most people, even those who work in the industry, can't keep track of all the moving parts. Using org-mode makes this as easy as it probably could be.
  • Get to know all the personalities involved and understand their motivations. This includes the sellers, seller agents, buyer agents, inspectors, etc. The seller is the most important here. This is hard to do when communication is done through multiple parties. Try to connect directly with as many people as possible and talk to them in person, phone, or email as much as possible. Try to talk to everyone in person at least once, and the seller as often as possible.
  • Probably the only thing I was a little weak on is that while I did take advantage of it some, I didn't maximize for desperation on the part of other parties. Cash in hand means you're holding what everyone wants. That makes you the boss and most people are willing to dance for their supper.
  • Don't trust any other parties to do their jobs or have your interests in mind. Follow around inspectors. Track all tasks the buyer agent has on their list and make sure every one of them is complete and on time. These people will average to the mean IQ or maybe slightly below it. You might have to do all or most of the thinking for them.
  • Online searching is the way to look at 1000s of homes and save an insane amount of time. There was no way I'd have found something as close to perfect as I did by being led around by an agent. The software for all real estate sites sucks, so this is a very laborious process requiring possibly 100s of hours. I again used org-mode to help, but since you can't export data as an end-user, I still had to use a combination of 3 sites. I also had very specific criteria, differently weighed, and only some of them are search criteria available on those sites.
  • Do massive amounts of research on everything about housing. If you know nearly nothing at the start, like I did, spend 100s of hours researching everything about home buying, ownership, mechanicals, etc. In aggregate, this will always pay off, you're less likely to make expensive blunders, and you'll need much of that knowledge to properly maintain your home anyway. I've been completely confident in every decision along the way thanks to this upfront investment. Both the search and this self-education were basically full time jobs for months each.

Now all I need to do is close up shop in my current location, quit work, and get out of here. I have some follow-up tasks to this, but the main effort will be towards structuring what comes next.

3.10.5 DONE liquidate extraneous possessions

  • State "DONE" from "STRT" [2018-01-17 Wed 10:25]
  • State "STRT" [2009-07-30 Thu 12:56]

Make several more complete audits of remaining possessions and trash or sell as much as possible each time. Some groups of items to address are media, books, clothes, furniture, computer parts, and electronic devices. Most of this is stuff I accumulated before moving out on my own, then a second wave of buying stuff once I first commanded some reasonable purchasing power.

At least 1000lbs of stuff trashed/sold so far. Sold a lot of bulky stuff and a couple white elephants. I'm near the end, but there's still further optimization that could be done.

I've been at this for awhile and have made good progress. I've made small profits where possible, but in the end everyone loses on purchasing consumer goods. I don't miss anything I've sold, which probably means I should've never bought any of it in the first place. Getting rid of stuff also takes more work than buying it.

I think it's safe to call this done for now. I have a few minor selling tasks to wrap up before moving, but the main thrust of this effort is complete. In fact, I'll probably switch to acquiring some possessions needed now that I have a place and know what property features it has.

3.10.6 DONE upgrade router

  • State "DONE" from "STRT" [2018-01-31 Wed 18:53]
  • State "STRT" from "TODO" [2018-01-27 Sat 20:45]

Find a suitable upgrade my WRT54G, ideally one that supports up to 801.22ac. I was going to put this off, but the overlap will be handy for setting up DSL at the new place early and having one less thing to worry about on moving week.

Finding a consumer-grade router that doesn't suck was a chore. Selected the Linksys AC1900. Setup went fine, it seems. Some notes:

  • Facade is inferior to the WRT54G since it has no status lights. The only status lights are on the back. Has an annoying backlit logo on the top, which I guess might blink if something's wrong.
  • Supports simultaneous 2.4GHz and 5GHz.
  • Admin panel doesn't work in Conkeror.
  • Port forwarding is organized under the security configuration section.

I guess I would say this product is only okay. It's only an upgrade to the WRT54G in that it supports more modern protocols and seems to have a stronger signal. Everything else is equivalent or a minor downgrade. As there are no deal breakers or major annoyances, I can live with it. Checked eBay and the WRT54G sells, but only for a few dollars, so after moving I'll just stick it in a box for a backup, in case this one gets fried in a power surge or something.

2018-02-22: Covered the backlit logo with a piece of black paper and tape. Now it doesn't hurt my brain ever so slightly when I look in its direction.

3.10.7 DONE baseline life knowledge research

  • State "DONE" from "STRT" [2018-02-03 Sat 02:41]
  • State "STRT" from "TODO" [2018-01-03 Wed 23:40]

I've identified a baseline set of info I'll need to do some isolated research in. Know these topics in outline or better, such that I can lazy load any specifics. Some of this involves resurrecting long dormant memories from before I started college. Around then is when I hyper-focused on computer science and intentionally allowed everything else to atrophy. I'll probably spend no more than a few days on each of these, unless I identify some critical gap.

I'll track the details in Rolling these up here to identify the core subset needed for now:

  • [X] Appalachian culture.
  • [X] Local geography.
  • [X] UTVs.
  • [X] Scythes.
  • [X] Gang reel mowers.
  • [X] Septic systems.
  • [X] Water heaters.
  • [X] Chainsaws.
  • [X] Bench grinders.
  • [X] Gravel driveways.
  • [X] Generators.
  • [X] Outdoor wood furnaces.
  • [X] Horses.
  • [X] Heat pumps.
  • [X] Bass boats and trolling motors.
  • [X] Roof gutters.
  • [X] Drywall.
  • [X] Vehicle trailers and hitches.
  • [X] Processing firewood with hand tools.
  • [X] Drills and bits.
  • [X] Wells and well pumps.
  • [X] Freezing vegetables.
  • [X] Home canning.
  • [X] Deck maintenance.
  • [X] Basic first aid.

I'll have further skills to master later, but these are the basics useful right now. Most of this stuff is pretty simple at the end-user level. My previous level of ignorance would've had consequences eventually, mostly in higher costs and a fair amount of nondeterminism. There's also some aggregate utility to understanding all of the systems that control your environment.

One general conclusion from this effort is that I'd like to minimize the number of additional engines in my life. I'll try to combine those devices as much as possible, even if suboptimal. Electric power tools are less offensive, but I'll also minimize those as a secondary priority, where convenient to do so.

3.10.8 DONE buying stuff: round 1

  • State "DONE" from "STRT" [2018-02-17 Sat 20:53]
  • State "STRT" from "TODO" [2018-01-28 Sun 11:50]

Now that I'm leaving apartment life, I'll need a lot more stuff. Some is for doing things for myself that I used to pay people to do for me. The rest is because more space enables new activities.

I'm dividing my stuff purchasing into 3 main groups. Part of the reason for doing this is to define these purchasing sequences as discrete events and not part of a shift in consumption habits. The default is still multi-use items and minimizing consumerism.

This group is stuff I'll work on getting prior to the renter on my property moving out (and thus not really having it available for my own use):

  • [X] Vacuum cleaner: Old one broke. Bought some Bissel model. Seems to work well, but looks rather silly.
  • [X] Infrared thermometer: Use to test all windows and walls both in summer and winter. Can also use on the external wood furnace, cooking, annealing metal, and possibly other uses.
  • [X] Tube of lithium grease: Use for sliding doors, windows, hinges, garage doors, chains, springs, gears, bearings, and similar applications.
  • [X] Water/mud-resistant boots: Will need for wet grass, muddy soil, and just general use. I considered getting full height rubber boots, like farmers wear, but I'll just hide indoors when it's that wet outside. Bought the Men's Small Batch L.L.Bean Boots, size 12 (since they run a little large). These appear to fit perfectly. Modded these with a file to remove the branding on the heel. This also smooths out a surface that can trap dirt. These reduce agility somewhat, so I'll still default to using my old military boots during dry times.
  • [X] Tape measure: I think I got a Stanley 25' one.
  • [X] Stiff plastic brush: Use for scrubbing tile, concrete floors, siding, foundation, and decking. Bought one but might get another with handle later.
  • [X] Carpet shampooer and 1 gallon cleaning solution: Bought the "Hoover SteamVac Upright Carpet Cleaner with Surge", solely due to it being on sale at Home Depot.
  • [X] Electric drill and drill bits: Got the DeWalt DCD780C2, which is a kit that includes drill, two batteries, and a storage case. Also bought a 21-piece drill set. Skipping a driver set for now, but I'll probably get one at some point.
  • [X] Extension cord: Got generic 50ft one. This one is only rated for 10amp though.
  • [X] Mop: Got some kind of self-wringing mop.
  • [X] Electric lawnmower: Bought the Greenworks Pro 60-volt, since I had a $60 coupon for Lowe's. I'll get the cordless chainsaw that uses the same battery later (and then hopefully never buy anything at Lowe's ever again).
  • [X] A few low plastic bins: Might need this to dual as a litter box for awhile. Later, I'll just use it for storage.

Total cost should be around $1100 or so.

So far these all seem like decent purchases. Should've bought a carpet cleaner long ago.

3.10.9 DONE optimize TracFone settings

  • State "DONE" from "STRT" [2018-02-23 Fri 00:06]
  • State "STRT" from "TODO" [2018-02-22 Thu 01:03]

This phone is better than a smartphone, but still has many annoyances. Probably the biggest is not being able to block spam. I've already looked into whether there is a number blocking feature and unfortunately none exists. The things here might be able to mitigate the damage, however.


  • [X] Fix annoying text message alert: Found setting to only alert once.
  • [X] Setup voicemail: Uh, I think I successfully did this. Press and hold 1 to access the mailbox. Then enter the PIN I selected.
  • [X] Test voicemail by calling from another phone to see if I get a notification of messages: This works. I get a notification of it and an option to delete each message by hitting 7. If I have a bunch of spam here, I might try hitting 7 early to see if that deletes it.

Once I quit work, I'll turn the ringer volume down to level 1 and let all calls go to voicemail. This will let me answer calls when I'm expecting one, but otherwise it won't wake me up or break concentration. I'll see if spam calls end up as voicemails too. If so, I'll just ignore them and check once every couple weeks.

3.10.10 DONE replace vehicle

  • State "DONE" from "STRT" [2018-03-07 Wed 17:50]
  • State "STRT" from "TODO" [2018-02-26 Mon 18:51]

My plan is to eventually have two vehicles between the two of us, mainly for transportation security given that we're so remote:

  • Car: This will be what we use 95% of the time for shopping and general travel. It should be fuel efficient, reliable, and low in value (to reduce property tax).
  • Truck/SUV: This will be used only for inclement weather, transporting large stuff, and hauling a trailer. It only needs to be of low value.

I'll address the car situation first, since that's something I can do before moving. A thought I had was that I may be in a unique situation such that a Ford Crown Victoria Police Interceptor, which are often sold to the civilian market after being decommissioned, might be a good choice for me.


  • In WV, most vehicles are huge trucks and SUVs. The roads are usually 2-lane. My tiny car would be clobbered in most collision scenarios.
  • I intend to drive less overall, hopefully negating additional fuel costs.
  • A push bar will protect the car against head-on deer collision.
  • Reduced property tax.
  • Higher ground clearance. My current car scrapes the pavement on high crown back roads in WV.
  • Superior snow performance. The CVPI isn't perfect at this, but way better than my car. Throwing some weights in the back can help too.
  • Superior performance off road and on poorly maintained roads.
  • Due to it looking like an unmarked police car, you're less likely to be harassed by highly emotional drivers.
  • Parts are cheap/plentiful and I can do more of the servicing myself.
  • Most have easy to clean interiors with floors made of textured plastic.


  • Will incur several hundred dollars of transaction costs.
  • More inspection/registration inconvenience.
  • Reduced fuel efficiency of around -14MPG.
  • No center console.
  • CVPIs are often used pretty hard as fleet vehicles.
  • These interiors can be extremely rough and dirty.
  • Some additional nondeterminism in vehicle reliability for the short term.

This is a net win on the pro side, especially in the long term. If this works out, I might get the truck/SUV as a former police auction vehicle too.

2018-02-26: I looked at one I thought promising at a local dealer specializing in these. At least the ones there are really rough vehicles. The particular specimen I had an eye on has way too many idle hours (over 8000) and has several things broken such that the car is currently not usable.

2018-03-03: Went to look at another CVPI in Ashland, VA. Found it acceptable and worked out a straight trade for my current car. They need to fix the alignment and will call me back on 2018-03-05 when it's ready for pickup. Will probably go grab it 1-2 days later in the early morning. This one is about as good as they come and has low miles and wear. The only problem is that the mufflers have been removed. I'll probably try to just live with that and only get them replaced if there's an inspection issue. I saw a lot of parts laying around at the first place I went to. Once I get the car, give them a call and see if they have any spare police center consoles.

2018-03-05: Got notified that car is ready to pickup. Asked if they can remove bumper stickers. Didn't get to ask about gas. Will go buy gas can and fill it up some, just in case.

2018-03-07: Picked up car. Updated parking badge. Seems to run okay so far, minus a few minor quirks noted in the maintenance task. So far this seems like a good idea.

Some ideas/notes:

  • The best online repository of knowledge is
  • Read the Police Interceptor Modifier Guide for the year in question.
  • The CVPI has kevlar lined doors and trunk. There are also stab-proof plates in the seat backs.
  • Set the torque wrench to 95-100lbs for the lug nuts.
  • There is a fuel shut off inertia switch in the trunk. If it ever gets tripped, like after hitting something, just hit the button to reset it.

3.10.11 CNCL inspect/maintain CVPI

  • State "CNCL" from "STRT" [2018-03-26 Mon 21:34]
  • State "STRT" from "TODO" [2018-03-08 Thu 23:21]

Once I get the CVPI, perform these tasks. These are to find out exactly what I have and to bring it back as close to spec as possible. Some of this will have to wait a couple months until I have some room to work in. I'll probably split off some of the risky stuff for later.

2018-03-20: Looks like I rolled a critical failure on this one. I also think the dealer screwed me over by resetting the codes and selling me the car as-is, given that several critical CEL codes popped up as soon as I drove it enough to reset. I do, however, still think that it can be a great car if I put the money/time/effort into it. My current plan is to just get this running good enough to do the move, then getting something more reliable in truck/SUV form. I'll probably still keep this for local use and as a backup, for now.


  • [X] Remove bumper stickers: Dealer did this upon request.
  • [X] Inspect exhaust system: Asked dealer and they said it has smaller mufflers installed. Not a straight pipe or cut-off. Still has catalytic converters, so it should pass emissions inspection, hopefully. If not, I can always speed up my residency transfer to WV.
  • [X] Update car insurance.
  • [X] Print out new insurance card.
  • [X] Vacuum interior: Done, but still could use another round.
  • [X] Find location of DLC (data link connector) port: It's just below and to the right of the steering column.
  • [X] Detail the interior: Cleaned entire interior and finished with Armor All. Looks pretty good but could use another round in a month.
  • [X] Try to remount the spare tire and jack in the trunk shelf: Got the wheel mounted using the spare bracket plate and retainer screw. Not sure where to mount the jack itself, so I just left it on the trunk floor.
  • [X] Pull out the air filter and see if it's dirty: Checked and it needs to be replaced.
  • [X] Clean mass air flow sensor: Used MAF cleaner. Was pretty easy to do.
  • [X] Remove dealer-branded plate holders: Tossed.
  • [X] Set clock to current time: First turn on the radio. Then hold down the clock button and use the seek and tune buttons to set the time.
  • [X] Confirm paint is WT, "Performance White" by looking at sticker in door: Confirmed. Color code is: M6640A, WT.
  • [X] Check what battery I have: AutoCraft Gold Battery, model 65-2, with 850 CCA.
  • [X] Check tire size sticker in door: Appropriate size is P235/55R17. Currently installed tires are Travelstar UN33, P235/55R17, 103W XL.
  • [X] Inspect tread wear on all tires and compare against the unused spare: Need new tires. Wear is uneven across them. Pep Boys has a 4 for 3 deal going on until 2018-03-31.
  • [X] Check whether turn signals show proper orange color: Need to replace these.
  • [X] Take in car for a check engine light. Might be a stuck open thermostat, which I'm hoping it is, since that's cheap and would explain the slow warm up: Lots of things are wrong. Broke into two groups. The place I took it to, G&C, has also raised their prices considerably, so I'll only do a few critical things there.
  • [X] Fix this subset of things that the repair shop found:
    • Plugs/coils were bad, resulting in a misfire. Maybe the intake manifold gasket is bad too. Misfire could be caused by coolant leaking onto plugs.
    • Thermostat bad, as suspected. Replace thermostat and seal. Flush coolant.
    • Serpentine belt is going bad and needs replaced.
  • [X] Inspect exhaust system to ensure exhaust comes out of tailpipes: Confirmed. The exhaust system hasn't had a sloppy muffler delete, at least.
  • [X] Sniff some anti-freeze: I guess I can recognize this smell now. No like.
  • [ ] Appointment scheduled for 2018-03-19 at local Ford dealer to address:
    • Replace crankcase breather hose, which should be connected to the air intake tube. The air intake will also need to be replaced.
    • Fix coolant leak. Garage thinks this is the thermostat housing, but could also be a cracked intake manifold.
  • [ ] Get emissions inspection at Jermantown Shell.
  • [ ] Get registration, pay sales tax, and get title. Go to the DMV in Winchester, VA, to save hours of waiting.
  • [ ] Vacuum trunk, inside air box, and around engine. Do interior again too.
  • [ ] Replace air filter: Ordered a WIX 46814 (supposedly more optimal than the standard Crown Victoria filters, but only fits the CVPI air box).

2018-03-26: Had to confess defeat. The determining factor was having to replace the entire intake manifold, which would run about $2000. Combine that with the long, long list of things that still need to be addressed after that (a good half of which I can't do myself), and it doesn't make sense to keep this, at least not for me. Traded it in for a 2015 Ford Explorer XLT with warranty coverage.

3.10.12 DONE get seeds

  • State "DONE" from "STRT" [2018-04-12 Thu 20:52]
  • State "STRT" from "TODO" [2018-01-20 Sat 15:55]

These are my primary incentives for gardening:

  • Food is a significant percentage of the average person's budget. Like most other consumables, it is done with post-tax dollars. Regulation is extremely heavy in the industry, adding additional cost. While subsidies and general efficiency do balance this out somewhat, those tend to be limited to specific subsets of the industry. One can selectively take advantage things that are cheap and still trade time for money pretty effectively, if done right.
  • Living a good distance from the grocery store makes regular trips very expensive. A basement full of preserved foods will likely save many thousands of dollars in fuel and vehicle wear. I'd like to consolidate trips to no more than once every 2 weeks or so.
  • All these vegetables should help make it easy to decrease caloric intake. Related physical activity increases energy expenditure. If health improves, I may reduce Soylent consumption and replace with garden produce, saving further money.
  • Producing your own food increases self-sufficiency and is arguably a non-surrogate fulfillment of the power process.

I've done this as a kid and know that I dislike a lot of the monotonous manual labor. So, I'll stick with low maintenance produce exclusively. Any crops that end up infested with bugs, I'll skip in subsequent years. A secondary priority is optimizing for food cheap to grow, but expensive to buy. I'll also be using only hand tools for now. It's also possible to waste a lot of money gardening, so I'll be doing everything with an eye towards spending almost nothing. Costs should only be a few hand tools and seeds. This first year, I'll just try experimenting with as many species as possible to see what works. Subsequently, I'll consider selling surplus at a farmers' market.

First try buying seeds for cheap at a local store. Whatever I can't get, order online. For trees, maybe check local stores after move in first, then go with bare roots online for the remainder. I'm in grow zone 6b.


  • [X] Sunflowers: Pretty much zero maintenance. Birds will eat these, but it's easy to plant enough to have plenty of seeds left over. Also good for filling a bird feeder for free, if I want one of those. Plant a ton of these. Some varieties may need help standing up as they get tall.
  • [X] Carrots: Keep weeds clear.
  • [X] Radishes: Keep weeds clear.
  • [X] Green peppers.
  • [X] Jalepeño peppers.
  • [X] Tomatoes: The most work, but produce a useful staple food for sandwiches and other purposes. Also great for canning. Try to build my own trellises out of junk wood. Go with Brandywine Heirloom.
  • [X] Onion.
  • [X] Pumpkins.
  • [X] Spaghetti squash.
  • [X] Watermelon.
  • [X] Cantaloupe.
  • [X] Sweet corn: Next year get another heirloom variety.
  • [X] Potatoes: Just using some from a bag from the store.
  • [X] Mini-pumpkins: Will just use these for cheap gifts.

Herbs, focused on defense against pests:

  • [X] Mint: Also repels mosquitoes. Supposedly will displace other plants so maybe keep in pots. Perennial.
  • [X] Oregano: My favorite general herb. Perennial.
  • [X] Thyme: Repels corn earworms, tomato worms, and various other insects. Plant around corn or tomatoes. Perennial.
  • [X] Basil: Plant around porch to keep flies away.
  • [X] Lavendar: Plant anywhere, maybe in pots. Harvest and dry and put bundles in attic to keep away flies.
  • [X] Rosemary: Repels various insects harmful to plants. Plant in random spots around other plants around house and in the garden.
  • [X] Dill: Repels aphids, tomato worms, and various other annoying insects and mites. Plant all over garden.
  • [X] Cilantro: Good for soups.
  • [X] Catnip.
  • [ ] Lemongrass: Also good for ornamental reasons around the house. Plant near porch.
  • [ ] Garlic: Plant this next to other garden plants to fend off pests and bugs. Maybe plant around house too.

In the future, I'll consider stevia, tea, gourds, miner's lettuce, beans, turnips, red beets, cucumber, cayenne pepper, and zucchinis. Beans and zucchinis are especially useful. Keep an eye out for field corn for next year.

Didn't get all the seeds I wanted, but I definitely have plenty for the current size of the garden plots. I'll need to work on some fencing to expand them for next year.

3.10.13 DONE try out scythe

  • State "DONE" from "STRT" [2018-05-15 Tue 16:33]
  • State "STRT" from "TODO" [2018-05-01 Tue 11:24]

I now own lots of grass. I'd guess it's at least 2 acres, if I don't count the areas that have been recently left to grow wild, which are probably another 2 acres. Mowing with internal combustion engines sucks, as I know all too well from earlier in life. I'm also trying to limit the number of ICEs I own to no more than 3, which doesn't leave any room for a gas-powered lawn mower.

After thinking about this for months, my plan is to use an electric mower until I get a scythe. Afterwards, I'll just use it on the half acre or so directly around the house. The scythe, I'll use for everything else. There, I'll let the grass grow to two lengths, one being around 6" for the main lawn areas, the other I'll only cut once a year. The latter I'll collect some of for mulch.

Ordered a scythe "outfit" from with the following:

  • Peening jig and whetstone.
  • 28" grass blade.
  • Bent snath.
  • Galvanized metal stone holder.
  • Sharpened blade.


  • [X] Assemble and test scythe.
  • [X] Read all instruction sheets.
  • [X] Get wood glue and glue/hammer parts together tight. Let dry for 24 hrs.
  • [X] Test wetstone on belt. Works best mounted at 4 o'clock.
  • [X] Find something to make a peening log out of.
  • [X] Put at least one coat of boiled linseed oil on wood. Let dry for 24 hrs.
  • [X] Make a few wooden spacers to wedge between the ring clamp and the blade.
  • [X] Read book about scythes that came with the outfit.

I've mowed a good bit of grass with the scythe now and it works pretty good. Using it is a physical skill that needs a fair amount of practice to get right. All the benefits I envisioned have been realized:

  • No engine noise.
  • No breathing in exhaust fumes.
  • No ongoing expenses.
  • Negates the need for a string trimmer.
  • Scything is good exercise and does something useful at the same time.
  • Can be done outside when it's relatively wet.
  • Can't really break, run out of gas/oil, and needs very minimal maintenance.

However, there's some good reasons why scythes aren't more popular, and more than a few downsides apply to my situation:

  • Scythes perform poorly on thin, wispy grass. Regardless of sharpness or technique, it seems to just push over it. There's a good bit of this kind of grass in various parts of the yard.
  • One must be very careful not to hit a rock or other hard surface. This causes some serious blade damage.

3.10.14 DONE buying stuff: round 2

  • State "DONE" from "STRT" [2018-05-15 Tue 17:01]
  • State "STRT" from "TODO" [2018-03-06 Tue 16:13]

This is the list of stuff to get once my property becomes available for use. There will be a gap between the renter leaving and me moving in. I'll use that opportunity for cleaning, moving some smaller items over, and stocking some supplies. I might be able to get most of this stuff prior to the move.

Planned purchases:

  • [X] Gas can(s): Got a 2.5 gallon one and a cheaper 5 gallon one. Not a big fan of the modern gas can design though, so I may keep an eye out the old metal types and jerry cans.
  • [X] Funnel: Got a long, slender one. Should be good enough for now.
  • [X] Auto-watering device for pets: Got the largest one at Walmart.
  • [X] Pack of dust masks: Got a pack of 2.
  • [X] Case of 16x25x1 HVAC air filters: Got 2 for now.
  • [X] Coolant hydrometer: Bought ABN Deluxe hydrometer.
  • [X] Code reader: Bought Innova 3030.
  • [X] Box of blue latex gloves: Got one. Maybe get another to leave in garage.
  • [X] Seed starter trays: Bought 2 for $5/each at Walmart.
  • [X] Shovel: Acquired.
  • [X] HVAC foil tape: Got a roll of the shiny kind.
  • [X] Work gloves: Got one pair of the latex-dipped cotton work gloves, size L. These might be the same that are available online by the dozen for cheap. I'll do a bulk order if I like these after using them for awhile.
  • [X] Ball of twine: Grabbed.
  • [X] Adjustable wrench.
  • [X] 1/2" torque wrench, with range around 25-200 ft-lb: Bought a Kobalt 50-250lb one. Will still need a smaller one for the <50lb range.
  • [X] Plastic folding table and 2+ folding chairs: Got plenty of chairs and tables for free from the house sellers.
  • [X] Hoe: Acquired.
  • [X] Garden rake: Acquired.
  • [X] Pickax: Bought 5lb one with synthetic handle.
  • [X] Box of light bulbs: Got 4 75W equivalent LEDs.
  • [X] Splitting maul: Got a 6lb one with a synthetic handle.
  • [X] Can of spackling paste and putty knife: Acquired.
  • [X] Heavy-duty staple gun and staples: Got an Arrow brand one that takes size T50 staples and a box of 1/2" long staples.
  • [X] Set of drivers for drill: Bought DeWalt set.
  • [X] Caulking tube, caulking gun, razor scraper, caulk remover: Acquired.
  • [X] 5 mini-blinds: Got cheap 35.5" (actual) ones.
  • [X] Safety glasses: Acquired.
  • [X] Watering can with thin spout: Got small one for indoors.
  • [X] Scythe, stone, stone holder, peening jig: Acquired.
  • [X] Can of boiled linseed oil: Acquired.
  • [X] Bottle of wood glue: Acquired. This is the cheap kind though.
  • [X] A few boxes of nails: Have a couple different types. Should be good for now.
  • [X] Sandpaper of a few grits: Got a variety pack and one 400 grit pack.
  • [X] 69" steel digging bar: Acquired.
  • [X] Forest or similar sized axe with synthetic handle: Got a 4 lb one.
  • [X] 6" bench grinder: Got the Delta 6" at Lowe's.
  • [X] Bench vise: Got a Craftsmen 5" one.

Total cost for all of this stuff is around $1500.

3.10.15 DONE pump septic tank

  • State "DONE" from "STRT" [2018-05-29 Tue 10:10]
  • State "STRT" from "TODO" [2018-04-25 Wed 14:09]

The septic tank has between 7-10 yrs of plop in it. Time to clean it out.

Called Peacemaker Septic Service (304-856-3000) on 2018-04-24 and scheduled tentatively for next week. Lady will call back when they pick a day. Ask guy about riser installs. Looks like these might be expensive and not worth the cost.

Cost is $265 for the pumping and $100 for digging it up. Will try to dig up the opening when it is dry next.

2018-05-08: They forgot about my appointment on 2018-05-04. Called back on 2018-05-08 and said they'd be over the same day.

2018-05-08: Turns out this guy serviced it last time. He thinks it's a 1500 gallon tank. However, the tank is buried in an unknown location. Will need to find where it is before he'll pump it. He did locate what he thinks is a pipe, which I put a rock and metal bar next to.


  • [X] Go to county health department and get a copy of the septic records: Did this but with mostly useless results. Did get well and septic form copies and filed them with the rest of the house paperwork though. Confirmed the capacity is 1500 gallons.
  • [X] Track down original house owner and ask about access hatch location: Managed to talk to him and he said it was either at the metal bar location or 12-15' north of the transfer box, but a little to the west. Depth is supposedly around 2.5' or so and there is a plastic riser above the hatch.
  • [X] Dig about 4' down at the metal bar location or until I hit something: This worked and I found the riser lid about 2.5' down. It looks like the lid might be a 24" Polylok 3008-RC.
  • [ ] If the above doesn't have positive results, in the location mentioned by the original owner, remove about a 5'x5' box to about 2.5' and continuously probe around while doing so.
  • [ ] If the above doesn't work, rent a medium sized backhoe and have the neighbor kid operate it to dig out the tank.
  • [X] Call back the septic service guy and reschedule a time to pump. Try to do so when it's not raining and tidy up the edges so mud and rocks don't fall into the tank during the pumping.

2018-05-21: Called and got in line. They'll call back with an appointment time, I guess.

2018-05-29: Septic tank pumped. The top of the tank is way down there, about 6-7' in depth. 4 or 5 risers are stacked on top of each other, and several of them are broken a bit. It appears these are then somewhat squishing the inlet pipe, which could potentially result in clogging (which in the worse case would result in sewage backing up into the house). However, I poked it free with a long rebar and it ran pretty smooth after that. Also, the original owner had definitely knocked a bunch of rocks into the tank. These clogged the hose at one point. The majority are right below the access hatch, but some are spread around it a bit too. The septic guy thinks I should redo the pipe and clear the rocks, which would be pretty expensive and require extensive excavation. He recommends a Mennonite named Gene at 304-359-0913 who can supposedly do everything. I'll think about this before I cover it back up. Note: From the riser cover, it goes straight down 9 feet or so into the tank. Be careful not to stand on this for safety reasons. Falling into the tank would mean asphyxiation and death. Find some kind of plate or wood or something to cover the ground above the riser.

3.10.16 DONE plant herbs

  • State "DONE" from "STRT" [2018-06-24 Sun 14:30]
  • State "STRT" from "TODO" [2018-05-08 Tue 21:02]

Lower priority than the garden, so I'll probably get to this late. Get perennials started first. Will take stock of what's left after this round and decide whether to plant more this year.


  • [X] Mint: Planted all in the long pot. Sprinkled remainder around house randomly. If these grow, I might migrate some to the main flower bed as ground cover.
  • [X] Thyme: Started one batch in a plastic container. Planted rest in right outside pot.
  • [X] Rosemary: Planted more in the pot that already has a few.
  • [X] Oregano: Planted in seedling starter. Will migrate outside and maybe put some in pots.
  • [X] Basil: Planted in seedling starter. Will migrate outside and maybe put some in pots.
  • [X] Catnip: Planted in improvised plastic container on porch.
  • [X] Lavendar: Planted in two pots on porch.
  • [X] Cilantro: Planted in center outside pot.
  • [X] Dill: Planted in left outside pot.

I think I'll just have the flower bed near the side door be the herb garden in the future. Managing all the pots is too much work. Next year, I'll plant everything directly outside and migrate any perennials. Then whatever survives can stay. The most I'll have to do then is just keep the weeds out of it.

3.10.17 DONE plant garden

  • State "DONE" from "STRT" [2018-06-24 Sun 14:34]
  • State "STRT" from "TODO" [2018-04-12 Thu 20:47]

Once I have all seeds and tools (or maybe even before then), get things ready for planting. Note that the previous owners strongly advise waiting until early May to plant anything outside.

  • [X] For each seed type, check whether I need to start it in a seed starter. Do so for the ones that require it. For the others, just set them aside: Done. Seed starter filled up. Had some extra space, so filled that with carrots and a few other things.
  • [X] Check out blackberry patch and weed it.
  • [X] Use shovel, fork, and garden rake to till the soil in the various plots.
  • [ ] Wait until planting time then plant everything. Use sticks, rocks, or ties to mark where rows are and make a map.
  • [X] Weed everything 1 or 2 times.
  • [ ] As plants get big, spread grass clippings around them to prevent weeds from growing.

Except for the tomatoes, things should be mostly hands-off if I do it right. Maybe create a follow-up task to record what does and doesn't work.

Main plot (from the west):

  • Radish, spaghetti squash, pumpkin.
  • Potato, nothing.
  • Dead okra, carrot.
  • Carrot.
  • Carrot, green pepper.
  • Carrot, sweet pepper.
  • Jalapeno, dead okra.
  • Sunflower.
  • Sunflower.
  • Sunflower.

Secondary plot:

  • Watermelon.
  • Watermelon.
  • Sweet corn.
  • Sweet corn, pumpkin.
  • Pumpkin.
  • Pumpkin.
  • Cantaloupe.
  • Cantaloupe.
  • Spaghetti squash.

Berry plot:

  • Blackberry x2, blueberry, some other kind of blueberry.
  • Sweet grape.

Raised plot:

  • 5-6 strawberries.
  • Cayenne peppers.

Animal pen:

  • Nothing.

2018-06-24: Carrots all got choked out by weeds. Will plant them earlier next year. Will also start inside plants (probably just tomato and peppers) much sooner, like early March. Next year, I'll also be planting various beans, beets, cucumbers, and peas to try those out too. Finally, I neglected to put grass clippings between the rows and had to keep hoeing down weeds as a result. Will do that part right next year.

I'm calling this task complete, but I'll still be tilling the unsuccessful strips and replanting more corn there.

3.10.18 DONE plant trees

  • State "DONE" from "STRT" [2018-07-09 Mon 22:17]
  • State "STRT" from "TODO" [2018-05-26 Sat 21:05]

Get some fruit and nut trees planted as soon as possible in the spring. These won't pay off for many years, but once they do, I'll have plenty of free food from them.

Get (maybe order bare roots from

  • [X] Pawpaw: Planted 2 east of garage. Had to fence these since the deer were nibbling on them.
  • [X] Apple: Trying a few red delicious seeds in a pot. The internet is conflicted on whether these grow into fruit-producing trees.
  • [X] Plum: Planted 2 NW of house. Southern one is a Superior plum, the other is Santa Rosa plum. Both are dwarf trees that will grow to about 10' high.
  • [X] Plant a few mulberries to see if they'll grow: Planted two clusters in small pots. Will transplant to something bigger if they sprout.
  • [X] Plant a cherry in a pot to see if it will grow: In pot next to porch.
  • [X] Get some protective fencing and/or something to wrap the trunks of the fruit trees in to prevent girdling.
  • [ ] Transplant a few evergreens from field to front of house:

Taking care of transplanted trees is a bit of work, so I'll do the rest of the trees later. I'd still like to plant: Pear, cherry, walnut, and almond.

For the evergreens, I'm going to grow a few of the different varieties on the property in pots and see which ones I like before planting them.

3.10.19 DONE clean stained ceiling drop tile

  • State "DONE" from "STRT" [2018-07-10 Tue 11:39]
  • State "STRT" from "TODO" [2018-07-09 Mon 22:27]

Looks like this has one of those circular water stains from a past sink leak above the basement living room. The internet says to make a 50/50 mix of bleach and water, put it into a spray bottle, and repeatedly spray the area. Let it dry in between applications. If there remains a ring at the end, use a q-tip with pure beach to touch it up.

Worked great. Didn't need to use the q-tip. Checked all other tiles in the basement and they're fine. Might use this method for any future stains on stuff like drywall.

3.10.20 DONE clean dirty spot on siding

  • State "DONE" from "STRT" [2018-07-10 Tue 12:02]
  • State "STRT" from "TODO" [2018-07-10 Tue 11:41]

The vinyl siding on the side of the house near the door has some discolored areas. Hopefully, it's just dirt that will come off with a good brushing. Will still do a full siding cleaning later, but this is the only spot that kinda sticks out.

This worked as planned. In fact, it was so easy, I'll go ahead and schedule cleaning the rest of it. I also need to pull the nails the previous owner used to hang stuff on the house side and patch them up.

3.10.21 DONE fix minor plumbing problems

  • State "DONE" from "STRT" [2018-07-17 Tue 11:26]
  • State "STRT" from "TODO" [2018-06-01 Fri 15:53]

There's many minor issues in the plumbing category that would be nice to have addressed.


  • Have master bathroom shower drip fixed or possibly replaced. Ask if I should get new shower head first on my own.
  • Tighten west master bathroom toilet.
  • Get side bathroom shower faucet drip fixed.
  • Fix loose faucet in side bathroom.
  • Fix low flow in downstairs bathroom faucet (probably clogged with dirt).
  • Downstairs faucet is also loose.
  • Tighten downstairs toilet.
  • Fix dripping pipe under master bathroom.
  • Ask about water heater rod and draining.

2018-06-01: Called D&D Plumbing ( and put the service request in. They'll call back to setup an appointment.

2018-06-21: Called back and restarted the process. They had apparently lost all record of my previous call. The returned the call and we have an appointment for 2018-06-26, unknown time.

2018-06-26: Water heater is from 2012 and should be fine. Downstairs toilet is tightened, side bathroom faucet tightened. Work done seems to have caused a leak in side bathroom sink on the hot line. Claims they will call back when they have the parts for the other stuff.

2018-07-06: Called back to see why we were never gotten back to.

2018-07-10: Called back again after still not hearing anything back. Receptionist said she would call the plumber right away and get back to me immediately.

2018-07-12: Got call back from plumber and scheduled appointment for 2018-07-17.

2018-07-16: Plumber called and confirmed arrival on 2018-07-17, between 0930 and 1000.

2018-07-17: All known problems are now fixed, finally. Billing incoming via email.

2018-07-26: Total was $350.67.

3.10.22 DONE clean vinyl siding

  • State "DONE" from "STRT" [2018-07-19 Thu 21:39]
  • State "STRT" from "TODO" [2018-07-12 Thu 09:48]

Just use water and the long brush. Most of the dirt on it is just dust that's blown onto it over the last 10 years, so if I can't reach some high places, it's not a big deal. Maybe do a final pass with a stiff brush to remove the remaining gunk spots.

Not a perfect job, but good enough for something outside. Used captured shower water to save some pump/filter power. Might do this every few years, as needed.

3.10.23 DONE conclude SUV acquisition

  • State "DONE" from "STRT" [2018-08-15 Wed 21:43]
  • State "STRT" from "TODO" [2018-03-26 Mon 21:47]

Made a tough call to cut losses on the CVPI, as it was turning into a money pit. Instead, I bought a 2015 Ford Explorer XLT with 57k and several extras like remote start and leather interior. Cost was $26k after fees and taxes.

To recoup some of these costs, we'll downgrade the vehicle plan to only have 2 total (this and one normal car). This might end up being the better plan in the long run and meet minimal needs adequately.

These are the post-purchase tasks needed to wrap up this effort. Once I do this stuff, I can just enter maintenance mode for the vehicle and forget about it for the most part:

  • [X] Deliver spare CVPI key and air filter to dealer: Delivered.
  • [X] Go to DMV and pay tax and get title for the CVPI: Done and gave title to finance person at dealership.
  • [X] Call car insurance and get insurance transferred to the Explorer, with the address set to WV. Email new insurance card to dealer finance person: Policy updated and email sent.
  • [X] Update vehicle on file at apartment complex: Done.
  • [X] Put floor mats in car: These are a little big, but still fit.
  • [X] Get second key: Also confirmed that I should receive title in the mail in the next week or two. Also got 2 extra license screws.
  • [X] Check tires for wear bars: These are present. Tires look new.
  • [X] Go back to dealer and ask about title, since it never showed up: They confirmed that they sent it in to the WV DMV.
  • [X] Get new temp tags/registration (due to them messing up my forms, which were resent on 2018-04-17):
  • [X] Wait for title, plates, registration, and stickers to arrive in mail: Acquired.
  • [X] Find service schedule for Explorer: The dealer has a system for regular service intervals (I assume) every 10k miles or so. There's a sticker on the windshield to this effect. I'll give this a try the first time and see how I like it.
  • [ ] Get WV inspection done:
  • [ ] Memorize keypad code:
  • [ ] Read manual:
  • [ ] Setup auto-pay for insurance:

Swapped this out for a new Ford F-150. Will make new task for that.

3.10.24 DONE Ford Explorer mods

  • State "DONE" from "TODO" [2018-08-16 Thu 00:31]

This vehicle is close to perfect as is, but there are a couple minor things I want to do to it, since I intend to keep it for a long time:

  • [X] Get filler plate for the front plate holder: Ordered a black Explorer one. Painted the spare screws black to match.
  • [ ] Get a tow package installed. Check cost in Winchester, VA. In Fairfax, it costs $800.
  • [ ] Maybe get better fitting floor mats and a pair for the middle row.
  • [ ] Get side windows tinted at the same % as the other windows. Get ceramic tint only. Maybe look online for advice on tint matching.

3.10.25 DONE get WV driver's license

  • State "DONE" from "STRT" [2018-08-20 Mon 13:36]
  • State "STRT" from "TODO" [2018-08-20 Mon 10:47]

I already have a valid VA license, so this shouldn't be too hard, just a big waste of time. Do this after I make a trip over there to check the mail (which will hopefully have the electric utility bill). Get one marked "For Federal Identification", which requires waiting until receiving it in the mail.


  • [X] Change car insurance to new address.
  • [X] Get a copy of the electric bill.
  • [X] Go over to DMV in Romney, WV. Bring:
    • Proof of identity: Birth certificate.
    • Proof of SSN: SS card.
    • Proof of residency: Requires 2, but bring 3, just in case.
      • Property deed.
      • Utility bill.
      • Car insurance card.
  • [X] Get voter registration done while there.

Got temporary driver's license. Permanent one will arrive in the mail at some point. I guess my voter card will too.

2018-08-28: Received voter's ID.

2018-08-31: Received permanent license, which is good for 5 years.

3.10.26 DONE no/less air conditioning

  • State "DONE" from "TODO" [2018-08-25 Sat 23:07]

I recall living without AC in most places as a kid and it was fine, so I can probably do it again. This will be especially easy without a job, since office thermostats tend to be set very low, making heat acclimation difficult. While it's nice that this saves some money (estimating $350/yr or so), I'm more interested in doing this so I'm not such a wimp about being outside for 4 months.

Since I do own an air conditioner, however, I may either use it extremely lightly or just for the hottest few weeks of the summer, depending on how this goes. I can also just sleep during the day and stay up at night to help. Electricity consumed for computers is less expensive then anyway. I also have a basement that will probably be cooler.

My main caveat here is that I don't want to do this if I'm so uncomfortable that I can't focus on writing code. Abort if that happens and go back to maximizing for physical comfort.

Start with using no A/C at all, and then only lightly if it starts getting unbearable (if used, set it very high, like above 82°F). Reevaluate after doing this for most of the summer and determine whether to adjust or include as part of the standard living practice.

Results: Went without A/C for most of the entire summer, only turning it on in the very hot weeks. I noticed that it's extremely hard to concentrate on programming or any other thought-intensive tasks when the ambient temperature is too high. So, I'll compromise on this to some extent. A lifehack I've been using is to just turn on the HVAC fan, which will circulate cool air from the basement. This usually gets me about -3° for nearly free. It only works for a few hours before the basement temperature normalizes, however this is usually enough to get it through the hottest part of the day.

3.10.27 DONE make Cafepress store

  • State "DONE" from "STRT" [2018-09-01 Sat 13:36]
  • State "STRT" from "TODO" [2018-09-01 Sat 12:27]

Had a few ideas for t-shirts.


  • Use ImageMagick to make backgrounds transparent: convert test.png -transparent white transparent.png

Made some and ordered one to test. I'll skip making the store though, since the company has a policy against designs hateful against groups of people or something silly like that.

3.10.28 DONE Ford F-150 mods

  • State "DONE" from "STRT" [2018-09-03 Mon 18:05]
  • State "STRT" from "TODO" [2018-08-17 Fri 22:02]

Will only make some minor mods. Might skip some of this:

  • [X] Get a spray-on bedliner installed. Scheduled appointment at LINE-X of Winchester for 2018-08-24T09:00:00. Signed up for the premium, which is an extra $100. Done and looks great.
  • [X] Get trailer hitch mount/ball: Got one from neighbor. It's a straight mount with two fixed balls, one 2" and one 1 7/8". It was a little dirty, so washed it, cleaned it with steel wool, and repainted it.
  • [X] Get filler plate for front. Ordered a custom plate from on 2018-08-17. Should arrive in 1.5 weeks or so. Turned out quite well. I might design other stuff there later.
  • [ ] Get side windows tinted: Decided to skip this, as the front windows did come at 70% from the factory.
  • [X] Get 5/8" hitch pin: Got a 5/8" x 4 3/4" clevis pin. Fits.
  • [X] Get ratchet straps: Purchased.
  • [ ] Get Setina PB400 push bar or Westin brush guard: Local shop doesn't stock Setina products. Not entirely sure if I want a Westin.

Will put off the brush guard for now while I think about it.

3.10.29 DONE make hot sauce

  • State "DONE" from "STRT" [2018-09-09 Sun 16:08]
  • State "STRT" from "TODO" [2018-09-09 Sun 13:03]

Try making a hot sauce out of cayenne peppers. Keep the ingredients simple for now, and maybe modify later, e.g. adding lemon/lime juice, cilantro, or other herbs. If this works, I might try growing a few different peppers for sauce next year.

Procedure used:

  • Chopped 10 or so peppers of varying sizes (mostly big ones) in a food processor. Put in small pot.
  • Added 3/4 cup of vinegar.
  • Added 1 tsp minced garlic.
  • Added 1/2 tsp garlic powder and 1/2 tsp salt.
  • Boiled on medium heat for about 25-30 min.
  • Noticed that most of the vinegar had boiled off, so added more.
  • Put back in food processor and turned into a chunky sauce.
  • Put back on stove for 10-15 min.

This creates some high quality hot sauce. I rather feel like I don't need to change anything about this. I'll maybe add some sodium benzoate to it next year, in order to create several bottles of the stuff and preserve it for later use. I'll just immediately use the bottle I made here.

3.10.30 DONE make salsa

  • State "DONE" from "STRT" [2018-09-10 Mon 12:49]
  • State "STRT" from "TODO" [2018-09-10 Mon 11:47]

Tomato inventory is getting a bit out of hand, so get some tortilla chips and make some salsa out of them. Note that salsa is a growth media for E. coli, so make small amounts and refrigerate leftovers.

Try something like this modified recipe from online:

  • 3 cups diced tomatoes.
  • 1/2 cup diced green pepper.
  • 1 cup diced onion.
  • 1/4 cup minced cilantro.
  • 2 tbsp lemon juice.
  • 1/4 cup cayenne and jalapeño pepper.
  • 1/2 tsp salt and 1/2 tsp black pepper.
  • Stir ingredients in a bowl.

This works great. Add some cumin and replace the lemon juice with lime juice next time.

3.10.31 DONE roast sunflower seeds

  • State "DONE" from "STRT" [2018-09-18 Tue 12:32]
  • State "STRT" from "TODO" [2018-09-18 Tue 10:09]

I've got tons of sunflower seeds from the garden. I'll save most of them for bird food over the winter. The rest I'll attempt to roast. The variety we grew seem to have both dark black and regular gray seeds. I'll mostly eat the black ones, since moths or something laid eggs in some of the gray ones.

Procedure used:

  • Boil some water in a pot.
  • Scoop measuring cups of sunflower seeds into pot.
  • For each cup, add 2.5 tbsp of salt.
  • Reduce heat to simmer and leave for 15-20 min.
  • Drain water from seeds.
  • Put on flat tray and roast in oven at 400°F.
  • After 12 min or so, test a seed every couple of minutes to see if desired dryness is achieved. Maybe move them around if there's a lot on the tray. Beware of over-roasting.
  • If seeds seem suitably roasted but I just want to dry them a bit more, leave the oven at 200°F with the door cracked open.

This works but I overcooked them the first time. If that happens, they're rather unpleasant to eat.

3.10.32 DONE get satellite internet service

  • State "DONE" from "STRT" [2018-09-30 Sun 18:53]
  • State "STRT" from "TODO" [2018-09-10 Mon 08:32]

DSL service can go out for days here, so satellite is worth it as a backup, since we need to stay reasonably connected for work. It'll also allow for fast downloading of data and to split usage across the services. Setup backup WAP to be used with this.

Went to the nearby reseller. Installation appointment for HughesNet scheduled for 2018-09-10T09:00:00.

2018-09-10: Installer never showed. Will call back tomorrow. Number on the business is 304-856-1100.

2018-09-11: Rescheduled for 2018-09-18T10:00:00 - 2018-09-18T11:00:00.

2018-09-19: HughesNet guy called and said he'd call back to schedule a time, probably for this weekend or next week.

2018-09-29: Appointment scheduled for afternoon of 2018-09-30.

2018-09-30: Service enabled. Had Exede dish and mount removed. Setup spare WAP for non-G adapters.

Throughput suffers a lot when it's cloudy, but it's still usable. Now we're immune to DSL outages and only need a generator to be immune to power outages.

3.10.33 DONE make crushed red pepper

  • State "DONE" from "STRT" [2018-10-23 Tue 12:50]
  • State "STRT" from "TODO" [2018-10-11 Thu 09:36]

This is a common cooking ingredient and condiment that I use on a lot of things. I have a ton of extra cayenne peppers, way more than I need for hot sauce, so I'll make this with the remainder. Unlike hot sauce, this is generally cheap to purchase, so it doesn't save a ton of money. On the other hand, I think the store-bought kind uses a milder pepper, so making my own still adds value.


  • Let peppers dry on the vine for awhile until pliable and not fresh and crunchy. This does result in the ones that touch the ground going bad, so check plants and harvest those for other use so they don't go to waste. If peppers are still a bit fresh, leave them out for a few days until they dry out some. This saves many hours of drying in the stove and the requisite energy.
  • Cover baking trays in aluminum foil. Can use multiple trays in the oven at the same time. If some are less dry than others, separate them into trays by dryness so it's possible to leave one batch in longer.
  • Lay out peppers in a single layer. Leave stems on them or just slightly trim them to save space.
  • Bake at 170°F for at least 5 hours, and probably several more. Peppers should be completely non-pliable and break apart when bent.
  • Put these in a food processor and pour into a jar for storage.
  • Leave foil on trays for cooking other stuff.

This works great and the resulting product looks just as good as the store-bought kind, but with a subjectively higher quality as well. Probably have enough for the rest of the year, but I'll probably be able to make another batch or two.

Note to self: Stake plants and trim the lower branches in the future. Cayenne peppers are quite long and need a lot of space to stay off the ground.

2018-10-23: A frost came early and killed all garden plants. Harvested the remaining peppers and will dry those. Unfortunately, some weren't ripe yet and were lost. However, I did get a ton of peppers from just the 6 or so plants I had, so I'm not complaining.

2020-06-04: Optimization: Removing the stems altogether before drying makes them dry faster.

3.10.34 DONE conclude truck acquisition

  • State "DONE" from "STRT" [2018-11-10 Sat 16:49]
  • State "STRT" from "TODO" [2018-08-16 Thu 11:04]

Though it would seem stupid to trade in a car I bought under a year ago, I ran the numbers on this and it's pretty close to even on trading in the Explorer and getting a truck now instead of later. Trading now: transaction costs, low depreciation, cheap or no trailer. Later: same transaction costs, high depreciation, more expensive trailer, and cost of tow package for SUV. Since I plan to keep the truck indefinitely, sooner rather than later seems the way to go. So, I picked out a F-150 XLT with the sport package.

Remaining sub-tasks:

  • [X] Go back in on 2018-08-17T12:00:00 and pick it up and drop off the SUV. Clean all stuff out of the SUV first.
  • [X] Call insurance company and switch insurance to new vehicle.
  • [X] Wait until I receive my permanent registration from WV and then put my WV plates on the truck. This took 6 weeks, but finally it did arrive via FedEx from the dealer. Next time, I'll skip the document fee and just do it myself.
  • [X] Get WV inspection. Done 2018-10-17.
  • [X] Memorize keyless entry code: Done

I did some measurements and the Mule should fit directly in the back of the truck. Therefore, I should be able to get away without buying a trailer, saving some money, maintenance, and licensing.

3.10.35 DONE get firewood

  • State "DONE" from "STRT" [2018-12-13 Thu 18:14]
  • State "STRT" from "TODO" [2018-12-02 Sun 22:33]

Need firewood for winter. Best to get it before mid-summer so it has time to dry out.

Bought an electric chainsaw (that shares batteries with the lawnmower) to fell trees and process logs when/if needed.

Contact info for local wood guy given by neighbor's son in

Called and setup for delivery on the week of 2018-12-10 (probably early in the week, like Monday or Tuesday). Gave name, address, and number.

2018-12-12: Wood delivery scheduled for tomorrow.

2018-12-13: Wood delivered. Still need to split it, read wood furnace manual, then get it running. Might try a test burn with some cardboard first to ensure flue isn't obstructed.

2018-12-31: Split all wood and ordered more. Splitting wood by hand is viable, but is very labor-intensive. Since it takes a few days to get through a truck-load, I bought a tarp to cover future piles while working on it.

3.10.36 DONE get wood furnace working

  • State "DONE" from "STRT" [2018-12-31 Mon 18:33]
  • State "STRT" from "TODO" [2018-12-02 Sun 17:13]

Apparently this thing hasn't been used in a couple years at least. I have one load of firewood, plus a couple trees and some wood that was already here.


  • [X] Split all wood: Splitting maul from Walmart works pretty good.
  • [X] Get a bottle of corrosion inhibitor: Local hardware store carries this.
  • [X] Figure out how to fill with water: This isn't setup for inside filling, which is definitely wrong. The only way to put water in is through the top steam vent. The water can be drained from the back by opening the secondary out flow valve (which isn't hooked up to anything). Use a bucket so as not to flood the area around the furnace.
  • [X] Test pump and fan: Works.
  • [ ] Test heat exchange: The pump is a recirculation pump, so it doesn't have the power to push air out of the high spot, which is on the HVAC unit. Need to get this re-done.
  • [X] Find someone to redo this system: Used neighbor's recommendation. Info in Satisfied with service.
  • [X] Test heat exchange again: Works.
  • [ ] Order another load of wood: Doing next.
  • [ ] Sharpen splitting maul: Put in vice and use a file.

Seems to work now. The only minor issue seems to be that the HVAC fan sometimes runs constantly when using a custom temp setting. That might be an electrical issue.

3.11 Macro-goals

3.11.1 DONE attain competence in new job skills

  • State "DONE" from "STRT" [2018-02-06 Tue 03:33]
  • State "STRT" from "TODO" [2014-04-16 Wed 10:45]

Hopefully a list of everything used is forthcoming and I'll update this then. I won't have a ton of time to work on this, but I'll use some of my free time on it and wrap the rest up on the job.


  • [X] Spring Security: Make a template/sample where this works with Compojure.
  • [X] Groovy: At least get comfortable enough with this to write/edit code. Will lazy-load the rest.
  • [X] monger: Get familiar with this. Will lazy-load deep knowledge.
  • [X] Ring: Do the task above.
  • [X] Compojure: Do the task above.
  • [X] Node.js: Shouldn't need to actually use this. But, I'll still install it and get used to npm.
  • [X] Docker: At least get familiar with the concept.
  • [X] Clojure: Finish reading The Joy of Clojure, at least.
  • [ ] MongoDB: Do the MongoDB task above.
  • [ ] Webpack: Do the Webpack tasks above
  • [ ] Lodash: This is the underscore.js superset being used.
  • [ ] Twitter Bootstrap: Read the docs.
  • [ ] Refresh JavaScript skills: Maybe read a book on ES6.

2018-02-06: Looks like I'll be able to make it out without finishing off the items on this list that I'm less enthusiastic about. Otherwise, I'd call this successful. At least, it was successful enough to get pretty awesome at functional software architecture and a few of the other things I actually do care about.

3.11.2 CNCL FreeBSD mastery

  • State "CNCL" from "TODO" [2018-02-23 Fri 10:40]

FreeBSD will be my primary OS, maybe for the rest of my life. I'm willing to invest several weeks in more study of it if it makes using it even better. I've already put a lot of time into it, and that's all paid off over time. This should take it to the next level.


  • [ ] Read The Design and Implementation of the FreeBSD Operating System (2nd Ed.). This should give a better understanding of the kernel and system architecture.
  • [ ] Build a more highly customized kernel, reading up on all relevant flags and hints in detail.
  • [ ] Go through all ports and see if there's anything useful I don't know about. Make a list of stuff to check out on a VM and another list of heavyweight applications to use only on VMs (maybe just in a GNU/Linux VM).
  • [ ] Once I have a finalized list of workstation software (which shouldn't be too different from my current one), install them all on my final setup and update
  • [ ] Read all documentation for each application.
  • [ ] Check out custom make flags for all applications. Recreate my /etc/ports.conf file.

Canceling this due to CoCgate/huggate. This is maybe a good lesson in not getting too heavily invested in something like an OS. I'll stick with my current and more pragmatic level of OS expertise in the future. I'll also apply that to other software too, with the only exception being Emacs.

3.11.3 DONE year-end review for 2018

  • State "DONE" from "STRT" [2019-01-06 Sun 23:53]
  • State "STRT" from "TODO" [2019-01-06 Sun 23:40]

Context: I made up for a disappointing 2016 with a super-productive 2017. The future is bright if I can keep up, or even build upon, that momentum. There's plenty of room for improvement still too. In 2017, I had several periods of low productivity, either for playing games or getting mired in distractions, and I've had several other parallel efforts not tracked here. Work has also been especially draining. Acknowledging all of that is this year's master plan. Generally, I intend to take care of many long-running issues and start tackling some extremely tough efforts.

Goals for 2018, now ordered by priority:

  • Distraction management: If I thought there were a way to build up distraction immunity, I'd work on that. Maybe I'll think about that some. In the meantime, I have a good plan. Here's a refined version of the plan from last year:
    • Actively ignore all popular media about everything, especially general interest and news sites. Be in ignorance of national and global news.
    • I have a few feeds very narrowly focused on just my active interests. However, it's probably still best to ignore these. I should only catch up on them when I have a few minutes that would otherwise be wasted, like if using the bathroom. I value mental downtime too, so that's not critical either. I'm also implementing blocking sites via the hosts file.
    • Only venture onto the general web when seeking information or asking questions where I cannot get the answers elsewhere. Video should only be used for quick tutorials on real-world tasks I lack experience in, like repairing something or operating some machinery.
    • Scale effort wisely. Not all topics need completionist achievements. When a half-assed job makes sense, do that.
    • Maximize use of Unix machines. Only use Windows box for dedicated tasks like VMs and games. I use the VMs there for work sometimes, so once that's over, turn the Windows box off when not using it to save power and raise the overhead of playing games.
    • Have a max of 1 active game at a time.
    • Have a max of 1 active non-CS/programming book at a time.
    • Take breaks between games and normal books. While having something non-work related to go to is nice, they have their own mental overhead.
    • Put even more effort into sticking to this plan. This works. When I deviate from it, distractions predictably parasitize my time once again.
  • Health: The #2 priority after distraction management (since everything else depends on that). This has the greatest ROI in terms of quality of life among anything I could do next year. Points:
    • I expect active improvement every week starting week 2 of 2018.
    • Get a treadmill or some other piece of aerobic equipment for the new house.
    • Grab the weight set from parents and put it in the new house.
    • Every day, max food consumption is 1 full meal and 1 light meal. Aim for 2 light meals or 1 full meal. A complete light meal is defined as one dose of Soylent or normal food under 600 calories total.
    • Get a mountain bike for riding around the new local area. Find out which roads are safe for doing so. See if I can go to any stores just on bike. If so, I'll do as many errands that way as possible, even if it costs more.
    • Switch normal food consumption away from so much prepared and frozen food. Make things like mashed potatoes, veggies, and other dishes that combine into multi-item meals.
    • Goal: Weight <190lbs.
  • Post-work:
    • Finish acquiring property. This is already in motion. I'm hoping this goes snag-free, but it apparently does require a lot of manual oversight. Managing this via org-mode seems to be working great. Since there's a rent-back agreement, this will stretch out until at least mid-April. That's a significant chunk of the year, so try not to let it consume too much overhead. However, I do want to default to making sure it's all done right.
    • Quit work. If I can, I'll stick around a little after moving to pad out the liquid funds and get a few items I could use. However, don't do this for more than a few months, at the absolute max. After that, I will definitely not do any W-2 work until 2019-08 at the earliest, and will maybe never do any. I'll not plan that far out now though.
    • Execute sub-tasks in post-retirement life optimization task.
    • Figure out what it means to own a huge property with various outdoor goals. Figure out what those goals even should be. This is intentionally vague since I haven't done any of this stuff since I was young. Maybe start from the way the family did things then as a baseline and branch out from there.
    • Resurrect my atrophied real world life skills. At least get to the point that I can confidently perform any property and life m