Mentor Announcement #1 Summit 2019

I’m very happy that the committee decided to have a coding class this year.

The mentor of this workshop will be*drum roll folks*..

Frederic Beaupere


Frederic Beaupere is an architect working at Herzog de Meuron since 2012, where he joined the Digital Technologies Group team, working as a BIM Manager. Beside the usual tasks like setup, training and support, he enjoys helping teams with Python scripts on all kinds of tasks. Before joining HdM in Basel, Switzerland, he worked at various offices in Hamburg and Berlin: Laura Jahnke Architekten, Zaha Hadid and Barkow Leibinger, after his diploma at TU Kaiserslautern. He enjoys writing Python both at work and at home.


“Standing on the shoulders of giants” is a phrase you can often hear in talks in the Python community. To me this also seems the perfect fit to describe my motivation to run a Python workshop at BILT Academy: Without all these numerous smart people writing Python, pyRevit, and RevitPythonShell, I would not be able to give a Python workshop. So in turn I think it is only fair to contribute back with my humble share, and hope this helps with open-source and collaboration.

Key Learning Objectives

We go through the steps of implementing a pyRevit/RevitPyhtonShell script as we would in the office. These are:

  • Python Basics Intro
  • Write Python Script in RevitPythonShell
  • Port Script to pyRevit

Short Q&A

How and when did you code for the first time, especially with python?

The first time I remember I ever coded something useful, was during university
with autohotkey: I was so annoyed by my scanner driver having to set my preferred settings and open the scan page dialog for each single page, that I created a little helper script that would keep scanning pages with my preferred settings as long as caps lock was active.
Probably one of the first things I’ve written in Python was about 3 or 4 years
ago, when I wrote a little helper, to fix the PDF bill file naming of my telecom provider from “ebill.pdf” to the something like: “20160601_providername.pdf” from information inside the pdf and having it sorted directly from downloads into the correct directory. This is a very common pattern to me: I often start with some useful yet basic and simple script or pieces of logic, before I begin to write or assemble something larger.

How important is coding in the AEC industry?

As nowadays there is hardly any industry without interactions with computers,
I would say coding/scripting is a valuable skill for everybody.
More specifically: I would like to second what I already heard in a couple of coding podcast: Everyone should learn a little bit of coding – not to necessarily to become a professional programmer, but to amplify what they are already doing.
Especially for architects who are on the creative side of thing, I guess it should feel natural to rather create tools than just consuming what is given

Why is coding fun to you?

To me coding is both a very creative, fun and useful process. Learning a general purpuse programming language which can be applied anywhere from data science to web or iot on any platform, helps with countless tasks and also makes work way more fun! Often enough a smoothly running program still feels like magic..

What is your favourite coding project?

There are actually already a couple of favourites, but I will name one here
that probably has the best visibility: “rvt_model_services” is an open-source Python project I started, to perform actions (mostly other scripts) on Revit models. The most common task is probably to run quality control and statistical checks on models on a scheduled basis. So it helps to see growth and detect
abberations in models, but as it runs fully automatic, it does not create additional tasks for me, regarding the checks. (Apart from hooking it up to
the system once) Besides this useful functionality, it also informs our teams
via email and chat in case of model corruption so that our maximum potential
rollback for broken models time is reduced. (which obviously saves nerves and
money especially in big projects)

link to the repo

BiLT Academy Summit 2018 Recap

Shaping the future experts within the buildings industry, a motto in where we believe in and have striven for at our very first event in Ljubljana.

The BiLT Academy student movement organized its very first international summit at the University of Ljubljana. Over 63 students from 13 different countries had the unique possibility to get taught by 9 different mentors from all over the world.

We could not have done it without our Sponsors, big thanks to: Autodesk European Education Team, Graphisoft, the Faculty of Civil and Geodetic Engineering of Ljubljana, LRCZ & BiLT Europe!

Also, a big thanks to all the mentors, who have shared new knowledge to us all. These mentors are:

