In the first part of my “Really Big News From Dassault Systemes and Spatial” series, while explaining how Spatial went about getting CAD on the cloud, I wrote: “What follows is Spatial’s view on how and why this has happened.”
I said that because I believed there was a certain level of marketing bullshit behind that spin. Exactly how much, I wasn’t sure. But I took it upon myself to find out. Over the past two days, I spoke to a bunch of Spatial people and tried to figure out exactly what happened. After I put the pieces together I was able to nail it down to one person – Gregg Oetting, Spatial’s Director of 3D Geometric Modeling (the person on the far right in this picture). So last night after dinner I cornered Gregg and asked him to spit it out, which he did. This is really what happened, straight from the horse’s mouth.
Gregg’s main job in Spatial is to manage around thirty developers that work on the ACIS modeling kernel. His job does not require him to code. But continues to do so because he loves it. Many months ago he was looking for ways to improve Spatial’s documentation. It was decided to create a Wiki of the documentation, put it up on their web site and make it accessible to everybody (http://doc.spatial.com), not just their customers. But Gregg was trying to take it a step further by giving visitors the ability to create scripts or modify existing sample scripts that would internally execute functions in the modeling kernel sitting on their server. This would give visitors a better idea of how ACIS worked. At this point he had no idea of doing CAD on the Cloud. And neither had anybody at Spatial asked him to do so. He was doing all this on his own time.
Browsing around the internet for information he chanced upon a SIGGRAPH paper that explained to an extent how some of this could be done. So he spent a weekend experimenting with his idea. By Sunday evening he had about 50% of the stuff already in place. That got him pretty excited and he continue to push forward alone. After he got a lot of this working, he showed it to a couple of people at Spatial who immediately expressed interest to work with him on his pet project. One thing led to another and pretty soon they realized that they had something really good going on.
At that point Gregg decided to showed this stuff to John Alpine, Spatial’s VP of R&D, who found it interesting and encouraged Gregg to carry on digging. As Gregg and his colleagues continued and began to surprise themselves at what they were achieving, it became quite apparent to John and this was something that could be quite useful to Spatial. That was when CEO Keith Mountain was made aware of the pet project and it was decided to make this a full blown regular Spatial R&D project. Resources were allocated and teams were created to take the project forward.
Simultaneously, Dassault Systemes was talking to Spatial about making their CGM modeling kernel available as a component which Spatial could offer along with its own ACIS. At this time, Dassault Systemes had no plans whatsoever to license their Cloud technology through Spatial. The discussions were restricted to CGM only. During one of these discussions, the Dassault Systemes and Spatial teams were exchanging ideas on their individual research projects and the Spatial’s Cloud project was mentioned. This peaked the interest of someone in Dassault Systemes who put Gregg in touch with someone in Dassault Systemes Cloud R&D team. As ideas began to fly both ways, it became apparent that both companies were trying to do the same thing, but in slightly different ways. That was it. Greater forces came into play it was decided that Dassault Systemes and Spatial would exchange technologies and know how and take this forward as a joint project. It was further decided that Spatial would develop and package this as a component and offer it to everyone.
I find this utterly amazing. What started out as one man’s pet project has ended up as potentially one of the greatest technologies that the company he works at will be known for. I guess the moral of the story is that if you have an idea and believe in it all you need to do is push forward because you never know where you may end up with it. And this is true for any job, not just programming.
John Alpine summarized it beautifully. He told me, “Sometimes the best innovation does not come from people in the company whose job it is to innovate. It comes from people that have an idea and are encouraged to see it through. If you assign a R&D project to a team and direct them to invent a solution, they may give up after they hit a couple of tough hurdles or experience setbacks. But when the idea is their own baby, they will go to any extent to make the project a success. That’s the best form of motivation I have every seen.”