Topic Name Description
Course Introduction Page Course Information
Page Course Terms of Use
Unit 1: Introduction to Mobile Application Development Page Unit 1 Learning Outcomes
1.1: Definition of Mobile Computing Page Stanford University: Connie Chan and Ben Galbraith's "Web Vision for Mobile"

Watch this video, which provides a good overview of the Web and how mobile application development relates.

URL University of California, Berkeley: Erik Wilde's "Mobile Applications Landscape"

Read these slides. Click on the right of the current slide to advance to the next slide. This lecture discusses settings, users, devices, content, and transport related to mobile applications. As you read through the slides, think about the type of mobile devices you have in your own professional and personal life. How have these devices evolved? How do you define a mobile device? Are mobile platforms the same as mobile devices?

URL Developer Shed: "Mobile Computing Technologies: An Overview"

Read this article, which provides a good overview of mobile computing. As you read through this, think about how you use mobile devices.

1.2: Devices URL University of California, Berkeley: Erik Wilde's "Mobile Applications History"

This set of slides provides a look into the history of mobile applications. Click on the right side of the current slide to advance to the next slide. As you read through these, think about the evolution of mobile devices and applications in your own lifetime. How have devices changed? What new apps have become available? Do you think that this evolution has been beneficial to society? What can we learn from the history of mobile application development?

URL Christopher Barnatt's "Mobile Computing"

Read this page for an overview of the types of mobile devices that are currently on the market.

URL Carnegie Mellon University: M. Satyanarayanan's "Pervasive Computing: Vision and Challenges"

Read this article. As you read the article, think about how pervasive computing might be used. How would this technology be beneficial to mobile computing?

1.3: Web-Based Applications URL Andre Charland and Brian LeRoux's "Mobile Application Development: Web vs. Native"

Read this page, which provides some background for one to decide upon the best platform for a mobile application, whether that be a Web-based application or one native to the device.

URL MobiThinking: "Mobile Applications: Native vs. Web Apps"

Read this page, which provides a lot of background on the differences between native and web apps. It would be valuable for you to make a list of the differences between the two for future reference.

1.4: Native Applications URL Jakob Nielsen's "Mobile Sites vs. Apps: The Coming Strategy Shift"

Read this article. Based on this article, do you think that native apps will be replaced by mobile sites?

Page Corey Greeneltch and Larry Kings' "Mobile Web Apps vs. Native Apps"

Watch this video. Do you think that the predictions made by the participants in this video are correct?

1.5: History of Mobile Platforms URL Lauren Darcey and Shane Conder's "Introducing Android"

Read this article, which provides an overview of the history of mobile devices. Think about how mobile devices have changed, even since this article was written.

1.6: Internet Protocols for Mobile Apps URL MobileInfo: "What is WAP?"

Read this article for an overview of WAP.

URL Nie Pin and Dennis Zhou's "Wireless Access Protocol"

Read these slides.

1.7: Content vs. Applications URL Michael Mullany's "HTML5 and the Dawn of Rich Mobile Web Applications"

There are six parts to this video series; please watch all six videos. This video series deals with both HTML and HTML5, which is an up-and-coming standard. It would be helpful for you to make some notes on this to compare and contrast HTML and HTML5. In a later unit, you will learn more about HTML.

URL Stephen Johnson's "Java in a Teacup"

Read this article, which provides a general overview of Java.

URL Jacob Gube's "The History of Web Browsers"

Read this page.

URL Umair Khan's "A Look Back: The Evolution of Web Browser for Desktop Computers"

Read this page. Think about how web browsers have changed since this article was written.

Unit 2: Infrastructure Page Unit 2 Learning Outcomes
2.1: Mobile and Cell Phone Technologies URL University of California, Berkeley: Erik Wilde's "Mobile Web Mechanics"

Read these slides.

Page Indian Institute of Technology: S. Ghosh's "Cellular Networks"

Watch this lecture.

2.1.1: CDMA URL PC Magazine: "CDMA"

Read this article, which provides an overview of CDMA.

