SolidWorks Service Pack Woes

I have been writing about the ridiculous SolidWorks policy of not allowing non-subscription customers to download service packs (see “Proud SolidWorks Customers“). Devon Sowell was planning to interview Rich Welch on that issue and asked people for questions. I sent him mine. Rich is the VP of Customer Service at Dassault Systemes SolidWorks Corporation. There is a reason why I added the “Dassault Systemes” before “SolidWorks Corporation”. I think I will be doing that more often now. This is how the interview started.

WARNING! If you are a programmer, please be sure to put that coffee down before proceeding to read.

Devon: Deelip Menezes asked about separating bug fixes, service packs, and enhancements so customers could chose what type of SolidWorks Subscription Maintenance they wanted to pay for.

Rich: SolidWorks has looked at this issue several times and determined that based upon the amount of effort, Quality Assurance infrastructure, and the extreme high cost of implementation, it would ultimately result in higher fees to customers with the potential to introduce instability in the software and require more service pack releases. This is the opposite of what we are trying to accomplish.

Here is the thing. A bug is fixed by writing new code and/or editing existing code. An enhancement is added by adding new code and/or editing existing code. Each and every one of my SolidWorks add-ins is an enhancement because the new code is neatly tucked away into an add-in DLL talking to the main SolidWorks application via the API. Every time I fix a bug in my add-in DLL, I rebuild it, increment the DLL version and ship it to the customer. The installer takes care of the rest. And to do all of this I do not even have to touch the core SolidWorks code (obviously I do not have access to it). SolidWorks has access to their code, can do a far lot more and not be limited to working with the API only. SolidWorks has more than half a GB of object code stored in DLLs. The functionality of any software, not just one as complex as SolidWorks, needs to be organized into parts (basically DLL’s) so that it can be independently worked upon by different teams spread across the globe. That’s the whole freaking point of DLL’s to begin with – to make it modular so that new stuff can be added and existing stuff can be changed or tweaked easily and efficiently.

By the way, Autodesk splits up bug fixes and new functionality into Service Packs and Subscription Advantage Packs. And they do not charge customers extra for doing so. Each and every software company worth being called one and which builds software using the concept of DLL’s knows how to do this. This has absolutely nothing to do with costing more. This is just the software is made. Period.

Bottom line. This is bullshit.