If you are a software developer, you’ve probably used GitHub. If you know a software developer, you’ve probably heard them talk about it. What is GitHub? Well, let’s start with Git. Git is a software package for project management, version control, and collaboration. Git allows multiple users to collaborate on a single project. In addition to the central “master” version, Git allows each user to maintain his or her local version or “branch”. Git tracks the changes made in each branch, allows users to integrate completed branches, and helps users resolve inter-branch conflicts. Git was written by Linus Torvalds, the same Finnish turned American software engineer who as a 21 year-old wrote the Linux kernel. GitHub is a web service that implements Git and adds features for user management, online discussions, and issue tracking.
Git and GitHub are popular among software development teams, including those for EnergyPlus and OpenStudio, but version control and collaboration are useful for other types of projects as well—including energy modeling projects. That’s the idea behind BuildSimHub, a new product that brings GitHub-style workflow to energy modelers, specifically EnergyPlus and OpenStudio users.
Started by Carnegie Mellon University graduates Weili Xu and Haopeng Wang and Boston University graduate Zheng Zhang in early 2017, BuildSimHub has a growing list of customers. The team, which also includes Oxford graduate Liang Yin, are giving BuildSim a growing collection of energy modeling specific features to complement the underlying GitHub functionality, including cloud-based simulation, a 3D model geometry viewer, a simulation results viewer, and an object-oriented model file navigator, editor, and merger. Like other source-code management utilities, Git tracks and merges changes on a file-by-file and line-by-line basis. BuildSimHub exploits the object-oriented nature of EnergyPlus and OpenStudio input files—information is organized around objects like Zone, Surface, Schedule, and Air-Loop—to allow users to navigate, edit, and merge files by object type. In BuildSimHub, a modeler can delete all Light objects from a model or merge all of the Construction objects from one model into another.
BuildSim’s early users have been impressed. “BuildSimHub's version control workflow and 3D geometry viewer make it easier to track model and to quickly review someone else's model without having to open the model in its native software on your PC. I especially like the ability to merge two different versions of the model while being able to easily detect the differences between each version” says Alex Chapin, Principal at 3R Sustainability. An-Lei Huang, a Building Performance Analyst at Integral Group adds, “BuildSimHub takes the good in the Git workflow model, and presents it to modelers in a straightforward and user-friendly interface. Terms like ‘merge’, ‘Pull’ and ‘Commit’ may look scary at the beginning, but once you’ve completed two or three projects, the platform makes your process a lot easier and more efficient.”
The BuildSimHub team is busy working on new features. An integrated development environment for EnergyPlus input files that includes syntax highlighting and auto-completion is already available. Features in the pipeline include quality assurance for models and integration with end-user model development applications.
“BuildSimHub integrates Git with energy modeling to provide an intelligent model development, quality assurance and control, collaboration and reuse,” says BuildSim’s Weili Xu. “It’s a smart, secure and flexible building energy modeling workflow for EnergyPlus users.”
If energy modelers take to the Git project management and workflow model even half as well as software developers have, friends of energy modelers will soon hear them talking about BuildSimHub.