Syllabus

Creating User Interfaces - MAT 3440

Professor: Lee Tusman
Contact: lee.tusman@purchase.edu
Pronouns: he/him
Classroom: ZOOM LINK on Moodle. When: Wednesdays 3 - 6:40pm
Office Hours: Tuesdays 11am - 1pm
Notice: No Classes will be held on 3 weekdays this spring. That includes Wednesday, April 14. Spring schedule

Course Description

Introduces concepts and skills used in analyzing and designing interfaces for computer applications. As students study techniques and “rules of thumb,” they discover that the design and implementation of each interface is a unique challenge, which requires creativity and consideration of technical, aesthetic, and psychological factors.

Overview

This course is a broad overview of creating user interfaces (abbreviated: UIs), approaching the subject from a variety of perspectives. We will both study its history as well as work on practical programming exercises. We will cover user interfaces in general and concentrate on a progression of subjects: 1. Text User Interfaces 2. Graphical User Interfaces 3. Voice User Interfaces 4. Speculative User Interfaces. We will also study issues of accessibility.

Learning will come from a range of sources and backgrounds including academic articles, blog posts, code, podcasts, and videos. We will take an academic and computer science approach to interface design, but we will also look at best practices from today's applications, web sites, conversational UIs and other areas of interface design.

Learning Objectives

Learning and teaching goals you have for me

Teaching Philosophy and Classroom Community

It is my goal that we collaborate together to create a community of learners. I will try to serve as coach rather than boss and help you pursue your own learning goals and I am excited to learn from you as well. I will vary my teaching methods to make sure that the course is accessible to all students. I believe everyone has the ability to do well in this course. I will be accessible to you during class sessions, by email, and by message board. I want you to succeed both in our class and at Purchase. I will always try to help you.

I am not the sole source of knowledge for this course. As digital natives and as people with your own background and interests you are all experts as well. Most importantly to me, please pursue those subjects that interest you deeply and share them with your classmates and me.

Expectations for students

Expectations for the professor

Accessibility Statement

The Office of Disability Resources collaborates directly with students who identify with disabilities to create accommodation plans, including testing accommodations, in order for students to access course content and validly demonstrate learning. For students who may require accommodations, please contact the Office of Disability Resources as soon as possible: 914-251-6035, ODR@purchase.edu (Student Services Building, #316A), www.purchase.edu/odr

University and Classroom Policies and Rules

Official Purchase College Academic Integrity Policy

The Purchase College academic integrity policy, purchase.edu/live/blurbs/840-academic-and-professional-integrity, explicitly forbids cheating, plagiarism, and other forms of academic dishonesty. Plagiarism is the appropriation or imitation of the language, ideas, and/or thoughts of another person and the representation of them as one’s own original work. Students are responsible for familiarizing themselves with the definition of plagiarism and the acceptable methods of attribution.

Violation of any of the above may lead to formal disciplinary action and the following sanctions: - Minimum Sanction: Failing grade on the assignment or examination. Maximum Sanction: Expulsion - Recommended Sanction (First Offense): Failing grade for the course - Recommended Sanction (Second Offense): Expulsion

Students who have any questions or doubts about whether any activity is academically permissible should check with the instructor.

Plagiarism and cheating are taken seriously. You will be held accountable for Purchase's Student Code of Conduct for Academic Integrity.

Class policy on Collaboration

I support collaborative learning with some important caveats.

Coding can be difficult, and struggling with the material is part of the learning process. Students are allowed to collaborate to learn from each other. Do not collaborate in order to simply find out a solution to a project. Each participant should contribute approximately equally, and what you turn in should be your own. Copying a solution from another student, even if you change a few minor things such as variable names, is not a collaboration. You may help someone learn something, but you can not tell them what to code. If you have questions about collaboration or academic integrity, get in touch with me via email, talk with me before or after class, or come to office hours.

Tutoring Support

All students at Purchase College can take advantage of our tutoring services in the Learning Center (Lib 0009) and the Einstein Corner (NSS 3044). These are free, 45-minute, peer-to-peer tutoring sessions in a variety of subjects and in writing across the disciplines. I encourage you to take advantage of this service to help you excel in this class, as well as your other courses. Please visit the Learning Center and Einstein Corner websites for more information.

Attendance

Learning programming is a cumulative effort. Each class builds on what you have learned in previous classes. Missing class can substantially set you back in this process. Therefore, it is important that you attend every class. Absences should be excused by a doctor's note. Three unexcused absences will lower your grade by one unit. (i.e. an A will became a B). With each additional unexcused absences, the grade will drop an additional unit for each absence. If there is an emergency or otherwise extenuating circumstance that prevents you from attending class, please email me.

We will be covering critical concepts and working on code and projects in-class and you are responsible for reviewing our class site and reaching out to your peers outside of class time to catch up on what you have missed.

Digital Distractions

In the past few years has been the rise of pernicious phones with digital distractions: notification sounds, alerts, vibrations. We will do our best to minimize distractions. Put your phone on silent, in another room. Close other applications on your computer. Let family know when you are in class, and if you can find your own space and ideally close a door, that will help with concentration.

Assignments and Evaluations of students

We will have a few weekly readings on interfaces with short responses. We will also have a recurring mini assignment to post found Bad UI design to the Wall of Shame on our Discord.

Evaluations of the Professor

There will be 3 designated times to provide feedback to the professor during the semester: during the first week of class, mid-semester, and as feedback at the end of the semester. You can also approach me in class or during office hours at any other time in the semester to give feedback. Please hold me accountable and point out areas that need to be improved.

Free, Libre and Open Source Software

It's not in the title, but a large part of this course will use and build upon free, libre and open source software (sometimes abbreviated as FLOSS). We will talk about FLOSS software, why one may want to use and contribute to it, and its impact on technology and society today.

Requesting Help

Tips

Tentative Nature of syllabus

If needed, this syllabus and the course outline may be revised to better suit the class. Students are responbile for keeping up with any changes distributed via email or in class. The most up to date syllabus will always be up to date on the class site.

Study Modules

Learning Resources

We will not be using a single course textbook. I will distribute weekly readings and occasional media such as videos or podcasts. I will work to make sure materials are accessible to all students. Students are encouraged to find their own resources as well and to share them with me and with other students.

Overview
Programming Guides and Tutorials
Coding Tutorials
Accessibility