UMass Lowell Dept. of Computer Science
91.461 GUI Programming I
Fall 2015 Semester, Section 201
Prof. Jesse M. Heines
Course Home Page
91.461 GUI Programming I is the first course in a two-semester CS project course
sequence. Its focus is on creating
web pages that take advantage of the many new features of HTML5, CSS3, JavaScript, and
jQuery and that exploit the capabilities that these technologies make available.
The course covers:
- setting up a web site
- coding in HTML5 and its characteristics
- coding in JavaScript, using its unique object-oriented structure, and incorporating the jQuery library
- understanding browser Document Object Models (DOMs)
- coding Cascading Style Sheets (CSS) in detail, focusing on DOM selectors
- human factors and internationalization in web page implementation
- working with the non-geeks who design web pages and implementing their designs
- professional coding practices
- basic introduction to using JSON, AJAX, and AngularJS on the client side
Upon completion of this course, students will be able to:
- Set up, configure, and use a professional IDE, including its debugging capabilities.
- Document code in a professional manner using industrial quality documentation tools.
- Describe the differences between writing small programs and ones that are part of a large
software project that involves multiple people.
- Use and create industrial quality application programmer interfaces (APIs).
- Develop programs that implement general algorithms driven by data stored in files rather
than hard-coded.
- Appreciate the advantages of industry standards in coding and data file formats.
- Not only recognize a truly elegant computer program when they see one, but also be able to
produce such programs themselves.
- List at least three benefits of good user interface design and at least three ramifications
of bad user interface design.
- State at least a dozen commonly-accepted guidelines for good user interface design.
- Given a sample program with a relatively sophisticated user interface, identify those aspects
of the program that conform to commonly-accepted user interface guidelines and those that do not.
- Write clear and concise messages to inform users of a program’s status and improve
messages written by others to make them clearer and more concise.
- Create web pages that exhibit proper use of various user interface components.
- Write code that exemplifies quality programming practices and software engineering.
- Describe how to perform basic usability testing.
- Present work to the class using a computer projector.
This website provides all of the teaching materials used in the course as taught by Prof. Heines
during the Fall 2014 semester. These include the course syllabus and related information,
class notes, and assignments, as well as links to the class discussion forum on Piazza, Prof.
Heines’s Grade Display program, and a wealth of resources. Please use the menu
system above to access these resources.