One of the other hats I wear on the team, is looking after our samples story. We are looking at our story for code expansions right now.

A code expansion simply put is a file that you author with some code in it. You can add it to a folder or folders in a special place on the machine. When you are in the IDE you can invoke a command that lists these folders and lists the expansions you can pick from in an intellisense like view. In Whidbey we are thinking of providing some common tasks that users would use by default.

Of course the big question is which tasks? Right now we are thinking of organizing it by areas of the framework you would use - so you would hit a key combination and see a list like:

  • Collections
  • Data
  • Email
  • Files
  • ...

You could then pick one, say Files and you would see a list of tasks underneath it:

  • Reading from a file
  • Writing to a file

Selecting the task would paste the code in for you.

Sounds simple right? Until you hit the million dollar question - what subset should you provide? What are the simple tasks that a user does often enough that makes itself a task and satisfies a broad percentage of our customers needs? For e.g. reading and writing files is something I could see people doing often enough that it warrants adding - but having code that deals with WMI for e.g. might be something obscure for our customers.

So what do you guys think? What would you have as the hierarchy? What would you have as the tasks? Let me know your feedback...I'm thinking about this a lot right now so this a good time to influence me :-)