Graphical User Interface Programming: Historical Perspectives and Course Objectives

introduction and historical perspectives n.w
1 / 27
Embed
Share

Dive into the historical evolution of computer interface design, from text-based to graphical interfaces. Explore significant implementations across various platforms and gain insights into GUI concepts and design practices. This course offers a breadth of knowledge with the opportunity to delve deeper into systems through a hands-on project.

  • GUI Programming
  • Computer Interface Design
  • Historical Perspectives
  • Course Objectives
  • User Interface

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Introduction and Historical Perspectives Lecture 1 - Graphical User Interface Programming CMSC 437 University of Maryland, Baltimore County Spring 2024

  2. Course Objectives In this course, you will learn about the following: The history of computer interface design Historical, text-based, graphical Significant implementations of computer interfaces Desktop, video game, touchscreens, etc. Graphical User Interface concepts and components Widgets, MVC pattern, accessibility Graphical User Interface design practices And, of course how to make a GUI in various OSes and toolkits

  3. About the course This is a course more on breadth than depth Lectures and examples presented will cover various OSes and toolkits The Course Project will be your chance to go more in depth into a system of your choosing

  4. Speaking of the Project As the project for this course is a significant portion of your final grade, you should expect to devote a significant amount of time and effort to it Your task in the project will be to design a GUI application on a system of your choice and to demonstrate it in-class More will be revealed later this is obviously not when the project is being assigned!

  5. How to make this class a success Attend class regularly! Ask questions and respond in class when I ask for input during lecture Complete assignments on time I recommend starting early, of course. Pay attention during example days and play around with the example programs on your own time Give suggestions of what you d like to cover in the course I m very much open to covering various topics/toolkits that you guys find interesting!

  6. Now Onto the Historical Perspectives

  7. The Before Times The earliest of computers were complex mechanical devices designed to do arithmetic, invented in the late 1700s and early 1800s Johann Helfrich von M ller s Addition Machine (1784) Charles Babbage s Difference Engine (1820) and Analytical Engine (1837) While the Analytical Engine was never completed during Babbage s lifetime, it is what is widely regarded as the first general purpose computer design Supported arithmetic, branching, control, etc.

  8. World War II and the Aftermath The first general purpose computer to ever be fully realized was the German Z3 Designed 1935, completed 1941 Consisted of approximately 2600 relays Operated between 5-10Hz Yes, Hz. Not GHz, not MHz, not even KHz. Funded by the German government, however not considered a wartime essential device Destroyed in 1943 during bombing of Berlin Confirmed in 1998 to be a Turing-complete machine

  9. World War II and the Aftermath One of the earliest known proposals for what we might think of as a modern Graphical User Interface was published in the July 1945 issue of The Atlantic entitled As We May Think by the director of the US Government s Office of Scientific Research and Development, Dr. Vannevar Bush Known as the Memex Consisted of a desk with a storage device for massive amounts of microfilm with slanted screens, a keyboard, and a scanner device Proposed as a challenge to scientists looking for inspiration after WW2 s end Article available online: https://cdn.theatlantic.com/media/archives/1945/07/176-1/132407932.pdf Seriously, go read this article.

  10. Vacuum Tubes and Punch Cards Images from: https://www.ibm.com/ibm/history/exhibits/vintage/vintage_4506VV2111.html and https://www.ibm.com/ibm/history/exhibits/vintage/vintage_4506VV4002.html

  11. Give way to Transistors and PCBs The invention of the bipolar junction transistor in 1948 at Bell Labs began the miniaturization of computer equipment Transistors are smaller and SIGNIFICANTLY more energy efficient than the vacuum tube The space race continued this trend A board from an Apollo Guidance Computer is shown to the left.

  12. The Transistor https://www.youtube.com/watch?v=V9xUQWo4vN0 A short documentary by Bell Laboratories, 1953

  13. Text-based Interfaces Early personal computers were entirely text-based, running either a BASIC-based environment or a simple Disk Operating System (DOS) like environment. Command-line based interfaces are still commonly used today, especially on headless server systems.

  14. Curses A widely used environment in UNIX- like systems for developing text- mode user interfaces is known as curses (or the widely-used open- source version ncurses) Curses itself was initially released as part of BSD, it was later brought to System V Release 4.0 Ncurses has been around since the early 1990s on Linux and other OSes

  15. Xerox PARC - Star The first personal computer to demonstrate the desktop metaphor was the Alto system designed at Xerox PARC Developed in 1973 More a research system, not a commercial product Xerox also developed the first WYSIWYG editor with copy/paste functionality, called Gypsy, in 1974 Demonstrated a GUI with ions and pop-up menus in 1975 Commercialized in the Xerox Star system in 1981 Image from https://en.wikipedia.org/wiki/File:Xerox_Star_8010_workstations.jpg

  16. Apple Lisa and Macintosh Apple, including engineers hired from Xerox PARC developed the Lisa system in 1983 A document-centric system with a graphical interface on top of an OS with advanced concepts like preemptive multitasking Extremely powerful for the time, but also extremely expensive Relatively, a commercial failure In 1984, Apple released the Macintosh, which was significantly lower in cost than the Lisa (although still much higher in cost than their Apple II line) Clearly inspired by the system at Xerox PARC Icon and Mouse-centric system Image from https://en.wikipedia.org/wiki/File:Apple_Macintosh_Desktop.png

  17. Apple Macintosh Ad https://www.youtube.com/watch?v=R706isyDrqI Aired during the Super Bowl in 1984

  18. The X Window System Used as the primary GUI environment on many UNIX- like systems including Linux Originally released in 1984 at MIT, but still developed to this day Derived its name from a system from before 1983 named W, which ran under an OS simply called V Based around a client-server model, allows Network- Transparent GUI model to function Separates the window management component from the GUI s core, allowing multiple different Window Managers to flourish Images from: https://commons.wikimedia.org/wiki/File:Twm.png and https://commons.wikimedia.org/wiki/File:XFCE-4.12-Desktop-standard.png

  19. Apple IIGS Introduced in 1985, the Apple IIGS was an advanced version of the Apple II line, featuring compatibility with that line and a new GS/OS which shared some features with the Macintosh GS here stands for Graphics and Sound This sound functionality actually got Apple Computer sued by Apple Corps Ended in an agreement that Apple would not build enhanced multimedia capabilities into their products Image from https://en.wikipedia.org/wiki/File:AppleIIGSOS.png

  20. Microsoft Windows 1.0 Announced in 1983 with a ship date of by April 1984 Released in 1985 for IBM PCs Consisted of a tiling window manager, and several applications such as Write , Clock , and Reversi shown to the right Supported only cooperative multitasking of well behaved applications Required a whopping 192 KB of RAM! The main shell of the UI was known as the MS-DOS Executive Was technically supported until December 31, 2001 by Microsoft Image from: https://en.wikipedia.org/wiki/File:Windows1.0.png

  21. Windows 1.0 Commercial https://www.youtube.com/watch?v=hUc69YdiQ4c Not a real TV commercial was a parody of ads from a local electronics retailer in the Pacific Northwest Only meant for Microsoft employees at the time But, of course, it found its way onto the Internet at some point

  22. Microsoft Windows 2.x Released in 1987 Came in two different varieties: Windows/286 and Windows/386 Windows/286 ran entirely in 8086 Real Mode, which meant it could run on any x86-based PC Windows/386 ran in 80386 Protected Mode Ran applications in a Virtual 8086 mode task Had Preemptive Multitasking, rather than Cooperative Brought much more application support to the table, including Microsoft Word and Microsoft Excel (along with many third party applications) Image from: https://en.wikipedia.org/wiki/File:Windows_2.1.png

  23. Microsoft Windows 3.x Released in 1990, with Windows 3.1 following in 1992 Last version of Windows to not require x86 Protected mode Significantly faster than previous versions due to rewriting of large portions of the code in Assembly Achieved broad commercial success, broad application support, cemented Windows as the future of PC OSes Based around the Program Manager , not the old MS-DOS Executive of previous versions Image from: https://en.wikipedia.org/wiki/File:Windows_3.11_workspace.png

  24. Windows 9x/ME Continued reliance on MS-DOS (version 7), however all versions of the 9x/ME line required 32-bit 386 Protected Mode Drastically redesigned the UI experience with Explorer replacing Program Manager Vastly expanded accessibility functionality over previous versions of Windows Image From: https://en.wikipedia.org/wiki/File:Windows_95_at_first_run.png

  25. Windows 95 Commercial https://www.youtube.com/watch?v=Tw-GGT6900s One of many commercials meant to sell people on Windows 95

  26. Microsoft Bob https://www.youtube.com/watch?v=jvP1cx1f5iA I ll just let this speak for itself

  27. Windows NT (and its successors) NT 3.1 released in 1993, but the line has continued to this day in Windows 11 Initially stood for New Technology Grew out of the Microsoft/IBM partnership with OS/2 and was meant as a follow-up to it originally Initially focused upon workstations and servers, but later used for consumer- focused versions of Windows as well Not based on MS-DOS Has been available on multiple CPU architectures over the years x86, DEC Alpha, PowerPC, Itanium, MIPS, x86-64, ARM Image from: https://en.wikipedia.org/wiki/File:Windows_7_SP1_screenshot.png

Related


More Related Content