Academia.eduAcademia.edu

Teaching Mobile Computing: Six Years later

This paper is a follow up to presentations made in 2010 and 2014. Since 2008, Apple iOS devices have become an integral part of student learning experiences at Abilene Christian University (ACU), with all incoming freshmen being required to have one of these mobile devices. This paper shares the experiences of the authors from teaching an undergraduate introductory course on mobile computing at ACU since 2009 to the present. Discussed within this paper are the authors' experiences meeting the challenges of the rapidly developing landscape of mobile application development. The paper concludes with a direction for future courses in mobile computing.

Teaching Mobile Computing Six Years later Barbara N. Martin, EdD University of Central Missouri Bmartin @ucmo.edu Brian G. Burton, EdD. Abilene Christian University [email protected] Abstract— This paper is a follow up to presentations made in 2010 and 2014. Since 2008, the Apple iOS devices have become an integral part of student learning experiences at Abilene Christian University (ACU), with all in-coming freshmen being required to have one of these mobile devices. This paper shares the experiences of the authors from teaching an undergraduate introductory course on mobile computing at ACU since 2009 to the present. Discussed within this paper are the authors’ experiences meeting the challenges of the rapidly developing landscape of mobile application development. The paper concludes with a direction for future courses in mobile computing. Keywords; mobile, learning, development, programming I. computing, Apple, app INTRODUCTION Lippincott [1] noted, “As devices with compelling new features emerge and wireless connectivity is almost ubiquitously available, we may be on the verge of a revolutionary phase of mobile device impact on higher education and libraries (p. 205). With advances in wireless technology, a variety of wireless devices including Personal Digital Assistants (PDAs), iPhones, iPod touches and iPads are now pervading the world of computing. Consequently, “Over the past several years, we have watched mobiles become ever more capable and more common. The rapid pace of innovation in this arena continues to increase the potential of these little devices, challenging our ideas of how they should be used and presenting additional options with each new generation of mobiles” [2]. Roschelle [3] further accentuated mobile devices will succeed to the extent that appropriate mutual engagement of a teacher and students exists that emphasizes learner centered practices that value the student’s individual development. In fall 2008, ACU became the first university to distribute Apple iPhones and iPod touches to all of its incoming freshman class. This paved the way for the university to explore a new vision for mobile learning, and gave rise to integration of technology and learning in and out of the classroom. The initiative started with the introduction of a portal, ACU Mobile (http://m.acu.edu), which would help connect students to the campus through news and calendars, course documents and media, in-class surveys and polls. Over the last six years, ACU has perpetuated this initiative with subsequent in-coming freshmen. While ACU was immersed in the pervasive use of iPhones, iPod touches and iPads, initially not much was been done in terms of integrating formal coursework instruction in developing applications for mobile computing. Our 2010 paper shared experiences of the authors from a three-week lab-intensive undergraduate introductory course on mobile computing which was designed for information technology (IT) students. A brief overview of the objective and structure of that course will be presented, followed by the software platforms that were utilized during the conduct of the course, and the lab assignments and projects that were done. This will be followed by the challenges that have faced the authors as the use of mobile devices has expanded across the campus and the observations of learner centered activities within the course. Finally, the paper concludes with a direction for future courses in mobile computing at ACU. II. COURSE OBJECTIVE AND STRUCTURE The objective of the course was straightforward by design: “To provide the students with a framework within which they could develop applications for the iPhone, iPod Touch, and iPad.” It was important to the developers that the course be balanced in addressing theory and application. We did not want to produce students that were only capable of programming on this one type of mobile technology. We also did not want to make the course theory intensive with no connection to application of the theory. For the first iteration, it was taught to IT majors in an intensive 3-week, 4 hours a day, and 4 days a week summer class. A. Software Platform The first iteration of the course was taught on iMac computer systems utilizing version 2.1.1 of the Apple iPhone SDK that was included as part of the University Developer’s license at the time of the course. Sample code for students‟ review was also included as part of the installation on each system. As the SDK includes a simulator, and the majority of these upperclassmen did not have mobile devices, the iPhone simulator was almost exclusively for testing purposes during the course. B. Course Assignments At the beginning of the course, the faculty had planned for four assignments, a mid-term exam, and a final project that was to be presented before an invited group. During the short time frame of the course, some of the original planned projects were modified to accommodate student interest. The four projects were designed to be increasingly difficult and to motivate the students to a deeper understanding of the concepts being covered without becoming too frustrating. On the first day of class, students completed a simple “Hello World” project to help them become more familiar with developing in the Xcode IDE environment. Many of the students were interested in animation and game development for the mobile devices. While we had initially planned another programming project for the students, we instead gave the students a tutorial on developing a tennis game [4]. The students were instructed to successfully re-create the game and then to modify or augment the game. This became one of the most popular assignments for the students. Many of them have continued to augment their games well beyond the end of the course. The third project was intended to be a project that involved the students accessing a database and building a table. Following the local Library Consortium visit with our students, the students asked to take on the Library Consortium’s project as a group project in place of the table assignment. This involved connecting to an external database and creating the table information that could then be displayed to the user of the application. While the initial open source project provided by the Washington D.C. Public Library [5] provided a framework for the students to work from, the students found the project challenging and rewarding. They were excited to be able to create a project that would be of use by the entire local community. We found that the project engendered a great deal of good will for our course, the College, and the University. For the fourth project, we challenged the students in the class to create a simple drawing program on the iPhone and iPod Touch. The majority of the students were able to quickly finish this project, thanks to their earlier work on the tennis program. C. Term Projects As various departments around our campus became aware of the course, we had many requests for specialized applications to meet specific needs on the campus. Our original concept was that we would allow the students to develop their own final project for the course (with faculty approval). Due to the intense interest, we invited several of the departments to present their concept to the students. If the students liked the concept, they would work with the department to further develop the project to becoming an application. Two of these outside projects were selected and further developed by students in the class. The first was the Library Consortium project which became the third project. The second project selected was designed to provide an easy way to submit or receive campus announcements of various types. Students also completed projects in developing their own games, a voice board application that allowed the playing of famous quotes, a tool for students to learn more about their professors, as well as an application for farm management. D. Evaluation Students were required as part of the course to present their final project. We had originally anticipated that this would have limited appeal and attendance. Our plan was to invite the departments with whom the students had partnered and the instructors. As the course continued to develop and excitement about the course sustained, key members of the university administration requested that a more formal presentation be made inviting members of the local media. The presentations were a resounding success. The students did an excellent job showing their projects to the local television newspaper and campus news organizations. While ACU no longer continues to make a commitment to mobile computing throughout the campus, the use of mobile devices has become an integral part of the pedagogy of many of the faculty. From an institutional standpoint, several issues had to be addressed in the continuation of teaching a mobile application development course that had not previously arisen: ownership of student’s work, publication of apps developed for the university, and appropriate availability of hardware and software. From an instructor’s point of view the instructors considered how other courses could be enriched by integrating mobile computing into them and how student and teacher engagement could be enhanced through learner centered practices. III. THE NEXT GENERATION: CHALLENGES A. Ownership of Student Work Students were understandably concerned about creating projects that they were vested in and hoped to market. After reviewing ACU‟s documents concerning ownership of student projects we found that unless specifically stated in the syllabus, students retain ownership of projects that they create. While this is not the case at many universities, our students (as well as faculty) were relieved to learn that they retained full rights to their projects. Before instituting similar classes at other universities, we recommend fully investigating this the institutions policy ownership of student work. B. Publication of Applications Developed for the University Another major concern was the publication of software that would be used university wide. We felt it was inappropriate that the students who developed an application that would be used by the university community be expected to publish (and possibly maintain) the application. With graduation looming for many of the students, such a consideration was impractical. Beyond this consideration were also the concerns of copyright (if a student broke copyright creating an application that they created for the university) as well as presentation materials that would represent the university. Fortunately ACU has a central location in which such projects could be funneled, with a staff/administrative person being able to take final authority in whether an application would be published by the university. C. Hardware and Software Availability Another initial problem that had to be resolved was lab availability. Like many traditional computer science degrees, our labs were (at least at the time of course offering) all windows based. With the expectation of using the Apple SDK, having a Macintosh computer with the current operating systems is a requirement. Fortunately the English department on campus had a lab of Macintosh computer systems available during the time of our course. One result of this course was to build inter-collegiality between departments on the campus. With so many faculty and staff having great ideas for developing that killer app, we found it a wonderful opportunity to develop relationships across the campus. Thanks to the initial iteration of the course, the College where the iSchool resides saw fit to replace a small PC lab with Apple Macintosh computer so that future Mobile Computing courses could be taught within the college. D. Integrating Mobile Computing into other Courses Mobile computing is not only pervasive in use. It also permeates computing instruction in various other related CS and IT courses. User interface design is an area in which mobile computing can be integrated. With so many users using a mobile application, the user interface better be user friendly and usable. Pervasive use of mobile applications is justification enough for them not only to be user-friendly but also effective, reliable, and meeting requirements specifications. This means they should not fail, and should accomplish their designed task easily and efficiently. Mobile computing thus integrates well with software engineering, which helps students to understand how mobile computer systems are developed to meet real business needs. Issues of how mobile computing systems are deployed at an enterprise level can also be covered in a software engineering course. Mobile computing also lends itself to the distributed computing paradigm. Despite the differences between mobile systems and traditional distributed systems, distributed languages have been developed that are suitable for mobile computing [6]. As the need for universal access and management of information increases, the area of database systems continues to evolve and advance to support current real-world situations, which include mobile computing. Topics such as wireless communication and data processing and mobility are now being integrated into database systems courses [7]. The design and implementation of data management applications for these systems is a task directly affected by the characteristics of the wireless medium and the resulting mobility of data resources and computation [8]. There are many other areas in computing instruction to which mobile computing can be integrated. E. Later Challenges Encountered After five years of teaching Mobile Computing courses, a few additional challenges have arisen. While none of the challenges are particularly surprising, these internal and external pressures have continued to shape the associated courses. F. Demand for Depth and Breadth Soon after completing the first course in mobile computing it became apparent that more depth was needed beyond the one course offering. We needed our students to integrate advanced techniques and explore new technologies as they became available. Ignoring the Universities normal practice of offering a course several times as a special topic, two new courses, Mobile Computing I and Mobile Computing II, were created and made available continuously since the offering of the first course. While Mobile Computing I has continued to follow the curriculum set forth in the first offering of the course, Mobile Computing II is used to explore advanced concepts and emerging technology such as cloud computing integration with mobile application development, developing applications for Google Glass, and other cutting edge technology such as Oculus Rift and Leap Motion. At the same time we have seen an increasing demand from students who do not have a computing background that are interested in learning to develop their own applications. Beginning in the Spring of 2013, the University began offering an online, Freshman level, dual-enrollment course to allow students who do not have a programming background an opportunity to learn to program and develop mobile applications. For all iterations of the course it has been a full class. G. University Application Maintenance Within a year of the initial course, the iPad tablet was announced. With much fanfare the, the Journalism, Art, and School of Information Technology & Computing collaborated to create the first mobile application that would enable the university newspaper to be read via the iPad. While the initial project was successful, there were no procedures for the application to continue to develop and maintain the application. With all of the students who initially worked on the project having graduated as well as several faculty now in different positions or at different universities, continuity of development became a challenge. Unless a champion can be found that is willing to continue development, or the application maintenance is taken over by a university department, such mobile applications will quickly become dated. H. Everyone has an App Idea For the first several years of offering the mobile computing courses, the Computer Science and Information Technology students taking the classes were stopped by friends, acquaintances, and faculty who had a great idea for an application or game. In essence, these students were suddenly the ‘rock stars’ of the campus. While the notoriety has waned slightly in the subsequent years, the interest in students who can develop mobile applications has not. Students who have completed the Mobile Computing courses are consistently some of the first to receive job offers (generally well before graduation). Many of these students have taken their ideas and skills to develop applications and have started their own business before graduating. I. Rapid Pace of Technology Change and Market Fragmentation In the first years of offering Mobile Computing, it was justifiable to focus specifically on the Apple iOS devices. Now six years later, that is no longer the situation. It is critical that students learn to develop and publish to multiple mobile operating systems. In 2011 we started shifting to a cross-platform approach to develop mobile applications. While native development is still covered, we have found that it is much more effective and a better utilization of time to use Corona SDK by Corona Labs [9] so that students learn to develop for multiple platforms at the same time. We found that development time was cut by nearly 60% on complex applications, allowing students to cover more topics with greater depth. By shifting to a cross-platform solution, we are less concerned about the continued market fragmentation. This also allowed the students to publish an additional operating systems and platforms that were not part of the curriculum previously such as Microsoft Windows app store, Google Glass, and Blackberry. J. Helping Students Publish As the mobile computing courses continued to develop, we noticed a disconcerting trend amongst many of the students. While students were creating quality applications the majority were not publishing the applications to any of the app stores. As of Fall 2013, we began requiring that students publish to earn an ‘A’ in the course. While initially met with groans and anxiety, this has proven to be a great motivational tool, inspiring students to produce higher quality application, provide them the opportunity to include a published application reference on their resume, and sending them home for the winter break being able to show their friends and family their published app or game. The majority of students choose to publish to either the Samsung app store or Google Play. These app stores are free or only require a low one-time fee. One of the key reasons beyond affordability, is that apps submitted to these stores are generally available on the store within a few hours, allowing students who have procrastinated to still meet the published application requirement for the course. K. Lack of Textbooks One of the challenges in adding a mobile computing course to the curriculum is the lack of textbook availability. While many publishers are releasing technology-focused books on mobile computing programming, few are creating textbooks that are for use in the classroom. This lack inspired one of the authors of this research to create a series of textbook addressing the shortage as eTextbooks that can be continuously updated [10][11]. L. Getting Students Started Early As of Fall 2014, all freshman entering the School of Information Technology and Computing at ACU were required to complete an introductory course in computing and technology using the Corona SDK. As part of the first offering of this course students used a MOOC created by one of the authors [12] to develop a mobile application as part of a team of students from the Computer Science, Information Technology, Information Systems, and Digital Entertainment Technology majors. The goal of the project is for students at the completion of the semester, to have a finished mobile application. We found that students did not make good use of the MOOC, with only a small percentage of the students visiting the website and fewer still completing the materials that were made available. For the second iteration of the course, the educational materials were moved into the campus LMS as part of the course material. Additional, the material was made available to the students during the summer; six weeks before the course began. Over 50% of the students made use of the enrolled students made use of the online materials to begin preparing for the course. This led to significantly better mobile applications being developed and a much higher level of satisfaction amongst the students and the faculty teaching the course. IV. LEARNER CENTERED PRACTICES OBSERVATIONS The National Research Council [13] postulated that effective learning is learner centered, if it builds on the skills and knowledge of students, enabling them to reason from their own experience. Moreover, learner-centered pedagogical approaches help prepare students for active and critical engagement in situations they are likely to face in the future [14] Initially the learning for this mobile learning experience was established by us through the course objectives, however as the course evolved the needs of the student’s prompt the formation of new goals, which were explored not only by the student but us through formal and informal study. Commonly in a classroom, the focuses over learning remains with the teacher, however in this mobile learning experience; learning was distributed across learners, instructors, technologies and software resources. As Oblinger and Marayama [15] noted, “implicit in a distributed learning environment are multiple access points and learning opportunities (p.21).” As noted in our discussion the students had such distributed elements present in their learning activities. Finally, as learning is built on the skills and knowledge of the students, the context of such learning is constructed. As observed in this mobile learning experience the context of these students did not occur in any given time or location but became a vibrant entity constructed by the interactions of the learners with their environment. Mobile learning created contexts for learning by allowing the students to access a myriad of technologies and software. In support of this contextual transformation, Cole and Griffin, argued, “On reflection, it becomes clear that this point is actually a corollary of the idea that learning is active and social. We cannot divorce our learning from our lives (p. 25).” [16] And in this case the students did not. Based on our observations, effective learning did occur within these mobile learning experiences. They were learner centered, and built on the skills and knowledge of the students. This further allowed them to use the context of their lives and enabled them to reason from their own experience, as they used these mobile devices for learning. And as Maclellan and Soden [17] described this knowledge as dynamically created by individuals or group members as they make sense of their experiential worlds, which was evident in this learner centered environment through the use of mobile devices. [6] [7] [8] [9] [10] [11] [12] [13] REFERENCES [1] [2] [3] [4] [5] Lippincott, J. K. (2010) A mobile future for academic libraries. Reference Services Review 38(2) , pp. 205 – 213. New Medium Consortium and EDUCAUSE Learning initiative (2009), 2009 Horizon report, available at: www.nmc.org/publications/2009-horizon-report.pdf Roschelle, J. 2003. Unlocking the learning value of wireless mobile devices. Journal of Computer Assited Learning, 19(3), 260-272. Ruffenach, C. 2009. iPhone Game Programming Tutorial. http://www.icodeblog.com/2009/01/15/iphone-game-programmingtutorial-part-1/ . Accessed May 25, 2014. Washington D. C. Public Library. 2010 L o c a l l i b r a r y a p p s . http://dclibrarylabs.org/projects/iphone/. Accessed April, 29, 2010. [14] [15] [16] [17] Heinz, S., Sajeev, S., and Exton, C. 1996. Towards an object-oriented distributed programming environment for mobile computing. In First Australian Workshop on Mobile Computing & Databases & Applications, Monash University, Melbourne, pp. 53-59 Kumar, V., 2006. Mobile Database Systems. Wiley Pitoura, E., and Samaras, G., 1998. Data Management for Mobile Computing. In Advances in Database Systems, Springer, vol. 10. Corona Labs, 2016. Corona SDK, http://www.coronalabs.com. Accessed January 5, 2016. Burton, B. G. 2011. Beginning mobile app development with Corona, Abillene, TX: Burtons Media Group. Burton, B. G. 2014. Learning mobile application &game development with Corona, Abilene, TX: Burtons Media Group. Burton, B. G. 2014. Intro to mobile app development MOOC. http://itc.acu.edu/mooc. Accessed May 5, 2014. National Research Council, 1999. How People Learn: Brain. Mind, Experience, and School. Wasington, DC: National Academy Press. Haber-Curran, P. &Tillapaugh, D. W. (2015) Student-Centered Transformative Learning in Leadership Education: An Examination of the Teaching and Learning Process. Journal of Transformative Education .13(1) 65-84 Oblinger, D. G. & Marayama, M. K. (1996) Distributed Learning. CAUSE Professional Paper Series #14. Boulder :CO, p.1-37. Cole, M. & Griffin, P. Contextual Factors in Education. Madison, WI: Wisconsin Center for Educational Research, 1987 Maclellan E & Soden R (2004). The importance of epistemic cognition in student-centered learning. Instructional Science, 32(3):253-268