Skip to content

Instantly share code, notes, and snippets.

W. Caleb McDaniel wcaleb

Block or report user

Report or block wcaleb

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
wcaleb /
Last active Mar 4, 2016
Links for Trinity Presentation
wcaleb /
Last active Feb 17, 2016
A draft rubric for writing students on being aware of audience

Audience Awareness

Persuade or inform varying audiences based on an awareness of their expectations, prior knowledge, and possible beliefs.

Practiced writers and presenters analyze their audiences and address them accordingly. But in the beginning, novice writers are often so focused on what they know or want to say that they forget to think about whom they are addressing.

For example, in their eagerness to share in detail what they know, novice writers may spend too much time on facts the audience already knows, or they may develop their points for longer and in a different tone than the audience expects. On the other hand, a novice writer may assume too much about what the audience knows or expects and therefore neglect to explain unfamiliar topics, to choose understandable words, to cite sources correctly, or to persuade the audience that the author's subject is important. Such examples of mismatch between an author's work and the audience's expectations typically arise when the author has th

wcaleb /
Last active Feb 9, 2016
Draft of a student rubric on effective communication

Effective Communication

Convey your ideas verbally with correct grammar, clear organization, fluid style, and appropriate degrees of emphasis.

Whether communicating in writing or orally, effective communication requires ongoing attention to multiple levels of your presentation, from the level of the sentence all the way up to the level of the presentation as a whole. Communication is ineffective when it violates rules of correct communication and/or veers from widely accepted principles about how to present ideas.

wcaleb /
Created Feb 2, 2016
Draft rubric for writing students on taking positions

1. Position Taking

Take complex, original positions that derive logically from available evidence and account for other plausible positions.

Emerging Practice: When you are just beginning to learn how to take positions in your writing, you may find yourself producing work that merely shares information or reports on positions that other writers have already taken. Novice writers make lots of points in their work without connecting them together to stake out a coherent, complex position to which all the points contribute. A piece of writing with lots of "points" but no "position" also tends to rely on assertion and generalization: instead of showing why something is the case, novice writers simply say that it is the case, relying on imprecise appeals to common sense or overly simplistic theories of explanation, instead of on specific available evidence and logical reasoning. They pay little if any attention to alternative interpretations or explanations of the same evidence, either because the

wcaleb /
Last active Oct 23, 2015
Pandoc filter to replace Link URLs with Wayback Machine URLs
# -*- coding: utf-8 -*-
# Usage: pandoc input
# Install pandocfilters and requests with pip before using
# Warning: may take a while to process input with lots of links
# Note: Links that can't be saved to WBM or already point to WBM are left as is
from pandocfilters import toJSONFilter, Link
import requests
wcaleb /
Last active Jun 7, 2018
Quick script to save URL to Wayback Machine
#! /usr/bin/env python
import sys, requests
# Usage: Pass URL to script, get back URL to Wayback Machine snapshot
base_url = ''
r = requests.get(base_url + '/save/' + sys.argv[1])
if r.status_code ==
wcaleb /
Last active Aug 7, 2019
BaDunc Hack-a-Thon 2015

The inaugural Baker-Duncan Hack-a-Thon begins Sunday at 1 p.m. and runs through Monday at 8 p.m. Let's see what we can build together that will improve our lives in the colleges! Read on for more details, and contact Caleb McDaniel (Duncan) or Stephen Bradshaw (Baker) with any questions.

Three Ways to Participate

Everyone from Duncan and Baker is welcome (even if you haven't signed up) and there are lots of ways to participate! You are NOT required to have technical experience or any experience with hack-a-thons to participate in BaDunc Hack.

Join a Team

In a typical hack, small teams of two to five people work to create something new over the course of the hack-a-thon. Our challenge to BaDunc teams is to use code, data, or just some focused collaboration to build something that will improve the quality of life for students at Baker and Duncan, whether that be a new web app,

wcaleb / mail.vim
Created May 18, 2015
mail.vim customized for format=flowed; put in .vim/ftplugin directory
View mail.vim
" Vim filetype plugin file
" Language: Mail
" Maintainer: Bram Moolenaar <>
" Last Change: 2009 Jun 03
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
let b:did_ftplugin = 1
wcaleb /
Last active Aug 29, 2015
Post a tweet when my research wiki is updated
# I run a wiki on Gitit at It's usually
# updated by pushing to the wiki's remote git repo from my local machine.
# I have a `post-receive` hook in that repo that runs this script, like so:
# unset GIT_DIR
# python /path/to/
# Now, whenever I push to the repo, the script looks to see which files have
wcaleb /
Last active Aug 29, 2015
Draft Rubric for Empathy

3. Empathy

Look for the potential strengths and insights offered by alternative points of view on or in the past, even or especially when they conflict with your own or conventional understandings.

Empathy is an intellectual and imaginative skill that is required both when reading sources created in the past and when reading secondary sources created by other historians. Though often confused with "sympathy" or "positive feeling," empathy means understanding and entertaining even those points of view with which you disagree; it does not require or necessarily imply agreement.

A novice historian who lacks this skill tends to judge the decisions and ideas of historical actors according to his or her own present-day opinions, which are sometimes conflated in the novice's mind with "common sense" or "just the way it is." Beginners are typically not very interested in seeking out multiple perspectives on an issue; they identify the actor or historian whose perspective they most agree with, and then disco

You can’t perform that action at this time.