ossu / computer-science

🎓 Path to a free self-taught education in Computer Science!
MIT License
170.45k stars 21.53k forks source link

RFC: Add Human-Computer Interaction Book or MOOC to Additional Resources #1154

Closed CodeCruncherTimmy closed 1 year ago

CodeCruncherTimmy commented 1 year ago

Problem: OSSU does not recommend any HCI-related books or courses. The 2013 syllabus recommends 4 hours for Core-Tier1 on HCI foundations and 4 hours for Core-Tier2 on Designing Interaction.

Duration: Until 10th June 2023.

Background: HCI is a complement to software engineering. Whilst software engineering focuses on designing efficient and maintainable code bases, HCI focuses on how software (and/or hardware) can best meet the needs of a set of users and maintain usage levels. This includes frontend UI and UX design, but also the broader analysis of business processes to better understand what users actually want from a piece of software / hardware and how they interact with it (consider software systems which are dropped, or those like spreadsheets which are used far more imaginably than they were meant to be). This includes error reduction in critical areas, such as hospitals or banks.

Training in HCI would further be helpful for self-study students would would like to become Systems Analysts or Business Analysts, facilitating communication between application users in business and the software development team.

Proposal: Add the following to the Applications section of extra readings:

The Design of Everyday Things by Norman https://en.wikipedia.org/wiki/The_Design_of_Everyday_Things

This is a core text for HCI. Whilst it alone is not enough for a full education in HCI, it provides a very readable introduction to the ideas of HCI. Its bibliography further provides a decent overview of HCI topics if students wish to delve into the topic further.

Alternatives: Add one of the following MOOCs to the Applications extra courses. These are not recommended for the main curriculum, as they are longer than the 4-8 recommended. Unfortunately, the only MOOC I’ve found so far which is within the expected time frame is on Educative.io.

Human-Computer Interaction I: Fundamentals & Design Principles (expected 24-30 hours) https://www.edx.org/course/human-computer-interaction-i-fundamentals-design-p

This is the first part of Georgia Tech’s HCI course CS6750. This seems to provide a good overview of core HCI topics, including:

It further has a number of journal articles recommended, for going into more depth on a particular topic.

The disadvantage of this course is that its start dates are limit. Whilst it has a rating of five stars on Class Central, this is only from twelve votes, which is quite limited. It does appear to be quoted in some other materials, however, such as: https://www.nexus.sps.nyu.edu/post/introduction-to-design-principles.

Human-Centered Design: An Introduction (expected 14 hours) https://www.coursera.org/learn/human-computer-interaction

This is the first course in an eight-course specialisation on Coursera for HCI. It has an average rating of 4.7 from 2,700 votes on Coursera. The other course may be better, as a lot of the foundational ideas of HCI are spread out across the different courses in the specialisation. The advantage of this course is that it does not have specific start dates.

Caveats:

One topics which is eluded to but doesn’t seem to be directly mentioned in general HCI materials is HCI for those with disabilities (e.g. blindness).

I have taken a course on HCI at a university. I have not taken these MOOCs.

waciumawanjohi commented 1 year ago

@CodeCruncherTimmy Thanks for opening such a high quality first issue!

Adding a little bit of additional information: contributors can see the GATech students' reviews of HCI here. Note that these reviews will include opinions of not only the videos, but also of the projects in the GATech course (which I would expect to be different from the edX course).

waciumawanjohi commented 1 year ago

The Design of Everyday Things is absolutely a seminal work in the field. But I would argue the book is too long on the why and not explicit enough on the how. It does not dive deep into different protoyping methods.

Of the two courses that you mention, the Coursera course looks like it is closer to a quick and dirty introduction to the field; while the edX 4 courses together look like a better deep dive than the Coursera set (which looks like it roams farther afield).

As we are looking for a shorter introduction to the field (4 Tier I hours and 4 Tier II hours), I lean toward the edX (UC San Diego) course.

Very interested in hearing other voices!

zarry0 commented 1 year ago

Another alternative could be MIT's 6.813/6.831: User Interface Design & Implementation http://web.mit.edu/6.813/www/sp18/

CodeCruncherTimmy commented 1 year ago

The deadline for the RFC has been reached and the RFC is now being closed.