Mobile devices are becoming indispensable tools for many students and educators. Mobile technology is starting a new era in the computing methodologies in many engineering disciplines. Students and scientists are becoming more interested in learning how to develop their own applications on mobile platforms. This paper presents an innovation in teaching and learning principals of Android-based Java programming. A course material is developed “Introduction to Programming Java on a Mobile Platform” to teach novice programmers how to create applications in shorter than traditional time. This work also provides techniques for instructors with modest programming background to teach cutting edge technology, which is smartphone programming. Techniques developed in this work minimize unnecessary information carried into current teaching approaches with hands-on practice. It also helps the students with minimal background requirements overcome the barriers that have evolved around computer programming. The motivation of this work is to create a tailored programming introductory course to teach Java programming on Android by incorporating selected efficient methods from extant literature. The proposed mechanism is to keep students motivated by an active approach based on student-centered learning with collaborative work. Teamwork through pair programming is adapted in this teaching process. Bloom's taxonomy, along with a knowledge survey, is used as a guide to classify the information and exercise problems. A prototype curriculum is a main deliverable of this work that is suitable for novice programmers-such as engineering freshmen students.