Posts

Sneak preview 1.5 release

To get straight to the point: 1.5 will be a developers release. We intent to move to 2.0 as soon as possible after 1.5. The reason we do release 1.5 is because the internals of BIMserver have drastically changed.  When you are a BIMserver developer you should definitely  have a look at this.

There are two drastic changes we made in the upcoming 1.5 release: lower EMF usage and using Maven for plugins.

EMF
From the beginning we used EMF as the core of BIMserver. EMF is what made BIMserver. It was the technology that made it possible to have the network IFC  STEP structure on one side and database objects on the other. Back in 2008 when we started this was a revolution. EMF brought (and brings) flexibility for developers. The metamodel of IFC lowered the threshold for modern developers to develop applications with IFC fast and reliable. The use of this EMF technology also had some downsides.  The most notorious one it the high use of RAM memory of the server it is running on. The main goal of BIMserver was  and is to innovate the industry by providing a stable and reliable base to develop on. We always felt EMF was an important asset to provide developers with a flexible environment.  However, in recent releases the interface API of BIMserver became more flexible, the client side libraries more professional and the internal structure of BIMserver more plugin based. BIMserver developers didn’t use the server side EMF as much anymore as they used to do and the burden of high memory requirements started to weigh on users. This is why we decided to phase out the EMF. This is done in parallel with an increased plugin infrastructure (more on that in the next paragraph). In 1.5 there will be new serializers that directly get data from the database, without keeping it in memory using EMF. The old serializers will also still be in there. Same goas for deserializers and some plugins like ‘basic merging’. In the 2.0 release EMF will be out of (server side) BIMserver completely. The 1.5 release is a release to show developers how the can (and should) change their plugins.

Maven for plugins
As you know, BIMserver is a plugin based framework. Basically every features is a tweakable plugin. You should be able to run BIMserver without any plugin, or just a minimal set. Plugins have their own release cycle and numbering. Often plugin updates are released more often than BIMserver releases. Since the number of plugins and their releases has always been ‘uncluttered’ the process of updating plugins was most efficient by copying a new file into a directory. However, in recent time the number of plugins and releases has drastically increased. This calls for a new plugin infrastructure with higher requirements. We chose to use the Maven framework for this. In the 1.5 release all plugins will be available in Maven Central.  When you download the BIMserver release there will be no plugins in there. During the setup process you can choose to install some basic plugins from the online repository.  After installation, the full list of available plugins can be listed from Maven central and BIMserver admins can install them by simply clicking a button in a running BIMserver. Maven central keeps track of compatibility between plugin releases and BIMserver releases to make sure you don’t install an incompatible plugin. An extra setting in BIMserver makes it possible to have untested plugins also appear in the list.  We are very enthusiastic about this new framework and encourage plugin developers to have a look at the 1.5 release and migrate their plugins to Maven as well. The BIMserver development team has resources available to help and support developers with this migration process.

All in all there are some big changes coming ahead. As we made clear, the 1.5 is mainly a developers release to migrate to 2.0. This doesn’t mean you can’t use it. The performance increase of 1.5 is huge and we are sure many of you will like it a lot.  At this moment we are starting to feel comfortable with the development and are slowly moving towards  testing. As you know we are proud on our enterprise stability testing and won’t release until we have a clear picture of the stability of the 1.5 release.  We can’t wait to release it and get your feedback!

 

Some screenshots of the (in development) plugin pages:

First Release Candidate for version 1.1.

UPDATE April 20: final release is public.

Today the BIMserver.org team is proud to announce that the first Release Candidate of BIMserver 1.1 is public. It has been over a year since the previous release of BIMserver and we have to admit we underestimated the effort. For the enthusiastic users who have high hopes of this release we just want to say: slow down. You won’t see a lot of change… The UserInterface is still… well… ready for improvements. And the new features are not the kind you would passionately talk about during your family diner.

