Applications for embedded networked sensors must run well on resource-poor, unmaintained, environmentally exposed, and unreliable hardware. These hardware constraints rule out many traditional approaches for improving programmability, since they impose high runtime cost. As a result, system specialists must be involved in every stage of application development and deployment, and scientists cannot construct sensor applications on their own. This limits how well sensor networks can solve real scientific problems, since deployment is gated on the involvement of a few systems experts. This research program uses programming language technology to make efficient sensor network applications easy to deploy and tune. A set of new sensor components and a higher-level programming language for component configurations combine to form smart, efficient libraries of application-level services. Using these services, scientists can define an optimized application in just two or three lines of code, enabling quicker application deployment and tuning for different field conditions and, thus, more responsive science. The project will produce a new TinyOS component library, a sensor network programming language (SNACK) and compiler, a set of SNACK services designed for different application types, and several sample applications, including some designed for classroom use. All of the code will be freely and widely distributed.