David Doria

442 points
User profile image.
Rensselaer, NY

I am currently working on a Ph.D. in Electrical Engineering at Rensselaer Polytechnic Institute. I work in the field of computer vision and image processing. My research deals with 3D data analysis, particularly from LiDAR scanners. I have benefited tremendously from the practices of open source and strive to continue to do my part to continue the give-and-take cycle!

Authored Comments

Very nice! As you mentioned, compiling the examples routinely is certainly critical.

The only design goal I've had that this technique does not meet is the ability for an average user to be able to add, update, or fix an example. Since these examples reside in the main repository, I'm assuming that only "developers" (those who have earned commit access) can touch them. I suppose there could be an argument for "only developers, who have demonstrated that they know best practices, etc, should be writing examples anyway." However, in my experience the people who write the most examples are "tweeners" - those who are very skilled at using the library, but not necessary interested in development, and therefore do not have commit access. By truly "crowdsourcing" the examples, it puts the burden more on the whole community and lets the developers keep watch without having to dedicate a lot of effort to writing examples.

I'm really glad to see other projects taking this seriously, thanks for the links Brad!

Brad,

That is a really great practice! After a quick Google search I didn't find the examples for QCA - can you post a link?

We have done this same cross-linking in the ITK project (see http://www.itk.org/Doxygen/html/classitk_1_1AddImageFilter.html for an example). There is a "Wiki Examples" section. We also link the other way - from the examples to the Doxygen: http://www.itk.org/Wiki/ITK/Examples#Trigonometric_Filters (the ITK Classes Demonstrated column).

We have a full system specifically for Example display and editing in the works. It is much more tailored to the job than a standard wiki. Stay tuned... !