ESTIMATED READ: 8-10 MIN.

ShapeDiver in Stories

September 19th, 2023 by Mathieu Huard

An honest account of the mistakes and moments of clarity that led ShapeDiver where it is today, and set our path for the years to come.

shapediver team

Prologue - Searching for a former clarity

ShapeDiver had to put out multiple fires over the past year, often simultaneously. Covid was tough, yes, but we had this excuse no more. It was time to ask more profound questions. Every single decision, every feature we had worked on, and every short and long-term goal were put to the test. In the process, I recalled many crucial times for the company since its inception, and how they led us to where we are now. 

I tell some of these stories here. I attempt to trace our restless path through the prism of my experience. And behold, as words give shape to stories, the apparent chaos starts to resemble a more comforting dialectic. We made mistakes and got stuck in corners, no doubt. But we patiently carved our way to renewed focus and clarity. 

These stories are not all comfortable to share. I hope they provide minor insights about the industry. At best, they should clarify the focus of ShapeDiver as a company and how we position ourselves in a space that becomes more saturated daily. At the very least, you will find some reasonably entertaining bites below. Undoubtedly, some loveable albeit incorrect turns of phrases from a non-native writer who violently refuses any assistance from ChatGPT.

Finding a place - Are we not cute?

Every two years, the Shape To Fabrication conference in London gathers a large panel of architects, engineers, designers, and artists around technology-focused innovations in the AEC field and beyond. Unofficially, a large chunk of the audience is well aware that much of the content will revolve around McNeel, including the latest developments in Rhinoceros, Grasshopper, and how companies and designers use these tools to push the industry forward. This bothers precisely no one: after all, McNeel has proven over and over again its commitment to the community. It did so through pricing, yes, but also by genuinely lending a listening ear to its users while providing vital support to developers. McNeel might be the cute, indie version of other not-to-be-named CAD behemoths, but the company is also reliable and, in many cases, the best at what it is doing.

During this year's edition of the event, Chuck Driesler, creator of the much-beloved nodepen, presented the following slide:

nodepen shapediver cute

Arguably the funniest presentation at STF 2023

Nodepen is a beautiful passion project where Chuck used Rhino Compute to recreate a stripped-down version of Grasshopper online. It works great! As he shared his experience at the conference, Chuck pointed out that Nodepen should not try to become a "cute, indie version of ShapeDiver." Cue the audience's laughs, which all seemed to agree that those qualificatives certainly do not apply to ShapeDiver. As for me, I retracted my head like a turtle in its shell and attempted to make myself as close to invisible as possible for the rest of the session.

That day, I realized we had successfully presented our company as a professional, relevant presence in the AEC community. Sure, I still meet everyday users of Rhino and Grasshopper who have no idea what ShapeDiver is, but I accepted then that we are, at least, part of the picture. At the same time, the slide and the audience's reactions also made it clear that the image we had projected in the process did not quite correspond to our culture and that our communication so far had perhaps hurt as much as it had helped. 

When did that happen? Initially, we eagerly and candidly shared our progress, and we could feel the community's excitement. At which point did we stop sharing and start projecting instead? Did our small team of nerds, eager to learn and create something useful, lose its way to become unapproachable and steer away curious and innovative community members? As it turns out from one of our earliest stories, that might have been an issue from the start. 

It's all in the name already.

Logos interrupted - How vision shifted faster than communication

Depending on how long you have been familiar with ShapeDiver, there is a good chance that you have read, said, and written the name of the company incorrectly in the not-so-distant past. You might still be doing it.

shapediverThere are many, many more…

The first time someone called us ShapeDriver, we all found it funny. A few months down the line, it could be borderline irritating. Several years later, it became evidence: ShapeDriver is probably a better name. At least one that makes more sense.

After ShapeDiver became an official company, we spent several weeks applying for public funding from the city of Vienna, and we were successful. Since we all kept working full-time in our day jobs, we could use the money to fund external help, mainly in the areas where we lacked expertise. We quickly took the route of working with a branding agency.

Naturally, our vision was not fully formed, and it was way too early to work on branding. Sure, the idea to let designers "dive in a sea of shapes" was poetic, but thinking of ShapeDiver as a content platform (the "youtube for parametric design") proved to be a mistake, at least at the time. And we might have gotten too literal with the metaphor…

