Posts

Developer videos online

On huge request, we created new developer videos. They are on the youtube channel of the open source BIM collective in the ‘Developers’ playlist.

Basically we installed a screenrecorder on a new laptop and installed everything from scratch. You see the download and installation of Eclipse, Java, the setup of the Git gepositories, installation of the Maven tools, etc. etc.  There is also an explanation of how to run BIMserver with the bimvie.ws and IfcOpenShell plugin.

Another video shows the start of a new internal plugin. You see the creation of a new plugin using the ‘DemoPlugins’  repository. Giving it a version number is also shown to get it working in the Maven context.

The last video is ‘an hour in the life of a BIMserver programmer’. This is the first hour of actual coding, experimenting and testing the newly created plugin. In this case the developer tried to create a plugin that calculates the outer area. The example shows the use of the preprocessed geometry from IfcOpenShell in combination with the semantics of IFC. As you can see it only takes a few hours to get a first prototype up and running. It will take some additional hours to fine tune it to perfection. The code is available on github for you to see it progress.

We’ve also added some smaller parts of the long videos into separate videos. These show the setup of bimvie.ws,  BIM Surfer and the JavaScript API in Eclipse for development and some experiments with the new Query/Filter language based on JSON.

The IFC data used in the videos came from the public available Schependomlaan.

New Year’s resolutions

Before the ending of the year, it is time to think about New Year’s resolutions. The last year was a good one: many new applications have been build on top of BIMserver and a significant number of commercial suppliers provide services for BIMserver. Large and small BIM products use BIMserver at their backend to deal with the IFC data.

Because of this increasing usage type, the type of demands for BIMserver change. Everyone knows BIMserver needs a lot of memory. This is due to the use of the EMF metamodel in the core. There was a constant evaluation between the positive sides of EMF (developer friendly) and the downsides (performance).   One of the new year’s resolutions for 2016 is to experiment with a serializer that does not use EMF. This might lead to a new generation of BIMserver releases that do not use EMF anymore.

Another increasing demand we get is the need for a rich and stable query language. BimQL seems to be the most common BIM Query language (and is supported by BIMserver) but has limitations. The commercial use and increasing complexity of applications that use BIMserver as their base, demand query capabilities beyond the current plugins. We’ve always waited for the industry (or academic world) to develop a rich BIM Query language, but time is running out. That is why we decided to remove the Query-plugin type and build one new query language. This will be implemented (native) in the interface as well. Some work on this has already been done (look at the codebase) and we plan to gradually migrate the current API to a new one.

Last but not least: Maven arrives at the scene. We get way too many errors in the support forum caused by incompatible versions of BIMserver and plugins like bimvie.ws or IFC Engine. It is time to use Maven to deal with this in an effective way.

So far our biggest plans for 2016 (and beyond). There are also intentions with smaller implications (remove deprecated code; create database indices; etc.). Have a look at the list on https://github.com/opensourceBIM/BIMserver/wiki/Roadmap

We wish you all a Merry Christmas and a great New Year! See you in 2016.