SubMain - CodeIt.Right The First Time!


Support Community for SubMain Products
 Home Products Services Download Purchase Support
in Search
Home Forums Blogs Tutorials/CIR Tutorials/GD Downloads
Welcome to SubMain Community Sign in | Join | Help

SubMain News

What's in the shop for GhostDoc?

SubMain Director of Marketing Wendy Cavens interviewed Serge Baranovsky and Roland Weigelt about the recent announcement of SubMain's acquisition of GhostDoc, which the company will continue to offer as a free product.

Roland Weigelt is working as a Software Developer at Comma Soft AG in Bonn, Germany. In his spare time he is the leader of the local .NET user group "Bonn-to-Code.Net" (pun intended) and also enjoys writing software as a hobby. Among his hobby projects is GhostDoc, one of the most popular tools for .NET developers.

Serge Baranovsky is President of SubMain. He has extensive programming experience and is a recognized community leader and founder of vbCity Developer Community. Serge is a Microsoft MVP and ASP Insider.

"To start with, please explain what is GhostDoc?"
"GhostDoc is a Visual Studio extension that generates XML documentation comments for methods and properties based on their type, parameters, name, and other contextual information. "
"What is also great about GhostDoc that when generating documentation for class derived from a base class or for interface implementation (e.g. .NET Framework or your custom framework), GhostDoc will use the documentation that Microsoft or the framework vendor has already written for the base class or interface."
"Roland, GhostDoc regularly made it on the lists of essential .NET developer tools, and was listed as #2 on "10 Must-Have Add-Ins" in MSDN Magazine. Please describe how you came up with the idea."
"I've always stressed high importance of writing good API documentation for my code starting in my C programming years as a student in the early 90's. For me this is also a check for the quality of a method - if I'm not able to explain in a few sentences what it does, there may be something wrong with the method to begin with.

With .NET and its long identifier naming style I often felt that writing this kind of documentation was a bit dull. Many times, in order to write an actually helpful piece of additional information, I first had to repeat in the summary almost exactly what the name of the method or property was already saying. One day in November 2003 I was so tired with documenting Boolean properties ("Gets or sets a value indicating whether ...") that I wrote a macro to help me with some of the repetitive tasks.

What followed were a few half-hearted false starts to turn this into a more general tool, until the announcement of Roy Osherove's Visual Studio Add-in competition in spring 2004 motivated me to turn my experiments into a fully-featured add-in that would be useful to others. In the end the hard work paid off; GhostDoc won the competition. Even though the feature set of GhostDoc 1.0 was limited (for instance, re-using existing documentation didn't make it until version 1.3), it turned out to be a success almost immediately."
"What has your experience been since?"
"Working on GhostDoc has always been both rewarding and frustrating. Visual Studio Extensibility in general is not without problems and even though things got a bit better with each version of Visual Studio, there were many roadblocks that took a lot of time to circumvent.

On the other hand, it's always amazing at conferences or user group meetings when people recognize my name, come up to me and tell me that GhostDoc is one of the first tools they install on a new developer machine. And last but not least I'm a GhostDoc user myself so I benefit from this tool everyday! "
"How did this deal come about?"
"Our CodeIt.Right product has a feature that enforces XML Comments where required and automatically adds a comment stub. Some time ago I demoed this feature to Scott Hanselman and he suggested it would be great to integrate this with GhostDoc and have the comment content generated based on the name. So I contacted Roland, we met at the last PDC to discuss the integration options; one thing led to another and I offered to buy GhostDoc. That seemed to me like an easy way to integrate! "
"The offer from SubMain came at a crucial point of time when I had to make a decision on the future development of GhostDoc. Other activities besides GhostDoc were already eating up my spare time, and it was clear that going open source wouldn't magically reduce my workload immediately.

Having full-time developers take GhostDoc to the next level seemed like the best solution. Serge and I were on the same page that a free-of-charge version of GhostDoc should be available in the future. From my experience of working with the people at SubMain in the recent weeks I can say that this was the right decision."
"Serge, what are the plans of how GhostDoc will evolve?"
"The future of GhostDoc starts today - we just released a new version of the tool with improved user setup experience, added support for Visual Studio 2010 Beta 1 and full support for Visual Basic. We also added IntelliComment feature to our CodeIt.Right product based on the GhostDoc algorithm - the version of this tool is also available today.

As for the future, you know, the usual product life stuff - bug fixing, feature enhancements. We have our own ideas and also are encouraging the community to give us feedback. "
"Roland, will you continue to be involved with GhostDoc?"
"I will continue using GhostDoc both at work and at home every day; and I will definitely keep track of what the guys at SubMain are up to; and I will do what every GhostDoc user should do - swamp them with feature requests! "
"Over the last few weeks of the transition our team has enjoyed working with Roland and we look forward to his continued feedback. We also hope that the community at large will do so as well."
Published Monday, June 1, 2009 12:25 AM by Serge B. (SubMain)
Filed under: ,



Community Blogs said:

Today is the day that I'm finally able to speak about why things have been pretty quiet lately regarding

June 1, 2009 1:18 AM

Jason N. Gaylord's Blog said:

If you are looking to follow this series, be sure to subscribe to my RSS feed at http://feeds.jasongaylord

June 2, 2009 2:37 PM

ASPInsiders said:

If you are looking to follow this series, be sure to subscribe to my RSS feed at

June 2, 2009 3:52 PM
Anonymous comments are disabled
Home |  Products |  Services |  Download |  Purchase |  Support |  Community |  About Us |