Geek Noise
Rants, rambles, news and notes by Peter Provost
15

Visual Studio 2010 RTM, Launch Events and More!

Thursday, 15 April 2010 08:50 by Peter Provost

It seems very unlikely that you missed it, but Visual Studio 2010 and .NET Framework 4.0 has officially launched! I can’t adequately express how excited we are about this release. There is so much good stuff in there, it is hard to know where to start.

I want to congratulate the thousands of people who spent the last two years working on this release. I’ve had the pleasure of working with many of them as we built out all the great new architecture features in Visual Studio 2010 Ultimate.

For those of you who’ve been creating models in the architecture tools in RC and Beta2, we just shipped the Microsoft Visual Studio 2010 Architecture Model Upgrade Tool on the VS Gallery. Check it out.

We also just shipped the RTM version of the Microsoft Visual Studio 2010 Visualization & Modeling SDK (née the Domain Specific Language Toolkit SDK). Jean-Marc Prieur has just posted an announcement post about it.

The Vegas launch event was a hit, and it is being followed up by a bunch of regional events. I will be speaking on Tuesday April 20th at the Denver event, so if you’re in town, please SIGN UP and come on out.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:  
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed
09

Visual Studio 2010 Release Candidate is LIVE!

Tuesday, 9 February 2010 05:31 by Peter Provost

We are so close now we can taste it. VS2010 is almost ready and to help give you all a nice checkpoint on where the product stands, we just pushed out RC to all MSDN Subscribers. It will go to the public on Feb 10. As with the previous Beta, the RC has a go-live license.

Here’s a video Jason Zander did for Channel9:

image

And some other links to MSFT bloggers:

As we like to say… go get it. Install it. Use it. And tell us what you think!!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:  
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed
08

Migrating your Modeling artifacts to RC

Monday, 8 February 2010 07:30 by Peter Provost

Reposting Cameron Skinner’s post from this morning:

No, the RC for VS2010 has not yet hit the wire, but it will be very soon. :)

One of the great things about the Beta2 version of Visual Studio 2010 was the fact that the TFS server as well as all the client side products came with a “Go Live” license. Well the RC build will also be a “Go Live” build. That essentially means that we are encouraging you to use the products on production workloads, and if the format of artifacts created with Beta2 bits change in the RC bits, we will handle the migration of that data for you either automatically or through some other means. For the RC build, that will also mean migration from the RC product to the final, RTM product.

Bottom line, it is hard to try product out and get real feedback if you don’t put it to production use. It is hard to put the product in production use if you can’t be sure that your data will migrate to the final build. Thus the “Go Live” license. For the details around the “Go Live”, start with Beehler’s post.

So, if you have created modeling projects and diagrams in the beta2 build, we will be providing a tool that will automatically upgrade those files / artifacts to the RC build, when available. We’ll be announcing that tool very soon after the RC build announced.

Keep the feedback coming! :)

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:  
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (2) | Comment RSSRSS comment feed
20

UML Modeling and Code Generation in Visual Studio 2010

Wednesday, 20 January 2010 05:10 by Peter Provost

A couple of days ago, Oleg Sych made a wonderful post about how to combine our UML Modeling tools with T4 text templating and our extension APIs to generate code within Visual Studio.

He covers the basics of the UML designers, showing how you can use custom profiles to annotate elements for your code generation scripts.

The example is very good: generating a SQL database create script for a data model described as a UML Class diagram. This is exactly how we envisioned this stuff being used and I’m very excited to see it happening so early, on Beta 2 bits.

Read the whole article here:
http://www.olegsych.com/2010/01/uml-modeling-and-code-generation-in-visual-studio-2010/

Currently rated 4.5 by 2 people

  • Currently 4.5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:   ,
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (6) | Comment RSSRSS comment feed
18

Visual Studio Ultimate Event – Atlanta GA Feb 2 2010

Monday, 18 January 2010 11:04 by Peter Provost

Next month I will keynoting the Visual Studio Ultimate Event in Atlanta. Here’s the description from the event site:

The Ultimate Event: Visual Studio 2010 & Team Foundation Server 2010
Feb 02,2010 @ 8:30am
Microsoft Alpharetta Office

Microsoft Visual Studio 2010 is a landmark release of the premier development toolset for Windows, Web and Cloud development. Join us for a comprehensive overview of Visual Studio 2010 and Team Foundation Server 2010.  Microsoft has made significant investments to and improvements of Modeling and Testing/QA tools in Visual Studio. Team Foundation Server is the Application Lifecycle Management (ALM) core of Team System and we’ll present enhancements in version control, reporting, project management and build management.  Spend a day with us to learn how to take software development to next level with Visual Studio 2010.

More information and registration can be found at the link above.

I will also be making a few stops for some local stuff:

Atlanta Visual Studio User Group
Feb 01, 2010 @ 6:30pm
Microsoft Alpharetta Offices

Nerd Dinner: Architecture Blather with Peter Provost
Feb 02, 2010 @ 6:30pm
5 Seasons Brewery at the Prado

