banner
News center
Unparalleled expertise and mastery.

3D Printering: The Search For Better Search

Jul 29, 2023

There’s no question that a desktop 3D printer is at its most useful when it’s producing parts of your own design. After all, if you’ve got a machine that can produce physical objects to your exacting specifications, why not give it some? But even the most diligent CAD maven will occasionally defer to an existing design, as there’s no sense spending the time and effort creating their own model if a perfectly serviceable one is already available under an open source license.

But there’s a problem: finding these open source models is often more difficult than it should be. The fact of the matter is, the ecosystem for sharing 3D printable models is in a very sorry state. Thingiverse, the community’s de facto model repository, is antiquated and plagued with technical issues. Competitors such as Pinshape and YouMagine are certainly improvements on a technical level, but without the sheer number of models and designers that Thingiverse has, they’ve been unable to earn much mindshare. When people are looking to download 3D models, it stands to reason that the site with the most models will be the most popular.

It’s a situation that the community is going to have to address eventually. As it stands, it’s something of a minor miracle that Thingiverse still exists. Owned and operated by Makerbot, the company that once defined the desktop 3D printer but is today all but completely unknown in a market dominated by low-cost printers from the likes of Monoprice and Creality, it seems only a matter of time before the site finally goes dark. They say it’s unwise to put all of your eggs in one basket, and doubly so if the basket happens to be on fire.

So what will it take to get people to consider alternatives to Thingiverse before it’s too late? Obviously, snazzy modern web design isn’t enough to do it. Not if the underlying service operates on the same formula. To really make a dent in this space, you need a killer feature. Something that measurably improves the user experience of finding the 3D model you need in a sea of hundreds of thousands. You need to solve the search problem.

The problem with finding 3D models on the current crop of repositories is twofold: the search algorithms in use are not only exceptionally simplistic, but rely entirely on the person uploading the model to properly describe it. Anyone who’s ever suffered through the word scramble that’s often required to net any useful results on Thingiverse will immediately understand this problem, but if you’ve never experienced it first hand, here’s a perfect real-world example.

Recently, my brother asked me if I could print some wall hangers he could use to display his record collection. A simple enough object to knock together in OpenSCAD, but it also struck me as the sort of thing that had probably been done several times already by others in the community. So we’ll search for “record hanger” on Thingiverse:

Of the top four results, only two of them are actually what we’re looking for. You might be wondering how a set of gears or The Holy Hand Grenade of Antioch from Monty Python and the Holy Grail could possibly get top billing in such a search, but the answer is actually very simple. Clicking on those models we can see that the words “record” and “hanger” appear in their descriptions. Not in conjunction of course, or even so much as in the same sentence, but clearly the search engine is too dumb to notice. Of the thirteen results on Thingiverse, only four of them ended up being wall hangers for records.

Not a great result, but hardly atypical for the site. Any regular Thingiverse user will likely have a similar search horror story to recount. Still, it’s better than what Pinshape and YouMagine can muster. On those sites, the search term “record hanger” gives us precisely zero results at the time of this writing.

Are there really just four wall mounts for vinyl records between these three repositories? No, of course not. Fiddling with the search terms will coax out a few more results, and doubtless there will be others which remain hidden. It’s a frustrating and ineffective user experience; if finding what you’re looking for is that difficult, it might as well not exist.

Relying on user-supplied text descriptions clearly isn’t good enough. What’s needed is a search engine that can actually analyze and qualify 3D models. Something smart enough to do three dimensional pattern recognition, and identify correlations between similar designs. It’s a difficult problem, to be sure. But one that’s actively being worked on.

A company called Physna, short for Physical DNA, is working on a geometric search engine specifically designed for this purpose. Billed as the “Google for 3D models”, Physna converts models into a wireframe and uses proprietary algorithms to identify patterns. Once the object has been indexed in the database, users can search for fundamental elements like the size and shape of holes in it. Users can also upload a CAD file and have Physna search for models based on their similarity to the provided sample.

Right now Physna is being advertised as a tool for manufacturers to prevent duplicate work: with the ability to find finished objects that are similar to the one they’re working on, designers can potentially pull something from the internal part database that they can modify rather than having to create something from scratch. As this is essentially the same thing desktop 3D printer owners are doing when they search a site like Thingiverse or YouMagine, it’s not much of a stretch to think this sort of technology could be brought into the DIY and consumer space in the future.

So let’s say our hypothetical model repository implements geometric search or some other must-have feature, there’s still the issue of starting from zero when your competitors have had years to accumulate content. How do you make up for that shortfall? According to some in the community, the state of Thingiverse has gotten to the point that we should just strip content from the site en masse and upload it elsewhere. After all, most of it is released under licenses that allow for redistribution.

A recent thread on the 3D printing subreddit discussed an ongoing project to scrape Thingiverse for metadata and models specifically so the community could use it to jumpstart a new website. In addition to the actual STL files, the scraper collects the model’s title, author, and license. Anything that’s released under a sufficiently permissive license could, at least in theory, be uploaded to another site without the explicit consent of the original author. Of the nearly 1.5 million objects that have currently been extracted from Thingiverse, 96% of them are licensed under some variant of Creative Commons that allows for unlimited redistribution.

To be clear, copying Thingiverse content for the purposes of starting a competing website is specifically forbidden in the site’s Terms of Service. But when the creators of said content intended it to be freely available under an open license, and users are at their wit’s end, it seems like the community might not be against breaking a few rules for the greater good.