URL Michael Hendry's "Introduction to CDMA"

Read this article, which covers much of the engineering behind CDMA.

2.1.2: GSM URL PC Magazine: "GSM"

Read this overview of GSM.

2.1.3: 3G URL WirelessInternet: "3G Network and Services"

Read this page.

2.1.4: 4G URL WirelessInternet: "What's this about 4G?"

Read this page. Think about how 3G is different from 4G.

2.2: Internet Terms Page Aaron Titus' "How the Internet Works in 5 Minutes"

Watch this general overview of the Internet.

2.2.1: IP Address Page Indian Institute of Technology: S. Gosh's "IP Version 6 and Mobile IP"

Watch this video.

URL WhatIsMyIPAddress: "What is an IP Address?"

Read this article.

URL Università degli Studi di Palermo: Vincenzo Mancuso's "Internet IP"

Read these slides.

2.2.2: Subnet Mask Page Joe Astorino's "IP Address and Subnet Mask Basics"

Watch this video. This will also serve as a good review of IP Addressing. 

URL Università degli Studi di Palermo: Vincenzo Mancuso's "Subnetting"

Read these slides.

Page Joe Astorino's "IP Address and Subnet Mask Basics"

Watch this video. This will also serve as a good review of IP Addressing. 

2.2.3: Gateway URL Wifi Notes: "What are Gateways?"

Read this article.

2.2.4: DNS Page Dyn: "What is DNS?"

Watch this video.

URL Wifi Notes: "The Role of DNS Servers"

Read this article.

2.2.5: Static vs. Dynamic URL WhatIsMyIPAddress: "Dynamic IP vs. Static IP"

Read this page.

2.3.1: HTTP URL Università degli Studi di Palermo: Vincenzo Mancuso's "HTTP"

Read these slides.

Page Indian Institute of Technology: S. Ghosh's "HTTP"

Watch this video.

2.3.2: Routing URL Università degli Studi di Palermo: Vincenzo Mancuso's "HTTP"

Read these slides.

Page Indian Institute of Technology: S. Ghosh's "Introduction to Routing"

Watch this video.

2.4: Secure Connections Page Indian Institute of Technology: S. Ghosh's: "Security"

Watch this video.

2.5: Proxies URL New York University: Arthur Goldberg's "Web Caching Proxy Servers and Cookies"

Read these slides.

2.6: Reverse Proxies URL Art Stricek's "A Reverse Proxy is a Proxy by any Other Name"

Read this article.

Unit 3: HTML/CSS/DOM and Scripting Page Unit 3 Learning Outcomes
3.1: HTML URL University of California, Berkeley: Erik Wilde's "Mobile Application Design and Development: HTML/CSS and DOM"

Read these slides.

Page Stanford University: Ben Galbraith's "Introduction to Web Technologies and HTML5"

Watch this lecture, which provides a good introduction to HTML, CSS, and JavaScript.

URL Tizag: "HTML Tutorial"

Work through this tutorial. You may find it helpful to download a free tool, such as ACEHTML, to help you test out some HTML on your browser.

URL W3Schools: "HTML Quiz"

Attempt this quiz to test your knowledge of HTML.

3.1.1: Validation URL Terry Sullivan's "Understanding HTML Validation"

Read this article. Also, if you wish to validate some HTML pages, you can do this by going to http://validator.w3.org/.

3.1.2: Rendering URL Tali Garsiel's "How Browsers Work"

Work through this tutorial.

3.1.3: Difference between Web Browsers URL A. Lundgren's "Comparison between Browsers"

Read this article.

URL Creating a Simple Web Form

Work through this activity. There are some exercises to complete on your own as well as some code to try. You will want to use an editor such as TextEdit or Notepad++ to work with the HTML files. Also, you should test all of your HTML files in a web browser of your choice. Please review the solutions when you are ready.

3.2: Cascading Style Sheets (CSS) URL Interactive CSS Laboratory

Follow the instructions to complete this assignment. When you are finished, check your answers against the answer key.

URL W3Schools: "CSS Tutorial"

