Recent Posts

Bad dog! Practice your Spanish flashcards

I wrote baddog.py to manage my time a little better. It wont let you download textbooks into your brain or even let you leave work early, but it does annoy you if you slack off online before finishing your to-do list and that might add up to a new skill in a year.

Expert System for Picking Outfits (#1)

This is the first of a series of posts walking through how I built a robot valet that picks clothing combinations. This post picks safe outfits, but structures the knowledge base that eventually can pick interesting outfits.

Extending IPython to run Prolog from a Jupyter Notebook

This post will walk through creating an IPython magic command to run code like this from a Jupyter notebook.

%%prolog
sandwich(caprese).
sandwich(reuben).

run:-
  findall(X, sandwich(X), Y),
  write(Y), nl.

:- initialization run, halt.

Solving a Logic Puzzle with Prolog

Have you ever run into a puzzle where you have a list of people that got scrambled up but you managed to keep track of some clues about who is who? This post walks through writing a fast constraint solver for a Zebra puzzle.

Finding Senators with Gap Terms on Wikidata using SPARQL

A few days ago, I went in search of United States senators who had pulled a [Grover Cleaveland](https://en.wikipedia.org/wiki/Grover_Cleveland) and served multiple non-consecutive terms. I couldn't think of any examples, but it's happened a lot of times including recently with senator Dan Coats (R-IN) who was a senator from 1989 to 1999 and from 2011 to 2017.

Finding Senators with Gap Terms on Wikidata using SPARQL

A few days ago, I went in search of United States senators who had pulled a Grover Cleaveland and served multiple non-consecutive terms. I couldn’t think of any examples, but it’s happened a lot of times including recently with senator Dan Coats (R-IN) who was a senator from 1989 to 1999 and from 2011 to 2017.

Script to Publish a Jekyll Post

I really hate typing dates. Home row is easy, but I typo numbers and symbols frequently. After publishing two posts manually, I decided to look for a script to help out and found jekyll-compose which has similar command under publish. Unfortunately, it didn’t timestamp the files and it didn’t intend to integrate with any SCM.

Measuring Productive Time with Arbtt

Nick Winter and Seth Roberts have written extensively about a system they call percentile feedback. Each day, they log the many times they start and stop tasks that they categorize as productive or unproductive. At a given moment, they can make statments like “I’ve done more work since I woke up than I have done by this point in 70 percent of days.”