Deelip.com

Thursday, January 22, 2009

ObjectDRX

Fact 1: ObjectARX is a SDK developed by Autodesk and is used to build plug-ins for AutoCAD.
Fact 2: DRX is a SDK developed by the Open Design Alliance and is used to build plug-ins for DWGdirect hosted applications, which may or may not be AutoCAD clones.
Fact 3: BRX is an ObjectARX source compatible SDK developed by Bricsys and is used to build plug-ins for Bricscad by recompiling the source code of an AutoCAD plug-in.
Fact 4: Argon is an another ObjectARX source compatible SDK developed by Graebert and is still in Alpha.
Fact 5: ObjectDRX is something I recently came across and have not yet figured out.

On January 6th, ZWSOFT, a Chinese IntelliCAD developer, released ZWCAD 2009. Their press release mentioned an "improved DRX programming interface, similar to ARX in AutoCAD". Listed below are sections of the ZWCAD 2009 product documentation (verbatim) that refer to something called ObjectDRX.

"ObjectDRX is a ZWCAD platform re-development environment. So long as the user follows ObjectDRX the API interface, class and the agreement, can develop own command, and uses in the ZWCAD platform. These re-development command and in the ZWCAD platform provides the command in uses and in the efficiency has not distinguished."

So I guess now you know why I have not figured it out yet. I will get to the "agreement" mentiond here later, but let's consider another statement.

"ObjectDRX in the environment configuration, only needs to contain three head files, can carry on the development. But ObjectARX needs to contain the different head file and the LIB according to the characteristic. Therefore, the ObjectDRX simple configuration, is very suitable beginner to use."

The plot thickens. A comparison with Autodesk's ObjectARX gives an indication that ObjectDRX may be another ObjectARX source compatible SDK. Now let's see the "OpenDRX Development Agreement" that was mentioned ealier.

Guide Agreement
1. Suppose user has certain C++ development experience;
2. Suppose user has certain understanding to ZWCAD;
3. Suppose user understands ZWCAD the platform’s SDS pattern development;
4. In the guide the demonstration code and the example use the vc2003.net compilation, but had not defined that the re-development the language environment are vc2003.net.

Development Agreement
1. Suppose user understands ObjectARX development method;
2. Suppose user understanding dynamic link library performance development method;
3. Suppose user is familiar with the windows application program development method.


That's it. That's the entire agreement. I am not sure who is agreeing to whom and what is being agree to here. Anyways, lets dig a bit deeper. In a section titled "ObjectDRX Application Basics" I see the following statement.

"Should better have the ARX re-development experiences, but this is not necessarily."

Then there are numerous references to the ODA's DRX SDK and sample code which leads me to believe that the ObjectDRX SDK is actually a SDK that wraps around the ODA's DRX SDK. Whether it is actually source compatible with ObjectARX is not clear, but judging from what I managed to understand from this literature, it certainly seems that way.

Long story short, since the ODA does not appear to be in the mood to make their DRX SDK source compatible to Autodesk's ObjectARX SDK, companies like Bricsys, Graebert and now ZWCAD are going ahead and doing it themselves. I don't believe it it will be very difficult for the ODA to make DRX source compatible with ObjectARX, but judging by the kind of litigating mood that Autodesk's is in right now, the ODA may be doing the wise thing. However, a recent press release from Bricsys announcing 34 AutoCAD plug-ins that were successfully ported to Bricscad using the BRX SDK seems to suggests that their efforts are finally paying off.

With DoubleCAD around the corner, IntelliCAD 7 further down the road and Bricsys, Graebert and ZWSOFT going to lengths to get the attention AutoCAD plug-in developers, it looks like the fight for the AutoCAD pie is heating up. It may very well be that this global economic meltdown is the last straw for some AutoCAD customers, unless AutoCAD 2010 gives them good enough reason to stay on. Or unless these new AutoCAD clones and their plug-ins fail to shirk off the "unreliable" and "unstable" tags that Autodesk marketing has put on them, rightly or wrongly. In any case, I don't think the "cheap" tag will work in Autodesk's favor this time around.

Survey of CAD/PLM Users

