Georgetown University
Graduate School of Art and Sciences
Communication, Culture & Technology Program

Professor Martin Irvine
CCTP-5028: Leading by Design: Principles of Socio-Technical Systems
Fall 2024

Course Description

This course is for all students who want to understand the key concepts in computer systems, software, data and information, interfaces and interaction, and the Internet and Web beyond that of simply being users and consumers. Students will learn how they can participate as thought leaders in any career path by learning the keys to understanding computing systems and everything digital through systems thinking and design thinking.

Design thinking and systems thinking reveal how universal principles of design are implemented in all the computational and networked data technologies that we use every day, and why it matters for everyone to “own” this knowledge. Every field and career today entails essential uses of software, data, and interfaces, and every field needs people who can communicate across technical and non-technical communities for explaining the technologies so that organizations can make informed decisions about applications and understand the consequences of certain kinds of designs. But in order to develop leadership roles, we need to change our position from being merely passive “consumers'' or “users'' of “black-boxed” technology products to becoming active participants who claim an ownership stake in understanding the design principles that make the technologies possible. With this change in position, students will be able to participate in making important real-world decisions about existing technologies, critiquing design choices, and developing new applications.

Our methods will focus on the “why,” “what,” and “how” questions about technologies, and not as much on the “how to” questions (for example, not on learning “how to code” in a specific programming language or app, but on why all programming languages are designed the way they are, and how they work in a computer system). With the methods and multidisciplinary knowledge-base provided in this course, all students -- especially those who think they are “non-techie” -- will be able to understand and explain our current “complex system” technologies as artefacts of human design that should be open to everyone.

Outcomes: By the end of the course, students will understand and be able to explain the key design principles implemented in our main computing and digital technologies, where the key ideas come from, how and why design principles have consequences, and how to apply this knowledge to new real-world contexts. By the end of the course, students will have acquired:

(1) the ability to explain the “why” and “how” of computer systems, software, digital media, and networked information with the unifying concepts in systems and design theory;

(2) the ability to apply systems and design thinking for understanding and explaining the design principles of technologies as socio-technical systems; and

(3) the ability to apply design principles for imagining and developing new innovations and applications, including being able to understand what is needed to design a new app if you aren’t the coder, but can lead the design with those who do the programming.

View and download the full syllabus document (pdf): for a full description of the course, Georgetown Policies, and Georgetown Student Services.

The course will be conducted as a seminar and requires each student’s direct participation in the learning objectives in each week’s class discussions. The course has a dedicated website designed by the professor with a detailed syllabus and links to weekly readings and assignments. Each syllabus unit is designed as a building block in the interdisciplinary learning path of the seminar, and students will write weekly short essays in the Canvas Discussion module that reflect on and apply the main concepts and approaches in each week’s unit. Students will also work in teams and groups on collaborative in-class projects and group presentations prepared before class meetings.

Students will participate in the course by using a suite of Web-based online learning platforms and e-text resources:

(1) A custom-designed Website created by the professor for the syllabus, links to readings, and weekly assignments:https://irvine.georgetown.domains/5028/ [this site]

(2) An e-text course library (shared Google Drive folder) and shared Google Docs. Most readings (and research resources) are available in pdf format in a shared Google Drive folder prepared by the professor (links in the online syllabus). Students will also create and contribute to shared, annotatable Google Docs for certain assignments and discussions (both during class meetings, and working on group projects outside of class).

(3) The Canvas discussion platform for weekly written assignments and discussion.

(4) Zoom video conferencing for virtual office meetings (when necessary or more convenient).

Grades and Requirements:

Grades will be based on:

  • Weekly short writing assignments (posted to the Canvas Discussions platform) and participation in class discussions (50%). Weekly writing must be posted at least 6 hours before each class so that students will have time to read each other's work before class for a better informed discussion in class.
  • An individual final "Capstone" research essay in which students can apply their learning in the course in a research project for developing the concepts and methods of the course (50%).

Professor's Office Hours
Before class meetings, by appointment, and scheduled Zoom video conferences.

Professor's Contact Email: Martin.Irvine@georgetown.edu

Canvas Home Page for the Course

Books and Resources

I have also curated an extensive online library of book chapters and articles in PDF format in a shared Google Drive folder (access only for enrolled students with GU ID). Most readings in each week's unit will be linked to pdf files in the shared Drive, or to other online resources. Download the texts for reading on your own PC or device.

Required Books:

  • Peter J. Denning and Craig H. Martell. Great Principles of Computing. Cambridge, MA: The MIT Press, 2015. [Also in pdf in Google Drive, but get your own printed copy.]

Recommended Books:

  • Janet H. Murray, Inventing the Medium: Principles of Interaction Design as a Cultural Practice. Cambridge, MA: MIT Press, 2012. [Excerpts in pdf in Google Drive.]
  • Ron White and Timothy Downs. How Computers Work. 10th ed. Indianapolis, IN: Que Publishing, 2015. [Excerpts in pdf in Google Drive.]

Online Library Folders (Google Drive, GU login required)

Georgetown Library Main Search Page (search all sources, books, periodicals, media)

A Note on Readings in the Course

  • I have written several introductions to course units so that students will have a framework for understanding the interdisciplinary sources of ideas and methods for each topic. These introductions are drafts of chapters of a book that I am writing for students, and are based on my 25 years of research and teaching. Please give me your honest feedback on what works and what doesn't, what needs more clarification or more examples. There are no textbooks for the "big picture" interdisciplinary approach that we we do in CCT, so we have to make our own.

