This project is read-only.

Project Adoption Help?

Apr 9, 2013 at 11:23 PM
Edited Apr 9, 2013 at 11:24 PM
I've been working on getting the CodePlex site ready for our VS2012 release, which we expect this month. I am hoping to re-invigorate the community that we may have disheartened and lost because of the long delay to the project for this next release. Its heartbreaking for us to have had this delay, and we are hoping to recover from it. The goal of the recent effort has been to make things very easy for anyone to get involved with the project both users and new contributors.

From what I am learning from various sources about guiding a project like this one is that its is absolutely -critical- for the continued development and longevity of the project to make some key scenarios as easy as possible. Such as: making it easy to install the software, making it easy to contribute or update to the software, making people feel welcome, making documentation accessible and things like that. Doing things that makes acceptance and involvement in the project much easier, and that empowers everyone to get and keep the project ticking over. My primary role now.

If you have been following the activity on the project for a while you may have seen much activity around the wiki pages in various areas over the last few months.

Hopefully, we are now at the stage where we may have all the main pieces in place. It is now a question of testing those out on real humans and ensuring they are of a high enough quality that encourages involvement in the project. For that I really need your help!

I need help in determining of the project site (this site) is:
  1. Welcoming, and looking alove and vibrant
  2. If it answers the main questions that a new visitor to the site would need to answer to dig further.
  3. If installing the software is an easy and guided process
  4. If a new 'developer' can easily discover how to aquire the software, build it easily and submit a patch.
  5. What people's initial feelings are coming to the site.
  6. Any issues you recognize with getting people more interested and involved.
More importantly, I need to know how we are going to make it better. What is missing, what could be done differently, and how.

Can you help?
Apr 16, 2013 at 7:31 AM

I already know what the project is about and have some hands-on experience with it, but I tried to put myself in the position from which I originally started. That is, as someone that needs to decide if this is something to invest time in. So I took a quick scan of the site from that perspective. Overall, the content is excellent. I think the most important questions are answered quickly: what is it about, are there examples, how quickly can I get started, is there documentation when I need it, etc. In some places it is clear quite some effort went into making it as accessible as possible (e.g. I love the images on the Getting Started page).

Some notes:
  • Don't hide the documentation. It really should be hosted on the site, browsable and searchable. I don't like it that I am redirected to something I should install or download something. Remember, I am not looking in the documentation to find a specific answer but to gauge the quality of it to decide if I want to use NuPattern.
  • There should be a good Hello World example. Like I said, I love the Getting Started page but the point should be made more clearly that it is easy to make your team adopt your best practices. A good example could be simply to create a canned project template (that includes a reference to the StyleCop NuGet package for example) bundled with a test project (referring to xUnit and Moq NuGet packages). If you can convice the reader that making that is very easy, adoption should become easier.
  • There is too much text on the main page. Most people who browse webpages don't really read them ( so you have to be prepared for that. Move the text to a separate page and link to it. More pictures. Good structure, though.
I will provide more feedback if the 2012 release is available, and I will keep notes when installing and using it. Do you have a pre-release already available perhaps?

Apr 16, 2013 at 10:10 PM
Steven thanks very much for this. This kind of feedback is incredibly valuable to the success of the project. it is very welcomed.

I will action your recommendations immediately.

Just a quick question on your first point. I think you are referring to the part where the wiki docs state that the 'documentation for the product' is installed by downloading and installing the extension - correct? At this point in time, and without some clever tricks, I am not sure we can take the generated *.mht files we have for the documentation and host them on the wiki, there are too many pages to do manually (at least as individual pages)! We have posted the PDF's for the full documentation on that page (it should be linked), which is searchable. I agree that it's not ideal at all at this stage, and is there as a work around.
How can we make this experience better in the short term? One ideal is to expand our web site and host the full documentaiton there as HTML pages (I think we can easily generate HTML docs from MHT docs). But we have not set that facility up yet. We have a new feature that should help with this in the future also. Do we have any other ideas how to tackle this problem?

