Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera)

Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera)

Why should a designer learn to code? As our world is increasingly impacted by the use of algorithms, designers must learn how to use and create design computing programs. Designers must go beyond the narrowly focused use of computers in the automation of simple drafting/modeling tasks and instead explore the extraordinary potential digitalization holds for design culture/practice.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Structured around a series of fundamental design problems, this course will show you Python code in terms of its rules and syntax, and what we can do with it in its application and design. So, by the end of this course, you will know the fundamentals of Python and Rhino script, but importantly, through the lens of their application in geometrically focused design lessons and exercises.
Subjects covered in this course

  • An introduction to Design Computing as a subject and why designers should learn to code.
  • The fundamentals of coding in the Python scripting language. By the end of the course students will be familiar with the basic structure and syntax of this language.
  • The understanding and application of Rhinoscriptsyntax, a native coding language in Rhinoceros that’s imported into Python, which allows one to create and control geometries through authoring code.
  • The application of Procedural Logics - the structuring of coding systems to produce variable geometric form.
  • The output of geometries in still and animate forms.

Syllabus

WEEK 1
Following an introduction to the fundamentals of the interface and explaining what code does, we will look at Variables and Points, the building blocks of code and geometry.

WEEK 2
The heart of code
This week we dive deeply into the specific elements of Python coding and explore the possibilities of using them to create more complex and variable geometric systems.

WEEK 3
Expanding possibilities
Building on the material from the previous two weeks we will expand the possibilities and interconnectivity of our geometric systems by introducing higher level elements of Python code.

WEEK 4
3 dimensional structures
This week we jump into 3D and explore the design possibilities of 3D matrix structures culminating in the design of a wall structure.

WEEK 5
Surfaces as geometry generators
In this final week we will explore the possibilities of NURB surfaces as generative base geometries and complete the course with a tower project.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Algorithmic Thinking (Part 2) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 2) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Nov 2nd 2026
4 Weeks
Introduction to TCP/IP (Coursera) Coursera
Yonsei University

Introduction to TCP/IP (Coursera)

You use the Internet through your PC (Personal Computer), laptop, tablet, smartpad, and smartphone every day in everything you do. Through your own PC/laptop, you can easily learn everything about the Internet, and that is what this course is focused on. In this course ‘Introduction to TCP/IP,’ you will learn the operational functions of Internet technologies (which include IPv4, IPv6, TCP, UDP, addressing, routing, domain names, etc.) and your PC/laptop's security and gateway Internet setup and basic principles.

Nov 9th 2026
5-12 Weeks
Llama for Python Programmers (Coursera) Coursera
University of Michigan

Llama for Python Programmers (Coursera)

Llama for Python Programmers is designed for programmers who want to leverage the Llama 2 large language model (LLM) and take advantage of the generative artificial intelligence (AI) revolution. In this course, you’ll learn how open-source LLMs can run on self-hosted hardware, made possible through techniques such as quantization by using the llama.cpp package.

Nov 9th 2026
3 Weeks
GitHub Copilot: The AI Pair Programmer for Coding (Coursera) Coursera
Edureka

GitHub Copilot: The AI Pair Programmer for Coding (Coursera)

Welcome to the 'GitHub Copilot: The AI Pair Programmer for Coding' course, where you will embark on an insightful journey to develop a profound understanding of the AI principles that power GitHub Copilot's coding assistance. This course is designed to transform your coding practices, leveraging the advanced capabilities of GitHub Copilot.

Nov 9th 2026
1 Week
Global Warming II: Create Your Own Models in Python (Coursera) Coursera
University of Chicago

Global Warming II: Create Your Own Models in Python (Coursera)

This class provides a series of Python programming exercises intended to explore the use of numerical modeling in the Earth system and climate sciences. The scientific background for these models is presented in a companion class, Global Warming I: The Science and Modeling of Climate Change. This class assumes that you are new to Python programming (and this is indeed a great way to learn Python!), but that you will be able to pick up an elementary knowledge of Python syntax from another class or from on-line tutorials.

Nov 2nd 2026
5-12 Weeks
Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera) Coursera
University of Michigan

Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript (Coursera)

Why should a designer learn to code? As our world is increasingly impacted by the use of algorithms, designers must learn how to use and create design computing programs. Designers must go beyond the narrowly focused use of computers in the automation of simple drafting/modeling tasks and instead explore the extraordinary potential digitalization holds for design culture/practice.

Nov 9th 2026
5-12 Weeks
Algorithms, Part II (Coursera) Coursera
Princeton University

Algorithms, Part II (Coursera)

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

Nov 9th 2026
5-12 Weeks
Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera) Coursera
Pontificia Universidad Católica de Chile

Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera)

Decía Steve Jobs que “todo el mundo debería aprender a programar un ordenador porque esto te ayuda a pensar”. Hoy en día la programación es una herramienta fundamental para el desarrollo de la tecnología moderna. Este curso te introduce en el mundo de la programación en el lenguaje Python.

Nov 2nd 2026
5-12 Weeks
Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Nov 9th 2026
5-12 Weeks
Principles of Computing (Part 2) (Coursera) Coursera
Rice University

Principles of Computing (Part 2) (Coursera)

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class.

Nov 2nd 2026
4 Weeks