Execute Command Files from Visual Studio 2010

On a recent project we used custom Visual Studio build files to build and deploy the code to different environments, i.e. Test and Production.  We created command files to pass the correct arguments to the build so it would be easier to run.  We never liked the fact that we need to open a command window and navigate to our solution folder to run the builds.  We thought, “There has got to be a way to do that from with in visual studio”, and we were right.  Devlin Liles details the steps we used to set that up in Visual Studio 2008 in his blog post titled Batch File and Command File running In Visual Studio.

I wanted to set that up in Visual Studio 2010 today and found the steps a little different so wanted to share how to set it up in Visual Studio 2010.

To realize the ability to execute command or batch files from within Visual Studio 2010 we need to perform the following steps:

  1. Create the External Command
  2. Adding the Command to the Context Menu

Setting up the External Command

  • Open the External Tools dialog by opening the Tools->External Tools menu.

image

  • Click the add [Add]  button to create a new External Tool and enter the following information:
Title E&excute Command…
Command C:\WINDOWS\System32\cmd.exe
Arguments /K $(ItemPath)
Initial directory $(ItemDir)
Use Output Window Checked
Prompt for arguments Not Checked
Treat output as Unicode Not Checked
  • Click the [Apply] button to save these changes, but before you click [OK] take now of a how many External Tools are listed here.  In my case it was the only external tool that had been defined so it will be assigned to External Tool 1
  • You can click [OK] now to close the External Tools dialog.

Adding the Command to the Context Menu

Now that we have our external command created we need to add it to the context menu for Solution Explorer items.

  • Open the Customize dialog by right clicking somewhere in the toolbar area to bring up the context menu and selecting Customize from the bottom of the menu.

image

This is where the steps for Visual Studio 2010 are different than Visual Studio 2010.  If you are using Visual Studio 2008 follow the instructions on Devlin Liles blog.

  • Select the [Commands] tab

image

  • Under Choose a menu or toolbar to rearrange: select Context menu: and in the drop down select Project and Solution Context Menus | Item.

image

I want my “Execute CMD…” command to be positioned above the “Edit WCF Configuration” items, so select “Edit WCF Configuration” and click the [Add Command…] button.

image

  • On the Add Command dialog in the Categories list select Tools.  Know in the Commands list scroll down until you see the External Command you are looking for.  Remember ours was External Command 1.  Once you find it select it and click [OK].

image

Now we see that External Command 1 is shown above the “Edit WCF Configuration” command, right were I wanted it. 

  • Now you can click [Close] button, open a solution and when you open the context menu in Solution Explorer you see the following:

image

Summary

This addition to Visual Studio has come in really handy for running common commands or batch files you might need to automate more mundane task.

Open Space Technology: Opening Circle

Introduction

This is part two in a multipart series discussion Open Space Technology.  Last time we looked at the 4 Principles and the 1 Law that many attribute to the success of Open Space Technology. Today we are going to look at the Opening Circle and the Market Place.

Other Post in this series:

  1. Open Space Technology: Introduction
  2. Open Space Technology: Opening Circle
  3. Open Space Technology: Sessions, where the sharing happens 

 image

The Opening Circle

At the beginning of an Open Space the participants sit in a circle. A facilitator is responsible for greeting all of the participants and reminding everyone of the purpose, principles and the one law. Participants are then invited to identify any issues or topics they feel should be discussed.  This process doesn’t take long and it is amazing to see how a group can come to order so quickly in this format.  While attending devLink 2009 and eagerly awaited Alan Stevens to kick off the opening circle I noticed that everyone was talking have have a great time. Alan walks into the circle, doesn’t say a word, just starts pacing in a circle.  Amazing, within a few short minutes everyone stopped talking and started focusing on Alan.  Once the room was quiet Alan kicked it off.  It was amazing to experience, if ever get a chance to go to an open space facilitated by Alan Stevens go, he is excellent.