On your second point, do you mean a good example of a real basic pattern toolkit for developers, that shows them how to create a new project and accompanying test project that already gets them started with some NuGet packages? Wrap that VS solution in a zip file and post it on that page. Or walk them through creating it step by step themselves? What would work best?

You can find a pre-release version of NuPattern for VS2012 in the branch, but it is about to be updated in a very significant way, so we are steering people clear of it for the moment. We should have a better pre-release very shortly.

Thanks again for putting in the time into this. I have promoted you to Editor of the site, so please feel free to make changes on the project site as you see fit.

Apr 18, 2013 at 5:37 AM
Actually, now that we have the code contribution from Microsoft, I am a little swamped right now for the next few days working on the VS2012 release.
If anyone has some time, would you mind helping out and actioning Steven's suggestions above?
Let me know if you need anything from me.

much appreciated
Apr 25, 2013 at 1:18 PM
Sorry for the late reply. As much as it pains me, I currently do not have a whole lot of time to do the edits myself. I know that is everybody's excuse but I have to be realistic.

I do want to reply to your comments above:
  • Regarding the documentation, that was indeed my point. I understand it is something we'll have to live with for a while. Searchable HTML (also accessible by search engines) would be ideal. If you get stuck building a pattern you want to google it and find the right page in the documentation.
  • About the example: the point you want to get across is that with relatively little effort, you can get some useful automation going. A walkthrough they can read and think ''yeah, I could do that myself" would accomplish that. It just has to be something you can really use. The Getting Started section already does a good job for people who've already decided to give it a try. I think a section (as "close" to the main page as possible) should be devoted to people who are still gauging whether they think it is worthwhile. It should show an idea (make projects in best practices format available), its execution (some screenshots of how to model it, and import the project template) and finally its use (create a new project and see it complies with the best practices).
May 1, 2013 at 4:30 AM
Steven, can you give some input on what that toolkit would do that is impactful enough?
Are we talking about just a set of screenshots that walk you thorugh doing it, or an actual solution containing the toolkit?
May 2, 2013 at 12:31 AM
It is critical we move fast here.

I am thinking that we should post on the home page a short video (from the NuPattern YouTube channel?) that demonstrates to the first time visitor what we mean by toolktis and what NuPattern does. I am specifically targeting the first time viewer of the project who knows nothing more than the project name, they may have heard from someone else. It is vital they leave the site with an idea of what NuPattern is roughly about, rather then giving up on finding out more about it becuase of what they read in text.

We have been after such an asset for many years but we have always been unable to agree on what domain the toolkit should demonstrate that would make the point for the widest audience. As any specific domain is not going to appeal to everyone, and a too general domain will apeal to no one. NuPattern is also about specific domains no doubt, but we should be able to at least explain what the technology is about to a wider audience.

We created the MVCPAT toolkit as an example of a common specific domain that some developers would appreciate, and we plan to create others like the WIXPAT, a NUGETPAT, and even a POWERSHELLPAT toolkit etc. But that work to create those toolkits is more than we can achieve in the short term, besides which those toolkits need to grow their own communities, let alone demonstrate in 2-3 mins.

I feel at least that, at this juncture, so soon after the VS2012 release of NuPattern that we are going to get a increased number of eyes on the project, and that it is our best chance to attract as many people to the project as possible. After these few short days/weeks, interest in the new shiny VS extension will settle down again.
I also feel that to capture that initial audience, we need a video to be more effective (not just screenshots) to capture the initial interest in NuPattern.
The objectives of the video would be:
  • To be short and sweet
  • To show what NuPattern is about, and that it is a different capability that what everyone has seen to date
  • To demonstrate what we mean by toolkits, and the kinds of things they can do, and how easy they are to work with.
  • Avoid any domain stickyness, but appeal to the widest audience.
So, here is one idea:
What about a 2-3min edited video that shows someone introducing NuPattern and what it does as a teaser.
That presenter shows creating a new 'Pattern Toolkit' project in VS2012, and creating a simple pattern model and the following features:
  • Unfolding a (prepared) project template using a TLP on the pattern element.
  • Generating with (prepared) text template some kind of coding artifact in the project from above, for every element instance, with some very simple properties on the element that are projected into the generated artifact.
  • Adding a command to the pattern element that builds the project in VS, that is invoked when an arbitrary property changes.
  • Creating a collection that responds to drag and drop. So when a specific code file from the project is dropped there from Solution Explorer, it creates a bound element.
  • Provide a context menu on a the code element that shows a message box with a value in the dropped file.
  • Add automation that changes a value in an app.config file, based on the value of an arbitrary property on the pattern element.
  • (prepared) basic guidance workflow for the toolkit that is displaed when an instance of the toolkit is created.
After demonstrating the higlights of building of this toolkit (1-2mins), the presenter goes on to demonstarting how the toolkit is build and run (1min), and shows off the various automation features in VS. All the time explaining that this is what NuPattern is about, and how easy it is to do such things.
Of course, the toolkit addresses no specific domain, it does some general stuff in VS, but it should leave the viewer thinking what a toolkit looks like, the kinds of things it can do. At least they have a better clue as to that NuPattern and toolkits are about. And that it about integrating automation into solution development.

May 2, 2013 at 1:27 AM

100% agreed on the simple demo to do!

Not so concerned about momentum, it just doesn't happen automatically because you ship. And it should actually build up slowly


May 3, 2013 at 2:28 AM
Hey Guys,

I've spent the last two days putting together a demo like the one described above.
It is recorded in Camtasia, and it is edited now to show the details above.
I don't yet have a voiceover describing what we see in the demo, and that is the next step.
I am looking for volunteers to volunteer to do the voiceover for the video. I just dont rate my voice that highly anymore.

Can anyone step forward, and work with me on getting this shipped?
May 3, 2013 at 3:18 AM
Edited May 3, 2013 at 4:00 AM
Video (no audio) is posted here right now:
May 3, 2013 at 5:33 AM
doesn't work ;)


Daniel Cazzulino

May 3, 2013 at 5:38 AM
This is the proper link:

Now, unless you have been doing real talking explaining what you're doing as you were doing, there's no chance an after the fact script will fit with such a pace. The first couple minutes seemed WAY too fast!


Daniel Cazzulino

May 3, 2013 at 10:51 AM
Yes, I would need to work with whomever steps up, to explain the script I followed.
I am not expecting someone to do it cold.

The context of this video is super important to set correctly at the start.
It is meant to demonstrate what toolkits are about, not a specific toolkit domain, and not to provide any useful toolkit that anyone could really use. Just to give a sense of what we are talking about with NuPattern and building your own tooling.

I know this would be difficult to see right now without audio, but let me know if you think we can improve the demo.
May 3, 2013 at 11:17 AM
I would love to help you with this. My only problem is a chronic lack of time. I will try to arrange a Skype session soon so you can confirm my voice is OK. :-)

I do think however that 15 minutes is too long. A video that is shown on the front page should be max 5 minutes. Also not everybody is comfortable watching video (for example at work), so a page that makes the same point using screenshots would also be very useful.

May 3, 2013 at 11:57 AM
Great feedback, thanks Steven.
Lets work to make improvements to get somethign that is impactful to first timers.
May 5, 2013 at 10:02 AM
Edited May 5, 2013 at 10:04 AM
I am going to give it a couple more days, if no one wants to do the voiceover for this video I can volunteer to do it, and post the video on the front page until we have something better.
My feeling is that: something is better than nothing at this stage, until we either have a better (shorter) video or more toolkits to reference, or somethign elsethat gives folks a quick idea about what it is we are talkign about with NuPattern.
Let me know if there is any disagreement there and we can fix.
May 5, 2013 at 12:40 PM
Here is the script I have created for the video.!/view.aspx?cid=248AA7E961C2CAD8&resid=248AA7E961C2CAD8%21395&app=Word

This is in my own words, and how I might narrate the video if I read from paper, but by no means implies anyone has to use these words or points.
I was actually quite hesitant to provide a script because I would expect anyone signing up for this activity would want to say things their own way. So this is simply provided for guidance on what points could be talked about.
May 5, 2013 at 12:42 PM
Oh, and the raw footage and produced camtasia files are in this location (along side the document):
May 10, 2013 at 3:28 AM
Alright, no problem. I have now narrated the video and posted it on the home page. Problem solved.
May 10, 2013 at 3:40 AM
new video is here:
May 10, 2013 at 11:22 AM
I just watched it and the quality is very high. Well done! No problems with your voice either. :-)

I found the main value of the video is that it is so inspiring. It shows several scenarios that are quite cool and that get you excited about all the things that are possible. However, it is more targeted at someone like me (a beginning pattern builder) than a new visitor to the site. Remember, I'm already sold on the idea and willing to invest time to investigate it. Someone who visits the site out of curiosity needs to be addressed differently. I'll try to post a video of what I mean.

The next step is to have very short, bite-sized videos of specific features. Your video could be split into several of such bites:
  • how to invoke a visual studio command
  • how to use a variable property
  • how to create guidance
Etc, etc.

May 10, 2013 at 11:59 AM
thanks Steven,

Perhaps these discussions have some ideas on what else we need in the tutorial videos: and

Looking very much forward to your video, this will be very cool! :)
May 10, 2013 at 2:34 PM
I created my video and it's....not terrible. Please let me know what you think: . I tried to upload it to Youtube but it didn't accept my credentials, probably because I have two-factor auth turned on.

Bear in mind that I am new to creating screencasts. It is much harder than I expected. I also need a better microphone. :-(

Anyway, as you'll see it has a different approach than your video. I'm curious what you think of it.

May 11, 2013 at 2:01 AM
Hey Steven,

This is a great effort. In terms of the content, it work well. Don't worry too much about the audio, it is a little 'tinny' but it does the job.
I would not expect to create a real fancy video on your first go at it :) It is really hard to do, right. I'd admire your courage just in taking the action to give it a go, so good on you for doing that.
There are many tricks to learn to make videos really effective at making the points you want to make, and to do that in a short time frame goal requires a lot of post-production work in getting timings and framings perfect.

It is extremely challenging to talk and use the mouse and keyboard in a video at the same time, unless you have it pre-scripted in detail, and can remember every step in a take. That can work in a live presentation becuase you have a connection with an audience, but not so well in a screencast when you are talking to a screen yourself. So, one tip here is to record the video the first time through while you talk out loud to yourself (which gives good verbal timings), but dont use that audio - you can make mistakes and repeat actions. Next you trim out the mistakes on the timeline. Then narrate the video playback and record your voice this time. That way, you can focus on what you say and emphasize your action points better.
Or, you can get someone else to drive the mouse and keyboard while you narrate at the same time, but again this requires a coordinated script and lots of rehersals.

I think the big thing that the video could benefit the most from - is zooming. It will always be hard for viewers to see tiny details on full screen desktop shots, especially in a recorded VS session, which is why its better to zoom and pan as your mouse moves around the screen, and use highlighting effects so the viewer does not lose the mouse. And the predominantly empty whitespace in the center of VS gets a little mundane to watch while the mouse is buzzing around away on one corner of the screen.
Most people are going to view videos like this at about 640x400 size embedded window on a web page, and at that size they wont be able to read any text in a fullscreen VS window. And unless you produce the video in HD, even at fullscreen SD the playback will be very fuzzy. The only effective way to make the video clearer is to zoom, because the first choice of viewing will always be SD at about 640x400.
If you are using Camtasia, take a look at adding the 'Zoom and Pan' feature wherever the action is, but remember ot zoom out often to keep the big picture in frame.

Happy to jump on skype and help you out if you need.

I havent yet figured out how to give your account permissions to upload to the NuPattern channel on YouTube. But I need to find out how. Leave that with me.
May 15, 2013 at 11:04 AM
I took another shot at it, taking your suggestions into account.

Please let me know what you think.

May 15, 2013 at 12:12 PM
This is fabulous! Great work!
Please feel free to update the wiki and place your video on the site.