[software] Donor.com software review

Josh Berkus josh at agliodbs.com
Thu Oct 16 18:18:30 UTC 2008


Folks,

Donor.com called me to review their source code.  I have access to their 
CVS now; if someone else wants access (please!) contact me and I'll 
arrange it.

Overall, DonorWare seems to be what you'd expect in a relatively clean 
15-year-old mature application.  They have an elaborate set of C 
binaries comprising a few hundred files, and on top of that support an 
extensive set of Perl libraries which comprise the user interface.

Currently, interaction between the Perl code and the C code is the 
brute-force approach of executing shell commands and parsing the output. 
    Conversion to .so is on their roadmap, but hasn't started yet.

All business logic and storage is in the C libraries; presentation and 
user interaction in Perl.

The Perl code is reasonably well structured and documented from what I 
could see and relies extensively on POE.  They could use some additional 
POD code documentation (existing pretty much only covers parameters) but 
the code is in considerably more approachable shape than most internal 
software I've seen.

The C code, unfortunately, shows its age more; most binaries are named 
thinks like "DD0100", and purpose can only be ascertained by reading the 
file headers.  On the upside, the maintainer have included extensive 
file headers and comments.  Overall, I'd guess that the C code would 
require a few weeks of study to really understand it, but that such 
could be done without active guidance.

Next steps are to attempt to build & install DonorWare myself.  I'd like 
to see a few other people do this as well.

Regarding other stuff, the move towards OSS proceeds apace; Mike expects 
their board to make a final decision in favor on December 18th. Getting 
an accounting module up and running is more dependant on MichaelDexter's 
efforts towards finding funding for the open-sourcing; if funded, Mike 
claims that they could modernize and deploy the accounting module within 
5 months.

--Josh Berkus




More information about the Foundations-software mailing list