domenica, dicembre 06, 2015

Everybody loves Marcello, but...

It's true.
He is a brilliant man and he has done an astonishing work in the past with Revit, and most of all he shared his work and discoveries in multiple occasions and he became one of the most respected opinion leader in the world wide community through blog threads, Autodesk University Classes, RUGs and so on. So he's one of my superheroes and he knows it.

It's been a while now that he is on Dynamo, he has a course on CAD Learning and here's the latest class at AU named "More Practical Dynamo: Practical Uses for Dynamo Within Revit" that you should check out, it's been recorded and it's available for free.

I watched it on streaming and I was hoping to see some of his magic tricks in action but I was disappointed, very much, partially for the content of the class itself (I get that most of the people who attended the class hadn't the slightest idea of what Dynamo is and how it works but 20 minutes to change texts to upper case, seriously?), and mainly for a few false concepts here and there that will make people go "Marcello said it, so it must be true" because of who he is for the community.

I just couldn't turn a blind eye on it, for the sake of those who will approach to Dynamo and Revit API in general because they were inspired by Marcello's work, he's a good story teller, and I get that sometimes he needs to simplify concepts, like in this case, but too much simplification can lead to misunderstanding and unnecessary confusion, especially when it's going to be out there for a very long time.

Just a couple of examples:
1) [0:08:25] Element Types ARE NOT System families, they are the Base classes for all Types within Autodesk Revit (System or non-System family types), they simply are different animals.

2) [1:21:12] With this version of the Revit API it is not possible to create a "free standing" Railing but only hosted by a stair object and there are no exposed method to change the path of a Railing object. So NO, you can't create the fence example using an actual Railing object directly from Dynamo, something that you might want to change type later on per say, but you can use generic models, adaptive components, you could model the whole thing in Dynamo and import it in Revit using DirectShape...
Here's a question on the Revit API forum on the same topic.

What I'm saying is to keep up the good work, the creativity and the inspiration as a community, but in order to do that we should never take for granted what people tells us to be true (not even me, not even our heroes) and wrap our own head around problems, so if we look at the same problem from different point of views we might find a truly better solution.

I've tried to follow a very wise and simple ABC rule I've read somewhere, I think it's worth sharing:

Assume nothing
Believe in yourself
Check everything