Replicator hardware is pretty cool, but man it would be so cool to work on the software. How to best represent huge assemblies of atoms so the file size is small and easy to store/quick to transmit. How to pick the best file format during a scan. Foods probably benefit from a different compression algorithm than engine parts; we don’t want proteins misfolding because the atom placements got averaged out into a “flawless” lattice.
How to adjust that format when someone wants to edit a pattern. People usually aren’t looking to pluck individual atoms from one pile to another, and depending on the object polygons might not be the easiest primitives either (someone editing a garment wouldn’t want to nudge a bunch of tiny triangles to adjust thread tension). CAD primitives work in some cases but they’re mostly designed around subtractive manufacturing. Even 3D printing tools are optimized for fewer materials and layer-by-layer construction.
How to facilitate someone “zooming in” to mess with the crystal structure of a material, then going back to working on large macro-scale shapes. How many in-between levels of fidelity to simulate and store between those zoom levels. How to handle materials that have a smooth gradient from one material to another, so there’s no sharp dividing line where we can assume there’s a bunch of identical molecules.
How many background calculations to run. In addition to the basic physics, do we predict failure points? Replicator energy consumption? Can someone zip bomb a replicator by replicating something that seems simple but actually consumes an ever-increasing amount of power?
Do we scan for compatibility with other items already in the replicator library? Speaking of which, how do we organize the library for efficient search? Are there Federation citizens whose full-time calling is to be tag wranglers for replicator patterns?
