Your browser is ancient!
Upgrade to a different browser to experience this site.

Data Structures for Designers Using Python

What You'll Learn

  • Learn to use Python data structures to create intricate designs
  • Use object-oriented programming to simulate complex behaviors and relationships in design composition
  • Use Python to create dynamic motions and transformations in digital artwork
5 Modules
25 Hours
5 hrs per module (approx.)
Rating

About Data Structures for Designers Using Python

In Data Structures for Designers Using Python, you’ll delve into the critical concepts of data structures and object-oriented programming, tailored specifically for design and visual content creation applications. You’ll be introduced to object-oriented programming principles in Python, enabling you to model real-world scenarios and design problems using objects and classes. You will use the Processing platform to draw lines, rectangles, ellipses, and more through the program’s Python mode. Learn about vector math and how it can be manipulated to store, organize, and manage data efficiently in creative projects. These approaches to Python allow you to gain a deeper understanding of the programming language while enhancing your ability to conceptualize and implement sophisticated design solutions.

This is the second course in a three-part series, Programming for Designers, aimed at equipping designers, including those in architecture, graphic design, industrial design, game design, and visual artists, with essential computational design skills.

Skills You'll Gain

  • Data Structures
  • Graphic Arts
  • Graphic Design
  • Python (Programming Language)

What You'll Earn

Certificate of Completion:
Certificates of completion acknowledge knowledge acquired upon completion of a non-credit course or program.
Experience Type
100% Online
Format
Self-Paced
Subject
  • Technology
Platform
Coursera
Welcome Message

Welcome to Data Structures for Designers Using Python, the second course in the Programming for Designers certificate series. This course deepens your understanding of lists, dictionaries, grids, and object-oriented programming, enabling you to organize complex data, create generative art, and design interactive projects. By the end, you’ll be equipped to build sophisticated, responsive designs and harness Python’s data structures creatively.

This abbreviated syllabus description was created with the help of AI tools and reviewed by staff. The full syllabus is available to those who enroll in the course.

Course Schedule

Module 1: Introduction to Data Structures

  • Video: Specialization Overview
  • Video: Meet Your Instructor
  • Reading: Course Syllabus
  • Video: Summary of Course 1
  • Video: Course Overview
  • Video: Introduction to our Learning Environment
  • Reading: Textbook: Setting up our Coding Environment - Python in Processing
  • Reading: Source Code for Data Structure for Designers Using Python
  • Discussion Prompt: Introduce Yourself!
  • Reading: Pre-Course Survey
  • Video: Introduction to Lists
  • Video: Lists Index
  • Reading: Textbook: Data Structure #1: Lists
  • Video: List Operations
  • Reading: Textbook: Typography on P5
  • Video: Typography in P5
  • Video: List Syntax & Typography
  • Reading: Textbook: Lists and Loops
  • Graded Assignment: Practice Quiz: List Operations
  • Video: Hex Operations in P5
  • Video: Building a Color Palette
  • Reading: Textbook: Hex Operations on P5
  • Video: Swapping Palettes
  • Video: Introduction to Dictionaries
  • Video: Dictionaries Syntax
  • Reading: Textbook: Data Structure #2: Dictionaries
  • Video: Swapping using Dictionaries
  • Graded Assignment: Practice Quiz: Accessing Elements in a Dictionary
  • Video: Drawing Using Typography 01
  • Video: Drawing Using Typography 02
  • Reading: Introduction to the Gamut Gallery Tool
  • App Item: Gallery: Week 1 Reflections
  • Graded: Week 1 Quiz: Introduction to Data Structures

Module 2: Grids

  • Video: Introduction to Grid Structures
  • Reading: Textbook: Grids & Spatial Organization
  • Video: Grid Construction 01 - Flat
  • Reading: Grid Types / External Resources
  • Video: Grid Construction 02 - Nested
  • Video: Grid Index Access
  • Reading: Textbook: Flat Lists vs. 2D Lists for Grid Systems
  • Video: Grid Operations
  • Graded Assignment: Practice Quiz: Grid Operations
  • Video: Grid Coordinates
  • Video: Movement within a Grid
  • Reading: Textbook: Grid Operations
  • Video: Langton's Ant 01
  • Video: Langton's Ant 02
  • App Item: Gallery: Week 2 Reflections
  • Graded: Week 2 Quiz: Grids