A while ago I mentioned that Cyon Research and Merrill Lynch were conducting a survey on the CAD/PLM industry. Today they published their findings.

They posed 24 questions on a variety of subjects, including user classification by industry and position, specific vendor product usage, purchasing criteria, and spending intentions. They received responses from more than 200 users in a
variety of sectors, including automotive, aerospace, industrial, AEC and other markets. Interestingly a fifth of the participants fell in the CEO/CIO/CTO category.

The report is titled "Cyon Research 2008 Survey of CAD/PLM Users" and I have a copy of it, but for personal use only. If you want a copy you can purchase it from Cyon Research for $1,995.

If your job responsibilities include taking decisions on how to sell software or hardware to CAD/PLM users I strongly urge you to read this report.

Wednesday, January 21, 2009

A Hundred And Fifty

Today SYCODE released two add-ins for SpaceClaim: DWG Import for SpaceClaim and DXF Import for SpaceClaim. As the names suggest, these add-ins let SpaceClaim import DWG and DXF files. But wait... SpaceClaim already has the ability to read DWG/DXF files. In fact, SpaceClaim goes a step further than other CAD software and gives the user the option of using Autodesk's authentic RealDWG technology or the reverse engineered libraries offered by the Open Design Alliance to read DWG/DXF files.

But for all that both these technologies are worth, neither can convert 3D meshes in a DWG or DXF file into editable solid objects inside SpaceClaim. The add-ins we released today remove this limitation. Not only do they import PolyFace Mesh, Polygon Mesh and 3D Face objects from a DWG/DXF files into SpaceClaim, they even convert these meshes into solids which can be edited using SpaceClaim's fantastic push-pull technology.

Full press release here.

With the release of these two add-ins SYCODE has crossed a milestone of sorts. We now offer more than 150 products - 151 to be precise. So going by my previous logic, SYCODE reinforces its position as being the Largest Producer of CAD Software on the Planet.

It's about bloody time someone gave me a lifetime achievement award, or I will continue to drive up that number.

Tuesday, January 20, 2009

PTC World Conference

I just registered for the PTC World Conference to be held on February 10 at Mumbai where Jim Heppelmann, the Executive Vice President, Chief Product Officer and Member of the Board of Directors of PTC is going to "review PTC's exciting strategy to deepen its product development solutions".

There is a view in the CAD space that PTC is an aged company with aged technology struggling to keep up with the new kids on the block. More like an old dog trying new tricks. I am guilty of sharing that view and must shamefully admit that I do not have good enough reasons to back that view. I guess I am just listenning to what others are saying and not taking the trouble to conduct my due diligence and come to my own conclusions. I intend to change that.

So I guess this means you are going to see a lot more of PTC on this blog. Bouquets or brickbats - time will tell.

Monday, January 19, 2009

First ODA World Conference

The Open Design Alliance is organizing its first World Conference at Leiden in the Netherlands from April 27th to 29th. I already got my invite and hope to attend, possibly break journey in Holland on my way back to India from COFES 2009 .

Hopefully this annual event will change the way the industry views the ODA. To understand the preceeding sentence you may need to read this.

Press release here.

Thursday, January 15, 2009

They Mess Up, I Pay

I think I now know the secret to infinite wealth, or at least a part of it. A Microsoft product that I use started giving me problems. While searching for a fix I found this message on their web site.

"A supported hotfix is now available from Microsoft ...(snip)... If you are not severely affected by this problem, we recommend that you wait for the next Microsoft Visual Studio 2005 service pack that contains this hotfix. To resolve this problem immediately, contact Microsoft Customer Support Services to obtain the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, visit the following Microsoft Web site...(snip)"

I could not download the hotfix on that page or anywhere else. So if I understand this correctly, the hotfix is available at no cost when it gets added to a service pack, which may come out months from now, but I need to pay for it (or rather for the support call) if I want to fix the problem immediately.

When it suits itself Microsoft goes ahead and makes Windows automatically download a hotfix, install it and even reboot my computer. And here they cannot give me a link to download the hotfix and fix the problem myself. I need to cough up the dough to fix a problem they created or wait for months for them to hand it to me for free.