As I stated earlier, the opening circle is where everything is explained the 4 principles and the 1 law and generally sets the tone for how the rest of the open space is going to flow, communicating schedules, needed resources, closing circle, etc.

OpenSpace Schedule

The Market Place

Once the general flow is communicated it comes down to setting the schedule, I mean we all want to know what we are going to talk about right? ;-).  That is where the Market Place comes into play.  The Market Place is a blank schedule showing times and rooms but no topics. The facilitator encourages the participants willing to raise a topic to come to the center of the circle, write it on a sheet of paper and announce it to the group before choosing a time and a place for the discussion and posting it on a wall. That wall becomes the agenda for the meeting.

No participant is forced to suggest issues/topics, but anyone may do so. The person who posted the topic is responsible for being at the session at the chosen time and place, start the discussion, have someone take notes and post them on the wall when the session is over. It is important to note that this is not a speaker lead session; it is a discussion had by everyone that shows up to talk about the given topic.

When all time slots have been filled, participants sign up to attend sessions. Wow, that is a full day of topics organized in about 30 minutes; this is the definition of self organizing. Once the schedule is finished the Open Circle is done and participants start breaking up to begin the first sessions.

Summary

The Opening Circle and the Market Place is where the Open Space Technology really shines.  This is where the attendees create the list of topics THEY want to talk about and decide WHEN they want to talk about them. I one or two day conference can be organized in about an hour with very little input from the facilitator. 

When I describe this to some they say, “But you will only get the passionate people to come and suggest things”, to which I reply, EXACTLY.  That is the point, you want the passionate people to be there, you want them to bring up topics they are passionate about, and you want others that are passionate about it to get together and discuss it.  If you are not passionate about it and aren’t getting anything out of it or contributing anything, why are you there?

The opening circle is where the attendees take control of the conference by suggesting topics that they want to talk about that they feel they will get the most value out of.  It is an awesome, organic feeling to know that, YOU, has an attendee have that much control over something you want to attend.

Northwest Arkansas Java User Group

image

I was recently contacted by Michael Akerman (mike@cavern.uark.edu), one of the leaders of the Northwest Arkansas Java User Group, he is looking to grow the membership of the group and start to hold monthly meetings.  Their current membership, according to the website, is about 25 and they primarily communicate via two listservs, which are listed on their website.

If you are working in Java this is a great opportunity to help build and sharp the Java Community in Northwest Arkansas.  If you are interested please contact Michael Akerman at mike@cavern.uark.edu and he can get you added to the list.

Shared Assembly Info Files in Visual Studio Reborn

The last project I worked on had a lot of class library projects in it and we really struggled with file versions.  We really wanted a good way to give all the class libraries the save version number other information.  I seem to remember that in an older version of Visual Studio, 2005 I think, if you created a setup project you could tell it to make all the file versions the same.  I couldn’t get this to work in Visual Studio 2008, or 2010, and it doesn’t work for web applications.

After talking with several of my colleagues, Devlin Liles and Rob Tennyson, and others we came up with a solution of using a Shared Assembly Info file across the projects.  I am starting a new project and since I didn’t remember how we did it of course I consulted the great oracle of all collected knowledge, Google and found this article Shared Assembly Info in Visual Studio by Jeremy Jameson and this solution worked great.  I was able to get my new project well underway with Shared Assembly Files and got to bed early.

The benefits I have found so far are that all outputs of the build have the same number and you only have to update the product and file versions in one place.

If you have struggled with this in the past check be sure to check this out.

enjoy

Open Space Technology: Introduction

image

Introduction

Last fall I facilitated an Open Space track at our Tyson Development Conference.  The Tyson Development Conference is a 1-2 day internal conference for Tyson Team Members held at our Springdale Corporate offices.  We had over 50 sessions and 200+ attendees.  This was the first conference of it kind at our company and I wanted to take the opportunity to introduce Open Space Technology to our organization.  To get start getting everyone excited about the Open Space Technology I did a series of short articles for our newsletter, I have decided to take that series and post it as a series of blog post with some added commentary and understanding that I have gained since then.  This is the first in the series enjoy!