Work through this tutorial.

URL W3Schools: "CSS Quiz"

Attempt this quiz to test your knowledge of CSS.

3.3: Document Object Model (DOM) URL Document Object Model (DOM) Interactive Laboratory

Work through this activity. When you are finished, you may check your work against the solutions.

URL W3Schools: "DOMTutorial"

Work through this tutorial, including the examples.

3.4: JavaScript URL University of California, Berkeley: Erik Wilde's "Mobile Application Design and Development"

Read these slides.

URL W3Schools: "JavaScript Tutorial"

Work through these tutorials.

3.4.1: Uses Page The New Boston: "Introduction to JavaScript"

Watch this video.

3.4.2.1: Variables Page The New Boston: "Variables"

Watch these videos.

3.4.2.2: Strings Page The New Boston: "Using Variables with Strings"

Watch this video.

3.4.2.3: Operators URL Michael Moncur's "Understanding Expressions and Operators"

Read this page.

Page The New Boston: "Operators"

Watch these videos.

3.4.2.4: Arrays Page The New Boston: "Arrays"

Watch these videos.

3.4.2.5: Objects Page The New Boston: "Objects"

Watch these videos.

3.4.3: Functions Page The New Boston: "Functions"

Watch these videos.

3.4.4: Control Structures Page The New Boston: "Control Structures"

Watch these videos.

3.4.5: Looping Page The New Boston: "Loops"

Watch these videos.

3.4.6: Modes of Execution URL Michael Moncur's "How JavaScript Fits into a Web Page"

Read this page and the following page.

3.4.7: Interactive Lab File Interactive JavaScript Laboratory

Work through the laboratory, which will cover how to use JavaScript to validate an HTML form. You may download a zipped collection of the HTML files here. All of the HTML pages can be tested in any browser. As you work through the tutorial, utilize the JavaScript Tutorial as a reference. When you are finished, you may check your work against the answer key.

3.5: Assessment URL W3Schools: "JavaScript Quiz Test"

Attempt this quiz to test your knowledge of JavaScript.

Unit 4: JQuery and Structured Data Page Unit 4 Learning Outcomes
4.1: jQuery URL University of California, Berkeley: Erik Wilde's "jQuery"

Read these slides.

URL W3Schools: "jQuery Tutorial"

Complete this entire tutorial, using the "next" buttons to navigate through each chapter. You should also attempt the complete the available "Try It Yourself" activities.

4.1.1: Overview URL Rebecca Murphey's "jQuery Basics"

Read this chapter.

URL Rebecca Murphey's "jQuery Core"

Read this chapter.

4.1.2: Events in jQuery URL Rebecca Murphey's "Events"

Read this chapter.

4.1.3: AJAX with jQuery URL Rebecca Murphey's "Ajax"

Read this chapter.

4.2: JavaScript and XML URL University of California, Berkeley: Erik Wilde's "Structured Data"

Read these slides.

4.3: XML URL Norman Walsh's "A Technical Introduction to XML"

Read this article.

URL W3Schools: "XML Tutorial"

Complete this entire tutorial, reading each chapter from "XML Tutorial" through "XML Examples". Use the "next" buttons to navigate to the next chapter, and feel free to attempt any activities, including the quiz at the end of the tutorial.

4.4: JavaScript Object Notation (JSON) URL "Introducing JSON"

Read this page.

URL W3Schools: "JS JSON"

Complete this entire tutorial on JSON, reading each chapter from "JSON - Introduction" through "JSONP".

4.5: Examples of XML and JSON URL "JSON Example"

Read this page.

URL W3Schools: "jQuery Quiz Test"

Complete this tutorial to test your knowledge of jQuery.

Unit 5: Scripting with Server Access Page Unit 5 Learning Outcomes
5.1: Overview URL University of California, Berkeley: Erik Wilde's "Scripting with Server Access"

Read these slides.

URL Jesse James Garrett's "A New Approach to Web Applications"

Read this page.

5.2.1: XMLHttpRequest Object URL W3Schools: "AJAX - The XMLHttpRequest Object"