Fundamental changes:
Nonetheless everything changed. When we released the 1.0 version of BIMserver, we released software that had all features we thought a BIMserver should be having (revisioning, merging, user management, change finder, querying, RSS feeds, etc..) and even more (clash detection, rulesets, WebGL viewer, etc….). After the release we expressed our intention to transform the BIMserver software from one big chunk of code, to a flexible cohesion of core modules and plugins. By doing this, we are lowering the threshold for people to create extensions, plugins and custom builds. In other words:  creating a stable, flexible, open infrastructure that everybody can use as a strong base to build something on top. We believe this is important for BIMserver to be able to grow into a movement that will be much bigger than just our small team.

This is the part where we miscalculated. Although the BIMserver software had a layered architecture that already was very flexible, it took some time to unravel serializers, deserializers, render engines, objectIDMs (the new name for ignore files), Graphical Interfaces, and their features. At the end of last year, a beta release was created for developers to ‘get used’ to the new infrastructure. This encouraged lots of developers to create plugins for BIMserver.  Some developers even claimed this 1.1 release should be called a 2.0, because of the structural changes. Others claim this release should have been the 1.0 (and the original 1.0 was just too early).

Credits:
Because of the involvement of great developers and advanced users during the last couple of months, we are proud to have a BIMserver build with several external plugins. Many thanks and credits go to Chris Bogen (USACE) for their COBie plugin and Thomas Krijnen for the IfcOpenShell render engine plugin. Also many thanks to Catenda for intensely testing the framework. We hope your bimsync application will be a success. We are very thankful for the effort and are convinced it has made today’s release much more stable and reliable. Thanks again to Rehno Lindeque for creating a connection between his Open Source WebGL Viewer (bimsurfer.org) and BIMserver. Many more developers are creating plugins that will be released for public (hopefully) very soon. We can’t say too much about it today, but we’ll keep you informed via this website. Finally a warm ‘thank you’ to all people that took the time to test or evaluate the BIMserver software and inform us about issues on http://support.BIMserver.org

We had a great year with lots of great talks with prominent people in the world of (open)BIM. We feel a growing interest for the BIMserver.org project and hope the 1.1 release will accelerate the use and appreciation of BIMserver.org.

New features:
Although the new, visible features for end-users are not jumping towards you from the screen…. there are some nice ones we would like to note:

  • The storing of incoming files: even when IFC files are corrupt (or for some other reason not stored in the database) the server manager can always obtain the original uploaded file.
  • Visualisation is gone: we removed visualization from BIMserver. We think a server should be a server and not a visualization tool. We are teaming up with bimsurfer.org for visualization.
  • Internal performance updates: we’ve improved a great deal of memory usage in this release.
  • Caching of downloads: Both revision and queries  are now cached on server after the first download. This means any additional download (by any user) will have very fast retrieval . This speeds things up quite a bit in a multiuser environment where several people need to download a merged model or revision to their own computer.
  • Progress bar: lots have asked for it, now it’s there… a progress bar during checkin and download.

Some more technical new features for the people who love nerd-talk:

  • Ignore files renamed to ‘objectIDM’  and are now part of the plug-in structure (to be able to link them dynamically to serializers).
  • Ability to choose renderEngine and objectIDM for a (de)serializer. Default BIMserver is shipped with the TNO IFC Engine Series Library (closed source as a plugin) and open source IfcOpenShell. It’s up to you which one you use.
  • More server settings.
  • Low level calls: We’ve added ‘add’, ‘edit’, ‘delete’ calls in IFC objects through the BIMserver API interface. This allows every application to edit the IFC data without upload/download of IFC.
  • Setup page after first startup: No default admin and password anymore. Just choose your own after first startup.
  • Database migrations: In the future, new versions of bimserver will update the database to the new structure. No need to throw away your data every new release anymore!
  • Enable and disable (external) plugins.
  • More info of your running server and improved logging
  • New protocol buffer interface: In addition to SOAP and REST interface, we now support Protocol Buffers. This is a major step towards real-time (streaming) communication with clients.
  • Client Libraries: Allows developers to ‘talk’ to the API of BIMserver very easy and gives access to the cool BIMserver stuff for their own application (both server-, as client-side).
  • Improved API, including technical documentation: on http://wiki.bimserver.org and JavaDoc of the interface API.

