Katsuno and Mendelzon have distinguished two abstract frameworks for reasoning about change: theory revision and theory update. Theory revision involves a change in knowledge or belief with respect to a static world. By contrast, theory update involves a change of knowledge or belief in a changing world. In this paper, we are concerned with theory update. Winslett has shown that theory update should be computed `one model at a time.' Accordingly, we focus exclusively on the update interpretations. We begin with a study of revision programming, introduced by Marek and Truszczynski to formalize interpretation update in a language similar to logic programming. While revision programs provide a useful and natural definition of interpretation update, they are limited to a fairly restricted set of update rules. Accordingly, we introduce the more general notion of rule update - interpretation update by arbitrary sets of inference rules. We show that Winslett's approach to update by means of arbitrary sets of formulas corresponds to a simple subclass of rule update. We also specify a simple embedding of rule update in Reiter's default logic, obtained by augmenting the original update rules with default rules encoding the common-sense law of interia - the principle that things change only when they are made to.