Always On, Always Connected

Shawn Van Every Shawn.Van.Every@nyu.edu
Spring 2013
ITPG-GT.2958.1
Tuesdays 12:30 PM to 3:00 PM

Important Resources:

Syllabus (this page): http://itp.nyu.edu/~sve204/alwaysonalwaysconnected_spring13/
Google Group/Listserv: https://groups.google.com/a/nyu.edu/forum/?fromgroups#!forum/itp-always-on-always-connected-spring-2013-group
Class Wiki: https://itp.nyu.edu/~sve204/cgi-bin/pwiki/wiki.pl?Always_On,_Always_Connected_Spring_2013_Class_Wiki

Description

With their always on and always connected nature, mobile devices (phones) have become the center of our connected self. They offer us the ability to access the network anywhere at anytime enabling us to sharing our experiences and to share in the experiences of others at a distance. In addition, they are starting to emerge as the hub of an emerging set of smart personal accessories such as watches, glasses and jewelry.

In this class, we'll examine the current state-of-the art in mobile technology with a focus on developing applications which leverage the built-in sensors and media capabilities. We'll also study the new breed of accessory such as the Pebble Watch and heads up displays as well as new forms of mobile device such as Google Glass.

In particular we'll start out learning how to develop Android applications with Java utilizing Eclipse and the Android SDK. We'll then look at developing applications for the new set of Android powered devices.

ICM level programming experience is required.

Administrative:

Office Hours:

Thursdays from 3PM to 5PM or by appointment
Signup: https://www.itp.nyu.edu/~sve204/cgi-bin/pwiki/wiki.pl?OfficeHours

Grading:

25% Assignments
25% Class Participation/Attendance
20% Final Project
15% Midterm
15% Presentation

Assignments and Blog:

We will have weekly assignments that are relevant to the previous weeks material. Assignments must be documented (descriptions, photos, screen shots, code, thoughts, and so on) on your blog (see below). They are required and turning in an assignment late will adversely affect your grade.

It is expected that everyone in the class will create and maintain a blog or website for their assignments as well as other related material. You are welcome to reuse an existing blog but please make it clear which entries are for this course (perhaps with a category). If you don't have a domain or feel comfortable installing your own blog software, feel free to utilize the blogging software that ITP has setup here: http://itp.nyu.edu/blogs/.

Be sure to enter your name, preferred email address and the URL to your blog (you can always edit this later) on the class wiki

Listserv:

This class is very participatory in nature and discussions will certainly take place outside of the classroom. The primary vehicle for these discussions (as well as administrative issues) will be the listserv. You are required to join.

Presentations:

Each week (starting the 3rd week of class) we will have student presentations. I will randomly divide up the class and schedule the presentation dates. The topic of the presentations should be a new or somewhat new mobile media technology (hardware, software or service) that relates to the overall topics in the class. The presentations should cover what the technology/service is, what is novel about it, how are people using it and so on.

Final Projects

Class will culminate with final group projects. Being that this is a group project, it will be difficult to work on a thesis project as the final project for this class. Combinations with other classes that you are taking (aside from thesis) are encouraged.

Class Participation

This class will be highly participatory, you are expected to contribute to discussions and give feedback to other students. This (along with attendance) is 25% of your overall grade.

Attendance:

Mandatory, unexcused absences will affect your final grade. If you are going to be absent, please let me know ahead of time if you can.

Tardiness:

Excessive lateness will affect your grade. Don't be late.

Laptops:

Laptop use is prohibited while other students are presenting or during discussion. While I am lecturing you may use them for note taking or class related work. In other words, respect your fellow students and don't check your email.

Reading:

There will be assigned periodic readings. Generally they will be online though occasionally I may hand out a hard copy. These readings are required and are very valuable in class discussions.

Websites:

There are quite a few blogs and other websites that track the mobile/wireless industry. These along with what we collectively find (use the del.icio.us tag alwaysonalwaysconnected) are good starting points:
SmartMobs (Retired)
MobileCrunch
textually.org

Weekly Rundown:

Week 1

