RhinoInside Revit is not the perfect tool that everyone says it is. In fact, it's a tool that once made me stay up for three nights in a row.
I was on a call with Helen, a drafter, when she asked me to help her populate data for her models in Revit. The project had a BIM requirement for all models to be populated with asset data. There were 10 large models that needed to be filled in three days, and Helen had no way to do it. Naturally, this was right up my alley, so I took the job.
The next day when I got the models from Helen, I did what I always do: I opened up RhinoInside Revit and got to scripting. The script was simple; the components I used could easily fit in my palm. But I quickly ran into a problem, the script's speed. The first model took 4 hours to run. Some quick math meant that if I ran this script for 10 models, it would take 40 hours to finish - which is 40 hours too long. This was suppose to be a quick and easy win for me, I even wanted to turn this around for Helen in less than a day.
I needed a way to speed up my current script. But no matter how hard I try, nothing new I did worked. I tried everything: parallel processing, handling multiple Revit transactions at once. I even tried chaotically clicking on Revit, hoping it would translate my stress into energy to work faster.
Two sleepless nights went by and I only have 5 out of 10 models filled. I am currently running the 6th model but Helen needed all 10 today. I gave up on trying new things, I figure having some models filled is better than none. So while the script was running, I went to get coffee with a friend. No point stressing out about something you can't control.
I sat down with Jay at the cafe and we started talking. What was supposed to be a relaxing catch up with a friend turned into a therapy session of me lamenting about my problem. He was very patient because I noticed I was still ranting, long after the waiter had taken our coffee cups away. But he understood my pain well and had to do a similar thing a month ago.
He solved it by using another tool. A tool that was much older and made by Autodesk, the creators of Revit. This tool was known to be quick with data in Revit models, but I hated it. When I got home, I begrudgingly opened Dynamo and built the same logic I did in Grasshopper. I sighed and hit "run". I don't have high hopes for this at all which is why I still had my other script running in the background.
But, an hour later, I came back to Dynamo saying the run was finished. I squinted my eyes and started interrogating the model. There was nothing wrong with it, the script ran perfectly and it took 1 hour to finish instead of 4 hours. Why did I hate Dynamo again?
It was the perfect tool for this job. I ran my Dynamo script for the rest of the models and gave them to Helen.
I sacrificed my sanity and health and still barely made the deadline. If I had to do this all over again, I would have spent some time up front exploring the different options instead of going to my default tool. Maybe I would have actually used Dynamo from the start.
This idea of only using what we know instead of exploring other tools is something we do a lot. We always choose what is familiar and comfortable instead of finding the right tool for the project, especially when it comes to computational tools.
RhinoInside Revit vs. Dynamo: A Comparison
If you are deciding between Dynamo or RhinoInside Revit (Grasshopper), here's my high-level overview on why you might pick one over the other:
Integration and Ecosystem
RhinoInside Revit: Brings the power of Rhino and Grasshopper into the Revit environment. Ideal for those already familiar with the Rhino ecosystem.
Dynamo: Native to Revit and integrates seamlessly with other Autodesk products. No additional program install or licensing needed.
Deployment and Scalability
RhinoInside Revit: Not very user friendly because users have to be familiar with Grasshopper and Rhino.
Dynamo: Generally easier for Revit users to pick up. With Dynamo player, users don't actually need to see the script to run it and it's more stable than RhinoInside Revit for now.
Performance
RhinoInside Revit: Excels in complex geometric operations and form-finding tasks.
Dynamo: Often faster for data-heavy tasks within Revit, as I have now learnt.
Flexibility
RhinoInside Revit: Offers more flexibility in terms of geometric modeling and has more plugins available
Dynamo: More rigid due to fewer available plugins.
Final Thoughts
The best tool always depends on your specific project requirements, team expertise, and the task at hand. It's crucial to:
Assess your project needs before jumping into a solution.
Be open to learning and using multiple tools.
Regularly update your knowledge about available tools and their capabilities.
Consider factors like team expertise, project timeline, and client requirements when choosing a tool.
I know it's generic advice but point number 2 is often overlooked when starting a project. I know I never thought of using Dynamo for any of my projects until now.
The goal isn't to master every tool out there, but to know enough about each to make informed decisions about which one to use for each unique project. It's about staying adaptable and open-minded.
So the next time you're faced with a computational design challenge, take a moment to consider all your options. The perfect tool for the job might not be the one you're most comfortable with—and that's okay. Embrace the learning opportunity, and you might just surprise yourself with the results. It's something that I have to remind myself over and over again too.