With the alpha release and the promise of a 6 week rolling release cycle, Rust is finally looking like a reasonable language to pour time into. While I’m mostly an application developer, Rust excites me as a potential language to use to implement libraries where I need greater control of the resource envelope and implementation details. My work on a perceptual image hashing system could potentially benefit from developing my custom concurrent hashing system in Rust and providing system binaries for the application. This is currently the most resource intensive part of ImageTools v2 and could benefit the most from limiting and optimizing how images are interacted with. Full Java/Scala objects to represent images are wasteful and bloat the heap as they’re loaded for only the time that they’re being processed. Once we’re done generating hashes and thumbnails, we only ever need to reference the original images when the user requests the original image. Outside of that all comparisons and logic focuses on the generated perceptual hashes.