Should Autodesk keep the DWG format a secret?
Over the years, Autodesk and its proprietary DWG file format have been the subject of many articles, discussions and debates. I have heard all sorts of reasons why Autodesk should release the DWG format to the general public. Some made sense and some didn’t.
I, for one, am very happy that Autodesk has kept it a secret. No, I am not affiliated to Autodesk or on their payrole. I have this strong opinion because I have been invloved in designing, developing and implementing CAD Data Exchange software since 1999 and have had my full share of data exchange nightmares to deal with.
Way back in May 2004, I founded the OpenRP Initiative, a non-profit initiative to “attempt” to solve the data exchange and transfer problems of the Rapid Prototyping Industry. At that time, I was in two minds whether to release the RP file format specification to the general public or to keep it secret. I kept it a secret (and it still is) for one and only one reason – to prevent it from following the footsteps of the IGES file format.
Let me explain. Way back in 1979, The IGES file format was created to achieve greater interoperability between CAD systems. 27 years later, we can now see the mess that IGES is in. Over the years, irresponsible software vendors created their own “flavors” of the IGES file format, thereby defeating the very purpose of the “standard”. One look at Rhinoceros’ IGES export options dialog box says it all. You are asked to choose the type of IGES file you want to create. There are 60 types of IGES files!!
Years ago, I wrote an AutoCAD plug-in to import an IGES file called IGES Import for AutoCAD. I have issued numerous refunds to customers who complained that our plug-in “does not work”. In each and every case, the customer was trying to import a non-standard IGES file. I cannot stress enough the importance of maintaining the sanctity of a file format.
So coming back to Autodesk and DWG, if Autodesk makes the DWG file format specification public, is it possible that software vendors will make a mess out of it as well. Most probably, yes.
The argument that the designer should have control over DWG data does not appeal to me. Do you have control over the formula used by Coca-Cola? Is it necessary for you to know the formula for you to enjoy the drink? You pay for the drink and you drink it. By not knowing the formula, your drink does not become less enjoyable. However, if they did release the formula, you would get a bunch of “coke-a-likes” in the market. Would you let your child drink a coke-a-like? Probably yes, because you know that the FDA would not allow an unsafe product in the market. But who is playing the role of the FDA in the CAD industry?
People have reverse engineered the DWG format and have created libraries which are extensively used to read and write DWG files in a variety of CAD systems. I have myself used such libraries in my software and am happy to report that these libraries have not caused me or my customers major headaches. But what is the guarantee that things are going to stay that way? The people making these libraries are experienced professionals who have a pretty good sense of what needs to be done and how to go about doing it. But what happens when a programmer, who has hardly any experience in CAD Data Exchange, is given the DWG format specification asked to develop a DWG I/O module in limited time. I can smell disaster. I guess thats how IGES got so screwed up.
Autodesk has the DXF format which has already been abused. The main reason for its existence was to exchange data between AutoCAD and other CAD systems. I have seen so many horribly written DXF files. Recently a customer sent me a DXF file which had the words “Generated by ITEDO IsoDraw 4.00” in the header. This particular DXF file had a blank line after each “valid” line in the file – something so crazy, I couldn’t believe that someone actually wrote such a program. Needless to say, AutoCAD, SolidWorks, Rhinoceros and 3ds max could not read this file. I didn’t bother to check other CAD systems.
Moreover Autodesk is not making it easy either. Autodesk offers RealDWG, a library to read and write DWG files. But it is not free. In fact, for developers of small applications (where DWG support is not a main functionality), it turns out to be quite expensive. In any case, it is way more expensive than any of the reverse engineered libraries out there. Instead of making reverse engineering of the DWG format more and more difficult with each new version, Autodesk could simply give the RealDWG library for free. I did this with the OpenRP Initiative. I gave away a library and command line executable so that anyone, even end users with basic scripting knowledge, could add RP file support to their applications. I don’t think there will be anyone stupid enough to reverse engineer the RP file format. So I can be well assured that all RP files on this planet will essentially come from one authentic source – my software.
I dont know how much money Autodesk makes by licensing RealDWG. I wonder if it will be willing to forfeit the amount to give its dear customers much needed peace of mind… and, in the bargain, put the reverse engineers out of business.
Should Autodesk keep the DWG format a secret? Hell, yes!!
Should Autodesk give RealDWG away? It would be “Real” nice of them. I, for one, would certainly be happy.