Professor Irvine's Introductory Video Series: Key Concepts in Technology

  • I produced these videos for an earlier course, CCTP-798, Key Concepts in Technology. The basic background in these videos is relevant for the topics in this course, and for your general learning in CCT. (They are short, mostly ~ 6-10 mins each. Note: the Week numbers in the videos don't correspond to the weeks in this course.)
  • Key Concepts: YouTube Playlist (I will link some in specific weeks of the syllabus).

Using AI/ML Platforms for Research: Suggestions and Guidelines

  • Using ChatGPT and Perplexity.
Leading by Design? Why / What / How?

An orientation to the approaches in the course, focusing on understanding computational, media, and communication technologies through their design principles, implementation of functions, and social-technical systems and networks.

Defining kinds of technologies, and differentiating the cognitive and symbolic technologies (media, information, and communication technologies) from general and instrumental technologies. Learning the methods for exposing and refuting technological deterministic assumptions and how to develop descriptions and analyses for a more complete view of media technologies as implementations of human cognitive abilities and agency.

Moving from Being a User & Consumer of Technology to a Thought Leader in Your Field

Students will begin learning how to develop conceptual tools for understanding technology that can be mobilized for "de-blackboxing" (opening a technology through its system of interdependent social-technical components, histories of development, and distributed agency), and universal principles that can be extended to their own designs.

Personal Introduction: My video introduction [Update: I've been at GU for over 30 years!]

Course Introduction: Requirements, Expectations, Goals

Using Research Tools for this Course (and beyond)

Course Road Map

  • Week Units are Building Blocks.
  • Topics and content will be modified and updated as we proceed through the course.

Orientation to Key Concepts: Design Thinking and Systems

For further study (on your own):
Introduction to Main Concepts and Interdisciplinary Methods (Google Slides)

Examples for Class Discussion: First steps in design thinking for de-blackboxing

  • Examples for thinking about complex system design principles: Google Translate; a streaming media platform; ChatGPT, Uber.
What can be studied is always a relationship or an infinite regress of relationships. Never a "thing."
-- Gregory Bateson, from Steps to an Ecology of Mind (1972)

Introducing Key Concepts and Terms

This week provides an introduction to our main methods and key concepts with a brief overview of some key terms. You will learn the specialized meanings of the terms and how to apply to them throughout the course.

Readings & Video Lessons (study in this order:)

  • Prof. Irvine, Introduction to Design and Systems Thinking: Systems and Architectures
    • Read first and print out for reference.
  • Video lessons:
    • Introduction to Systems Design Principles (by Systems Innovation Network)
      This is a good introduction to universal systems design, but we will be focusing on specific kinds of systems, computer and digital information systems. Focus on "Systems Thinking" (beginning at 8:28), Systems Design (at 9:15), and Complex Systems Design" (10:41).
    • Complex Systems Design Theory: Overview (Systems Innovation Network)
      This video is part of a course on Complex Systems Design (see full playlist; you can study the other lessons on your own if you are interested). This introduction provides the macro "top level" view of the principles of complex system design. We will study the ideas behind these design principles and how they apply specifically to computing and digital systems.
  • William Lidwell, Kritina Holden, and Jill Butler. Universal Principles of Design. 3rd. ed (2023), selections.
    • Well-illustrated compendium of design concepts. Use as a reference. Skim the excerpts on major principles for an overview: we will study topics presented here in coming weeks.
  • Donald A. Norman, Living with Complexity. Cambridge, MA: The MIT Press, 2010. Excerpts.
    • Read the excerpts from Chaps. 1-2 (up to p.39) and Chap. 8 (excerpts pp.225-239) for this week. This is written for a general audience and is a quick read. Focus on his explanations of systems, affordances/signifiers, mental models, modularity, and managing complexity for this week. These are key concepts that we will apply throughout the course.

Writing assignment (Canvas Discussions Link)

  • Read the instructions for your weekly writing assignments.
  • Your writing for this first discussion post can be informal. You can "think out load," ask questions, and try out applying one of the concepts. Write some notes first and organize a few thoughts: what were the main "take-aways" from the readings and video lesson; any "aha!" moments where some idea "clicked" in your mind; and questions that you want to discuss and have explained in class.
  • Composing your discussion post: For this week, try thinking with one or two design concepts from this week's readings. (You can look up some background on "how" something works in Wikipedia; but we're also studying the "why" of design.) Can you describe one or two of the top-level design principles that are implemented in one of our everyday devices or PC software? The graphical interface "window" for a software application presented in the graphical interface screen of a PC or tablet (describe some components that have to be combined)? A mobile device "app" (what's designed to happen behind the scenes)? A "streaming media" (music, video) service (that's a really complex system)? Can you detect some design principles that had to be implemented "inside" the black box that account for what we can see and do?

Learning Objectives and Main Topics:

Learning the major concepts and principles of modularity for understanding how this design principle is understood and applied in all computing, digital media, and information technologies. Modularity (designing complex systems by means of subsystems) is one the most important design principles of computing technologies and all aspects of the human built environment.

Video Lessons

Readings

  • Prof. Irvine, Introduction to Modularity and Thinking in Levels and Layers.
  • Lidwell, Holden, and Butler, Universal Principles of Design. 3rd ed. (2023).
    Selections: Read definitions for Mental Model, Modularity, and Progressive Disclosure.
  • Richard N. Langlois, "Modularity in Technology and Organization." Journal of Economic Behavior & Organization 49, no. 1 (September 2002): 19-37.
    • Read only pp. 19-26 (sections 1-4) for an introductory overview of concepts initiated by Herbert Simon on complex systems. Very accessible introduction to the main concepts treated more extensively by Baldwin and Clark, next.
  • Carliss Y. Baldwin and Kim B. Clark, Design Rules, Vol. 1: The Power of Modularity. Cambridge, MA: The MIT Press, 2000. Excerpts.
    • This is a classic study that analyzes the efficiencies of modular design principles as developed in the computer industry. The authors explain the concepts and theory, and the business applications for modular design. Read as much as you can.
  • Peter J. Denning and Craig H. Martell. Great Principles of Computing (MIT Press, 1915). Read the Introduction and Chapters 1-2. Note how computer science is a large interdisciplinary field devoted to complex systems in many domains and on many levels.

Example for Case Study and Assignment

  • The Modular Components in the iPhone (from iFixit.com)
    • A quick video version of the "tear-down" of the device (Ignore the tech business hype.)
    • iFixit is a company that specializes in do-it-yourself repairs, with tools and sources, hence the "tear-down" guides. Their videos and instructions are great "deblackboxing" lessons for modular systems design. You can learn a lot by understanding what the components are designed to do in the system, and how all smart phones and mobile devices have the kind kind of physically manufactured components to implement the various functions in modules. Ignore the tech business cheerleading or consumer-level critiques of a specific device.)
  • The video and step-by-step explanations provide a great view of a physical "deblackboxing" -- what's inside an iPhone (all smart phones will have the same kinds of components). Opening up and "decomposing" the components of a device is called a "tear-down"; that is, what all the components look like when disassembled (taken apart, part by part) from the "black box" of the device. It's a great case study in modular system design: the physical components exist only to implement design functions in an overall complex system design.
    • Read (scroll through) the basic documentation on the components as they are "decomposed" and identified. There is also a longer video showing how the device can be "torn down" to fix or replace certain components.
  • We will return to interpreting system components (hardware, software, interfaces. networks) several times in the course, and you will learn the importance of modular design when you want to design something yourself. This is a good well-illustrated case to being with.