shapediver sea of shapesThe first ShapeDiver landing page. A virtual ocean full of shapes.


We kept our goals and efforts lean as a team, but communication did not keep up with our learnings. After a couple of years, all that remained from our sea of shapes were a cute logo and a name no one could understand anymore. People were not diving, but they sure felt that they could be driving shapes.

The name of a company has arguably little importance, but the discrepancy between our activities and the external communication we produced extended further. We acted as a product configurator company when we were already powering the backend of international design companies through big-scale projects. We boasted about the UI of our platform when many of our customers were already using ShapeDiver entirely through APIs. We looked like a pure browser-based product when data was already flowing between ShapeDiver and multiple desktop clients and cloud applications.

After his presentation, I went to have a quick chat with Chuck during the STF conference. Chuck shared his appreciation for ShapeDiver, which I believe was genuine, but quickly showed some confusion as well. "Oh, and what was that with the Illustrator connection? Wow, I did not see this one coming." I fear that, at the time, many more community members were feeling the same way.

The irony, of course, is that the desktop client for Adobe Illustrator is very much in line with our current focus and vision. We will come back to this topic in one of the stories below. But after years of exploration and diverse experiences with the Grasshopper community, what had become clear to us had not yet made its way to the outside world. Opacity had not been a major issue as long as the field of parametric cloud computation was relatively empty. However, the status quo was about to change significantly, and with it, a need to cut some weeds and make our path visible to the outside world.

Grasshoppers in the cloud - A swarm, but not a plague.


In 2016, my colleague Alex and I first discussed our plans online with the McNeel team. Bob himself honoured us with his presence, along with many of the key developers who turned Rhino into the essential CAD software it is today.

Our official goal was to clear licensing issues: core-hour billing was still far in the future (folks, we are talking about Rhino 5!). Moreover, there was no known attempt at running Rhinoceros remotely yet. We had, however, a second goal, perhaps not as critical to our way forward but close to our hearts. Like insecure teenagers, we were eager to get a stamp of approval and, god (i.e Bob) allowing, maybe a few words of praise for our project.

As you might have guessed, we reached our main goal without trouble: If not for Rhino's flexible licensing terms and their explicit approval of the usage we had in mind, I would likely not be telling this story. It would be an understatement to say that we are deeply grateful for the initial and continuous support we received all these years.

As for our second goal, we still recall this meeting with a smile and remember the sweat pearling down our chins. We looked at each other with the shadow of a doubt: either we did not sell our vision very well, or we had missed something big. Thankfully, we are just not very good salesmen.

We decommissioned our first Rhino 5 server system during summer 2023. No tears were shed, although this was likely the first and last cloud infrastructure based on this legacy version of Rhino. Our Rhino 6 backend is still very much in activity, and to our knowledge, it is also unique in its category. Rhino 7, however, is another story.


Since McNeel rolled out Rhino Compute, our hunch from years ago was confirmed on an unprecedented scale: many users in the AEC industry and beyond are craving a Rhino/Grasshopper backend, from internal applications to innovative products such as Hypar, Packhunt, Viktor and many more. In 2020, ShapeDiver merged with Swarm, the CORE studio attempt at a marketplace for cloud parametric apps (but this story is for another day). In different places, talented developers get started with their own Grasshopper-based configurator offerings.

Seeing the industry pick up on the intuition we nurtured and expanded over the years was (and is) exciting! At the same time, most of these applications have a clear focus and target users in mind, prompting us to position ourselves more precisely. The path forward came organically when we took the time to refocus on our strengths as a team. All we had to do was agree on the obvious. Ultimately, what had we spent years building, iterating, and perfecting?

 

The most efficient swarm of Grasshoppers.

Finding clarity - The rise of the definitive Grasshopper backend


ShapeDiver is eight years old. Eight years. Eight. Mind you, as I repeat this mantra, I am not solely attempting to remember the absence of white hair in my beard. I am also subtly challenging McNeel historians to a fun arithmetics problem: Can you guess how many years our team spent building a Grasshopper-based cloud infrastructure before the release of Rhino Compute? The answer lies at the bottom of this article, along with a coupon code for a drink of your choice.


nove 25Nove25 often collaborate with renowned international brands