A full list of new features, enhancements and bugfixes (the release notes) can be found on our development site: http://dev.bimserver.org/

Download:
Todays release candidate, is a candidate for the final release. Please test this with care and submit your issues on http://support.BIMserver.org. We will try to fix bugs and help you with questions there.

There are several builds. If you are looking for the ‘old fashioned one-click-and-it-runs-JAR-file’ you should download bimserver-combined-1.1.0-RCx.jar. This is renamed to ‘combined’ because it is now a combination of the BIMserver and the GUI Interface (the HTML you get on the screen). When you use the BIMserver with GUI, please not that we do not support all webbrowsers. We test on Chrome (for multiple reasons) and know that Firefox and Safari also work pretty good. We do NOT support users with InternetExplorer so please do not use IE with BIMserver.
Download the builds on our Google Code Development site: http://dev.bimserver.org/

Installation and setup instruction can be found in a screencast: http://www.youtube.com/watch?v=e6CjPuDknlc. Please note that the license of most of BIMserver has changed from GNU GPL v3 to GNU Affero GPL v3. More info on http://www.bimserver.org/license/

Philosophy:
On every new release people ask us why we do this… We even get question what your hidden business model is and how we rip off people without them noticing. None of this is true. Read our ‘Philosophy’ and guiding principles on http://bimserver.org/about/philosophy/ to understand us a bit more.

Future:
We have great plans for the future. We really believe we are at the edge of implementing a mayor change of how the industry uses BIM. If you understand and acknowledge our guiding principles, and want to team up with us, send us your plans and (broadest possible) motivation to contact@bimserver.org.

New release: v0.8

BIMserver.org: new release, new site, new features!

The open source BIMserver just released a new stable version of their software. The new release is the 0.8 version. A lot has changed since the 0.1 version in March this year. Just some of the new features:

  • 25% speed increase
  • concept of sub-projects
  • improved automatic merging
  • RSS change notification
  • geolocate projects
  • improved multi user support
  • improved web-user-interface
  • google earth network link
  • smart revision management
  • extended query and filter options
  • more details on your revision
  • checkout/update warnings (while concurrent engineering)
  • enhanced read only access
  • enhanced user rights management
  • change finder on revisions
  • export of CityGML, Collada, KML, IFC properties, O3D
  • reference implementation of the CityGML ADE for IFC and BIM
  • get a summary of your model
  • and a lot more….

Some of these features are a direct result of the successful BIMserver Breakfast in November at TNO; some come from the intense contact with some of our users.
This release of the open source bimserver software is, without a doubt, the ‘best bimserver ever’. The team doesn’t stop developing and new plans are already being deployed.
The latest release is now available for download at download.bimserver.org. The demoserver (which was offline during the final stage of development) is back online as well. Check it out on demo.bimserver.org.

Together with the new software, the team also launches their new website. Because our software is stable and professional, our site also needed a more professional layout.
With this new software-release and the new website the BIMserver.org-team and it’s users are ready for the future.

New feature, new release date

This week the development team of BIMserver.org found out that we are all passionate about our jobs. That’s not really a surprise (or we wouldn’t make this software open source) and it gives a lot of valuable opportunities like having fun at what you do.
But as all good things in life it also has a downside. In this case the downside is that things we are not as passionate about will fall behind on the cool stuff.
For the open source bimserver software this means that we are looking at implementing O3D visualization in the new release, but because we are passionate about this, the given release date of December 18th will not be made.
Our families decided that it would be good for us to stay home for Christmas and not work with anything that has the word ‘java’ in it (except for the coffee of course). This means that we will (for sure) release a new version of the BIMserver.org software before Christmas (central European time) and hope to have all the new features like O3D in it.
So to be short: we won’t make December 18th, but the waiting won’t be long and we will give you extra stuff in return.