CAD in the Cloud
Anyone who was “business aware” and lived through the first internet bubble is probably a little skeptical about “the cloud”. The first internet bubble was really about irrational optimism, and a belief in technology for which there was no currently profitable application. The addage “if you build it, they will come” turned out to require some qualifiers.
There may still be some people out there who don’t really get the concept of “the cloud”, and why it is still shown in quotes much of the time. “The cloud” is a term that is used in several ways, but primarily meaning that applications can be run from and data stored on servers on the internet. This is not so much a future technology as a way of describing technology that already exists, with the hope that rebranding it will create a new market for the same old thing.
When you read your email online, that’s a cloud operation. When you use Google docs, same thing. Any time a website calculates something for you instead of just displaying existing data, that’s a cloud function. Web programming is not just html text and images, there is executable programming in the site code. Of course you are familiar with nefarious uses for active code on websites, but other highly useful things like on-line banking make use of this sort of thing as well.
So lots of everyday stuff is already in “the cloud”. You already use it. Why not put your CAD application on the web? People have been asking and trying to answer this question for a while now. Several years ago, Paul Salvador, one of the regulars on the usenet newsgroup comp.cad.solidworks when it was a useful destination, dubbed the proliferation of web applications for SolidWorks as “Web Noodles”, basically meaning stuff that sounded appealing but had no real substance.
It may have been six years ago when Bernard Charles (Dassault CEO) claimed that interoperability was going to come through the web. Rather than the OS being the platform, the browser would be the platform. This has yet to be completely fulfilled, but it is one of the implications of “the cloud”.
In Barcelona, Jeff Ray talked about “the cloud” and said that he knew people were frightened by what “we” (I assume this means DS) were planning. Why would people be afraid of that? Another idea Jeff put forward was to quote Henry Ford when he said “If I’d asked people what they wanted, they would have said a faster horse.” I think SolidWorks has misused Ford’s concept to mean “we will give you what we think you want, not what you really want, because you are not smart enough to know what you want”. Good ideas can always be twisted into something they were never intended to mean.
Anyway, let’s start with baby steps. CAD in the cloud. 3D Content Central. CAD data, online, configurable. This is CAD in the cloud, and many people find this highly useful. Instant 3D Website? I3DW has not enjoyed a lot of acceptance, but I like it. It is CAD collaboration in the cloud. How about on-line viewers? Have you been to SolidWorks Labs recently? This is a bunch of small CAD apps in the cloud. Viewers, even Cosmos, er… SolidWorks SimulationXpress.
All of that is small potatoes compared against say putting the entire SolidWorks application on-line. Could it be done? Well, yes. Does it make sense? That is the better question.
SolidWorks, and truly, any full-on CAD application, takes a huge amount of processor power. It also requires a lot of graphics crunching. Does it make sense to centralize all of this, and to transmit the graphics across the web? What if you have 10 people using SolidWorks at the same time? The bandwidth eaten by transmitting the display real time is simply non-existent for most SW users. The centralized compute power to support multiple users is not there either. I don’t think cloud computing for heavy duty CAD apps is going to exist any time soon. Hardware and infrastructure have a lot of catching up to do to make that a possibility.
Another “cloud” concept is distributed computing. This is almost the exact opposite of most of the things we have been talking about until now. The cloud apps that SW runs above are centralized, I’m assuming they run on a single server. Distributed computing takes one application and runs it on multiple computers. This is like a set of computers set up to do rendering or analysis or other types of complex computing. This has been the realm of government projects, or Hollywood movie making. Distributed computing is really dependent on the development of multi-processor capabilities, which are still in their infancy for history-based CAD.
I don’t know if it is still available, but SolidWorks used to have a form of network license where the application was actually run on a remote computer. This used the local machine like a terminal, and the server like a mainframe. This worked great for security, but the display was slow. The “new” ideas are really just recycled forms of really old ideas, repackaged, rebranded, and with lots of shiny new stuff on them. Like The Who said inWon’t Get Fooled Again,
Ill tip my hat to the new constitution
Take a bow for the new revolution
Smile and grin at the change all around
Pick up my guitar and play
Just like yesterday