The story behind the name CATENA¶
Firstly, I should clarify that CATENA is not an acronym. So CATENA can be written as Catena or catena. Catena literally means a chain of connected ideas or objects.
The story behind naming this package is actually very simple and maybe a little silly.
When I ventured into connectomics after two years of working on Magnetic Resonance Imaging at the Queen Square Institute of Neurology, UCL, UK, I was quite stunned by the fragmented software ecosystem in the connectomics world. Around the same time, I had the privilege of working on and with MONAI projects, which was just starting to grow into one of the most popular software ecosystems in healthcare imaging. The contrast was hard to ignore: there were so many good tools, algorithms, and packages for connectomics, but most lived in their own niche software environments.
However, a connectome, to me, meant not only that the core neurons and synapses were identified so that a connectivity matrix or a graph could be built, but also that we had other features identified such as cell-types, neurotransmitters at synaptic locations, and even mitochondria.
Existing software did all of these things, but never under one umbrella. Different groups optimized different parts, which meant that one had to first find which was the best model to do a given task and then learn its software dependencies. A common problem was also that many of these software packages were old and unmaintained; what you may have read in the paper could no longer be reproduced in code.
All of this led me to believe that I could create a package that, while very much standing on the shoulders of giants, gives users (connectome mappers) a one-stop link where they can explore different aspects of both mapping a core connectome and enriching the same connectome with further information. I wanted to bind or chain the popular tools (and even invent a few of my own) under one hood that I would later call Catena.
Within Catena, all software components still come with their own set of dependencies, often dockerized for ease of use and reproducibility. This ensures that each component can be tweaked and optimized independently, while still being part of the Catena ecosystem.