Why Tutorials Alone Won't Get You Very Far
And..... done! I just finished an intensive six week masterclass on Grasshopper. I flew through the course. I got a 100% for all the assignments and scored >95% for any of it's quizzes. This Grasshopper thing was easy, I must gifted, I am going to do so well for my first job.
Reality had other plans, the feeling didn't last long.
The first actual problem I got to solve took me five times longer than expected. I was pulling late nights, desperately trying to apply what I'd learned but nothing seemed to fit. Aside from showing me what Grasshopper was, nothing in the course helped at all.
If you're starting your journey into computational design, this might sound familiar. Maybe you're working through tutorial after tutorial, but still feeling like you're missing something crucial. I'm here to tell you that you aren't alone and it's not your fault.
Acing that Grasshopper course and then failing at my first job was a true story. What got me to where I am now was experience and a hunger to always know more. I was also really lucky, I was surrounded by people who knew Grasshopper well. I could ask them questions and train under them. I learnt a lot from just being in the same vicinity as them.
The problem with tutorials
It's hard to learn computational design on your own. If you didn't do architecture or one of those rare computational design degrees, you wouldn't have even heard of Grasshopper. I know I didn't. That's why I was cramming a six week course before my first job. Tutorials can trick you into making learning seem easy, especially the clickbait title ones. I know because I fell for them. The course that I did was called "The only 6-week Grasshopper master class that you need to know"
A false sense of progress
A big problem with tutorials is the false hope and confidence it gives you. They make learning anything seem like a straightforward path. But reality is never that easy. Once you leave the sacred grounds of the course, you end up losing almost everything you've learned. It's like carnival cash, you can earn a lot of it but it's useless once you leave the carnival.
Tutorials and courses aren't all bad, they actually great for learning the basics. Thanks to the course I did, I at least knew what Grasshopper looked like and what buttons to click on. But that carefully structured, step-by-step guide can trick us into thinking we're more prepared than we really are.
No actual problem solving experience
Most courses or tutorials out there are too easy. They are made of a couple of lectures, maybe a few exercises and quizzes, but that's it. They don't give you that problem-solving experience that you need in the real world. And I don't blame them, it's hard to mimic real-world conditions in a course. When every piece of information is spoon-fed to you, you don't learn how to think through messy, undefined problems.
So, what then ?
So, how do you effectively learn computational design on your own?
You can learn the basics anywhere on the internet, it's what's after that's the hardest. So, my answer is once you know the basics, immerse yourself in as many "real-world" conditions as you can. You can't offload the learning journey to tutorials and courses (even though it's very tempting ), we need to take charge of it. Don't completely avoid tutorials and courses, instead use them as tools to further your own learning.
It does mean more effort though, you now have to plan and think about what you want to learn. Knowing what to learn is equally or even harder too. Because how do you even know what to learn when you don't know anything yet? For that, I also have some answers of my own.
Use tutorials strategically
If this whole planning-your-own-learning-journey is overwhelming, just try doing one course on Grasshopper or the tool you're interested first. As critical as I am of courses now, I am still glad I did that 6-week course before starting my first job. It gave me some basic understanding of Grasshopper and I wasn't fumbling around with which buttons to press. It's only when I tried to apply what I've learnt that it showed the gaps in my own knowledge.
It's almost impossible to plan for something you know nothing about, so pick a course / tutorial and just learn the basics. Get an idea of what you're actually learning, then use that as a starting point to learn other things. But also remember that you don’t have to learn everything, start with what’s interesting or useful and go from there.
What I actually ended up doing later was picking specific parts from many different courses. When I found gaps in my learning, I started using sections of other courses to fill them in. I didn't finish all of them, I just used parts of them to learn specific things. I actually still do this, just less frequently. Back then, I must have enrolled in close to 10-15 different courses.
Start with what you're already solving
The best way to learn is to pair tutorials with a problem you're already trying to solve. Maybe there's a tedious task you do repeatedly, or a process you know could be more efficient. These problems are perfect starting points for applying computational design. It gives you motivation and makes learning interesting. It also anchors the what you're learning from tutorials with real world problems.
Unfortunately, if your current workplace doesn't give you the time to do that, it may mean doing it on your own time. But it at least gives you a place to start. The key is to tie the things you're learning from tutorials to the real world.
Create your own projects
What if you can't find a problem to solve? Like with the tutorials, you need to have at least some understanding of computational design before you can even spot problems to solve. You still don't know what you don't know yet.
If you're totally new, I would recommend just picking any course and start with that. Then, branch off to other things when you're ready. If you're somewhat experienced and is looking to learn more, then creating your own projects outside of your current work is the best way.
Create your own projects to solve problems you don't normally solve. If you frequently model towers, try modeling some jewelry. That's why I make it a point to learn about generative geometry or particle flow. They don't directly help my work but they do give me a more holistic understanding of computational design.
Why I Built Scripository
This gap between tutorials and real-world application is exactly why I created Scripository. It's a library of real scripts I've used in actual projects, combined with practical challenges that help build genuine problem-solving skills.
I didn't feel good creating another course because I would just be adding to the noise (although I might make one in the future). I wanted a way to share my experience with people who somewhat know how to use computational tools but don't know how to go further.
The idea is that you're not following step-by-step instructions. You're given a real problem to solve and the tools to solve them, just like you'd face in the real world. And yes, you can see my solution afterward, but only after you've wrestled with the problem yourself first. It's much harder but it will strengthen your understanding.
Learning is deeper and more durable when it’s effortful. Learning that’s easy is like writing in the sand, here today and gone tomorrow.
Author of the book, Make it stick
Scripository is currently free, check it out here :