Writing assignment (Canvas Discussions Link)

  • Throughout the course, we will use the iPhone (or other phone/mobile devices that you may know) for an ongoing case study for applying key design concepts and seeing them in action. (The brand or manufacturer is irrelevant to what's important to learn.) You will learn how to interpret the implementations in a device to de-blackbox the system design: to reveal the universal design principles at work, and uncover how functions and features of the designed system are implemented both in the modular components (hardware and software) of a small device, and in further modular connections to other systems and subsystems.
  • Assignment Instructions: Using the iFixit tear-down for clues on deblackboxing modular designs (link to pdf of assignment instructions). Write your discussion post about what you learned.

Learning Objectives and Topics:

This week, students will learn why we need to differentiate (distinguish) kinds and categories of technologies when learning design principles. When studying the components, processes, interfaces for computing systems, we need to know what kind of designed technology makes computing systems and everything digital unique in the world of human-designed things. This understanding is likewise essential when going from design thinking to design doing in conceiving new designs for computing and the physical ways to implement them in components that inter-operate with the whole system design..

Looking ahead, you will soon understand why knowing what kind of technology belongs to computing, digital data and media, and why understanding computer system-specific design principles are essential in designing interfaces and interactions.

Over the next weeks of the course, you will learn how to answer these essential questions:

  • What kind of artefact (something human-designed and built by design) is a computer system?
  • What distinguishes (separates out) computer systems, software, and digital data and media from other human-designed things and machines, and why does this distinction matter for design thinking?
  • Why and how are modern computer systems based on, and designed to serve, our shared human symbolic-cognitive capabilities (thinking, expressing, and communicating in language, writing, images, symbols in math and science, and symbolic forms in music and film/video), and why is this fact important for every level of design in computing systems and digital media?

Video Introduction:

Readings:

  • Prof. Irvine, "Introduction to Cognitive-Semiotic Artefacts for Design Thinking."
  • Kate Wong, “The Morning of the Modern Mind: Symbolic Culture.” Scientific American 292, no. 6 (June 2005): 86-95.
    [All the deep, historical evidence indicates that we are the "symbolic species," which is revealed in the language capacity, human cognitive capabilities (perception, thinking, reasoning), and the use of many kinds of symbol systems and symbolic artefacts. Attend to the last summary paragraphs in the article. The symbolic capacity is what enables our capability for abstract thought, communication, writing systems, mathematics, music, image systems, and the many forms of material media designed to serve our sign and symbol systems. We are just at one point in a long continuum. Computing and digital media are based on all of our symbolic capabilities, including the design and physical implementation of designs that serve symbolic thought, expression, representation, and communication.]
  • Michael Cole, On Cognitive Artifacts, from Cultural Psychology: A Once and Future Discipline (Harvard University Press, 1996). Connected excerpts.
    [A good summary of the cognitive psychology context that provided important concepts and assumptions in Human-Computer Interaction/Interface design theory as it developed in the 1960s-2000s. Don Norman (design theory guru) also came from this school of thought.]
  • Donald A. Norman, "Cognitive Artifacts." In Designing Interaction, ed. John M. Carroll, 17-38. Cambridge University Press, 1991. Read pp. 17-23; skim the rest of the article for the main topics.
    [This essay was written at an earlier stage in the concepts for graphical user interfaces, and all the concepts remain valid today. Don Norman's research and conceptual models also connect with Douglas Engelbart's ideas (for "Augmenting Human Intellect"). Engelbart's lab invented GUI systems, the mouse, multimedia screen displays, and hyperlinking in the 1960s-70s. We will study the work of Engelbart and other founders of our graphical, interactive systems in coming weeks.]
  • Andy Clark, Supersizing the Mind: Embodiment, Action, and Cognitive Extension (New York, NY: Oxford University Press, USA, 2008) (Excerpts).
    • In the excerpts from the Forward by David Chalmers, pp. ix-xi; xiv-xvi, note especially the comments in the last 3 pages of the Forward.
    • Then read the Introduction and the excerpt form Chap. 3 (up to p.47). Can you see how his view of "material symbols" and the concept of "cognitive scaffolding" applies to what we do in the design of computer systems? These topics continue in ongoing interdisciplinary research across several disciplines, include AI.

Presentation (in-class and study on your own):

Writing assignment (Canvas Discussions Link)

  • What are your main take-aways and questions from the readings by Wong, Cole, Norman, Clark? Any "aha" moments when you saw some connections for computer and data systems in the bigger picture of human symbolic thought and expression, and in the history of media and technologies designed as "cognitive artefacts"? Can you explain how this interdisciplinary view of "cognitive technologies" and "cognitive-symbolic artefacts" provides us with a better understanding of what kind of technologies computer systems are? And then, what difference does the deeper understanding make when we study "design thinking" and "design doing" for computer systems as unique kinds of technologies that are based on, and designed to serve, our core human capabilities in symbolic thought and expression, rather than as generic "machines" or "manufactured products"?

Learning Objectives and Main Topics

So far, you've learned some basic design concepts used at all levels and for designing and making many kinds of computational systems (small and large), and also the larger conceptual framework for understanding that every computing device and all forms of digital data belong to very specific kind of human-design system (artefact).

In Weeks 5-8 you will learn the key concepts and design principles for digital electronic computer systems, and the important concepts for electronic information and data design. Our first step (this week) is learning the fundamental design principles for modern digital electronic computer systems (at any size or scale), and how these designs map onto (correspond with) our human capacity for symbolic thought, math and logic, and performing operations (interpretations, calculations) on and with different kinds of symbols (numbers, written characters, images, etc.).

This week, you will be able to apply the design concepts for complex systems and modular combinations (subsystems, functions assigned to components, the orchestration of the whole inter-connected system). When studying the technical details that embody the implementation of designs (realizing, creating actual physical components for a system) you will also be able to understand the reasons, purposes, and meanings behind the technical details, even though we don't need to know the complexity of everything in the "block box" at the minute detail level. But with our clarifying approach, you will always be assured that there's nothing "black" (unknowable, inhuman, "other") in the black boxes

In the following weeks, you will learn why and how we can impose human designs for creating computational representations (= digital binary data) for using the electronic structures designed for computing systems to "encode" (represent in a different form) all our human symbol systems (e.g., language, writing, images, photos). To make this clear for you, we will focus on we encode two major symbolic forms -- text and images/photos.-- so that the representations become computable data, and can be communicated and transformed in programs in all the ways that we do today.

Readings and Video Lessons

  • Prof. Irvine, Introduction to Computer System Design Principles [read first].
  • Prof. Irvine, What is a Computer? What is Computation?. Video. 20 mins.
    You can also view this video directly in your browser [link] (not on YouTube) [switch to 1080p HD quality]. I made this video for CCT 505, but with a view that applies to design thinking.
  • Crash Course Computer Science: Video Lessons (Lesson List)
    • Study the Preview and Lessons #1-3 (list sequence: 1-4).
    • Each lesson is about 10 mins. [You can also watch the whole series at your own pace whenever you want throughout the course.]
    • These lessons provide excellent background at a good level of detail. We will complete the descriptions in the lessons by answering the "why" and "how possible" design questions, the reasons for the designs in the histories of engineering implementation for modern computing architecture.
  • Peter J. Denning and Craig H. Martell, Great Principles of Computing (link to pdf). (Cambridge: MIT Press, 2015). Read chapter 1, the skip to "Summary of this Book," pp. 249-55 for an overview of the major focus areas in computer science, and sections of the book that you can study for deeper background throughout the course.
    • We will refer to the computing principles outlined in this book throughout the course. Denning always maintains the "system design" point of view. Even though the book is for non-specialists, much will be new to you, and it will take time for the terms and concepts to become yours to think with. That's normal and OK. Read and re-read it as we progress through the course.

Writing assignment (Canvas Discussions Link)

  • What discoveries did you make about computer system design? With the framework in the introductions and what you learned last week, can you describe new insights and connections that you made between the larger design purposes of computer systems and how they can be implemented in components at different stages of development in the supporting technologies? ("Supporting technologies" are those used for all kinds of physical modules -- electronic components, screen technologies, developments in materials, miniaturization in processors, manufacturing methods, etc. -- and are always under development, but the basic design principles remain the same.) To help your thinking, you can choose one module in the system design to describe and explain with the conceptual frame that we are developing.

Learning Objectives and Main Topics:

  • Key terms and concepts: information (as defined in electrical engineering for digital electronics) and for data (as structured units of information used in computation). Learning how to distinguish the technical uses of these terms from uses in popular discourse.
  • Information designed as a semiotic subystem: Learning why the electrical engineering encoding and transmission model (sender-signal-receiver) is not applicable for describing communication of meaning, values, and intentions that motivate what we encode in the symbol units of data. Digital, binary electronic information (the bits and bytes to be "written" into computer memory and accessed by processors) is designed as a subsystem (substrate) for creating data structures, that is, logically grouped units of (otherwise meaningless) bits and bytes, which, by the system design, are represented in memory as data (like bytes for written characters and sets of binary encoded patterns for images) that we use for meaningful representations.

Readings and Video Lessons

In-Class: Demonstration of Telegraph and Morse Code with a working telegraph system!

    • Live demo of telegraph key and sounder with actual 19th-century equipment.
    • Introduction to Samuel Morse and Code (background and dossier of sources) (Irvine)
    • For in-class demo: Code chart and test message.
    • In-class discussion: From Morse Code to to Unicode.
      • You can observe and interpret when information (as simple received signals) becomes data (interpreted as a code corresponding to a human symbol system, typographic characters).

Writing assignment (Canvas Discussions Link)
Choose one of these approaches to this week's topic:

  • Take on the role of explainer for a group co-workers who need a clear explanation of the reasons behind why we use the binary system of values in the design of digital electronic information and computing. Can you explain the design principles for "E-Information" (binary electronic information) as a necessary subsystem for representing all our symbolic forms (text, images, audio, etc.) in the structures or patterns that digital electronic computers and data networks can use? Can you explain why the meaning of digitally encoded text symbols, images, or videos that we interpret is not "contained" in the digital information that that is sent and received (that is, the meanings we understand are physical properties of the electronic units designed for computer systems and networks)? What do senders and receivers of digital data know about our symbolic systems that can't be physical properties of the signals that our computers systems translate (in programs and hardware) into the outputs that we perceive in screens and audio interfaces?
  • Think through a case study of "E-Information" that is always reliably at work behind the scenes in something we do every day: copying a files fro one location to another. What is happening when we copy (or "move") a file from your computer or device (that is, from one set of memory locations) to another physical location (another set of memory locations in a flash drive, hard drive, Cloud storage, or another computing device). Explain how E-Information (electrical engineering binary information) is always behind the scenes as a subsystem for the data and digital media that we encode in bytes. Why isn't the "meaning" of the text symbols, images, or videos in a text or email message or social media post "contained" in the digital data (as properties of the physical electronic units internally in computing systems)? What do senders and receivers know about the encoded data that isn't a physical property of the signals or the physical patterns that we perceive in outputs (screens, audio)?

Learning Objectives and Main Topics

In Weeks 7 and 8, students will learn the foundational concepts of "data" as defined in digital electronics, computing, and all data sciences. We will focus on text and image data, the most widely used types of digital data, which correspond with our major symbolic systems (language/writing and images/pictures).

By the end of week 8, you will be able to answer these questions: How is it possible to encode the two key forms of human symbolic expression -- written characters (signs) and images -- so that they can become computable objects (data) for digital computer systems and all data processes (as in AI)?

This week we will focus on text encoding -- how written text characters (in any language family) can become computable in binary representations that programs can interpret and process.

Readings and Video Lessons

Digital Text Encoding for all Languages: Unicode

Writing assignment (Canvas Discussions Link)

  • Assignment: discover for yourself the Unicode byte-code for encoded characters that we use and see in screen representations. Use these steps for your discussion post:
  • (1) Use this "Unicode lookup" tool: What Unicode character is this? (by Babelstone).
    • Experiment with writing text inputs and by pasting a couple of sentences into the Input box. Click the "Identify" button. (There is also documentation on how to use this "decoding" system and pass a text string into a parameter in the URL.) Copy one of your input strings and the Unicode character code identifiers into your discussion post. (You can experiment with any language that you'd like to visualize in the Unicode code-points).
    • Note: this Unicode look-up tool "decodes" the code points in Unicode, but to display them as text data on our screens, the byte-code units are re-coded into Unicode characters and numbers (1).
  • (2) Use Google Translate for representations of two sets of Unicode text tokens. Choose an input language (left box) and an output language (right box). Choose English for one of your languages so that we can all follow your text. (Note: In linguistics and Natural Language Processing (NLP), the two boxes represent the "Source Language" and the "Target Language" for the translation.) Input or copy and paste two sentences in a chosen language in the left "Source Language" box. Next, copy both sets of text tokens in the Translate boxes (the input and output) (or do a screen shot) and insert them in your discussion post.
  • (3) Next, copy and paste both text strings from Google Translate, one language at a time, in the What Unicode character is this? input box. Copy the list of Unicode characters with their code identifiers for each language text string into your discussion post.
  • (4) Comments and discussion. What are your main "takeaways" in learning about how we can encode written characters in standard binary byte units so that these units become computable data? Any "aha" moments when using the Unicode tool to show the Unicode code points for two different languages? What questions would you like to discuss in class?

Learning Objective and Key Ideas:

Understanding Digital Images as Data

Last week you learned about the major data type: text (or "string") data, and how Unicode as a standardized encoding format enables text data in any language family to be universally interpretable (decodable) across any kind of computer system and software program for text data.

This week, we will study the design principles for encoding images and photographs as forms of data in standard formats that can also be used across different computer systems, data bases, and software applications.

We use digital photos in so many applications, so it's really important to understand how photos and images become digital data, and how digital images are encoded. We need to answer basic questions:

  • What is a "digital photo"? How are photo images encoded as digital data?
  • How can software be designed to create, interpret, change, and transform a digital photo image?
  • What kinds of further data (metadata) goes with a digital image file, and how is this interpreted in software?

Video Lessons:

  • Prof. Irvine, Introduction to Digital Images as Data: How Digital Photos are Encoded
  • Video Lessons
    • Crash Course Computer Science:
      View Lessons 15 (Data Structures) and 21 (File Systems). In Lesson 21, notice how the digital representation techniques for sound and images are different from text, and note how digital image data is structured in data file formats.
    • Code.org: Images, Pixels and RGB (by a co-founder of Instagram)
    • Branch Education: How do Smart Phone Cameras Work?
      • Good "deblackboxing" view, and excellent background on light and human vision. Sections may seem like too much technical detail, but there's a lot of useful knowledge here.
  • Ron White and Timothy Downs, How Digital Photography Works. 2nd ed. Indianapolis, IN: Que Publishing, 2007. Excerpt.
    • Well-illustrated presentation of the basics of the digital camera and the digital image. The digital image principles are the same for miniature cameras in smart phones.
    • Study pages on "how light becomes data," and "how images become data," and Chap. 9 on how software works with digital images. Important background.

Writing assignment (Canvas Discussions Link)

  • This assignment will help you understand what a digital image is as a form of data, and how a digital photo in a file format (.jpg, .gif, etc.) becomes computable data in all software contexts and data applications (as in Machine Learning and AI). Use these steps for preparing and writing your discussion post:
  • (1) Choose a digital photo that you've taken -- or take a new one -- as an example to study. Use a digital camera if you have one, or a mobile phone photo. Copy the image file to a folder in your PC/Mac (by whatever method you use). [If you choose a photo from a mobile device, you can first upload the file to a storage location (e.g., cloud) and then download it to your Mac/PC; or use a Bluetooth file transfer app; copy the file into a folder with a USB cable, or send it to yourself in email, so that you can save it to your PC/Mac for using it in software.] Then, use any photo image viewer you have on your PC/Mac to view the image on your screen. If your photo viewer has editing and modification routines (like filters or styles, morphing, etc.), make some changes and save the modified image with a different file name.
  • For discussion post (Part 1): Upload your image (and any edited or modified versions) at the beginning of your Canvas post (which make another copy in the Canvas cloud memory), and write your discussion comments below your photo example(s). For the first part of your post, refer to the readings and video lessons for this week, and connect what you learned last week on E-Information, and explain the steps in the digital data process from taking the photo with a digital camera (lens + sensor), through the stages in memory locations in different devices (at the E-Information level; that is, from the memory in the device that you used to take the photo to other memory instances) and then to the viewable image displayed in the picture elements on your screen with your image viewer program. (Think of this process as the "physical biography" of your photo image as data.)
  • (Part 2) Next, find out as much as you can about the properties of your image in the metadata for the file. If you know how to use Photoshop (or a similar digital photo editing program), you can display the "Information" in the "metadata" in the image file. You can also view some of the metadata in the image file in the "information" in the Mac OS file view, or in the "Properties" of a file in a Windows PC folder. Copy or transcribe the info into your post.
    • Easy way: Use this free online image viewer: Forensically (Image Analyzer). Upload or drag and drop your file from where you saved it into the app window. The "Magnifier" provides a pixel-to-picture element enlarger. Click on Metadata to view the metadata in your file. You can highlight and copy and paste the text data.
    • Note: Some or most of the metadata in your image file may be stripped out by different mobile platforms. If this happens, try transferring a copy more directly from your camera or device to your PC/Mac.
  • Then, copy the main metadata fields into your post, and comment on what you found (as best you can). Add your own comments and questions about the process of creating a digital photo as a type data, and how our systems are designed for creating physical instances in memory locations and software projections into screen elements. Have fun!

Learning Objective and Main Topics:

(1) Continuing learning the basic design principles for computer systems and programming (Crash Course lessons), and
(2) Learning how the set of skills described in computational thinking are part of our shared human cognitive abilities, which have enabled the development of everything in computing and digital data.

Computational Thinking is not "thinking like a computer," but, rather, is a summary description of a cluster human thinking processes that are also part of design thinking. These human capabilities are given a more precise focus in computational thinking, but are not necessarily "technical." They are the capabilities that have enabled both the design principles (the conceptual models for systems) and the methods for physical implementations of computing systems (the engineering and manufacturing of actual computing devices). This application of human thinking is a direct consequence of human symbolic thought in our capabilities for language, writing, numbers, logic, abstraction, modeling, and thinking with and recognizing patterns.

As we have seen, these capabilities are behind the designs for digital data as binary-encoded computable representations of our symbolic forms. And further, computing is about automating the interpretive processes that "go with" (i.e., that we can assign to) the represented forms of data in physical computing systems. Numbers used as symbols at different levels of meaning are the "internal language" of computing, and computational thinking provides our macro-level design methods for encoding data and programs and for designing interfaces that correspond with our human cognitive-symbolic abilities and needs.

Readings and Video Lessons (in this order)

Hands-On Learning for Applied Computational Thinking in Programming

  • InLearning Online Video Course: Introduction to HTML (for Web and mobile app design)
    [Sign in with your GU ID and password.]
    • Study: Lesson 1, Lesson 2, Lesson 3 [only HTML attributes and Formatting HTML]; Lesson 4; Lesson 5 [Only Images and Image Formats].
  • Learn, try, and see basic the HTML code suite run at W3Schools:
    • Learn basic HTML and try out the code in the HTML Tutorial.
    • You can try out the markup code for text and image content that you want to see in a web page for this week's assignment (below).

Presentation (In-class): On Computational Thinking and Design

Writing assignment (Canvas Discussions Link)

  • This exercise will provide you with a brief "hands-on" view of how computational thinking is behind the design and functions of the "HTML code suite" used for Web pages and the interface content in mobile apps. You will also be able to visualize what you learned about the encoding methods for text and image data, and how the different data types can be combined in software in our graphical interfaces.
  • Note: The instructor for the InLearning video lessons may not call out the "computational thinking" methods used in HTML and Web design explicitly, but she does explain why Web design is managed by three different code groups that are combined together (i.e., an example of decomposition, abstraction levels, and pattern groups). You will be able to see how the design for the code groups breaks down the larger problem for Web page design. The whole design solution includes many layers of interface design, screen layout, code for fonts, styles, and images, as well as code for interactions and links to Internet servers hosting many kinds of programs and data that are called into a Web page or mobile app window).
  • For your discussion post: First, finish studying the InLearning "Introduction to HTML" lessons, and try out some code in the HTML Tutorial at W3Schools.
  • Next, in your post, describe some of your main takeaways and "aha" moments from the readings and lessons this week. What aspects of "Computational Thinking" could you observe in the lessons and trying out the code? Could you see how you use "Computational Thinking" yourself, but didn't know it (!)?
  • Then, for the "hands-on" application, go to the student HTML test doc (Google doc). Add some HTML markup code (or CCS style code, if you go that far) for the "content" within the <html> ... </html> main file markers. Insert your text content using a Heading and a short paragraph with the <p> ... </p> code. Also, try including the code for an image as an element in your .html file. (You can link to an image file from any public Web page.) I will copy your code markup and content to a Web page with a URL on my server that we can all view on the Web in class.
Learning Objective and Main Topics:

This week and next week will provide an introduction to key concepts in the design principles that are assumed and applied in our digital computing systems with representational displays (including graphical interaction interfaces and corresponding software layers). You will learn how the design principles for affordances, interfaces, and interaction enable everything we see and do in PCs, tablets, and smartphones, i.e., everything that uses a graphically-rendered pixel-based screen as an input-out device for a computing system. This includes learning how designers use the affordances in this kind of technical system for designing screens (also termed monitors and displays) as an interface for a two-way communication with a computer system -- both displaying representations to be interpreted, and cues for user-agent inputs that are introduced into the system. interaction. "Interaction" in computing means a system design based on taking inputs from an agent (aka, "user") who directs software processes while they are in process through designed interfaces to the computer system itself, and producing further interpretable "outputs" in the same display for an ongoing dialog.

Readings & Video Lessons (in this order):

  • Prof. Irvine, Introduction to Design Principles for Affordances and Interfaces
    [My introductions for Weeks 10 and 11 provide summaries and syntheses of a 50-year history of interface design theory and practice. There aren't any textbooks for an interdisciplinary view. The video lessons are a great summary of the background history.]
  • Crash Course Computer Science (video lessons: background history for the study of computer system interface designs)
    • Lesson 22: Keyboards & Command Line Interfaces
    • Lesson 23: Screens & 2D Graphics
      • Note the design ideas for re-engineering screens as two-way communication interfaces: not just static displays, but as interfaces for inputing signals back into the system (as in Ivan Sutherland's Sketchpad system).
    • Lesson 24: Historical Contexts and Technical Developments for New Kinds of Computers (Cold War era and rise of Consumerism)
      • Note the references to the work of Ivan Sutherland, Doug Engelbart, and Vannevar Bush. There was a gradual understanding that computing could be more than "number crunching" (doing calculations for business, government, and science), and and could be "general symbol processing" useful to non-specialists.
    • Lesson 25: The Development of the "Personal Computer"
      • Note how computer displays (monitors) were initially text based and for displaying "feedback" from keyboard inputs (what got registered in the system's memory) and then outputs of software processes.
    • Lesson 26: The Development of Graphical User Interfaces
      • Note the background on Doug Engelbart, the founder of interactive interface designs, and the Xerox PARC Alto system. This lesson is weak on design principles and is more about PC product history.
    • Remember: These are good lessons for the "how" and "what" in the technical implementation history, but we need our methods for the "why" questions: "why did the early designers develop screen-based interfaces for computer systems?", why did they need to translate the principles of symbolic systems into the affordances of digital systems?", and "what are we actually doing when we use them?"
  • Brad A. Myers, “A Brief History of Human-Computer Interaction Technology,” Interactions 5, no. 2 (March 1998): 44-54.
    • This is an excellent brief overview of the technical history, and though written in 1998, we continue to use all the interface design principles summed up here.
  • Janet Murray, Inventing the Medium: Principles of Interaction Design as a Cultural Practice. Cambridge, MA: MIT Press, 2012. Selections. Read the Introduction (pp.1-21)..
    [An excellent introduction to contemporary design principles for computer interface design . with a cognitive-semiotic approach. Note the description of the main affordances of the digital medium, and how interface designers take advantage of them.]

For discussion in class:
Documentary videos on the history of interface and interaction designs:

Writing assignment (Canvas Discussions Link)

  • With references to the readings and video lessons, discuss new discoveries that you made about interfaces for computer systems by studying the background history of concepts and developments in computer systems. For thinking through what you learned, consider: Is the story of "how we got here" in computer system design more understandable? Can you apply what you've learned so far about computer system design principles for understanding the design concepts for interfaces? Can you describe what we do with computer interfaces and data representations in fuller and more detailed ways than you could before?

Learning Objectives and Main Topics:

  • Learning the design principles for modern computing systems that enabled the development of interfaces for human interaction with programmable processes.
  • Learning the origins of the design concepts behind the technical architectures in all our devices that support the graphical and interactive interfaces that we now take for granted.
  • Learning how the design concepts and techniques for using the affordances of computer systems are based on our human symbolic process cycle of:
    representations -> interpretations -> responses and actions -> further representations and interpretations ->
    for creating dialogic processes with computer systems as co-agents.

Key terms and concepts (continuing from last week):

  • Design principles for developing computer systems as "symbol systems" or "symbolic information systems," not simply calculators and "number crunchers."
  • Interface and Interface Design as part of a new multidisciplinary field, HCI (Human-Computer Interaction, design principles for two-way communication with computer systems). This field of practice developed with people working in computer science, cognitive science, graphical design, and engineering.
  • Interactive / Interaction Computing (the precise technical definition): the computer system design model now used for programs and operating systems that do not terminate (stop, end), but continue running "in the background" and waiting for ongoing user inputs and directions while the program is running.

Readings & Video Lessons (in this order):

  • Martin Irvine, Designing Interfaces for Interactions and Agency in Computer Systems.
    [I have synthesized a lot of background for the design concepts that enabled our contemporary interactive systems and interfaces, so that you have access to the powerful ideas that are now taken for granted and "built in" to every computing device that we use.]
  • Interaction Design Foundation Video Lessons: UX Design Video Lessons (full list) | Human Computer Interaction Video Lessons (list)
    • For this week: Video lesson: "How do human interact with computers? A cycle of Interact with HCI."
    • Compare this presentation with the "interpretation --> Response" diagram and description in my introduction above. What's missing here is the recognition of computer systems designed as dialogic agents and partners (as in Doug Engelbart's view), which invalidates the "us" vs. "computers" dichotomy.
  • Bill Moggridge, ed., Designing Interactions. Cambridge, MA: The MIT Press, 2007. Excerpts from Chapters 1 and 2: The Designs for the "Desktop Computer" and the first PCs.
    • The excerpts will provide some clues for answering the "why" of interactive design and the "what are we doing with interactive systems" questions.
    • This book is well-illustrated, and is based on interviews with the main designers of the interfaces and interaction principles that we use every day. Includes interviews with, and background about, Doug Engelbart, and the design team at Xerox PARC with Allan Kay (Stu Card and Larry Tessler). You will get an insider's view of developments in design thinking, the groups and companies that implemented the designs, and the concepts behind the interface designs for interaction that we all take for granted now.
  • Brad A. Myers, Pick, Click, Flick! The Story of Interaction Techniques (New York: ACM, 2024).
    • This book is a complete compendium on the history of interaction techniques by a leader in computer science. Survey the Table of Contents and Introduction. Choose one of the chapters in Part II (Specific Interaction Techniques) to read for fuller background on one of the technical means for fulfilling the goals of designing interactive, dialogic, computer systems.

For Reference and Further Research:

  • Interaction Design Foundation, The Encyclopedia of Human-Computer Interaction, 2nd. Ed. Online.
    [Useful open-source reference. Don Norman is one of the advisors. You can come back to this reference if you want to follow up, or use the chapters for your final project..]
  • Interaction Design Foundation: UX Design Video Lessons
    • These are good sources if you want to learn more or use for your final project.

Writing assignment (Canvas Discussions Link)

  • This assignment will help you connect the key design concepts and technical background from last week and this week. First discuss briefly your main take-aways, “aha!” moments, and questions from this week's readings and lessons.
  • Then, reflect on a program that you use on a PC or Mac (but we’ll discuss mobile versions too) for describing some of the interaction design principles that are based on the affordances of graphical screens (with x/y mapped coordinates) and programs with GUI windows-based interfaces. For example, a Web browser (Chrome, Safari, Firefox, etc.) is designed with many sub-processes to facilitate: (1) interactive functions with digital media content (data formats) from Internet data sources, (2) user-agent inputs and window controls for initiating and directing processes, and (3) interactive input/output modules mapped to screen window locations. Another example is a program for Word processing (which now includes subprograms for inserting images and other graphics in the text file), whether a program installed on your Mac/PC (like Word), or the Google Docs text processor. Consider some design features at the "user interface" level that facilitate our natural "symbolic process cycles" for creating an ongoing dialog with a program and with the computer system architecture. This will be hard to do at first, because we are so used to seeing everything that we do with software and what appears in interfaces as "automatic" or "transparent," and simply taken for granted as what computers are.
  • When using the program interface, describe the steps in your own interpretations of screen representations, and your follow-on actions with GUI components for ongoing dialog. Notice: pointers/cursors that correspond to (“track”) mouse movements (or motions sensed in touchpads), keyboard inputs of your symbols at locations where a pointer is placed in the x/y coordinates, button clicks at regions with objects (icons, menus indicators, etc.) and for editing functions. How are the interactive components designed to facilitate further interpretations of system outputs and further actions in the interpretation->response interaction process cycle. (The technical details for the interactive functions and techniques are accessibly described in the Brad Myers book. You could choose one to consider how the design concepts are implemented technically in the kinds of computer systems designed today. Or just try to make what you are doing in and with an interface as self-conscious and explicit as you can.)

Learning Objectives and Main Topics:

  • Learning the "Internet Design Philosophy" for a distributed (decentralized) system of networks based on open standards for network connections and transmitting formatted data that any computer (large or small) can send, receive, and "understand." On our local, "user" level, this means every computer (like a Mac, PC brand, or any brand of mobile device) must be designed to connect to the Internet with standards-based hardware and software for network connections (wired or wireless) using Internet protocols and data packets (TCP/IP).
    • The Internet is designed as a decentralized network based on a design for "end-to-end" data connections, independent of the number or kinds of intermediate connections through routers (dedicated network intermediary computers) from the sending and receiving points (remember "E-Information Theory").
    • In the technical architecture (the "master" design plan), the core Internet design principles build on the established designs for "information" and "data" that we studied earlier. At the level of an "E-Information" system, the Internet is designed to be both "content agnostic" (doesn't "know" what any data packets are about or mean) and "hardware & platform agnostic" (doesn't need to know what specific brand or manufactured device is connected -- a physical device only needs its own internal software that "speaks" TCP/IP and a physical network interface module).
    • The Internet and Web are clear examples of complex socio-technical systems. The Internet did not happen in a linear deterministic path of development, but with many unforeseen intersecting histories of technical, social, political, and economic developments, contexts, and interdependencies.
  • Understanding the Internet as a paradigm case for our most important design principles:
    • Complex System Design with Modularity: The Internet is a model for complex networked system design by means of unlimited interconnected modules and subsystems at many levels and with a layered architecture.
    • Extensibility (designs that can be extended to new developments),
    • Scalability (designs that allow systems to scale up to nearly unlimited numbers of connected computers and users),
    • Interoperability (computers and software produced by any manufacturer can interconnect and exchange data only because they are based on shared protocols and standards, which allow anyone to create computer systems, network connections, and new software that can connect to the whole network regardless of the "internal" design of the corporate-branded manufactured products).
  • How is the Internet as a global and international "network of networks" possible? Only by agreements across all sectors to implement the infrastructure (the physical equipment and communication lines) and the software layers that manage all the network-to-network interconnections by following the open standards of the core Internet architecture design principles.
  • The Open Standards for Interoperability, and the Extensible and Scalable design principles of the Internet will always be vitally important in the expanding global and international development of all the media, data services, and apps that depend on the Internet architecture.

Key Terms and Concepts in the Internet & Web Architecture

  • Network Architecture
  • Protocol and the TCP/IP protocol suite
  • Data Packet; Packet Switching, Packet-Switched Network
  • Client / Server architecture
  • Internet address (IP address)
  • Domain Name System (DNS)

Readings & Video Lessons:

Writing assignment (Canvas Discussions Link)

  • Part 1: What are your main discoveries this week in the context of the whole course for studying the design principles for computer systems as complex systems. How is the Internet and Web architecture (the overall system design in modules, levels, and layers) based on what you have learned in the course? What connections can you make with what we have studied, from computer system design to data to interfaces? Then, consider: Does it make any difference for you to gain some “insider’s knowledge” about Internet and Web design principles? How can you explain this to someone else?
  • Part 2: Applying what you learned this week and throughout the course, briefly explain what is happening when we use any kind of data in software on a computing device with an Internet connection. Choose one example: (1) using an interactive interface for Internet/Web program (like a Web browser or mobile app) and clicking on a link on a website or mobile app in which new data appears in the interface; (2) streaming music or video from an Internet source; (3) sending and receiving email messages from your Internet-connected computer (with an email "client" program) to a friend's Internet-connected computer.

Main Topics and Learning Goals:

Learning the major design principles for ML/AI.

For this week’s brief introduction to ML/AI, we will build on what you have learned about the structure of our two main data types: text (strings of Unicode characters with numerical Code Points) and images (numbers in the mathematical formulas for pixel colors and x/y axis positions).

Machine Learning (ML) is based on statistical patterns and probabilities, and all data, of course, must be in numerical form for computer systems to “compute.” You will learn the basic background for recent “Generative AI” for text and images: text-to-text (like ChatGPT, Claude, Perplexity, and many others), and text-to-image (like DALL-E, Stability, and Midjourney).

You will also experiment with OpenAI’s two Generative AI platforms: ChatGPT and DALL-E, and we will use these systems for thinking through the “blackboxed” process from your input tokens to the output tokens (including those combined and composed in images).

Introduction

Video Lessons

  • These video lessons on text and image "Generative AI" are incredibly well-produced with great illustrations, and are way ahead of anything we have in textbooks. Some are a little longer than the quick introductions, but you will learn so much by following each lesson as well as you can. Don't worry about the technical details and math: you will be able to follow the main points with the background in course (and go on to learn as much as you want!).

Learn by Doing: Experiment With, and Learn How To Use, AI Platforms

  • Go to OpenAI's ChatGPT (chatgpt.com). If you don't have an account already, create an account so that you can have a history of your "chat" sessions. Experiment with your own question prompts, and also try this prompt for our course:
    "Act as a teacher of AI for college students who are just beginning to learn the key concepts and design principles for ML and AI. What are the key concepts that everyone should know as they begin a study of the design principles for AI?" You can also add further prompts after the response to continue the question dialog on this or any topic.
    Choose one of your prompts and the response from ChatGPT to discuss.
  • Next, click on "Explore GP's" (left nav column), scroll down and choose "DALL-E". This will open a new prompt line for dialog with the image generator system. You can give a prompt for any kind of image, image style, or subject matter. The system can also provide great visualizations of historical content, and allow you to imagine almost any kind of fictional or imaginary scene, place, or situation, with or without people.
    Use a prompt with basic instructions like: "Create an image of [state: subject matter, content, historical reference, etc.] in the style of [describe style: photo-realistic, antique photo, hand-drawn, painting in style of an artist, etc.]."
    You can be very general (and let system fill it in) or very specific about details and kinds of styles. Choose one of your generated images to discuss.

Writing assignment (Canvas Discussions Link)

  • First, discuss your main take-aways, "aha" moments, and questions about the design principles for current ML/AI systems. There will be much that is hard to understand now, but with your background from the course, you can go on to learn anything you want. Next, copy and paste into your post the two examples from your dialog with ChatGPT and DALL-E. Discuss what you discovered by experimenting with your prompts to the systems and the outputs that were generated.
  • Then write a paragraph to capture some of your concluding thoughts for the course. We will conclude this week's discussion by reviewing what everyone has learned in the course. What stands out for you in what you have discovered and learned? Were there some surprises along the way from where we started in the first weeks? What were some important "aha" moments for you? Were earlier questions answered through the course "building blocks"? What new or continuing questions do you have?

Preparing for your final capstone project (Directions and Instructions)

Open Discussion and Presentation of Final project ideas

Group discussion on your final project topics, ideas, and the current state of your research and thinking. Everyone will present their topics, approaches, and beginning research sources, and get feedback and suggestions from the class.

Post your main ideas, outline, and beginning bibliography in the Canvas Discussions for this week.

Post Your Final Project Ideas for This Week's Discussion
(Canvas Discussions Link)

Instructions for the Final Version of Your Essay and Posting to Canvas

  • Detailed instructions for the Capstone Essay Project [download and print out for reference.]
  • Upload the PDF file of your essay either to Canvas or Google Drive, and create a link to your file in your Canvas Discussion post for "Final Projects" [Canvas Discussions Link]. Write the Title of your essay as a heading for your post, and insert your brief abstract below the title. Then below this text information, provide the link to your file (you can use the URL or a short title with the embedded link). Test the link after you save the post to make sure it works; revise and edit if needed.

Due Date for Posting Your Final Project: Tues. Dec. 17.

  • Using your final capstone project after the course: You can use your final capstone essay as part of your "digital portfolio" wherever it can be useful to you (in a resume, LinkedIn, social media, internship applications, job applications, and applications for further graduate studies).