Lesson 0.2Lesson 0.2 · Foundations of Computational Design
Parametric Thinking
The working method: turn any design intent into parameters, relationships and rules
Before you touch Grasshopper, you learn to see a design as parameters, relationships and rules - because that decomposition is the real skill.
Give ten people the same brief - a shading screen for a west-facing cafe - and the ones who work parametrically don't start by drawing louvres. They start by asking: what actually varies here, and what controls it? Louvre depth. Spacing. Angle. The sun. That short list is the design, half-built, before any geometry exists.
Parametric thinking is the habit of doing that decomposition on purpose. It is not a Grasshopper feature; it is a way of reading a problem so that the tool becomes obvious. Master it on paper and the canvas stops being intimidating - every wire you draw is just a relationship you already named.
Parameters, relationships, rules -> dependency graph. Backwards from the goal. Change/repeat/vary/enforce? Go parametric.
Design intent is a set of decisions, not a shape
When a brief lands, it arrives as intent: a screen that shades the afternoon sun but stays open to the street. That sentence hides a pile of decisions. Parametric thinking is the discipline of pulling those decisions into the open before you commit to any one answer.
The move is to stop asking what does it look like? and start asking what does it depend on? A hand-drawer answers the first question with a single fixed drawing. A parametric designer answers the second with a small model of the problem: a set of values that can change, a set of links between them, and the logic that turns them into form. The drawing then becomes a consequence of that model rather than the thing you laboured over.
This is why the skill transfers everywhere. The screen, a spiralling stair, a car-park layout, a tiling pattern, a truss - each is intent hiding a structure of decisions. Learn to expose that structure and you can build almost anything computationally, because Grasshopper only ever asks you to state, precisely, the decisions you have already found.
There is a useful test for whether you have really understood a design this way. If someone asked you to produce a slightly different version - the same screen but twice as tall, or on a curved wall instead of a flat one - could you say exactly which decision would change and what would follow from it? If yes, you have found the parameters. If your only answer is 'I'd have to redraw it', you are still thinking in shapes. Parametric thinking is precisely the shift from redraw it to change this one value and let the rest follow.
Stop asking 'what does it look like'. Ask 'what does it depend on'. That question is the whole method.
Decompose: parameters, relationships, rules
Every parametric model is built from three ingredients, and naming them is the core exercise of this lesson.
Parameters are the values that can change: a louvre depth in millimetres, a count of bays, an angle, a point the pattern reacts to, a curve the design follows. Some parameters are drivers you want to steer by hand; others are constraints fixed by the brief (a maximum height, a fabrication sheet size). Sorting your values into drivers and constraints early saves hours later.
Relationships are how one value affects another. Louvre angle follows orientation to the sun; spacing stays constant while the screen height varies; panel size is bounded by the CNC bed. In Grasshopper these become the wires between components - but you should be able to write them as plain sentences first.
Rules are the instructions that turn parameters and relationships into geometry: place a louvre every 90 mm, rotate each to face the sun vector, taper the depth toward the top. A rule is a sentence you could hand to someone else and get the same result. When you can write the rules, you have written the definition - the wiring is just translation. The habit to build: for any design, produce this three-part list before opening any software.
Three ingredients: parameters (values), relationships (links), rules (instructions). Write them as sentences first.
Dependency and associativity: the arrow points one way
Once you have parameters and relationships, they form a dependency graph - a web of what-depends-on-what. This is the deep idea behind parametric modelling, and it is worth slowing down for.
Dependencies are directional. The number of panels depends on the wall length, not the other way around; the shadow depends on the sun angle, not the reverse. Draw the arrows and you get a flow from independent inputs (the things you set) toward dependent outputs (the things that follow). This directed flow is what makes a change propagate: nudge an upstream value and everything downstream re-solves, automatically and consistently. That live, one-directional propagation is called associativity, and it is exactly what separates a parametric model from a static drawing.
Two consequences matter in practice. First, the arrows must not form a loop - if A depends on B and B depends on A, the graph cannot resolve (Grasshopper will refuse and warn). A clean parametric model is acyclic: inputs flow to outputs without circling back. Second, whatever you leave upstream becomes a live design control, and whatever you bury downstream becomes fixed. So decide deliberately: the values you want to explore later must be exposed as inputs now, not baked in halfway through. Designing the dependency structure well is most of the craft.
Arrows point one way, no loops. What you leave upstream stays adjustable; what you bury downstream goes stiff.
Think backwards from the goal
Beginners build parametric models forwards - start with a curve, do something, do something else, and hope a design emerges. Experienced parametric thinkers work backwards from the goal, and it produces cleaner definitions every time.
Start at the output: what geometry do I ultimately need? Say, a set of shading fins with fabrication-ready outlines. Ask what that output directly requires: fin surfaces, which require a base curve and a depth and an angle. Ask what those require: the base curve comes from dividing the facade edge; the angle comes from the sun vector; the depth comes from a slider. Keep asking 'what does this need?' until every branch bottoms out at a raw input - a slider, a Rhino curve, a number. You have now discovered the graph by reasoning, not by flailing.
This backward chaining is why parametric thinking feels like problem-solving rather than drawing. It also tells you where to stop: you only model the decisions the goal actually depends on. Everything the goal does not need is noise you can leave out. Working backwards keeps the definition lean, and a lean definition is one you can still understand next month.
Working backwards has a second payoff: it surfaces the constraints early. When you ask 'what does this output need?', you quickly bump into limits - the panel can be no larger than the CNC bed, the fin can be no deeper than the mullion allows. Discovering those at the goal end, before you build, means you wire them in as real relationships rather than patching them on afterwards. A designer who chains forwards often builds a beautiful definition and only then realises it produces panels the fabricator can't cut. A designer who chains backwards meets that constraint on the first pass and makes it a parameter from the start.
Start at the output. Keep asking 'what does this need?' until every branch ends at a raw input.
When parametric is - and isn't - worth it
Parametric thinking has a cost: setting up the model, wiring relationships, and keeping the graph clean all take time up front. That investment pays back only under certain conditions, and an honest designer knows when to just draw the thing.
Parametric wins when there is repetition (many similar elements, like a panelised facade or a stair of identical treads), variation you want to explore (you'll try dozens of options), change you expect (the brief or the site will move), or a rule worth enforcing (spacing that must stay constant, panels that must fit a sheet). Any of these, and building the definition is cheaper than redoing the work by hand. Automated fabrication drawings and BIM data are pure upside.
Parametric loses when the design is a genuine one-off with no repetition, no expected change and no rule to enforce - a single sculptural gesture you'll draw once and never touch. Forcing that into a definition is engineering a machine to make one object. The mark of maturity is choosing: quick sketch modelling for the truly singular, a parametric definition for anything systematic. The question to ask before you start is simply - will this change, repeat, or need to be explored? If yes, think parametrically.
Repetition, variation, expected change, or a rule to enforce -> go parametric. A true one-off -> just draw it.
Parameter (driver / constraint)
A named value that can change and drives the design
Drivers are values you steer; constraints are values the brief fixes. Sorting them early decides what stays adjustable.
Associativity
The live one-directional link that re-solves the model on change
The defining property of parametric modelling: edit an upstream input and everything downstream updates automatically.
Dependency graph (acyclic)
The web of what-depends-on-what behind a definition
Must have no loops. A depends on B depends on A cannot resolve - Grasshopper warns and stalls.
Backward chaining
Deriving the model by working from the goal to its inputs
Ask 'what does this output need?' repeatedly until every branch ends at a raw input. Keeps definitions lean.
Workshop - decompose three intents into dependency graphs
No software needed. The skill is turning a sentence of design intent into parameters, relationships, rules and a dependency graph - so that building it in Grasshopper later is pure translation.
None - paper and pen. (From Module 1 the course builds these graphs for real in Rhino + Grasshopper; a free trial or student licence is enough.)
Goal: practise decomposition until it is reflex Inputs: three design intents (given below) and a notebook Time: ~30 minutes
- 1Take three intents: (a) a shading screen that opens toward a view but blocks the west sun; (b) a spiral stair fitting a fixed floor-to-floor height; (c) a ceiling of hanging elements that dip lower over a central table.
- 2For each, list the parameters and label every one as a driver (you'll steer it) or a constraint (the brief fixes it). Aim for four to seven values, no more.
- 3Write the relationships as plain sentences: 'angle follows the sun vector', 'tread count times riser height equals the fixed floor-to-floor', 'drop depth increases toward the table centre'.
- 4Draw the dependency graph: boxes for values, arrows for 'depends on'. Check there are no loops, and mark which boxes are inputs you left adjustable.
- 5Now work backwards from the final geometry and confirm every branch bottoms out at a raw input. Cross out anything the goal doesn't actually need.
You’ll walk away with
For three intents: a labelled parameter list (drivers vs constraints), the relationships as sentences, and a hand-drawn acyclic dependency graph - the exact structure you would wire in Grasshopper.
Three altitudes on the same idea
Read the band that fits you — or all three.
Parametric thinking is where design intent becomes testable. The discipline of separating drivers from constraints, and exposing the drivers as live inputs, is what lets you defend a scheme with evidence rather than taste - here are fifty variants against the shading target, here is why this one. It is also how you keep a model alive when the brief shifts at stage three instead of starting over.
Interiors are full of systems that reward decomposition - a slat screen, a tiling layout, a run of joinery, a lighting rhythm. Learn to name the parameters (spacing, module, reveal) and the rule that ties them to a focal point or a wall, and you design the system once instead of hand-placing every element. The payoff is coherence: change the focal point and the whole pattern re-composes cleanly.
This is the lesson that makes Grasshopper easy later. Studios and interviewers can tell instantly whether you think in parameters or just push components around. Practise the decomposition on paper - parameters, relationships, rules, drawn as a dependency graph - and every future definition becomes a translation exercise. It is the cheapest, highest-leverage habit in the whole course.
“Parametric thinking just means using sliders so I can tweak numbers.”
Do it yourself
No software - reason it through.
- 1Name the three ingredients every parametric model is built from.
- 2What is the difference between a driver parameter and a constraint parameter?
- 3In your own words, what does 'associativity' mean and why does it matter?
- 4Why must a dependency graph be acyclic - what breaks if A depends on B and B depends on A?
- 5Give one design that is genuinely NOT worth building parametrically, and say why.
The one line to carry out
Peer-reviewed journals & authoritative standards
- 01Woodbury, R. - Elements of Parametric Design — Routledge, 2010.
- 02Mode Lab - The Grasshopper Primer (Third Edition) — grasshopperprimer.com (free online edition), 2020.
- 03Terzidis, K. - Algorithmic Architecture — Routledge / Architectural Press, 2006.
- 04Rhino Developer - Grasshopper guides — Robert McNeel & Associates, 2026.
You can now read a design as a graph of decisions. The next lesson widens the lens to the tools that execute that graph - Rhino and Grasshopper, Dynamo, Blender nodes and code - so you know which environment fits which problem.
The author
Amogh N P
Architect, interior designer, and creative polymath. Studio Matrx began in his notebooks — his vision of design made honest, useful, and open to everyone. Its Academy is written and taught in his memory, and free, forever.
More about Amogh →