As a software developer I am disgusted at this kind of behaviour. As long as software is written by humans, there will always be bugs and goof-ups. The least that a developer can do is take accept responsibility, come up with a solution and offer it to the user for free.

Ironically, as I type this I can see the familiar Windows icon of a yellow shield in my task bar. Hovering the mouse over it shows me the message: "Updates are ready for your computer. Click here to install these updates."

Wednesday, January 14, 2009

Dale Fugier

Interviews with CEO's and people in the upper strata of management are commonly used as part of the larger marketing plan of spreading the word about a company, which is a good thing. But I believe that as far as software products go, the people that matter most are the people who write the software. The programmers are the unsung heroes who sit in the back room do the wonderful things that the marketing people rave about.

Apart from being a business owner I am also a programmer. I will always be one till the day I die or retire, whichever comes earlier. I hope the latter comes first. Over time I intend to interview a few programmers (in no particular order) with who I have have the chance to interact and who are key players in shaping CAD software as we know it.

The first interview in this series is with Dale Fugier, a programmer at Robert McNeel and Associates. I have been interacting with Dale for many years now, mostly on the Rhino SDK newsgroup, where he faithfuly helps third party developers write plug-ins for Rhino. Incidently, at McNeel, very few employees have a formal titles or positions. "We wear many hats", said Dale when I asked him what is position was in the company.

What is your academic background? What positions did you hold before joining McNeel?
I spent my undergraduate days at Pacific Lutheran University in Tacoma, Washington, where I studied Computer Science and Mathematics. From there, I spent four years working as a Software Engineer for the Boeing’s Defense and Space before coming to Robert McNeel & Associates in 1990.

How did you get into CAD software development? When and where did it all start?
While with Boeing, I wrote several file translators for now-extinct graphics products. I was also involved in supporting engineers who used CAD products, which was how I first met Bob McNeel.

Do you still code? What are your main job responsibilities at McNeel?
Sure do. I am one of a dozen or so developers who type on the core Rhino product. I also work on RhinoScript; a scripting tool for Rhino, and the Zoo; a network license manager. And, I support our 3rd party development partners who use the Rhino SDK and the openNURBS toolkit.

What’s with the animal names? Who comes up with them?
For a worldwide product, a good product name is very difficult to find. We have a checklist that is used when selecting a new product name:
1. No trademark problems anywhere in the world.

2. Web addresses available.
3. Works in most languages without translation.
4. Easy to pronounce and spell in all languages.
5. Sounds about the same in all languages.
6. Not a disgusting or confusing meaning in some language.
7. Google does not return something disgusting or confusing.
8. Easy to remember.
9. Related to our other product names.
10. Fun!
Rhino was the name of the development project before there as a formal name. The formal name we had selected turn out to have a trademark problem and by the time we got that sorted out, everyone already knew the product a Rhino, so we didn’t change it. Our other product names are based on #9.

Do Rhinos appear in your dreams?
The Rhinos I dream about have increased functionality, improved efficiency, and make our customers more productive. The job description for everybody here is to figure out what works best for the customer, and then deliver it.

Why does McNeel still develop plug-ins for Autodesk products? Tell us something about them?
We started as an AutoCAD dealer and developer in 1985. We had nearly 20 AutoCAD-based products at one point, but as Autodesk added new features and purchased many of the third-party developers we gradually abandonned most of them. AccuRender and DOSLib (free) are the only ones left. Since the AccuRender engine is used in many other products it is not a big deal to keep it going for AutoCAD. DOSLib is a hobby project.

Like SYCODE, McNeel supports plug-ins for versions of AutoCAD more than a decade old? What’s your reason for that?
The development was done years ago. There is little or no cost related to making those versions available.

McNeel offers AutoCAD training. Have you guys gone nuts?
We were an AutoCAD dealer up until a few years ago. When Autodesk dropped us as a reseller there was not anyone offering basic AutoCAD classes at a reasonable price, so we continued to offer basic AutoCAD classes.

Why hasn’t the look of rhino3d.com changed? Will it ever?
Who knows? We have more than 3,000 requests for improvements to Rhino and very few related to the web site. We always have to make a tradeoff between spending resources on marketing and resources on product development. So far, we have focused all of our available resources on development and let the users, dealers, and developers handle the sales and marketing… mostly by word of mouth. We do not have any plans to change our focus from a development to sales and marketing.