Read this chapter.

URL W3Schools: "AJAX - Send a Request To a Server"

Read this chapter.

5.2.2: responseXML URL W3Schools: "AJAX - Server Response"

Read this chapter.

5.2.3: Examples URL W3Schools: "AJAX XML Example", "AJAX PHP Example", "AJAX ASP Example", "AJAX Database Example", "XML Applications", and "AJAX Examples"

Follow the link to the  chapter on XML Examples. Read the article and then complete the "Try It Yourself" activity. Use the "Next" button to navigate to and read the remaining chapters, completing the other activities where available. 

5.3: XMLHttpRequest Implementations by Browser URL W3Schools: "XML HttpRequest"

Read this chapter.

5.4: JavaScript Frameworks URL The Open Sourcery: "JavaScript AJAX Frameworks"

Read this article.

5.5: Design Patterns URL Kris Hardlock's "How to use AJAX Patterns"

Read this article. Note that there are 5 pages.

Unit 6: Designing Mobile User Interfaces Page Unit 6 Learning Outcomes
6.1: Definition of Usability Page Stanford University: Jeremy Lyon's "Mobile User Experience Design"

Watch this video, which discusses UI design for mobile apps.

URL The Open University: "Designing the User Interface"

Work through this tutorial.

URL University of California, Berkeley: Erik Wilde's "Designing Mobile User Interfaces"

Read these slides.

URL Middle East Technical University: Tolga Can's "Usability Principles"

Read these slides.

6.2: Task Analysis and Contextual Inquiry URL University of Nevada Las Vegas: Matt Thatcher's "Discipline of Teams"
6.3.1: Rapid Prototyping URL Middle East Technical University: Tolga Can's "Prototyping Techniques"

Read these slides.

6.3.2: Evaluation URL Middle East Technical University: Tolga Can's "Evaluating User Interfaces"

Read these slides.

6.4.1: Interactive Voice Response (IVR) URL Technopedia: "Interactive Voice Response"

Read this page.

6.4.2: SMS/MMS URL Seattle Central University: Yun Moh's "Short Message Service"

Read this article.

URL Seattle Central University: Yun Moh's "Multimedia Messaging Service"

Read this article.

6.4.3: Native Applications URL Jake Hird's "The Fight Gets Technical: Mobile Apps vs. Mobile Sites"

Read this article. How have things changed since this article was written?

6.4.4: Hybrids URL Ron Perry's "Hybrid Mobile Apps Take Off as HTML5 vs. Native Debate Continues"

Read this article. How have things changed since this article was written?

6.5: Mobile Application Development Design Considerations URL Lyndon Cerejo's "A User-Centered Approach to Web Design for Mobile Devices"

Read this article.

URL James Lentz's "User Interface Design for the Mobile Web"

Read this article.

Unit 7: Mobile Application Evaluation and Mobile Browsers Page Unit 7 Learning Outcomes
7.1: Mobile Device User Interaction Patterns URL University of California, Berkeley: Erik Wilde's "Evaluating and Iterating on Mobile User Interfaces"

Read these slides.

7.2.1.1: Cognitive Walkthrough URL Drexel University: Professor William Zhang's "Cognitive Walkthrough"

Read this page.

URL University of Colorado Boulder: Clayton Lewis and John Rieman's "Cognitive Walkthroughs"

Read section 4.1.

7.2.1.2: Heuristic Evaluation URL University of Colorado Boulder: Clayton Lewis and John Rieman's "Heuristic Analysis"

Read section 4.3.

7.2.2: User Evaluation in the Lab URL University of Colorado Boulder: Clayton Lewis and John Rieman's "The Thinking Aloud Method"

Read section 5.5

URL U.S. Dept. of Health and Human Services: "Usability Testing"

Read this article.

7.2.3.1: Diary Study URL University of California, Berkeley: Nancy Van House's "Arbitron Diary Study"

Read this document.

7.2.3.2: Experience Sampling Method URL University of California, Davis: Barbara Sommer's "Experience Sampling Method"

Read this page.