Introductions: Discussion, Syllabus and Examples, Mobile Devices, Getting Setup for Development
Notes
Homework:
  • Go through the 3 screencasts in the notes, build a "Hello World" example and then take it a step further. Bring it to class next week to work on further.
  • Watch "Are Cell Phones Replacing Reality?" from the YouTube PBS Idea Channel and find some examples of the use of mobile technology the support or refute the idea. Post these to your blog.
  • Make sure to sign up for the Google Group and add your blog URL and email address to the class wiki.

  • Part 1 - Mobile Apps, a New Medium

    Week 2

    Mobile App Development with Android
    Planning, Wireframing, User Interface Components and Android Development Basics
    Notes Part 1: Development Basics - Activities
    Notes Part 2: Layouts
    Homework:
  • Go through the Week 2 notes above, watch the screencasts, try out what you learned
  • Start development on the app idea you wireframed in class
  • Watch and Respond to Connecting
  • Read The Fable of the User-Centered Designer

  • Week 3

    Mobile Development with Android Continued
    Displaying Images, Audio, Video, Web Pages and more
    Homework:
  • Read and go through examples in Pro Android Media, Chapter 1, 5, and 8
  • Continue development on the app you have been developing OR start something new. Include media playback, image viewing support, and/or web support.

  • Week 4

    Cameraphones, Media Sharing, News, and Activism
    Media (Audio, Video, and Image) Capture
    Network Services, Media Sharing

    Notes
    Screencast from Class:
    http://itp.nyu.edu/~sve204/alwaysonalwaysconnected_spring13/Week4_ScreenRecording1.mp4.mp4
    http://itp.nyu.edu/~sve204/alwaysonalwaysconnected_spring13/Week4_ScreenRecording1.webmhd.webm

    http://itp.nyu.edu/~sve204/alwaysonalwaysconnected_spring13/Week4_ScreenRecording2.mp4.mp4
    http://itp.nyu.edu/~sve204/alwaysonalwaysconnected_spring13/Week4_ScreenRecording2.webmhd.webm

  • Read and go through examples in Pro Android Media, Chapter 2, 3 and beyond (based on your needs and interest)
  • Develop an application that either features a webview OR a custom camera

  • Week 5

    Location Based Services, Augmented Reality
    Sensors - Compass, Touch, Accelerometer, Location Sensors
    Notes
    GitHub Repo for in-class example
    Screencast of 1st Half of Class - mp4
    Screencast of 1st Half of Class - webm
    Homework:
  • Try to extend some of the examples from class, for example, create a finger painting application or use the accelerometer to draw
  • Brainstorm and come up with 2 different midterm ideas, document them on your blog in whatever means you need to explain the idea to class (images, text, video, other apps, etc..)

  • Week 6

    Network Services Midterm Discussion
    Notes
    Mapping Notes
    Homework:
  • Build, document and prepare to present your midterm project. Remember this is a one week assignment so while it is more than a weekly homework assignment it doesn't have to be a full application. It could be a portion of an overall idea or a smaller project. Please make sure you document the concept/idea, do wireframes and any other diagrams you might need, and finally execute it.
  • Schedule yourself in a presentation slot: https://itp.nyu.edu/~sve204/cgi-bin/pwiki/wiki.pl?Always_On,_Always_Connected_Spring_2013_Midterm_Schedule

  • Week 7

    Midterm Presentations

    Part 2 - Connected Accessories - New Extensions of Self

    Week 8

    Part 1 wrap up - User Testing, App Distribution
    Embrace your cyborg self
    Smart watch APIs

    Week 9

    Building our own Accessories and Sensors
    Bluetooth APIs
    Notes

    Week 10

    Building our own Accessories and Sensors Continued
    Bluetooth APIs
    Notes
    Homework:
  • Brainstorm and come up with one or more final project ideas, document on your blog in whatever means you need to explain the idea to class for next week (wireframes, design, images, text, video, other apps, etc..)

  • Week 11

    Final Project Proposals

    Week 12

    Final Project Workshop, Additional Topics
  • Possibilities: Live Mobile Streaming, Notifications, Background Services, Image Processing, Image Analysis, Augmented Reality, More with Bluetooth/Arduino, More with mobile GUI development, More with online data (sending and receiving), Intro to PhoneGap, Image Uploading
  • PhoneGap Notes
    Homework:
  • Sign-up for a meeting slot: https://itp.nyu.edu/~sve204/cgi-bin/pwiki/wiki.pl?AOAC_2013_End_Of_Semester_Meetings

  • Week 13

    Final Project Workshop, Additional Topics

    Week 14

    Final Project Presentations
    Expect Guests