Someone asked me why did I use python to program the tools and create this library. Here are my thoughts:
You can select between a couple of programming languages to develop addins and tools for Revit. They’re: C#, Visual Basic, Ruby, and python.
- Ruby is heavily web oriented and has a less readable syntax for a newbie. It’s still no doubt incredibly powerful.
- Visual Basic is old. It’s not worth the time investment for a newbie and you can only use it within the Microsoft ecosystem.
- C# is a proper language built for enterprise applications. It has a steep learning curve and deals with very complex programming concepts which makes it a hard language use. Also C# programmers are expensive and that increases the overall cost of professional-grade software development and maintenance.
but python, has a human readable syntax. It’s very easy to learn. It runs on most of the operating systems and is used as the scripting language for many professional CAD/BIM programs. It’s very easy to setup and it even comes pre-installed on Mac and Linux systems. You can use it to program your own personal computer (Mac, Windows, or Linux). It has a very simple I/O framework that you can utilize to keep your files and projects in decent order. You can use it in Revit, Dynamo for Revit, Rhino with Grasshopper, Blender for 3D graphics, and many more. You can even use it as a very powerful and handy calculator…It’s a better language if you’re an Architect…
In my opinion, learning python is a good start and a better investment for an Architect overall. Of course you still have to learn how to use the Revit API (or API of other software using python for scripting) but still, python, is like a x-acto knife.
Besides, most architecture companies are not very rich. They can’t afford C# programmers or a software development department and this means that they’re mostly stuck with out-of-the-box software which especially in case of Revit, lack some of the most basic tools (by 2016 standards e.g. proper selection tools). However, by using simple small tools they can save significant production time over the course of a year or so. I’ll publish more data on this in a few months.
I’m hoping that this library encourages more architects to get into programming and start taking control of the programs that, right now, have a lot of undesired control over the A/E industry.
Rise hackers, rise.