A few years ago, our client Nove25, a successful Italian jewelry company, sent us an exciting email: they were launching a collaboration with Inter Milan, the prestigious football club. They wanted to ensure our servers would hold down the fort on the launch day. We confidently replied and kept an eye on their system that Tuesday morning. Everything went well for about an hour until our servers went into full panic: Nove had shared the news on Instagram, and tens of thousands of people had opened the product link, all triggering sessions to Grasshopper models on our servers simultaneously. The team quickly came out of its collective foetal position and went to work with three goals. 

First, fix the issue. That took about thirty minutes.

Second, understand the issue. All was clear by the end of the same day.

Third, make sure it never happens again. We are still working on this one.

I am exaggerating, of course. We then updated our infrastructure to handle this particular issue, but many more challenges were to come, and many more crashes—years of learning by failing, understanding, and improving again. I have already told several stories explaining how often and quickly our focus shifted throughout the years. However, those eight years have shown one clear line of focus: We have consistently worked at thinking, implementing, and improving the optimal architecture to run Grasshopper in the cloud, regardless of the end applications our users needed. 

Since then, the hunger for parametric backends has never dried up, and we are firmly convinced that it will keep growing! Moreover, we love to see how, throughout the years, our users have successfully built many applications that we could not even imagine ahead of time. It speaks volumes to the strength of a backend that can accommodate such diverse contexts as efficient product configurators for end users and architectural optioneering tools that require very long computation times.

Here is where our effort to improve our communication kicks in. We recently wrote a detailed account of what ShapeDiver and Rhino Compute are and how they provide different tools to get started on a cloud application based on Grasshopper. We want to bring this expertise not only through our product but also through clear messaging and documentation that benefits the whole community.

By now, our vision for the definitive Grasshopper backend is our primary drive. However, the perfect infrastructure only goes a long way if it does not provide helpful, flexible interfaces where our users need them. 

We talked about the brains. Let's have a look at the muscles.

Portals and bridges - If you don't come to Grasshopper, 

Grasshopper will come to you.

When Mathias and Alex had the initial idea for ShapeDiver, they had a precise application in mind: taking 3D printing platforms to the next level by letting them propose parametric products. We had a potential partner then, but soon also started pitching to the big players in the field. From those platforms, the reaction was unanimous. Or rather, the lack thereof... Today, most major 3D printing marketplaces have yet to move on from their outdated catalog of STL files towards online offerings that match the flexibility of their manufacturing technology; what is the point in printing over and over again the same object with a machine that could, at no additional cost, print infinite variations of the same?

In that regard, it is with the bittersweet taste of missed opportunities, topped with a sprinkle of nostalgia, that I dug out our 2017 announcement of "The Shapeways Bridge"—a revolutionary way to customize designs in ShapeDiver and seamlessly get them printed on the famous platform. You can still read this archeological artefact on the ShapeDiver blog in all its glory.

shapeways shapediver bridgeThe (deprecated) Shapeways components of the ShapeDiver plugin


The Shapeways bridge was retired years ago, first and foremost because of an unreliable API that forced us to update our plugin components constantly. Still, in hindsight, this was the first time we tried to interface ShapeDiver models conveniently with another user-facing product through a seamless, file-less data exchange. Shapeways might have been too much of a stretch (although I still believe they would benefit from parametric 3D-printed models). But we did not need to look so far. And we needed to make the experience much, much better.

The bridge metaphor had not worked the first time. That might be why we used the code name Stargate for our new attempt. This time, it would be really seamless. As a matter of fact, our first released desktop clients allow the exchange of data with models on the ShapeDiver platform with virtually no additional interface and no further preparation. This is already possible between ShapeDiver and Rhino, as well as Adobe Illustrator. In parallel, we worked with the Autodesk Forma team on another integration to their new AI-driven planning software.

-You can watch our joint webinar with Autodesk Forma on our youtube channel.


You might be wondering what comes next. Does ShapeDiver plan to build portals for an ever-growing number of desktop software clients? Well... the sky is the limit. At the moment, we are focusing on optimal strategies to reach design teams.

On the one hand, in the process of implementing those new features, we have carefully maintained and released extensive developer tools that allow our users to quickly and painlessly implement their own desktop clients.

On the other hand, we are actively working on a webhook approach that, as a first use case, will permit a direct connection with Speckle, allowing our users to include automation steps in their Speckle streams and enjoy the multiple connectors that the outstanding Speckle team has already made available.

