All-In-One Code Framework Survey Result in September

At the beginning of September, we launched All-In-One Code Framework Customer Polling Survey. 62 customers filled out the survey in September, and provided lots of constructive suggestions. Thanks to all of you who shared your invaluable feedback! The project can become better and better because of you. Please continue to input your comments.

Here is a summary of feedback that we collected in September, and the project team's follow-up action.

------------------------

The top five areas that the customers expect to see more code samples:

  • ASP.NET
  • .NET – native Interop
  • Data Platform (ADO.NET, Entity Framework, etc)
  • Windows Forms
  • Silverlight

Feedback of the organization of code samples

"I guess the organizing of the source codes into relevant groups would help better in getting started with a new technology."

In the current All-In-One Code Framework, we do not organize code samples in folders of different technologies (e.g. \Silverlight\<all silverlight samples>). All samples are parellelly in the Visual Studio 2008 and Visual Studio 2010 folders. 

\Visual Studio 2010
                All-In-One Windows Shell Samples.sln      The solution file for all Windows Shell samples
                CppShellExtInfotipHandler.sln
                CSShellExtInfotipHandler.sln
                \Debug                                                                All samples output to this folder in the Debug build
                \Release                                                             All samples output to this folder in the Release build
                \CppShellExtInfotipHandler
                    FileInfotipExt.h
                    ReadMe.txt
                \CSShellExtInfotipHandler
                    FileInfotipExt.cs
                    ReadMe.txt

The reasons for this directory layout are that

  • It avoids the trouble caused by cross-tech samples. Some samples may belong to multiple techs. If we have sub-folders of techs, it’s difficult to decide where to place those cross-tech samples. It is bad to duplicate the sample in the sub-folders of different techs.
  • The layout makes it possible to redirect all samples’ output (exe/dll) to a uniform folder (Debug/Release). This facilitates the tests and mutual references of samples.

The above directory layout can be regarded as the "physical layout" of the code samples. We try to group the code samples by technology in "logical layout". You can find a VS solution file named "All-In-One <Tech Name> Samples.sln" for each technology. The future releases of the sample browser will also display samples by technology.

Do you think that this sample organization makes sense?

Feedback of the discoverability of the code samples

"Have a web page when I can ""search"" the samples"

This is a golden idea! I'd like to take this opportunity to introduce our vision of the project, in which there is a similar sample search idea.

The project team is going to start a very interesting initiative to help developers search and use the code samples more easily. The team plans to move the centralized code samples to the cloud, provide a code search and sample download web service, and integrate the service with Visual Studio through a Visual Studio add-in. In this way, developers can instantly search code in IDE, and download samples on demand, instead of downloading the entire package. 

Do you like this idea? Please let us know your thoughts by leaving a message in the Comments.

Feedback of the project release

"Rather than downloading, installing, and deleting language samples whch I care nothing about; why not offer the downloads by specific language, C#, C++, VB. And if I already have the and All-in-one browser installed, why not offer just the newest or updated samples, again by language, for download. I always delete superfluous files."

I think that the vision in the above picture may address this concern. It would allow you to download samples on demand, instead of downloading the entire package every time. Implementing the vision would cost some months. As a short-term solution, we will provide language-specific download packages from the next release.

Feedback of the sample browser

We received some crash reports of the sample browser. For example, the application may crash with the 'Object reference not set to an instance of the object' exception. Thanks for the reports! We are aware of these problems now. The team is heads-down and working hard on the second version of the browser.

Feedback of the code sample documentations

"Specify more clear and succint the necessary steps into achieving some goal."

One of our goals is to provide detailed and clear sample documentations. Please specifically tell us which sample should improve its documentation, and we will improve it in no time.

Other Feedback

Some customers feedback that there are a few incomplete code samples in the release. We are sorry about it. These code samples were checked in by mistake, and will be removed before the next release of the project.

"You might consider including a testing harness and/or test cases built in to the examples to promote consistent and thourogh testing (of course using MS tools). "

Sounds a great idea! As this would impact all existing code samples, I would like to first learn whether many people are expecting this change. Please share your thoughts in the Comments.

"if we can, we would like to receive a email introduce the project created soon and we like when there's a new project is created. just a little like codeproject but we can only send the selected type project by the custom when that type has been created a new one."

Nice idea! In the long run, we can provide newsletter of code samples. In the short term, I'm thinking about twittering or blogging each new sample. Customers can be notified by following the twitter or by registering the blog RSS feed. Is it fine to you?