Opportunities for android projects in a CS1 course

Mobile devices have become ubiquitous in our daily lives and are replacing the desktop for email, social networking, daily planner, and so on. A typical mobile device now integrates a wide range of accessories, such as camera, GPS receiver, accelerometer, and offers a touch-screen with gesture-based interaction. This makes mobile devices an exciting platform for software development and programming projects for mobile devices have great potential to provide engaging experiences for computer science majors. This paper describes a pedagogical tool for introducing Android in a traditional CS1 course. The goal is not to teach Android programming, but to create a framework that integrates seamlessly with the CS1 course structure and supports the introduction of the fundamental computer science concepts by creating an engaging learning environment. The framework enables the students to port their CS1 projects to an Android device with minimal effort.

[1]  Sarah Smith Heckman,et al.  Teaching second-level Java and software engineering with Android , 2011, 2011 24th IEEE-CS Conference on Software Engineering Education and Training (CSEE&T).

[2]  Stanislav Kurkovsky,et al.  Engaging students through mobile game development , 2009, SIGCSE '09.

[3]  Stephen H. Edwards,et al.  RoboLIFT: engaging CS2 students with testable, automatically evaluated android applications , 2012, SIGCSE '12.

[4]  Eric S. Roberts A C-based graphics library for CS1 , 1995, SIGCSE '95.

[5]  Qusay H. Mahmoud,et al.  Mobile Devices in an Introductory Programming Course , 2008, Computer.

[6]  Krishnendu Roy,et al.  App inventor for android: report from a summer camp , 2012, SIGCSE '12.

[7]  Elliot B. Koffman,et al.  simpleIO: a Java package for novice interactive and graphics programming , 1999, ITiCSE '99.

[8]  Paul V. Gestwicki,et al.  Studio-based learning and app inventor for android in an introductory CS course for non-majors , 2013, SIGCSE '13.

[9]  Jogesh K. Muppala Teaching embedded software concepts using Android , 2011, WESE '11.

[10]  Susan Loveland,et al.  Human computer interaction that reaches beyond desktop applications , 2011, SIGCSE.

[11]  Eric Roberts,et al.  Designing a Java graphics library for CS 1 , 1998, ITiCSE '98.

[12]  John Zelle Python Programming: An Introduction to Computer Science 2nd Edition , 2010 .

[13]  David Wolber,et al.  Novel approaches to CS 0 with app inventor for android , 2010, SIGCSE.

[14]  Stephen H. Edwards Re-imagining CS1/CS2 with Android using the Sofia framework (abstract only) , 2013, SIGCSE '13.

[15]  Qusay H. Mahmoud,et al.  An academic kit for integrating mobile devices into the CS curriculum , 2009, ITiCSE '09.

[16]  David Wolber,et al.  App inventor and real-world motivation , 2011, SIGCSE.

[17]  Derek Riley,et al.  Using mobile phone programming to teach Java and advanced programming to computer scientists , 2012, SIGCSE '12.

[18]  Jeremy Andrus,et al.  Teaching operating systems using android , 2012, SIGCSE '12.

[19]  James B. Fenwick,et al.  Teaching mobile computing and developing software to support computer science education , 2011, SIGCSE.

[20]  Michael Spear,et al.  Reading mobile games throughout the curriculum , 2013, SIGCSE '13.

[21]  Qusay H. Mahmoud,et al.  Integrating BlackBerry wireless devices into computer programming and literacy courses , 2007, ACM-SE 45.

[22]  Kim B. Bruce,et al.  A library to support a graphics-based object-first approach to CS 1 , 2001, SIGCSE '01.