Agile methods emphasize individuals and interactions, working software, customer collaboration, and responding to change. Embedded systems need to “Do it right the first time,” because the cost of change is so high. Still, we need to be able to respond to change. What practices from the Agile community have application to embedded systems development? This paper discusses iterative approaches that let projects show progress, even in the absence of hardware or if the original set of requirements are unrealistic.