Does speckle result in data loss/ Can I roundtrip with speckle?

I think Speckle looks extremely promising and is one of the core features that the AEC industry has been missing for a long while!

That being said, I was wondering whether speckle’s approach leads to data loss or conversion errors when switching between proprietary software? Especially because some elements might only exist in one software and not the other.

I think another closely related (but not quite the same) question is whether I can do roundtrips with speckle? Meaning can I go from software A to software B and back to software A without any loss of data?


1 Like

Hi @grub - thanks for the praise! We have a bit of a different philosophy here, that comes from way back during my research at UCL, where Speckle was born long time ago.

The long story short: communication is a social process, and it’s always lossy. Information and data are imbued with meaning when interpreted - and the act of interpretation necessarily means processing it into something the recipient can understand based on their context.

Hence, information, when communicated, is mutable - it changes as it moves. Nevertheless, Speckle’s aim is to facilitate meaningful and fast data exchange between various AEC software so that anyone can dial into the design process from the comfort of their tools.

So - yes, there will be conversion errors, and data conversions are lossy from A to B - but that doesn’t matter, as long as they are useful for coordination and communication purposes. It’s ultimately a new way of working - the single source of truth does reside in Speckle, its evolution is tracked and versioned, it can be decomposed and recomposed on a need by basis, and it can adapt to the application it will be brought in.

1 Like

Thanks for the quick answer! I guess that brings us to the philosophical question of what a meaningful data exchange is and who decides that :slight_smile:

As for the question of roundtripping, I would assume from your answer that the data in A would remain unchanged if untouched in B though right? So say I work in Revit for the architectural design, and then the electrical planner works in his proprietary software, without any changes to my architectural design - would my Revit design stay just as it was once he pushes his changes, even if he might have worked with a “lossy” version of my design on his end?

Just trying to rephrase the question a bit better, hope I’m being clear :slight_smile:

1 Like

As Speckle allows us to move away from file sharing, we can allow ourselves the freedom to think differently. It may be helpful to reconsider what the sharing model and methodology really need to be.

Share what is relevant, focused and useful. Receive, in turn, what you choose (encouraging collaborators to share in kind)

To your example, If you share only the bones of the project relevant to your electrical planner, and she/he, in return, shares only their new work, then this is the most straightforward method of avoiding conflict, being more nimble with iterations etc. Inevitably if they need your geometry for hosting conditions, then some of your original data will come back ‘over the fence’. Speckle connectors can do a good job of reconciling this.

There have been several models of sharing with individual streams across streams, branches and subbranches to allow for different forms of communication/sharing. It will be worth exploring what works for your team.

1 Like