# User Interface / User Experience <!-- .element: class="r-fit-text" --> Week 14 --- ## Review  <!-- .element: style="height:400px" --> -- ### Where is the origin (0, 0) of a screen? Top-left corner <!-- .element: class="fragment" --> -- ### What is a screen's _resolution_? Resolution is the number of pixels in each dimension <!-- .element: class="fragment" --> -- ### What are the primary colors of light? RGB (Red, Green, Blue) <!-- .element: class="fragment" --> -- ### What is the maximum value of each color channel? 255 <!-- .element: class="fragment" --> -- ### How can you represent white in hex? #FFFFFF <!-- .element: class="fragment" --> -- ### What does the "alpha" channel represent? Transparency <!-- .element: class="fragment" --> --- ## What is User Interface?  <!-- .element: style="height:400px" --> -- A **user interface** is the interaction system between a user and a computer program. Keyboard, mouse, buttons, dials, sliders, etc. <!-- .element: class="fragment" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> -- ### Good UI is Built on Patterns You can build up _literacy_ of digital interfaces when common patterns are used. -- ### Common Elements  <!-- .element: style="height:400px" --> -- ### Material UI Google’s open-source design system [Components Collection](https://m3.material.io/components) -- ### Skeuomorphism Skeuomorphism is a design practice incorporating real-world elements into digital interfaces to create a sense of familiarity with new interfaces. ([Nielson Norman Group](https://www.nngroup.com/articles/skeuomorphism/)) --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --  <!-- .element: style="height:400px" --> --- ## What is User Experience?  <!-- .element: style="height:400px" --> -- **User experience** (UX) is the experience users have when they interact with a product, system, or service. -- ### Good UI, Bad UX "There's an app for that" NOTES: - "Unlock your car" app - UI where users are bullied into doing something - Ask students for other examples -- ### Related but Different - **UI** is the interaction system - **UX** is the experience --- ## Review  <!-- .element: style="height:400px" --> -- ### What is UI? The _interaction system_ between a user and a computer program. <!-- .element: class="fragment" --> -- ### What is UX? The _experience_ users have when they interact with a product, system, or service. <!-- .element: class="fragment" --> -- ### Can you have good UI without good UX? Yes! <!-- .element: class="fragment" --> -- ### What is interface literacy? Acquired knowledge of how to use common interface patterns. <!-- .element: class="fragment" --> -- ### What is skeuomorphism? Design practice that incorporates real-world elements into digital interfaces. <!-- .element: class="fragment" --> --- ## Now for Some Coding... [Pygame - Game State](/2024/fall/computer-science/slides/pygame-game-state)