Home      Bio      Research       Teaching       Students      
Teaching overview
My vision for Human-Centred Computing (HCC) integrates my teaching and research. It brings together Computer Science and the range of other disciplines that are critical for created computing systems that can serve people's needs most effectively. My teaching has been mainly been in the areas of Human-Computer Interaction (HCI) and programming.
edit Archive of past teaching
•   Human-Computer Interaction - 2014 | 2013
•   Usability Engineering - 2014
•   Software Development Project - 2014 | 2008 - trac sites admin and demo
•   Pervasive Computing - 2013 | 2012 | 2011 | 2010 | 2009
•   Software Construction - COMP5212 - 2013 | Soft2130/2830 - 2007
•   Advanced Technologies for Learning - 2006
•   Engineering Personalised Systems - 2002
•   Computer Science Education Research Processes - 2002
•   First year programming, many years, including a very brave foray into Problem-based learning
•   On teaching evaluations: Closing the loop | Are Student Evaluations of Teaching Fair?
edit Resources for thesis students
•   On being a PhD student: How to be a terrible graduate student | Graduate Student Resource Page | Eades excellent slides | The importance of stupidity in scientific research | Viewpoint: Your students are your legacy David A. Patterson
•   Resources for academic writing: How To Write A Dissertation | Orwell: 6 questions/6 rules | Politics and the English Language | APA Publication Manual
•   HCI papers:
How to write a good HCI research paper by Philip J Guo
•   Review processes: Example review form
•   Ethics: Association of Computing Machinery
edit HCI teaching resources
• Resources for design:
Alertbox by Jakob Nielsen | Example of Think-Aloud | All About UX | AskTog | The Encyclopedia of Human-Computer Interaction, 2nd Ed | Bad design examples | Go Cognitive Demos | CoolTools | Joel Spolsky | CMapTools | Laughing Squid - "blog featuring compelling art, culture & technology" | Don Norman essays, reading list | www.usability.gov | The ULTIMATE List of 24 Free eBooks on UX and Interface Design, April, 2014. | Project Implicit
• Curriculum and index to literature:
ACM SIGCHI Curricula for Human-Computer Interaction | HCI Bibliography
• Online courses and texts: CMU Brad Myers based on Hartson-Pyla text | HCI Course by Alan Dix | MIT - Human Factors Engineering 2011 | MIT - Pervasive Human Centric Computing 2006 | Foundations for Designing User-Centered Systems Ritter, Frank E., Baxter, Gordon D, Churchill, Elizabeth F. (resources) | Measuring the user experience Tom Tullis and Bill Albert | Jeff Sauro and James Lewis
• Technical and tools: Agile approaches | atlas.ti -- coding of video and audio
• Prototyping and wireframes: | Balsamiq | Axure vs Balsamiq prototyping Calvin Pedzai
Statistics calculators and resources: Social Science stats
• Web tutorials and resources: Barebones - Html guide | Selenium and Selenium Python Bindings
• Visualisation tools: Treemaps | University of Maryland | Google charts
edit Programming teaching resources
Google's Python Class
Agile development by Cockburn
Dictionary of Algorithms and Data Structures - NIST, Software Quality Group
C FAQ - comp.lang.c Frequently Asked Questions
LUPG - Little Unix Programmers Group (LUPG)'s Little Site
Programming Texts and Tutorials - for learning how to program in various languages as well as about various Linux and UNIX related topics
Introductory computer programming course Quantitative Reasoning - uses Python.
25 most dangerous coding errors hackers exploit - By Jaikumar Vijayan. "... The top two software problems in the list are improper input validation and improper output encoding errors ... as well as buffer-overflow mistakes and chatty error messages. "
Last change: Thu Mar 17 22:02:36 2016
Powered by  [Cellerator]