160 likes | 283 Views
Human Factors in Web Programming. Prof. Jesse M. Heines Dept. of Computer Science University of Massachusetts Lowell. Adam Mickiewicz University Poznań, Poland. November 21, 2012. What are Human Factors?. What are Human Factors?.
E N D
Human Factors in Web Programming Prof. Jesse M. Heines Dept. of Computer Science University of Massachusetts Lowell Adam Mickiewicz University Poznań, Poland November 21, 2012
What areHuman Factors? • What characteristics make a program (or web application) “easy-to-use”? • Don’t confuse “easy-to-use” with “easy” or “simple” or “elementary” • Some very sophisticated programs (and machines) are relatively easy to use
What areHuman Factors? • What characteristics make a program (or web application) “easy-to-use”? • Don’t confuse “easy-to-use” with “easy” or “simple” or “elementary” • Some very sophisticated programs (and machines) are relatively easy to use • What do we have to do as designers, engineers, and programmers to make a program “easy-to-use”? • How do we have to think?
What isWeb Programming? • Static vs. dynamic web pages • The roles of HTML, CSS, JavaScript, and libraries such as jQuery • The role of the webserver
What isWeb Programming? • Static vs. dynamic web pages • The roles of HTML, CSS, JavaScript, and libraries such as jQuery • The role of the web server • So if we add all these components together, what do we really have?
What isWeb Programming? • Static vs. dynamic web pages • The roles of HTML, CSS, JavaScript, and libraries such as jQuery • The role of the web server • So if we add all these components together, what do we really have? • A web application, not just a web page
Human FactorsTerms and Acronyms • UI = User Interface • GUI = Graphical User Interface • UX = User Experience • SME = Subject Matter Expert • Rapid Prototyping • Iterative Design • Usability Testing • Revision Cycle • so what does this all add up to?
Human FactorsTerms and Acronyms • UI = User Interface • GUI = Graphical User Interface • UX = User Experience • SME = Subject Matter Expert • Rapid Prototyping • Iterative Design • Usability Testing • Revision Cycle • sum=the full range of software engineering
GUI ProgrammingTraditional Components • “WIMP Interface” • Windows – Icons – Menus – Pointers • “Widgets” • Using widgets effectively requires facility with navigating an “API” • API = Application Programming Interface • Virtually all APIs are built on object libraries • Using a API effectively therefore requires facility with underlying OOP principles • GUI programming helps “overcome the mental fog”
GUI Programming... and Computer Games • “The game industry wants graduates with a strong background in computer science. It does not want graduates with watered-down computer science degrees, but rather an enhanced set of skills.” • Zyda, Michael (2009). Computer Science in the Conceptual Age. Communications of the ACM 52(12):66-72, December 2009.
Components of a Networked Computer Game • Zyda, Michael (2009)
GUI ProgrammingWeb Components • HTML 5 • HyperText Markup Language • CSS 3 • Cascading Style Sheets • JavaScript (ECMAScript 5) • European Computer Manufacturers Association • JavaScript Libraries • jQuery • YUI (Yahoo! User Interface)
Demonstration Time • Creating a Multiplication Table
Jesse M. Heines heines@cs.uml.edu http://teaching.cs.uml.edu Adam Mickiewicz University Poznań, Poland November 21, 2012