Module 3: Vectors

  • Video: Introduction to Vectors
  • Video: Vector Operations 01
  • Reading: Textbook: Introduction to Vectors
  • Video: Vector Operations 02
  • Video: Vector Operations 03
  • Reading: Textbook: Operations with Vectors
  • Video: Vector Operations 04
  • Graded Assignment: Practice Quiz: Vector Operations
  • Video: Drawing with Vectors
  • Reading: Textbook: Introduction to Steering Behaviors
  • Video: Predefining Motions
  • Video: Random Motion
  • Reading: Textbook: Using Discrete Vector Motions
  • App Item: Gallery: Week 3 Reflections
  • Video: Other Vector Libraries
  • Graded: Week 3 Quiz: Vectors

Module 4: Object-Oriented Programming

  • Video: Object Oriented Programming
  • Video: Class Syntax
  • Reading: Textbook: Classes & Objects
  • Graded Assignment: Practice Quiz: Class Syntax
  • Video: Class Instances
  • Video: Instances in a Loop
  • Reading: Textbook: Class Instantiation
  • Video: Building a Drawing Class
  • Video: Class Example
  • Video: Object Oriented Thinking
  • Reading: Textbook: Converting a Script into a Class
  • Graded Assignment: Practice Quiz: Classes
  • Video: File Dependencies
  • App Item: Gallery: Week 4 Reflections
  • Graded: Week 4 Quiz: Object-Oriented Programming

Module 5: Object Interactions

  • Video: Object Interactions
  • Video: Behaviors
  • Reading: Textbook: Accessing Data from Other Objects
  • Video: Simulated Systems
  • Reading: Textbook: Systems & Emergence
  • Video: Large Populations
  • Graded Assignment: Practice Quiz: Accessing Data of Other Objects
  • Video: Complex System Project 01
  • Video: Complex System Project 02
  • Reading: Textbook: Interactions 01 - Loops
  • Video: Complex System Project 03
  • Reading: Textbook: Interactions 02 - Grids
  • Video: Complex System Project 04
  • Video: Complex System Project 05
  • App Item: Gallery: Week 5 Reflections
  • Video: What's Next
  • Reading: Post-Course Survey
  • Graded: Week 5 Quiz: Object Interactions

Grading Policy

Course materials and assignments remain open for self-paced learning. To earn the certificate, an overall grade of 80% is required. Grades are based entirely on quizzes, with each quiz accounting for 20% of your final grade.

Portrait of Jose Sanchez
Jose Sanchez

Associate Professor Taubman College of Architecture and Urban Planning

Course content developed by U-M faculty and managed by the university. Faculty titles and affiliations are updated periodically.

Intermediate Level

Participants are advised to have some familiarity with design environments, including CAAD software, graphic design software, or 3D model software.

Enrollment Options

Individuals

This experience is available to individual learners on the following platforms:

U-M Community

Students, faculty, staff, and alumni of the University of Michigan get free access.

Organizations

Special pricing and tailored programming bundles available for organizational partners.

What are Coursera and edX?

Michigan Online learning experiences may be hosted on one or more learning platforms. Platform features may vary, including payment models, social communities, and learner support.

Coursera

  • Hosts online courses, series, and Teach-Outs from Michigan Online
  • Enroll and preview courses anytime
  • May earn a non-credit certificate from Coursera

edX

  • Hosts online courses and series from Michigan Online
  • Many offer a free (limited) audit option
  • May earn a non-credit certificate from edX

For more information visit the What are Coursera and edX? FAQ section

Reviews and Ratings

5.0

3 Ratings from Coursera

Michigan Online
For You

Sign up for a Michigan Online account to customize your experience!