With the new Siemens Symbia SPECT/CT cameras comes yet another programming language I need to learn.
Nuclear medicine, unlike other imaging modalities, generally requires a good deal of technologist intervention to process, analyze and present the images. In an academic hospital setting, a lot of customized analysis and processing usually needs to be done. In the past, to handle these tasks most companies have provided their own proprietary programming/macro facility which generally don't look much like conventional programming languages. Guess who gets to learn all those programming/macro environments and develop all those custom programs.
The first one I learned was the PIXIE macro language used on Picker's Odyssey platform. Completely proprietary and bearing absolutely no resemblance to any programming language I had encountered at that point. Probably based on something, but what I couldn't say. Keywords were delimited using a strange .keyword. syntax. Not to hard to use, but cumbersome when it came to creating displays for the data.
GE's Xeleris platform uses Visual Basic with a custom library to provide access to the image data and perform various operations. A little more standard, easier to use, but somewhat sparsely documented. Still somewhat cumbersome to use when creating displays for the data, but at least it's BASIC.
The Syngo platform that runs the Symbia cameras uses IDL for programming, which means I have to learn IDL and how it integrates with Siemens' Syngo platform.
The good thing is that companies have dumped the proprietary programming/macro facilities and deploying more common development environments. I just wish they would all go with one language. Create their own libraries to deal with the images, but stick with one language to make it easier on folks like me who have to work in multi-vendor environments.
I don't really care what language they pick. Just use the same one. That way all I need to learn are the libraries and objects each company uses rather than having to learn completely separate languages for each gamma camera I have to work with. And I'd also be able to develop one program that would work on all the cameras instead of having to maintain 2 or 3 versions of the same program. Oh, wouldn't that be just marvelous!
Now, while TPTB figure out how and when they're going to get me a license for IDL, I guess I'll start playing with GDL (good thing I'm using Linux now) and figuring out what books to add to my library to learn IDL from.