If you are in the Atlanta area, I hope to see you there!

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:  
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (7) | Comment RSSRSS comment feed
30

Call for Papers – The Architecture Journal

Monday, 30 November 2009 03:23 by Peter Provost
Arch_Journal_Logo

The Architecture Journal has just announce their call for papers for the 23rd issue, which just happens to be focusing on Architecture Modeling and its role in the broader SDLC.

If you’ve got something interesting you want to share, I encourage you to submit a paper idea and we’ll take a look. I’m helping review the submissions, so make it good! :)

More Info: http://msdn.microsoft.com/en-us/architecture/bb219087.aspx

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
13

20 jährigen Maurfall

Friday, 13 November 2009 04:46 by Peter Provost

This week I was in Berlin presenting four sessions at TechEd Europe. This is a beautiful city and it was a great event.

We were very fortunate to be here for the 20th anniversary celebration of the falling of the Berlin Wall and I thought I’d share some pics. Don Smith got a bunch more using his much better camera and we also got some video of it actually coming down, but these are all I have here with me tonight.

As you may be able to tell it was pouring down rain for the 2+ hours we waited for it all to happen, but the people were fun, there was music and speeches (in German) and best of all... Glühwein!

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
26

Extending Visual Studio 2010 UML Designers – Part 1: Getting Started

Monday, 26 October 2009 10:28 by Peter Provost

This is the first in a series of blog posts to show how the new UML Modeling capabilities in Visual Studio 2010 Ultimate can be extended. Later articles will expand on the examples shown here and show more advanced extensibility.

Introduction

In Visual Studio 2010 Ultimate we have introduced a set of new UML 2.1.2 modeling capabilities. We include designers for producing five UML diagram types:

  • Class Diagram
  • Sequence Diagram
  • Component Diagram
  • Use Case Diagram
  • Activity Diagram

In addition, we also have tools for analyzing, documenting and validating your architecture. The Layer Diagram can be used to define the large layered components on your solution, map them to real code elements and later validate that your as-built system conforms to what you planned. If you have existing systems you want to investigate and understand better, we have the Architecture Explorer and a set of Dependency Graphs that you can create to see how the parts come together.

As we were building our new capabilities, we realized that people would need to be able to add new capabilities to the diagrams and models we’re including in the box. You may, for example, want to add a command for refactoring the model to the menu that appears when you right click on on a shape on the Class Diagram. Or perhaps you want to be able to drag-and-drop something onto a diagram and have it create new model elements based on the source of the drag. Or maybe your enterprise has guidelines about what makes a model “valid” and want to code those validation constraints into the tool so you know when you have deviated.

We can support all of those scenarios using very simple extensibility mechanisms that are present in Visual Studio 2010 Ultimate.

Before You Begin

This series of articles assumes you already have Visual Studio 2010 Beta 2 Ultimate installed on your system. To make our lives a lot easier we will also be using the Visual Studio 2010 Beta 2 SDK to get our projects started, installed and debugged.

In case you are missing any of those, you can find links to all of the downloads on the Visual Studio 2010 and .NET Framework Beta 2 Landing Page.

Creating Your First Extension Project

Visual Studio 2010 uses the Managed Extensibility Framework for lightweight extensibility and we were eager adopters of that when we created our own extensibility hooks. What this means is that to create a new UML Designer extension, you create a new VSIX Project (a VSIX is just a ZIP file that tells Visual Studio how to install the extension…see What is a VSIX? for more information) and then add a simple little MEF component to it. Easy pie. So let’s get started…

Creating the VSIX Project

Before we can get into the extension itself, we need to get our project set-up correctly.

  1. Create a new C# VSIX Project (you can do VB if you want but my code here is in C#). File | New | Project | Visual C# | Extensibility | VSIX Project.
  2. Add references to the following .NET Assemblies:
    • Microsoft.VisualStudio.Modeling.Sdk.10.0
    • Microsoft.VisualStudio.Uml.Extensions
    • Microsoft.VisualStudio.Uml.Interfaces
    • System.ComponentModel.Composition
  3. Open source.extension.vsixmanifest in the editor. (If it opens in an XML editor, close it and choose View Designer from the file context menu).
  4. Fill in the Name, Author, and Description sections.
  5. Set “Supported VS Editions” to Visual Studio Ultimate.
  6. Save all open files and close them.
  7. Delete the file VSIXProject.cs from the project

VSSDK Beta 2 Bug Workarounds

Unfortunately there are a couple of bugs in the current VSSDK Beta 2 that we have to work around. I’ve been told they will be fixed in an update release but until then, let me take you through the project cleanup required to make this work:

Step 1 – Tweak the .csproj file

  1. Right click on your project and choose “Unload Project”.
  2. Right click again on your project and choose “Edit Yourprojectname.csproj”
  3. In the topmost property group, look for the XML tag <IncludeAssemblyInVSIXContainer>. It will be set to false. Change it to true.
  4. Save the .csproj file and reload it into Visual Studio.