7.2.3.3: Logging Study URL University of North Carolina at Chapel Hill: Diane Kelly's "Methods for Evaluating Interactive Information Retrieval Systems with Users"

Read pages 87-91.

7.3: Mobile Browsers and Browsers URL University of California, Berkeley: Erik Wilde's "Mobile Web vs. Web"

Read these slides.

7.4: Mobile Browser Evolution URL University of Camerino: Alex Luciani's "Browser Evolution"

Read these slides.

Unit 8: Mobile Platforms Page Unit 8 Learning Outcomes
8.1: URIs for Mobile Apps URL University of California, Berkeley: Erik Wilde's "Mobile Platforms"

Read these slides.

URL Jonathan Stark's "The Developer's Guide to Mobile Frameworks"

Read this article, which provides an overview of some tools for mobile development on several platforms. Do your own research on the best tools that have come about since this article was written.

8.2.1: Tightly Controlled (iPhone) URL Wikipedia: "iPhone"

Read this article.

8.2.2: Open (Android) URL Wikipedia: "Android"

Read this article.

8.2.3: Licensed (Windows Mobile) URL Karen Foster's "What You Need to Know to Start Developing for Windows Phone 7"

Read this article, which gives an overview of Windows Mobile development, including the tools required.

8.3: Cross-Platform Development URL Gustavo Hartmann, Geoff Stead, and Asi DeGani's "Cross-platform Mobile Development"

Read this article. It might also be helpful to do your own research into articles about other platforms.

8.4: HTML5 Page Michael Mahemoff and Paul Kinlan's "Mobile Web Development: From Zero to Hero"

Watch this video.

URL Harvard University: Dan Armendariz and David Malan's "HTML 5"

Watch Lecture 0 and Lecture 1.

URL W3Schools: "HTML5 Tutorial"

Work through this tutorial.

8.5: Hybrid Runtime Environments URL MIT Technology Review: Christopher Mims' "Rise of the Hybrid Mobile App"

Read this article. What has changed since this article was written?

Unit 9: Storage and Geolocation Page Unit 9 Learning Outcomes
9.1: Need for Storage URL University of California, Berkeley: Erik Wilde's "Local Storage"

Read these slides.

9.2: Local Storage with HTML5 URL Mark Pilgrim's "The Past, the Present and the Future of Local Storage for Web Applications"

Read this article.

9.3: Storage on the Web URL Lars Kappert's "Introduction to HTML5 Web Storage"

Read this article.

9.4: Geolocation URL University of California, Berkeley: Erik Wilde's "Geolocation"

Read these slides.

Unit 10: Android Development Page Unit 10 Learning Outcomes
10.1: Java Review URL Harvard University: Dan Armendariz and David Malan's "Android"

Watch Lecture 2.

10.2: Android SDK URL Harvard University: Dan Armendariz and David Malan's "Android"

Watch Lecture 3.

10.3: Resources, Views, and Intents URL Harvard University: Dan Armendariz and David Malan's "Android"

Watch Lecture 4.

10.4: Intents and Storage URL Harvard University: Dan Armendariz and David Malan's "Android"

Watch Lecture 5.

10.5: Storage and Threads URL Harvard University: Dan Armendariz and David Malan's "Android"

Watch Lecture 6.

Unit 11: iPhone/iPad Development Page Unit 11 Learning Outcomes
11.1: Object-C Primer URL Harvard University: Dan Armendariz and David Malan's "iOS"

Watch Lecture 7.

11.2: Windows-Based Applications and MVC URL Harvard University: Dan Armendariz and David Malan's "iOS"

Watch Lecture 8.

11.3: View Controllers URL Harvard University: Dan Armendariz and David Malan's "iOS"

Watch Lecture 9.

11.4: Provisioning, View Controllers, Gestures, and Data URL Harvard University: Dan Armendariz and David Malan's "iOS"

Watch Lecture 10.

11.5: Core Data, Localization, and Graphics URL Harvard University: Dan Armendariz and David Malan's "iOS"

Watch Lecture 11.