This course is a novice-friendly and delightful introduction to computer science and programming Android-apps for smart-phones and tablets. No prior programming knowledge is necessary. In this course you'll have fun learning to create an app for modern Android devices such as the Nexus tablet. You'll use the programming tools that Android software developers use and build a complete and useful app during this course. Along the way, we'll introduce fundamental computer science principles and programming ideas that power todayâ€™s smart-phone and tablet apps. A reasonably modern and powerful Linux, Windows or Mac-OSX computer is required. A modern Android tablet or phone (such as the $199 Nexus 7) is useful but not-required because youâ€™ll be able to use a virtual device that runs on your computer.