Getting started with Developer's Version

Hi there,

I’ve been working with CP for a few months now and I am eagerly looking forward to learning the Developer’s Version. Other than writing some pretty cool PIPELINES for CP, I have no experience with programming.

I’ve looked at the “CellProfiler Help: DeveloperInfo” in the CP manual. This began to make sense once I opened up individual Modules. I appreciated the detail in the explanation at the beginnings of each module. Great!

Then I tried to open one of my PIPELINES from my Compiled Version 7522 or Version 7737 for 32bit XP (courtesy of Kate Madden who fixed a couple of bugs for me). I would like to be able to convert Kate’s changes in the modified modules in 7737 to the developer’s version. The Matlab program did not recognize them as .m files and couldn’t open them. It also wouldn’t open the Modules in the Compiled version because they are .txt files.

  1. Please explain what the relationship is between the individual modules and the PIPELINES,

  2. Please explain the relationship between the programs in the Compiled Version and the Developer’s Version. I

  3. I am working on a 64 bit computer for the Developer’s Version (not sure whether XP or Vista, but I can find out). Would that make a difference in being able to open my 32 bit compiled versions?

  4. How would I convert my 32 bit PIPELINES to the Developer’s version on the 64 bit computer?

My goal is to be able to string a few of my pipelines together so they will work in series (Run Multiple Pipelines) without stopping for confirmation about the file names before moving to the next pipeline. Since my ultimate goal would be to run the whole job in a batch on a cluster on the 64 bit computer, I need to have it running smoothly through all of the pipelines without stopping to prompt me for an answer before moving on.

  1. Can you give me any direction on how to get started with the Developer’s Version? Can you point me to an overview of how everything fits together, including how Subversion fits in? Are there instructions somewhere where I can figure out how to fix individual steps? Can you recommend a Matlab code book that would help with the image analysis package.

Thanks,
Jan

Hi Jan,

It is a little confusing going from Compiled>Developer’s version. The compiled version does not have any .m files associated with it- just an executable, the .txt files and of course all those Matlab libraries (the MCR) that make installing CP so confusing. Pipelines are saved as .mat files, and contain the structure array ‘handles’, the collection of measurements and settings that tell CellProfiler how to run. So you can open up a pipeline in Matlab and see what you did- what settings you used and measurements you took- but not what code was run (the version of each module, however, is stored in the .mat file).

In the Developer’s version, every module really is an .m file. So if you make a change to a module, then save it, and start CellProfiler again, the change will take effect in that module. The compiled version cannot be edited, because it has been compiled from source code into an executable (so there is no source code to edit).

The ‘64-bit’ vs ‘32-bit’ distinction involves the processor which was used to compile the program. It’s irrelevant for Developer’s version, since source code isn’t compiled. However, you won’t be able to run your 32-bit compiled version on a 64-bit machine.

Subversion (subversion.tigris.org) is version control software that we use to track revisions in CellProfiler. Information about how to access our repository can be found here: cellprofiler.org/developers.htm. Once you have subversion on your computer, you can get the source code to any revision, and compile it yourself in Matlab for use on a cluster of computers. Please note there is definitely a distinction between ‘RunMultiplePipelines’ (which will run every .mat file it finds in every subdirectory below the level you point it to) and ‘batch processing’ (which sends off groups of jobs to different computers in “batches” to be processed at once).

-Kate