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.

What You Will Learn

  • Apply Python fundamentals including: module importing, conditionals, iteration, operators, functions, comments, booleans, tuples, and dictionaries
  • Apply Rhinoscript fundamentals to create geometric systems and produce variable geometric form, in 2D and 3D, rendered in still and animated formats
  • Produce code that produces variable geometric form (in 2D and 3D) in still image and animated formats.
  • Produce coded geometric systems that are reactive to changes in input parameters and attractor geometries (points, curves, surfaces)

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

Applied Text Mining in Python (Coursera) Coursera
University of Michigan

Applied Text Mining in Python (Coursera)

This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling).

Jun 22nd 2026
4 Weeks
M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

M2M & IoT Interface Design & Protocols for Embedded Systems (Coursera)

This course can also be taken for academic credit as ECEA 5348, part of CU Boulder’s Master of Science in Electrical Engineering degree. M2M and IoT Interface Design and Protocols is the third of three classes in the Embedded Interface Design (EID) specialization, an online version of the on-campus EID class taught in graduate embedded systems design. This course is focused on connecting devices to each other and to the cloud to create prototypes and actual systems that flow data from devices to consumers. The class includes an introduction to M2M (Machine-to-Machine) and IoT (Internet of Things) concepts, using the cloud to develop IoT systems (specifically AWS (Amazon Web Services) and its IoT framework), a review of common communications protocols at every level of connected devices, and other IoT design concerns such as security, message queuing approaches, and the use and design of APIs and microservices .

Jun 22nd 2026
4 Weeks
Fitting Statistical Models to Data with Python (Coursera) Coursera
University of Michigan

Fitting Statistical Models to Data with Python (Coursera)

In this course, we will expand our exploration of statistical inference techniques by focusing on the science and art of fitting statistical models to data. We will build on the concepts presented in the Statistical Inference course (Course 2) to emphasize the importance of connecting research questions to our data analysis methods. We will also focus on various modeling objectives, including making inference about relationships between variables and generating predictions for future observations.

Jun 22nd 2026
4 Weeks
Interactivity with JavaScript (Coursera) Coursera
University of Michigan

Interactivity with JavaScript (Coursera)

If you want to take your website to the next level, the ability to incorporate interactivity is a must. But adding some of these types of capabilities requires a stronger programming language than HTML5 or CSS3, and JavaScript can provide just what you need. With just a basic understanding of the language, you can create a page that will react to common events such as page loads, mouse clicks & movements, and even keyboard input.

Jun 22nd 2026
4 Weeks
Introduction to HTML5 (Coursera) Coursera
University of Michigan

Introduction to HTML5 (Coursera)

Thanks to a growing number of software programs, it seems as if anyone can make a webpage. But what if you actually want to understand how the page was created? There are great textbooks and online resources for learning web design, but most of those resources require some background knowledge. This course is designed to help the novice who wants to gain confidence and knowledge. We will explore the theory (what actually happens when you click on a link on a webpage?), the practical (what do I need to know to make my own page?), and the overlooked (I have a page, what do I do now?).

Jun 22nd 2026
3 Weeks
Accounting Data Analytics with Python (Coursera) Coursera
University of Illinois at Urbana-Champaign

Accounting Data Analytics with Python (Coursera)

This course focuses on developing Python skills for assembling business data. It will cover some of the same material from Introduction to Accounting Data Analytics and Visualization, but in a more general purpose programming environment (Jupyter Notebook for Python), rather than in Excel and the Visual Basic Editor. These concepts are taught within the context of one or more accounting data domains (e.g., financial statement data from EDGAR, stock data, loan data, point-of-sale data).

Jun 22nd 2026
5-12 Weeks
Databases and SQL for Data Science with Python(Coursera) Coursera
IBM

Databases and SQL for Data Science with Python(Coursera)

Much of the world's data resides in databases. SQL (or Structured Query Language) is a powerful language which is used for communicating with and extracting data from databases. A working knowledge of databases and SQL is a must if you want to become a data scientist. The purpose of this course is to introduce relational database concepts and help you learn and apply foundational knowledge of the SQL language. It is also intended to get you started with performing SQL access in a data science environment.

Jun 22nd 2026
4 Weeks
Machine Learning Foundations: A Case Study Approach (Coursera) Coursera
University of Washington

Machine Learning Foundations: A Case Study Approach (Coursera)

Do you have data and wonder what it can tell you? Do you need a deeper understanding of the core ways in which machine learning can improve your business? Do you want to be able to converse with specialists about anything from regression and classification to deep learning and recommender systems? In this course, you will get hands-on experience with machine learning from a series of practical case-studies.

Jun 22nd 2026
5-12 Weeks
Python for Data Science, AI & Development (Coursera) Coursera
IBM

Python for Data Science, AI & Development (Coursera)

Kickstart your learning of Python for data science, as well as programming in general, with this beginner-friendly introduction to Python. Python is one of the world’s most popular programming languages, and there has never been greater demand for professionals with the ability to apply Python fundamentals to drive business solutions across industries.

Jun 23rd 2026
5-12 Weeks