TL; DR: Founded in 1998 by a group of top-performing GE engineers, Kitware quickly grew into one of the industry’s leading software research, consulting, and development companies. As the creator of CMake, which is now used by many developers as the backbone of C/C++ based software, today, Kitware continues to innovate solutions in computer vision, data and analytics, medical and high-performance computing, and software processes. And, with involvement in public interest endeavors, such as the Visible Human Project, the organization is developing and cataloging major open-source libraries the world over. We recently caught up with CTO Bill Hoffman, who spoke with us about the early stages of Kitware and open-source software, the company’s decision to pivot to a purely open-source model on top of a platform like the Visualization Toolkit (VTK), and the trends he’s seen during his 20 years in the industry.
In 1998, five members of GE’s R&D unit decided to pool the skills they’d developed on the company’s computer vision and visualization teams to explore the collaborative data space that would ultimately become known as open-source. The result was Kitware — a software research, consulting, and development company that now touts a variety of big data teams with high-profile clients from around the world.
“[We’re a] high-performance computing and visualization team that does a lot of work with national labs, like Sandia and Los Alamos, for viewing really large simulation data,” said Bill Hoffman, Kitware’s CTO. “We also work on cutting-edge computer vision research for DARPA and have an active computational medical imaging and robotics group.”
In the middle of Kitware’s big data computing and visualization services, the company focuses on software process work, which is where its widely used cross-platform family of development tools, CMake, truly shines. Used for building C/C++ Fortran-based software, CMake allows for cross-platform building and can generate Visual Studio’s and Xcode projects and makefiles. Over the years, CMake has proven its efficiency and has established itself as the foundational software-build toolset of the tech industry.
Bill told us 90% of what Kitware does is now open-source. Recognizing the potential and affordability of open-source platforms, the company shifted its business model to focus more on creating algorithms and applications, as well as helping clients with their software processes and infrastructure. A staunch advocate of open-source, Kitware is passionate about collaboration and gathering knowledge for the public collective, as evidenced by its work on the Visible Human Project, as well as Kitware’s Visualization Toolkit (VTK).
VTK and Open-Source Surpasses Math as the Language of Science
When Will Schroeder, Ken Martin, and Bill Lorenson got together, good things happened. Wanting to create a standard for computer visualization, Ken, Will, and Bill approached GE about their desire to write a book. Luckily, GE valued authors, and the trio was encouraged to write the Visualization Toolkit, which, at its core, was a C++ library for visualizing data and involved taking complicated 2D and 3D data and making visual pictures of it.
Released in 1994, the book steadily gained traction until 1998 when there were so many developers using VTK that the Kitware founders thought they could build a company out of it. The book was quickly picked up by universities for their own visualization classes, and it was this marker that lead to Kitware’s founding.
“We thought we could make a go of the company supporting it,” Bill said.
The original idea behind Kitware was to create a series of support contacts for it, while at the same time build a traditional software company with closed-source vertical applications built on top of the open-source base. The fledgling company did experience some success, but, since it was bootstrapped, it had no outside funding and worked with only one contract at the time.
“We did manage to create a volume visualization tool that we sold,” Bill said. “But we discovered that it competed with our open-source offerings.”
No longer wanting to focus on proprietary software, Kitware pivoted its resources completely to its open-source efforts and now has a business model of collaborative research and development to build and create open-source platforms. Yet, when it started focusing on open-source, Kitware found people were terrified of it.
“It just sounded like it was lower quality and had a lot of stigma,” Bill said.
The distrust was understandable as companies would traditionally purchase software, buy the licenses to use the software, and then would have to pay again for any add-ons. Bill told us he’s now seeing government contracts that require software to be open-source.
Interestingly, Bill noted there is a growing belief that software has replaced mathematics as the modern language of science.
“When you drive your car, you’re using open-source software,” he said. “It’s in the entertainment system. It’s in the navigation system. Whenever you display an image on the screen, it’s probably using an open-source JPEG library or something like that. Open-source is everywhere. This is because the computational problems are getting harder and bigger.”
As a result, bigger science requires bigger communities, larger teams, more disciplines, and countries working together.
“Data is getting bigger, the systems are getting bigger, and you’ve got giant supercomputers, so it’s really hard for any one vendor to create that one piece of software,” Bill said.
No longer is there time to spend writing software from the ground up, and, because of its flexibility and affordability, open-source has won the battle.
Project Tango, the Visible Human, and the Benefits of Collaboration
When open-source was finally accepted as mainstream, Kitware’s reputation increased tenfold. Being the veteran of the open-source landscape, the company has been invited to collaborate on large projects such as Google’s Project Tango and the Visible Human Project from the National Library of Medicine and National Institutions of Health.
For Project Tango, Google came to Kitware because of CMake and its web-based data management and dashboarding software. However, the company’s biggest takeaway from the Tango experience was the development of its dashboarding software. Every time a developer made a change to the code, the dashboard would do builds and test the underlying algorithms to show the development team what was broken and what was working.
“The project was built on literally hundreds of open-source components. Each component of the system is an entire package of some sort,” Bill said, noting the great number of open-source packages that went into the project.
“So, if you want to build a phone that can scan a building in 3D (like Tango), you’re going to have to use hundreds of open-source libraries with millions of lines of code,” Bill said. “Being able to test that and build software processes on top of that is where Kitware can help out.”
Bill told us another example of this came when his friend purchased a new car.
“The sales person was showing him the entertainment system,” he said. “When he turned it on, it had a bunch of open-source licenses it displayed before the setup.”
Kitware is big into reproducibility as it is becoming a major issue in computation science. As an example, Bill pointed to a 2012 Nature article, which showed that 90% of papers published in scientific journals describing breakthroughs in cancer research weren’t reproducible. To combat the issue, Kitware works with organizations and labs to create reproducible software processes that will wholeheartedly back its findings in the pursuit of accurate knowledge.
One such program was Kitware’s collaboration with the National Library of Medicine and the National Institutions of Health to compile a library for the Visible Human Project. The project performed CT and MRI scans of a male and female body that had been donated to science. Afterward, the bodies were frozen solid and sliced. Pictures were taken of the slices and collected into a dataset that has essentially been open to the public since 1995.
In 1998, Dr. Terry Yu took the project one step further. He thought what really needed to be done was not only collect the data and make it open, but also develop algorithms to understand it. Terry found funding to create the ITK open-source library for medical segmentation and registration. This meant that researchers would have a common reference implementation of algorithms working on CT and MRI data, for example, allowing CT and heart scans of a patient to be registered together.
As the two scans have different resolutions and different skews, caregivers can now “map [the scans], one on top of the other, come up with a mathematical model that projects them into the same space, and actually compare them to see whatever problem they are looking for,” Bill said.
Having these advanced algorithms available to researchers has allowed advances to occur much more rapidly than they would have with each researcher reinventing the same algorithms over and over. This has ultimately resulted in more accurate diagnoses for patients and data collection for the medical community.
Easing Customer Pain Points With More Control Over Licensing
As the engineering lead for the Visible Human Project, Kitware was tasked with building the project on Linux, Windows, and Mac, and, in the process, developed the open-source tool CMake, which gained huge market penetration in the C++ world. The KDE community has also adopted the tool due to its Linux desktop environment.
“We’ve evolved our business strategy to build these platforms that are open-source,” Bill said.
Still, the company is often approached by clients to make additions to the platforms, to build a closed-source application on top of those platforms, or to convert a revamped platform to open-source.
“We’re big on the permissive end of things, so all the stuff we do is BSD-style licenses so we can build commercial applications if wanted,” Bill said.
Kitware actively tries to find various government and public funding for building these types of platforms and has been building a global infrastructure for scientific computing software over the past two decades. Kitware is trying to build an open-source option for each area of expertise it has established.
When companies had to rely on purchasing software and licensing from third parties, this often placed the buyer at a disadvantage. Licensing companies essentially owned the IP and designed contracts so they could maintain ownership. However, with the growing trust in open-source, the public and the government wisely began asking for more open-source development. Of course, that put Kitware at the center of the demand with its proven history with open-source.
“We have an actual business platform around it, and a lot of our competitors really don’t,” Bill said. “And if taxpayer dollars are paying for it, they really should.”
Next: Expansion and Remaining Committed to the Open-Source Approach
Currently housing 160 developers working on 150 active projects that can take from a couple of weeks to years to complete, Kitware is a company that needs space. Though it has offices in North Carolina, New Mexico, and France, its headquarters is located in Clifton Park, New York. In 2018, Kitware is moving into a brand new building in Clifton Park where it will be housed on the top two floors of a single building.
“It’ll be nice to get everyone back in one place and increase overall company efficiency,” Bill said. “Currently, the headquarters are split in two buildings separated by a parking lot and road.”
Though the economy is showing signs of bouncing back, many are still looking to maximize organizational efficiency with continued bootstrapping methods. Requests for open-source for big data in the governmental, commercial, and academic spaces have steadily increased in the global market, and they are showing no signs of slowing. With the wide adoption of Paraview, VTK, and CMake, combined with its company mission to pursue authentic data collection through collaboration, Kitware is primed and ready to meet demand.