InfoQ

News

Framework Design Studio Released

Posted by Jonathan Allen on Apr 23, 2008 06:44 AM

Community
.NET
Topics
Artifacts & Tools

Krzysztof Cwalina, along with Hongping Lim and David Fowler, has developed an API management tool they call the Framework Design Studio. This tool can be used to compare different versions of .NET APIs. Users can also append comments to APIs and export them as Word documents.

We were able to interview the project lead, Krzysztof.

In your announcement, you said you wrote this application because you were bored on a plane. But was there any reason you chose to work on this particular problem?

Yes, the inability to easily visualize changes in APIs has been a major problem for the Framework design effort my team is driving. Without a tool like Framework Design Studio it’s very difficult to observe, monitor, and direct changes in versions of a product the size of the .NET Framework. Secondly, at that time, we were starting to look into compatibility between Silverlight and .NET Framework APIs and I saw a need for being able to easily see and understand differences in these APIs. Today, we use the tool on daily basis to ensure that Silverlight and .NET Framework APIs are consistent.

Have you started using the Framework Design Studio in part of your day-to-day tasks?

Yes, we are using it on daily basis for API reviews that we conduct and to monitor Silverlight and .NET Framework API consistency.

Was there a lot of change in the UI between the original and WPF version David Fowler wrote?

The basic structure of the UI is the same, but we did decided to move to WPF for one very important reason: we wanted to use WPF’s annotations to allow commenting on APIs in the tool’s main window. So, the major UI change David implemented was the support for annotation based comments.

Are summer interns like David Fowler a common sight at Microsoft?

Yes, we have a great internship program, and I can attest from both sides. I worked with several interns on projects like FDS, but I also was an intern myself. I did an internship with Microsoft 1998, created what’s now Office Clipart Gallery (http://office.microsoft.com/en-us/clipart/default.aspx), and got hired as a full time employee the next summer.

For our younger readers, how does one become an intern at Microsoft?

For students who are interested in our intern program, a great place to start is our college recruiting website- http://www.microsoft.com/college. The site contains information about the program as well as a descriptions of our internship positions and link to apply. Also on the site is a list of our school recruiters and upcoming on campus events. Microsoft hires over 1,000 interns each year and while the majority of our interns are with us during summer break (May-August), we offer internships year round in a wide variety of groups and positions.

 

No comments

Watch Thread Reply

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.