Blog Articles 71–75

Chili

I made some chili. People generally liked it, and were interested in the recipe, so here it is.

Derived from a recipe on Oh She Glows, in turn adapted from Maintenance with Ashley.

The spices are pretty flexible.

  • 1 tbsp oil
  • 2 cloves garlic, minced (or just some minced garlic)
  • 1 orange bell pepper, chopped
  • 1 poblano pepper, chopped
  • 1 sweet onion, chopped
  • 1 shallot, chopped
  • Some chopped carrot
  • Cumin
  • Chili powder (lots of it)
  • Salt
  • Dash of cayenne
  • Some Mexican oregano
  • Grains of Paradise
  • Beans — more on this below
  • 1 large but not industrial can diced tomatoes with juice
  • 2–3 baby bella mushrooms, cut up
  • 1 tbsp unsweetened cocoa powder
  • Squirt of lime juice
  • 1C vegetable stock

Git Tricks: git-summary

Mercurial has a useful command, hg summary, that prints out some basic information about your current repository status. git status prints most of this information, but omits some useful details such as the ID and message of the most recent commit.

The following shell script will fix this, printing the current commit followed by the output of git status:

#!/bin/sh

HEAD_REV=`git rev-parse --short HEAD 2>/dev/null`
if [ "$?" -ne 0 ]; then
    exec git status
fi
HEAD_MSG=`git show -s --format=%s HEAD`

echo "Parent revision is $HEAD_REV: $HEAD_MSG"
exec git status

Save this script somewhere on your $PATH as git-summary (~/bin is a good option). If you are on Windows, save it in a file called git-summary in the usr\bin subdirectory of your Git installation (often C:\Program Files\Git). Then you can run git summary to see this augmented display:

Search and Recommendation

Search and recommendation are very interrelated concepts.

What is search, but query-directed recommendation? Or recommendation, but zero-query search?

My students asked me about this relationship in my recommender systems class last spring. Trying to answer this question brought me to a formulation that seemed to help them, and perhaps it will be more broadly illuminating as well. For some of you this may well be old hat.

Organizing and Documenting Work

My second-year evaluation packet is due in a couple of weeks. A lot of my materials were in order; I took the time to reorganize and backfill my archive, so the next review submissions will hopefully be pretty easy. And there will be many of them: reappointment reviews until tenure, annual performance reviews to determine pay raises, the Big One for tenure and promotion itself, and hopefully someday an application for Full Professor.

The two biggest problems for preparing these packets seems to be maintaining a complete log of relevant activities, and maintaining supporting documentation for them. Given the importance of these reviews, and the many other activities that require some form of CV or snapshot of accomplishments, it seems worth some up-front investment in tooling and organization.

Here’s how I do it.

Why User Control in Recommender Systems?

The theme of my RecSys 2015 paper, along with the other papers in its session, is on giving users control over their recommendation experience.

Why do we want to do this? Isn’t the idea of recommender systems to figure out what the user wants and give it to them, without needing significant intervention?

There are a few reasons I think user control is an important research direction for recommender systems. First, different users have different needs, and different algorithms have different strengths. This is the idea behind McNee’s human-recommender interaction framework, and the thesis and results of several of my experiments. So far, we don’t have good meta-recommenders for identifying which recommender will best meet a particular user’s needs, so giving them control is a way to punt on this.

First-and-a-half, if we give users control in the short term, then we can obtain more training data to develop potential meta-recommenders to provide a better user experience.