Unlike other CAD systems, the Rhino about box and documentation lacks copyright notices of third party software. Are you paranoid about using third party libraries?
Not really. It is mostly an issue of cost verses being able to bring new functionality that is not available in other products at our price point. Driving our costs up just to bring the same functionality found in the other products does not seem like a good idea.

I believe McNeel should be given the Nobel Prize for the openNURBS Initiative. Which category would you recommend?
Is “no brainer” one of the categories? The inability to accurately transfer geometry between applications is a primary factor stifling designers' use of 3-D. There is no point in a designer finishing a 3-D model if it is just going to be rebuilt for product engineering, again for analysis, and yet again for tooling. The decision to provide a free, open source toolkit to read and write our file format was an easy one.

Dale sent me an image which he claims "kind of looks like" him.

Wednesday, January 07, 2009

Print3D supports DWG and DXF files

Autodesk claims that there are billions of DWG files and I believe them. That's why over at Print3D we decided to add support for DWG and DXF file to our free plug-ins and standalone software. Details here.

Tuesday, January 06, 2009

The SketchUp Big Bang

At SYCODE we have decided to start 2009 with a bang - a very big bang. Today we released 32 products. Yes, you read that right - thirty two products on a single day. I wonder if this is some kind of a record.

These 32 products are SketchUp data exchange plug-ins. They comprise of 13 file import and export plug-ins for Google SketchUp (the free version as well as the Professional version) and 19 SKP file import and export plug-ins for a variety of CAD systems - Adobe Acrobat, Alibre Design, AutoCAD, IntelliCAD, Inventor, IRONCAD, INOVATE, Solid Edge, SolidWorks and SpaceClaim.

Although the free version of Google SketchUp has a sizable user base, only a fraction of CAD vendors have taken the trouble of adding SKP read/write support to their software. These 32 plug-ins will allow SketchUp users and users of other CAD systems to easily share their 3D data in ways they never could before.

You can read the full press release here.

This brings the total number of products offered by SYCODE to a staggering 140. Maintaining and supporting 140 products is slowly eating into our sanity. For example, take a single AutoCAD plug-in product. At SYCODE we support AutoCAD 2000 through to 2009 and are busy figuring out 2010. We need to build a plug-in DLL for each version of AutoCAD. That's 10 DLLs per AutoCAD plug-in product. We also need to build separate plug-in DLLs for the 64 bit versions of AutoCAD 2008, 2009 and 2010. So for a single AutoCAD plug-in product that supports AutoCAD 2000 through to 2010 (32 bit and 64 bit), we are looking at 13 plug-in DLLs. And we have 22 AutoCAD plug-ins. So that makes it 286 plug-in DLLs just for AutoCAD. If I start a rebuild of just the AutoCAD plug-in DLLs on my computer, I have to find something else to do in office for at least an hour and a half.

I have often been asked why our plug-ins cost so much. 195 Euros for a plug-in may not be that much when you factor in the cost and developing, testing, maintaining and supporting all those plug-in DLLs. Moreover, each plug-in product comes with detailed help and tutorials which need to be updated regularly. And we provide free lifetime support.

So why do we support versions of software which are a decade old? Well, quite simply because there still exist users of decade old software. Some of you may find this hard to believe but only a fraction of our customers run our plug-ins with the latest version of their CAD system. Actually, we get quite a good sense of when a new version of a CAD software is actually being adopted.

Although it is not common, we still have AutoCAD customers who still use our plug-ins with AutoCAD 2000. And we have been supporting them completely free of cost for all these years, and we will continue to do so till it is technically possible. Sure we would like them to upgrade so that we can charge them for upgrades and make more money off them. But we are not going to force them to upgrade by not supporting them or penalizing them in other ways. If an AutoCAD user still wants to use a plug-in that he paid us for in full a decade ago, we will support him free of cost till kingdom come, even though Autodesk extended its big fat middle finger to him years ago.

And the same goes for the other CAD vendors as well.