Welcome to Urban Informatics & Visualization

Aerial view of Columbus Circle in New York City at sunset

Photo by TierneyMJ / Adobe Stock, used under Adobe Stock Education License

Cities are dynamic, interconnected systems that continuously adapt to technological, social, and environmental shifts. Each wave of change brings new challenges that demand innovative solutions. Computational thinking plays a central role in finding sustainable and resilient solutions to these challenges.

The main goal of this course is to introduce computational thinking and problem solving techniques using Python as the core programming language.

The main goal of this course is to introduce computational thinking and problem solving techniques using Python as the core programming language. Computational thinking serves as the foundation for learning to code in any programming language and solving complex problems in your life. You will learn to break complex problems into functional, manageable chunks, and translate each into a set of scripts to automate tasks, making them reproducible for yourself and others. No prior coding experience is necessary, we will cover the basics of programming with Python and learn best practices for writing clean, efficient, readable, and testable code.

While AI models (including GenAI) can speed up problem solving, they are far from perfect and can produce biased or misleading outcomes. As a result, it is crucial to develop the skills needed to rigorously evaluate their outputs, question their validity, and work with data that has been systematically analyzed and thoroughly verified. Although these models can augment certain tasks, computational thinking and data literacy remain essential. By learning how to evaluate, verify, and interpret information accurately, you will develop the skills to create fair and effective solutions. Ultimately, this blend of problem solving techniques and responsible data practices will help us shape the future of our cities in a more sustainable and equitable way.

Active participation is key to your success and the overall learning experience in this course. You can expect a variety of hands-on activities, including polls, pair programming, group projects, and in-class exercises that inspire critical thinking and team work. Everyone is encouraged to ask questions and explore new ideas.

Coding errors are expected, and even helpful. Debugging is where you develop the deeper skills and confidence needed to solve complex problems effectively!

Coding errors are expected and even helpful as they sharpen your problem-solving skills and deepen your understanding of how programs work. Embrace these moments: Debugging is where you develop the deeper skills and confidence needed to solve complex problems effectively!

With a strong emphasis on practical applications, you will gain hands-on experience in acquiring, cleaning, transforming, and visualizing tabular and geospatial data. The course is designed to balance theoretical knowledge with applied skills, enabling you to use computational tools for urban analysis.

Intended Learning Outcomes

Module 1: Computational Thinking & Programming Foundations

  • Apply the fundamentals of algorithmic thinking to break down complex problems into simple, manageable tasks and convert them into pseudocode.
  • Write clean, Python code using variables, control flow, functions, and debugging strategies.
  • Explain fundamental geospatial concepts including coordinate reference systems, projections, and vector/raster data models.

Module 2: Urban Data Wrangling & Visualization

  • Acquire, clean, and transform tabular and geospatial data using Pandas and GeoPandas.
  • Validate data quality through sanity checks for structure, types, duplicates, and missing values.
  • Perform spatial operations including joins, overlays, and geometric predicates.
  • Use visualization theories and principles to evaluate what makes a visualization effective, interpretable, and appropriate for its purpose.

Module 3: Data Analytics in Action

  • Analyze urban street networks and compute accessibility measures using OSMnx.
  • Identify spatial patterns through point pattern analysis and hotspot detection.
  • Detect misinformation and deceptive patterns in data visualization.
  • Recognize spatial statistical pitfalls including MAUP and ecological fallacy.
  • Synthesize analytical workflows into a reproducible, portfolio-ready project.

Have questions? Feeling confused?

  • Add your questions to this shared Google Doc.
    Your question can help other classmates!
  • Email us if it’s something you don’t feel comfortable sharing publicly.
  • Book an office-hours slot if you need to talk in-person.

We are here to help you!


Course Schedule

Lectures: Tuesdays, Thursdays - 12:30 – 2:00 PM (Wurster, 106)
Labs: Section 1: Thu 2:30 PM - 3:30 PM (214 Wurster)
Section 2: Fri 11:00 AM - 12:00 PM (214 Wurster)
Final Project (FP) Submission: May 12th, 2026

Jump to Current Week

Module 1: Computational Thinking & Programming Basics

Module 2: Urban Data Wrangling & Visualization

Module 3: Data Analytics in Action

Week 1

Module 1

Topics Resources

Slides

Slides

Required

&

Week 2

Module 1

Topics Resources

  • The Data Behind the Map
    • Intro to Geospatial Data
    • CRS & Projection overview
    • Raster & Vector data
    • CT: Decomposition & Abstraction in Maps

Slides

Required

Optional

Slides

Required

Optional

&

Week 3

Module 1

Week 4

Module 2

Week 5

Module 2

Topics Resources

Slides

Required

Optional

Slides

Required

&

Week 6

Module 2

Topics Resources

Slides

Required

Slides

Optional

&

Week 7

Module 2

Topics Resources

  • Guest Lecture: Sam Pottinger
    • Visualization, Interactivity and Co-design in Exploring Humanity and the Built Environment through Data
  • A3 Release

Slides

Required

  • Value of Vis
    • Graphical marks
    • Visual encoding channels
    • Expressiveness & effectiveness

Slides

Required

&

Week 8

Module 2

Week 9

Module 2

Topics Resources

Slides

Slides

&

Week 10

Recess

Topics Resources

&

Week 11

Module 3

Topics Resources

  • Land Use & Zoning Data
    • Aggregation & spatial join
    • Large data visualization
    • LonBoard
    • Writing your Own Functions
  • FP Midterm Due

Slides

Required

Optional

  • Network Analysis & Routing
    • Basic Street Network Measures
    • Isochrones and distance based metrics
    • Network-based catchments (distance-bounded subgraphs)
    • Programs vs. Modules
    • Functions Continued

Slides

Required

&

Week 12

Module 3

Week 13

Module 3

Week 14

Module 3

Topics Resources

Slides

Slides

&

Week 15

Module 3

Topics Resources

&


Back to Top

Accessibility Nondiscrimination

Copyright ©2026, Regents of the University of California and respective authors.

This site is built following the Berkeley Class Site template, which is generously based on the Just the Class, and Just the Docs templates.

View all course offerings