Kernel and browser
I've come across a couple of Achilles' heels for PTC regarding Onshape. The two weaknesses are inherent to what makes Onshape Onshape.
Kernel Incompatibility. At the kernel level, Onshape is incompatible with PTC's CAD software. Onshape runs Parasolid (licensed from an arch-competitor to PTC, Siemens), while PTC has its own Granite geometric modeling kernel. I wonder how well Onshape and Creo work together; I have not heard PTC address this problem.
The drawback to any translation is, of course, that data can be lost or, worse, mangled, and so it helps when two CAD programs share at least the same kernel.
Onshape uses the same Parasolid kernel as Solidworks, one reason being that Onshape was designed pre-PTC to take customers from Solidworks. Even so, sharing kernels is not nirvana: importing Solidworks models into Onshape can be a surprisingly difficult process, as was demonstrated at Onshape's user conference last month.
Onshape and Creo do have import-export capabilities, ones that even preexisted PTC's acquisition of Onshape. Pro/E-Creo 2000i thru v7 files are the list for Onshape imports, while a neutral file format like STEP is available to copy models from Onshape to Creo.
The problem becomes significant now that PTC wants Creo run on the same Atlas-cloud platform as Onshape. Users will expect transparent data exchange between all apps on Atlas. How to fix the problem:
- One solution may be that PTC stores cloudCreo data in the same MongoDB database format as Onshape, and then cloudCreo acts as the translator for desktop Creo.
- Another solution could be that PTC replaces Parasolid with Granite; CAD companies have done that kind of kernel swapping before.
- A third solution is for PTC to eliminate Onshape. A second CAD program that's incompatible makes little sense.
Browser Incompatibility. During the Onshape user conference, PTC execs revealed that staying abreast of changes to Web browsers is key to Onshape's future survival. A new release of a significant Web browser could introduce incompatibilities that prevent Onshape from running properly, at least for a time. To avoid surprises, PTC runs Onshape on betas of browsers.
Onshape is, nevertheless, at the mercy of directions in browser development. For instance, Apple is not keen on making its homegrown Safari Web browser work particularly well, as that would allow third-party developers to avoid Apple's App Store by instead running Webapps in Safari.
This article on Apple details how the problem could affect Onshape: "In almost every area, Apple's low-quality implementation of features from [Apple's own] WebKit [browser engine] already requires workarounds." A Google researcher notes that "Safari is now something like 1,000 APIs behind Chrome, double the gap measured in 2016...".
Worse, Apple requires that all third-party Web browsers be built on top of Safari, even Google Chrome, Microsoft Edge, and Mozilla Firefox. While some argue that Google is, with this research, slamming Apple because it wants to run its Chrome engine as spyware on Apple hardware, the point is still valid: Apple is fearful of apps that could run well in Safari; so it makes its browser lackluster.
(Onshape runs as native apps on Android and iOS.)