Point Cloud: Conor Shaw, Kelly Cone & assistant: Danielle Contreras
Computational Design: Daniel Hurtubise & Mostafa El Ayoubi
Clash Detection in BIM: Arik Shiby & Moty Vaknin
BEP in constructions: Marzia Bolpagni
Open BIM: Nathan Hildebrandt & assistant: Cristina Savian
Multi – platform workflows: Martin Taurer

And as last, the Keynotes of:
Andre Garcia Damjanov
Daniel Hurtubise
Nathan Hildebrandt

Big thanks to all the students & supporters at the event!

Join our Slack workspace to get involved

Mentor Announcement #3

Hey folks,

We got some exciting news, that we would like to share with you all. Our third mentor is confirmed and ready to be announced. We have the great honour to get supported by

*drum roll*

Mostafa El Ayoubi


A passionate architect and engineer, interested in everything new in the AEC industry. Mostafa is a true believer in data driven construction and he works on developing/implementing tools and workflows to facilitate design, collaboration and project documentation. He is an active member of the Dynamo community and is the top-rated Dynamo Package developer.

He worked as an engineer in a study office in different fields (Mechanical, Electrical, Plumbing, Structure…) for four years. He then started the Data Shapes blog and co-founded the Data Shapes company which provides cutting edge BIM support, training and workflows to AEC firms.

Mostafa misses his days at the architecture school where he could experiment designs and is really excited and humbled to be back in that environment to be part of the BILT Academy Summit!

Letter of motivation

My main motivation for the membership program is to share. Sharing played a huge role in my learning experience. I learnt more from people who were generous enough to share time and knowledge than I did from school. I feel it is time for me to give back.

There were a few key moments in my life when I was struck by words or concepts. Those moments helped me find passion, and that is exactly what I wish to do for people. It often takes hearing the right words at the right time to inspire you for life.

I truly believe that the biggest contribution I can bring to my trade is to share with the community because no matter what you can achieve as an individual, it will never be as big as what you can achieve as a community.


The mighty Dynamo Forum

Don’t reinvent the wheel. If you are trying to solve a problem, which can occur in multiple disciplines then it may be usefull to search through the Dynamo forum. Here is an example:

At my office we use SOFiSTiK Reinforcement add-in for Revit, because it automises many tasks. However, schedule all the rebars and fabric sheets can be quite difficult. The schedule function gathers all rebars which are assigned to one sheet. Therefore if you want to group all the rebars of level 1,.. into one schedule (because of estimation reasons), then you will probably loose the overview of all the rebar marks and compenents where they are part of.

So I searched Google for a solution to this and I found this link which is worth a mint: Dynamo forum link. This Dynamo graph will apply to all of your elements the sheet, where they are included. This. is. huge.

You can use this workflow to filter elements by GetParameterBy… afterwards. You can request it for example if all the rebars contains at least two sheets (one sheet where the whole level is shown, one for the component where they are part of).

Refurbishment projects with focus in structural engineering. Visualization of column’s load-bearing capacity

Sometimes it is all about to presenting data in an easily understandable way. Especially when the project hasn’t started yet and you have to present the advantages offered by your office. So my boss came up to me and asked me if I can accomplish a visualization task.
We have a refurbishment project (no digital data available like BIM models, plans,..) and I modeled every column with it’s belonging load-bearing capacity. The load-bearing capacity is the entry of the “comments” property of each object.


At first, I thought about to draw isolines of a capacity-surface but it takes too long to compute the surface. I asked Jostein Berger Olsen ( for his help and he came up with a much smarter idea. He edited my script in a way that circles would be drawn and the properties (like radius and color) depends on the load-bearing capacity. Let’s break down the whole task into some specific subtasks.

  1. Extract all the “comments” data out of each column
  2. As you can see, we have this weird way in Germany to express a decimal digit. Therefore I have to extract the string, erase the last 3 letters (whitespace+”MN”), change the “,” to a “.” and parse the string to a float/double type.
  3. If there is no entry, set the capacity to almost zero.
  4. Creating circles, where the middle points are the middle point of each column and the radius is the capacity of each column.
  5. Create a color range where the range is the normed range of our capacity (use of the Math.RemapRange)
  6. Overwrite the visibility of the circles with the belonging color-range-list.

So that’s it!
Here we have the result:

The python script:

dynamo python

And finally the result: