You can mostly look at last year's home page for the course content. While this page is under preparation, here are some important announcements for this year:
If you need a permission code, fill in this form.
This is what you need to do for the final project.
Final form. Please, fill in this form, so I can take a final count of how many are doing the project.
Project presentation. The presentations for the final project will be on Monday, June 8, 12-3pm, in class. This is the time slot for the final exam. All are very welcome and encouraged to come. Every presentation will be about 12 minutes long; I will send precise details as soon as I have a count on final projects.
Submit project code. The final project submission will be done on CrowdGrader, with deadline June 8, Monday, at midnight (the midnight of the day of the final exam). No grading is needed for the projects obviously; I am using CrowdGrader only to collect the submissions. Here is a direct link to the CrowdGrader assignment.
Project peer evaluations. Please fill in this peer evaluation form.
Project proposal: Write a project proposal consisting in a deck of at most 10 slides. You can do this using Google Presentation (as part of Google Docs), or using any other software, and sharing a link to the .pdf. If you don't know how to do this, upload the pdf to your Google Drive, select "share", then grab the link, giving permission to all with the link to read your document.
Write the proposal as if you were pitching your idea to investors: we are after all investing time in following the project. The format is free, but it would be good if you touched on the following points, in any order:
Here is the form to submit your project proposal. Due: April 10, 2015
Project requirements:
You will need an Android device for this class. A cellular plan is not required: a wifi-only device is perfect. A device running Android 4+ is recommended, even though a device running Android 2.3.3 or later may work. In general, you will be much happier with a device that runs a clean Google build, such as this. These devices in general have more predictable behavior, more extensive logging and diagnostic messages, and more support. Nevertheless, most Android devices work. The problem is that some devices have quirks, due to how Android has been built for them: some phones have limited diagnostic logging, others have peculiar threading limits, and so on and so forth.
You can use either Eclipse or Android Studio for the class. Android Studio is the new standard, and is what Google will support from now on. Until recently, it was not very mature, and was still full of quirks; hopefully it will be more mature for this year. Eclipse is the older solution; it's more stable, but not supported going forward.
You will have a better experience with the class if you come to class with the Android device, and with a laptop with installed the development environment on it.
The class will have a number of homework assignments, numbering about 4-6. The assignments will be coding assignments, and will be graded collaboratively using CrowdGrader, with the TA helping grade a subset of the assignments. There will be no final exam.
The class has an optional project. Students should consider doing a project only if they have a strong motivation to do something substantial. Students interested in doing the project will submit a project application; if accepted, they will be able to work on the project exclusively in the last four weeks of class, rather than doing homework assignments.
These resources will be updated during the class.
The class consists in a hands-on introduction to Android application development. Topics include: