The Berkeley Ninja Project - Goals Enable arbitrarily powerful services from small devices User device acts as secure front-end Computing done in the infrastructure Ninja is about building up this infrastructure Service code itself is short Infrastructure provides enough to make services... Scalable Highly-Available Fault-Tolerant Customizable Universal architecture for Internet-scale services Programming model, execution environments Support for wide range of user devices Automatic service composition Extensible to as-yet unknown application areas