Step 2 – Tweak the .vsixmanifest file

  1. Right click on the file “source.extension.vsixmanifest” and choose View Code
  2. At the bottom of the file in the section called <Content> add the following line. (Yes, those vertical bars are important.)
    <MefComponent>|Yourprojectname|</MefComponent> 
  3. Save and close the file.

Say “Hello World!”

Now let’s make this thing fly. We won’t get into any complicated UML or model manipulation in this article. Instead we will just add a new menu item to the context menu of the UML Class Designer. When clicked, the menu item will say Hello World.

  1. Add a Project Reference to System.Windows.Forms (a simple way to get a MessageBox).
  2. Add a new class named HelloWorldCommandExtension.cs to the project
  3. Have your new class implement the ICommandExtension interface and add the following attributes to your class (you will need to add the required using directives):
    [Export(typeof(ICommandExtension))] 
    
    [ClassDesignerExtension] 
  4. Delete the body of the QueryStatus method
  5. Replace the Text property implementation as shown here:
    public string Text
    
    {
    
        get { return "Hello World!"; }
    
    }
    
  6. Replace the Execute method as follows:
    public void Execute(IMenuCommand command)
    
    {
    
        System.Windows.Forms.MessageBox.Show("Hello World!");
    
    }

Testing Your Extension

The nice thing about using the VSIX project template is that is sets everything up for debugging and testing for you using the Visual Studio Experimental hive. To run your extension without debugging, press Ctrl+F5. To run with debugging enabled, just press F5.

One the Experimental Hive is up and running, create a new Modeling Project, add a new Class diagram, and right click on the surface. You should see your “Hello World!” menu item and choosing it should display the message box. Voila!

Next Steps

In the next part of this series, I will show you how to create new model elements in the Model Store and display them on the diagram surface. Subsequent articles will explore other diagram types and more complex scenarios including creating a full VSPackage.

Currently rated 2.3 by 3 people

  • Currently 2.333333/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:   , , ,
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (10) | Comment RSSRSS comment feed
19

Visual Studio 2010 and .NET 4.0 Beta 2 LIVE on MSDN

Monday, 19 October 2009 03:32 by Peter Provost

VS-2010-dotNet4-LogoThis morning we released to MSDN the Beta 2 release of Visual Studio 2010 and .NET Framework 4.0 to MSDN. See Soma’s blog post for the official bits.

There is so much good stuff coming in Beta 2 it is hard to keep track of it all. Over in the Arch Tooling team where I work, we’ve done a ton of work on increasing the performance of the UML, Layer and Architecture designers we’ve made. We have also added a BUNCH of new and cool MEF-based extensibility hooks into our designers so customers can add new and interesting features that we may not have thought of.

We’ve been dogfooding this release (client and server) internally for quite a while now and I have to say I really like it. It feels good, it looks good and it does what I want to do.

Probably the biggest thing people will talk about initially, however is the new SKU changes we’re making in 2010. I remember way back before I joined Microsoft I criticized the “role-based” SKU system as not actually aligning with how real teams get work done. As Brian Harry explains on his SKU changes post, we’ve fixed that by adopting a SKU system very similar to that used by Windows and Office:

  • Microsoft Visual Studio 2010 Ultimate with MSDN: the comprehensive suite of application lifecycle management tools for software teams to ensure quality results from design to deployment.
  • Microsoft Visual Studio 2010 Premium with MSDN: a complete toolset for developers to deliver scalable, high quality applications.
  • Microsoft Visual Studio 2010 Professional with MSDN: the essential tool for professional development tasks to assist developers in implementing their ideas easily.

As you can see this is a much cleaner SKU model and we’re excited to see how customers respond.

This Beta 2 release is available on MSDN subscriber downloads NOW and will be generally available on Wednesday October 21. .NET Framework Beta 2 will be released in English, Japanese, German and Arabic.  VS Beta 2 will be released in English, Japanese, and German.

There have also been a bunch of updates recently to the Microsoft Developer Network (MSDN) website. A serious design update and ton of new social networking features should help people get the information they need faster than ever. Scott Hanselman blogged about it last week.

We all hope you try this release out and give us tons of feedback on how it works for you and your business.

Edit: Added link to Brian Harry’s SKU post and some descriptive content about the SKUs.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:   ,
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (1) | Comment RSSRSS comment feed
03

Code Generation Made Easy

Wednesday, 3 December 2008 03:39 by Peter Provost

Visual Studio Logo The Text Template Transformation Toolkit, aka T4 Templates, is getting some press recently. T4 is a code generation and templating system that is built into VS, but not enough people know about it.

In P&P, we used it for almost all of our code generation in our Software Factories, and it will be an important part of how we do code-gen in Visual Studio Team System Architecture Edition.

This recent article in the Redmond Developer News prompted me to blog this, and it is a nice overview of what T4 is all about with quotes from many of the key people involved in the development of the toolkit.

Here are some more recent posts about T4:

Enjoy!

Currently rated 1.0 by 1 people

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags:   ,
Categories:   Technology
Actions:   E-mail | del.icio.us | Permalink | Comments (2) | Comment RSSRSS comment feed