[IGSTK-Developers] Building IGSTK community - Section IV
Ziv Yaniv
zivy at isis.imac.georgetown.edu
Wed May 23 13:57:16 EDT 2007
Andinet Enquobahrie wrote:
> Team,
>
> Attached is a draft for a short section on "Building IGSTK user
> community". This will be
> section IV of the JDI paper.
>
> Comments will be appreciated!
>
> thanks
>
> -Andinet
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> IGSTK-Developers mailing list
> IGSTK-Developers at public.kitware.com
> http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers
Andient,
The following are my comments on user community building.
I would divide the discussion into two parts, convincing users to adopt
IGSTK and retaining them.
1. User adoption of IGSTK:
a. We provide a large number of example applications. For many academic
users this is highly attractive, as they can focus on incorporating
their novel research into a fully functioning application. For example,
a novel registration algorithm can be easily incorporated into an
already existing application without the need for developing the UI or
visualization components.
b. The license for the toolkit is BSD-like, and is thus highly
attractive to commercial users as they can utilize the toolkit at no
cost to their company.
These two factors make the toolkit attractive both to academia and business.
We cannot make claims with regard to the IGSTK documentation process, at
least we shouldn't claim to have wonderful documentation:
c. The documentation is neither complete or sound (will probably talk
about this on the TCon).
d. Automated documentation generation is neither good nor bad, it is the
quality of the documentation that matters. You may end up with many
pages of documentation that contain no added value (unfortunately many
IGSTK pages), or even erroneous information, for example in
igstk::Transform. The documentation of SetRotation() and
SetTranslation() states:
"Internally the translational (rotational) part of the transform will be
set to zero."
The implementation doesn't do this. Run the following to see:
#include <igstkTransform.h>
int main(int argc, char *argv[])
{
igstk::RealTimeClock::Initialize();
igstk::Transform t;
igstk::Transform::VersorType versor;
igstk::Transform::VectorType translation;
//versor documentation states that it will be normalized,
so I can give these values
versor.Set(1,1,1,1);
translation[0] = 1;
translation[1] = 1;
translation[2] = 1;
std::cout<<t;
t.SetTranslation(translation,0.5,10);
std::cout<<"***************************\n";
std::cout<<t;
//translation should be [0,0,0] after this
t.SetRotation(versor,0.5,10);
std::cout<<"***************************\n";
std::cout<<t;
}
2. User retention:
a. User mailing list has recently been launched, with the development
team committed to timely responses to the user questions (I totaly
agree, Patrick and Luis are amazing in this respect).
b. Users are treated as co-developers directly influencing the
directions in which the toolkit evolves (SINTEF example).
Ziv
--
Ziv Yaniv, PhD., Research Assistant Professor
Imaging Science and Information Systems (ISIS) Center
Department of Radiology
Georgetown University Medical Center
2115 Wisconsin Avenue, Suite 603
Washington, DC, 20007,
Phone: +1-202-687-7286
Fax: +1-202-784-3479
email: zivy at isis.imac.georgetown.edu
web: http://isiswiki.georgetown.edu/zivy/
More information about the IGSTK-Developers
mailing list