Dynamo Python Primer
  • Take Dynamo Further 🚀
  • 1 Hello Python 🐍
    • 1.1 Why Should I Learn to Code?
    • 1.2 Python Introduction
    • 1.3 What is IronPython?
  • 2 Seeing The Bigger Picture 🔭
    • 2.1 Context Matters
    • 2.2 What is an API?
    • 2.3 The .NET Framework
    • 2.4 Object-Oriented Programming
  • 3 Getting Started 🛴
    • 3.1 Dynamo's Python Node
    • 3.2 Boilerplate Setup Code
    • 3.3 Basics: Input and Output
    • 3.4 Common Errors
  • 4 Revit-Specific Topics 🏡
    • 4.1 Introduction to Revit's API
    • 4.2 How to Read Revit's API Documentation
    • 4.3 Doc, UIDoc, App, UIApp
    • 4.4 Unwrapping Revit Elements
    • 4.5 The FilteredElementCollector
    • 4.6 Geometry Conversion Methods
    • 4.7 Working With Parameters
      • Family Parameters
      • Global Parameters
      • Project Information Parameters
      • Group Parameters
      • Built-In Parameters
    • 4.8 Working With Transactions
    • 4.9 Opening & Closing External Files
    • 4.10 Prompting UI Selection
    • 4.11 Working With Units
    • 4.12 Built-In Categories
    • 4.13 Family Acrobatics
    • 4.14 Feedback: TaskDialogs
  • 5 Glossary 📚
  • About This Primer 👋
Powered by GitBook
On this page

Was this helpful?

  1. 1 Hello Python 🐍

1.1 Why Should I Learn to Code?

Visual programming is the first step in becoming a proficient coder

Previous1 Hello Python 🐍Next1.2 Python Introduction

Last updated 5 years ago

Was this helpful?

Dynamo's Simplicity Trade-Off

Using Dynamo is already a form of programming. However, it trades execution speed and functionality for its intuitive, graphical programming interface.

Dynamo's clean visual interface is useful when first learning how to write programmatic logic and is especially intuitive for visual thinkers and designers.

However, like training wheels on a bicycle these constraints can soon get in the way. Fortunately, they can be transcended! Dynamo can be combined with Python to make the transition to writing your own code as frictionless as possible.

The Benefits of Coding

Writing code within Dynamo brings a huge range of benefits that the average Dynamo user doesn't have access to:

  • Speed: Scripts run many times faster than node equivalents. You will notice a massive jump in speed for more complex operations.

  • Brevity: You can replace hundreds of nodes with a single Python script node, which means you'll spend more time designing workflows and less time spent reorganising cables!

  • Connectivity: Python libraries can be used to access web APIs, powerful libraries and other local software (think Excel, Chrome, etc).

  • Full Access to APIs: Most API functionality does not exist in node form and can only be accessed directly by writing your own scripts.

  • Functionality: Use key programming paradigms that visual programming can't portray, such as looping, complex conditional branching and recursion.

Hopefully the list above sounds appealing to you. If you're new to coding, make sure to check out the next chapter which will introduce Python in a bit more detail.