We are currently experiencing a major shift away from desktop computers to mobile devices such as smartphones and tablets. In this course, you will learn how to develop applications for these devices. Topics include: User interface libraries (Android, iOS, and HTML5), architecture of client/server applications, making use of the hardware (accelerometer, GPS, camera, phone, etc.), security, and societal aspects (privacy, intellectual property). A semester-long group project will be a significant part of the course. Graduate students must register for CS286, write a paper and give a presentation on an assigned topic.
Good programming skills in Java and C. Prior experience with team projects, including version control. Familiarity with Linux/Unix command line tools. You must pass a prerequisite quiz.
This is a 3-unit/15-week class, so you should spend 135 hours per semester or 9 hours per week on this class: 2.5 hours per week in the lecture, and 6.5 hours per week with preparation and homework/project assignments.
You will receive a letter grade for each of the exams, the finals, the total homework performance, and the total participation/preparation.Letter grades are obtained by adding and curving the numeric scores. When determining a curve, the cutoffs are guided by the university definitions for letter grades:
Letter grades are converted into number grades, as specified here, except that an A+ is counted as 4.3, and weighted with the percentages given in the Course Requirements section. The weighted average is rounded towards the nearest letter grade, which is your class grade.
Add Policy: To get an add code, email me your prerequisite quiz. Add requests may be randomly chosen if there are more students than available space. You must use your add code within 24 hours, or the add code will be reassigned to someone else.
Individual Work: All homework and exams must be your own individual work. It is ok to have general discussions about homework assignments, or read other material for inspiration. You may never copy anything from anyone without attribution. For homeworks and exams, you may not copy anything from any other student at all, and you may not collaboratively produce results in pairs or teams.
Academic Integrity: Your own commitment to learning, as evidenced by your enrollment at SJSU, and the University's Academic Integrity Policy requires you to be honest in all your academic course work. Faculty members are required to report all infractions to the Office of Student Conduct and Ethical Development. The policy on academic integrity can be found at http://sa.sjsu.edu/judicial_affairs/.
And yes, I really will report all plagiarizers. I am not Sherlock Holmes and won't try to figure out who copied and who permitted their work to be copied. If you do either, and I find out, you will be reported. No exceptions. You have been warned.
Accommodations: If you need course adaptations or accommodations because of a disability, or if you need special arrangements in case the building must be evacuated, please make an appointment with me as soon as possible, or see me during office hours. Presidential Directive 97-03 requires that students with disabilities requesting accommodations register with the SJSU Disability Resource Center to establish a record of their disability.
Publicly Viewable Work: Your class work (including homework, exam,and project work) may be viewable by other students of this course. Your grades will not be viewable by others.
Copyright of Materials: All materials created by the instructor for this course, including lectures, handouts, homeworks, exams, solutions, projects, and so on, are copyrighted property of the instructor. You may transscribe or record lectures or copy course materials for the use of yourself and other students registered in this course. You may not sell or give transscriptions or recordings of lectures or copies of course materials to others without the prior written consent of the instructor.