Other Post in this series:

  1. Open Space Technology: Introduction
  2. Open Space Technology: Opening Circle
  3. Open Space Technology: Sessions, where the sharing happens 

A Little History

In 1985 Harrison Owen, the creator of Open Space Technology, spent a year organizing a huge visioning conference for his then employer. Comments he received from attendees surprised him. Their favorite parts of the conference were the side conversations, the ones that happened between or after the sessions. Harrison set out to find a way to have a conference that embodied the essence of the between session discussions. Thus, Open Space Technology was born. Open Space Technology is at its core, the essence of the conversation at the water cooler.

Open Spaces are self organized by the attendees. Everything from the who participates, what is discussed, when it starts and when it is over is controlled by the participants.

I had the chance to experience an Open Spaces at the devLink this year. DevLink is a community based 3 day developer conference which also had an Open Space track. I participated in the Opening and Closing Circles as well as some of the sessions. This was a great experience and felt very organic; I felt that it was ok to sit and listen or to contribute to the discussion.

The 4 Principles

These are like the pirates code from Pirates of the Caribbean, more a set of guidelines rather than hard fast rules that must be obeyed.

Principle 1: Whoever comes are the right people

The belief is that if you singed up to participate in a session you are going to get something out of it, either by being part of the discussion or listening. Many times when I explain this I hear, “Yeah, but then only the really passionate people will show up”. To which I reply, “Yes, that is the point”, it is expected that the people passionate about the topic would be interested in discussing it, therefore they are the right people.

Principle 2: Whatever happens is the only thing that could have

There are no foregone conclusions in these sessions. In a typical presenter lead session, the presenter stands at the front and goes through his practiced presentation. Yes, there is some input from the attendees but to the presenter the eventual outcome is known. In an Open Space session the participants are in control of where the discussion goes. As long as it is related to the topic, it is fair game and whatever happens is the only thing that could have.

Principle 3: Whenever it starts is the right time

Ok, so this one sounds a little silly, right? I mean you said there were time slots on the agenda board to there is a time to start, right? Well yes, but remember that part about the participants being in control, if they want to delay 30 minutes to start, they can. Just as long as they are ready to conclude or move their session to another location when the next session is ready to start.

Principle 4: When it is over, it’s over

Yes, in the last principle I said move the discussion. There is no reason to stop a really good discussion just because the clock on the wall said to. Just because time is up does not mean the discussion is stale, if it isn’t over, participants will be asked to move it to a different location so they can continue. It is that simple.

The 1 Law

The 1 Law: The Law of Two Feet

The law of two feet gives participants the right to vote with their two feet and is worded as follows.

If at any time during our time together you find yourself in any situation where you are neither learning nor contributing, use your two feet. Go to some other place where you may learn and contribute.

Summary

I have found that there is a very organic, liberating feeling of an Open Space event.  How many times to you go to conferences and spend the whole week experience only a few sessions that resonate with you or provide a deep passionate experience.  Every Open Space I have attended has had this feeling at the core of every session.  Why?  Because it is the attendees who decide what the content will be for the give subject, they are part of the conversation, the speakers, the scribe, the reason the event exist.

In the next post we will look at how this self-organized event get, well gets organized as we discuss what goes on during the Opening Circle.

Resources
Open Space Technology on Wikipedia http://en.wikipedia.org/wiki/Open_Space_Technology
Open Space World: http://www.openspaceworld.org/

Calendar

<<  April 2024  >>
MonTueWedThuFriSatSun
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

View posts in large calendar

Widget Category list not found.

Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

Tag cloud

    Widget Month List not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

    Widget AuthorList not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

    Widget TextBox not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X