How to Program a SmartPhone: OpenMoko Sneha Gopinath WINLAB, Rutgers University Acknowledgements: Pravin Shankar, Department of Computer Science, Rutgers.