Friday, January 28, 2005

My First Foray Into VSTS

WARNING: This may be kind of a long post. I'm actually going to split it over several posts, I think. Also, I have included links to my pictures instead of the actual pictures themselves, because I haven't figured out if Blogger will allow me to upload pictures to it yet (AKA: haven't even researched it yet). I tried to not make the pictures too big, and still make them readable, so I hope it all turns out ok.

I cranked up all three of my VPC sessions, and logged them in. I started VS2005. My Team Explorer window was already docked on the left of my IDE, from where I had initially connected it last time. (See installation instructions for that part).

Figure 1 - In The IDE

In Team Explorer, I clicked the "New Team Project" button. This opens the New Team Project Wizard

Figure 2 - New Team Project Wizard

I considered for a second naming my project HelloWorld, but I just couldn't do it! So I entered "IAmGumbi" as the name of the project, and "My First VSTS Project" as the description. I then clicked the Next button, which took me to the Select A Process Template screen.

Figure 3 - Select A Process Template

My only choice in the DDLB (Drop Down List Box for the non-programmers out there) was MSF Agile (which is something I am interested in, but again has not made it to the top of the "need to look at now" stack), so I selected it and clicked Next. This opens the Specify Settings For Project Portal screen of the wixard.

Figure 4 - Specify Settings For Project Portal

There is already default information entered on this screen for you. The Team Project Portal Title defaults to the Team Project name entered earlier. The Team Project Portal Description defaults to the description you entered earlier. This screen also shows you the Team Project Portal Address, which is http:///sites/. This address is not editable. I accepted the defaults and clicked Next, which opens the Specify Source Control Settings screen.

Figure 5 - Specify Source Control Settings

There are three options on this screen

  • Create An Empty Version Control Folder - This is the default.

  • Create A New Version Control Branch - This option is grayed out right now

  • Do Not Create A Version Control Folder At This time - Pretty self-explanatory, I think

I took the default, and clicked Next. This opens the Confirm Team Project Settings screen.

Figure 6 - Confirm Team Project Settings

Everything looked good, so I clicked the Finish button. A progress bar appears, and the Team Project is created. On my laptop, using 3 VPCs, it took about 12 minutes to create. Here are some of the phrases that popped up on the progress bar during that time:

  • Downloading Process Template

  • Groups and Permissions Created

  • WorkItemType for Bug Uploaded

  • WorkItemType for Task Uploaded

  • WorkItemType for QoS Uploaded

  • WorkItemType for Scenario Uploaded

  • WorkItems Uploaded

  • Queries Uploaded

  • Source Control Created

  • Doc Templates uploaded to project site

  • Process Guidance uploaded to project site

  • Project Site Created

Figure 7 - Team Project Created

Great! My project was created. I decided to take the defaults and click Close. I think that is what led to the next two images. I have not confirmed this yet, but I'll bet that if I had unchecked View Process Guidance Page, I would not have gotten the error message that follows.

Figure 8 - Online Help Settings

This window opened up. I decided to take the default (Use online Help as primary source), because it said it would go to local help if I was not connected to the Internet (which I am not). I agreed to the Privacy Policy, and clicked OK.

Figure 9 - Error Message

The Help Application tried to open, and I recieved the above error message. I just hit Continue, and closed the Help application, and I was back in my IDE.

And Voila! I have successfully created my first Team System Project!

Figure 10 - My First Team System Project

In my next post, I'll show you some screen shots of what's in all those folders, as well as go into creating my first coding project, and tying it to my VSTS project.

Rob will be so proud!

I finally have VSTS up and running! Rob Caron will be so proud! ;)

I am running everything using Virtual PC (VPC) on my laptop. My laptop is a 2.6Ghz machine with 1GB of RAM.

I have created three virtual PC sessions, one for each tier. My Database Tier (DT) is also my domain controller. I have the network settings on each VPC session to be set to "local" only, so that they can only communicate with each other. I currently have each tier set to use 200MB of memory. I also set each session hard drive to be 10GB, and to grow as needed.

Installation on each tier went off without a hitch.

Before I start up all three sessions, I shut down everything on my laptop, including virus scanners. I also go into Services and stop as many services as I feel I safely can, without hosing the computer, just to free up as much memory as possible.

So far I have not encountered too many problems with this configuration (though it is early). I have done a couple of things with VSTS (more on that in an upcoming post), and, while a little slow, everything has worked. So I feel comfortable with my configuration. I wish I had more memory, but I'll make do for right now. I don't see the Laptop Fairy visiting me anytime soon.

Tuesday, January 18, 2005

Team System Articles

Thanks to Rob Caron for the heads up on these articles.

Matt Nicholson - "VS2005 Team System", "VSTS: Team Foundation"