Indeed, building portals and bridges has clearly shown how important it is that our toolbox integrates smoothly with the fast-moving ecosystem of tools used by the AEC community. In that spirit, beyond the tools we already provide, we are always waiting to hear from you and your needs. 

And, of course, we are here to help you get started.

An implementation partner - The joys of losing focus, a little

In the years when we worked almost exclusively on product configurators, focus was not our forte. It might or might not have been because, as a team, we were struggling to make ends meet only with subscription-based revenue. As a consequence, no customer request was out of line, and we spent much time learning and working on projects that would prove to be distractions in the long run. This dialectical process, however, came with many valuable and occasionally crucial insights.

In 2017, I worked on a furniture configurator for Munson Furniture, a company based in California. They had already full-fledged Grasshopper files with the whole parametric logic of their table and shelf collections. However, Paul Munson had a precise vision and was not entirely happy with the cloud processing step of the configurator. He wanted real-time interactions. I worked several weeks implementing a configurator, which, though based on geometry coming from a Grasshopper definition, ended up following logical and geometrical deformations that were purely generated and rendered in the web browser. I was quite proud of the result.

After we released the configurator, we shared it profusely with the community and got much positive feedback. Andrew Heumann, who had kept an eye on our adventure from early on, contacted me on Twitter with genuine curiosity. "Is this still running Grasshopper in the back?" It was not. It could not. Still, my insecure teen self could finally revel in a sweet feeling of validation.

Munson Furniture waited about a year before giving up the enhanced configurator and switching to a traditional, ShapeDiver-based backend. The benefits of creating and uploading parametric definitions alone and plugging them seamlessly into a website far outweighed the user experience bonus of a more reactive configurator. The Grasshopper-powered configurator still runs to this day.

It will likely not be a surprise that we no longer spend time developing custom configurators. But we would never say it was a mistake. The numerous learnings we reaped shaped our path for years to come. While hard-coded WebGL configurators are no longer a topic we are considering, providing development services is still an integral part of our processes, at least in those areas where we are eager to learn more and integrate those learnings into our products. Naturally, one of the integration services we offer covers everything related to a cloud infrastructure running Rhinoceros and Grasshopper, whether ShapeDiver as a backend is involved... or not.

People are always slightly surprised to hear that ShapeDiver does not rely on Rhino Compute. This is the consequence of carefully weighed decisions regarding the architecture of our software, its performance, and the use cases we want to cover. Naturally, that also means we have built strong expertise using Rhino Compute in the process, exploring its many advantages and the challenges of a Rhino Compute implementation. Alex posts regularly about the topic. Follow him if this is relevant for you! McNeel provides many tools and tips to get started. Still, there is too little information yet that gets computational design professionals from building a POC to turning their application into a full-fledged professional tool for their teams and beyond.

Epilogue - Where stories give way to a shameless plug


It is unclear whether anyone needed a deep dive into ShapeDiver's history as much as I did. I might have gotten a little carried away. However, those mistakes and moments of clarity reveal a coherent narrative under the chaotic path that led us to where we are. They should answer many of the questions we frequently receive.

In the meanwhile, I ran out of stories and started fearing that the more practical aspects of my message might have gotten lost in some of the twists and turns we went through. Before releasing the bravest readers who made it this far, let me have a go at a more down-to-earth picture of where ShapeDiver is today.

First, we are more than ever committed to building the definitive Grasshopper backend, an infrastructure ready to power any use case one can imagine in a reliable, scalable and secure way. 

Second, we are striving to provide diverse and flexible ways to interface with other environments, from web applications and websites to desktop software. A Grasshopper-based cloud system's automation and generative power only make sense if data flows freely and conveniently to and from the servers where the magic happens.

Finally, we look forward to sharing our expertise and learning through new projects, whether directly based on our technology or featuring new challenges we still need to solve. 

We are ready to make many more mistakes. We will just try and stick to the kind we can learn from.

Rhino Compute was launched along Rhino 7 in November 2020, 5 years after ShapeDiver was founded. I don't really have drink coupons, but if you come to Vienna and shoot me a message on LinkedIn, I will definitely get you this free drink, as well as a chat that might start off awkward but soon turn out to be somewhat enjoyable. Like my stories?