Text this: Reconsidering Program Design