I found the overview article, "VS2005 Team System", to be a good overview, especially for a newbie to VSTS, of what is going to be provided and what Microsoft is trying to accomplish. I sometimes forget there are going to be three different editions of Team System (I'm leaning toward Team Developer personally). Ian, the author of the article, does bring up an interesting point that I had not considered before, concerning development shops already invested in SCM software:

"However, for SCM vendors, the process of simply changing the repository they use is a significant issue. For IT development teams that are heavily invested in SCM, this could be a make or break deal."

In my current environment, we have SCM software, but we have never used it, because we found it to be too complex, and it did not integrate intuitively with Visual Studio, so this will not be a problem for us. I am looking forward to using SCM software which is designed with Visual Studio in mind. However, I can see how some shops might not consider using Team System if it does not integrate quickly and easily with their current repository. I'll be looking to see some more information on this.

READ THE SECOND ARTICLE!!!!! "VSTS: Team Foundation" is a great overview and primer to using VSTS. 'nuff said.

Monday, January 17, 2005

Compuware may be feeling a little heat...

eWeek - Tools Up Visual Studio Ante

"Compuware Corp. is launching two tools that extend the capabilities of Microsoft Corp.'s Visual Studio development platform beyond Microsoft's Visual Studio 2005 plans.

Compuware DevPartner Fault Simulator 1.0 and Compuware DevPartner SecurityChecker 1.0. will help developers build in error-proofing and security when coding applications."

Both tools sound interesting. I honestly do not know what in Team System would be equivalent (thought I am sure there is something).

I think Compuware is beginning to see the competition that will be provided by Team System. I also think it is a good thing, because Compuware is beginning to innovate, as seen by the above products.

Sunday, January 16, 2005

The Beta/CTP Process

VSTS is the first time I have seriously gotten involved with beta testing (well, pre-beta testing really) a product. I love how Microsoft has opened up the development process of their next generation tools to all developers, and not just a select few. That said, there are some people who are not so happy with what they are doing.

Rick Strahl sees Microsoft's current approach as Beta Perversion. While I think he raises some interesting points, I think his biggest hangup is with the words "beta process". After reading his blog, I have an understanding for how Microsoft has done beta testing in the past, and how they are doing it differently now. I like how they are doing it now. I think, however, they should remove the word "beta" and stick with calling things CTPs (Community Tech Previews).

As Rick mentions, the word "beta" denotes a certain stability. In the same vein, it also denotes a certain inflexibility, in that usually when a product is in beta, only the major bugs get addressed. In contrast, with the way Microsoft is doing VSTS with the CTPs, we are getting the ability to influence and make changes to how the software works, which I think is a cool thing.

Josh Ledgard has written a good response to Rick's post. He also makes mention that maybe they should not use the word "beta", and that the word "beta" might be what is hanging some people up. Here is a quote from his post:

"What needs to happen, in the future, is that more teams need to act like the Foxpro team and treat the MVPs (or best customers) as part of the product team. These customers should have the opportunity to be reading our specs for Orcas soon after they have been written and ever before any code has been produced."

Not that I am an MVP, or would probably be included in the above class of people, but I think this is a great idea. I would kill to have the kind of early access, and I do think it would be fitting for MVPs and other select customers to have that access.

Rick also made mention about all the press about the "next great development tools", at the expense of the current development tools. I agree with him here. Sometimes the press does run with the "latest and greatest" at the expense of the "here and now". I have suffered from the "do I try and do it now, or do I wait for the new tool, which will do so much more for me" syndrome. But then again, I love having all the information at my fingertips. Its being able to process all that information that is difficult sometimes, but that is my problem, not the people writing the information.

Here is part of Josh's response to that concerning VS2005:

"The funny thing is that I think marketing had less to do with this perception than the product teams being told they could be more open and then being publicly excited about what they where working on. It's a period of adjustment for us and customers as we learn how to be more open."

I think blogs have had a heck of an impact in letting people know about the latest product information. And I would never want to go back to the pre-blog days. I love how open the people at Microsoft have become, and how I can make a comment on their blog, or send them an email, and I get a response! Rob Caron, who I had the pleasure of meeting at Tech Ed 2004, has been instrumental in helping me get up and going with VSTS. I've traded emails and blog posts with several other members of the Team System Team, and the blogosphere in general. I'm digressing from my original topic, but I think blogs are the best thing to happen for developers in a long time.

Rob asks the question, in his post "Write about the 'here and now', or the 'soon to be':

"What about 1.0 products? When is the right time to write about them? I think back on the deluge of books that was published for .NET long before it shipped, and I can’t help but wonder what to expect for Team System."

I don't think there is any good answer to this question. Personally, I don't think they should start cranking out those books until the first solid Beta 1 release. (There's that word beta again! I'm going to have to do like Scoble did with the word "blog", and start donating money!). However, there really is no way for Microsoft or any other vendor to stop people from writing books about pre-release software. I know of a couple of people who have already started a Team System book, using a CTP from a couple of months back. As long as it is promenently displayed on the book that the information may not be current, I guess there is no big problem with it. Some people prefer to have the information consolidated into book form for them. Others like reading it on the Web and piecing information together from different blogs. To each his own, I suppose. I'll admit, I have bought a couple of ASP.NET 2.0 books, and I will probably buy a couple of Team System books as soon as they come out.

Ok, this is by far my longest post to date. To wrap it up, I think Microsoft should consider not using the word "beta" until the software is at a much more stable, and unmutable, point. I think they should continue to use the CTP moniker, and I think they should continue to release CTPs every three months. I for one love having the latest CTP to play with.

Tuesday, January 11, 2005

Your Voice Does Count

Brian White is asking for your opinion and customer feedback via his blog. Make your voice heard!