From: Jason Weber
To: Jamie Cansdale
Date: Dec 1, 2005 11:05 PM
Subject: TestDriven.Net VSIP Package

Hi Jamie,

My name is Jason Weber and I’m the lead for the Visual Studio IDE and
Visual Studio SDK. I work closely with many of our VSIP partners on
their integration, and was pointed toward TestDriven.Net last week.
You’ve done a great job with your Visual Studio integration and I was
wondering if you had time for a 30 minute conference call next
Wednesday. I wanted to better understand your product and strategy.

Thanks – Jason Weber



From: Jason Weber
To: Jamie Cansdale
Date: Dec 8, 2005 7:34 AM
Subject: Follow-up Information

Hi Jamie,

Thanks for taking the time to meet with me today. I just downloaded your
product and I'm going to play around tonight. I enjoyed our conversation
and wanted to send links to the information we discussed today.

1.) The Visual Studio extensibility site can be found here:
http://msdn.microsoft.com/vstudio/extend/

2.) After becoming an Affiliate member you can download the Visual
Studio SDKs from here. You will find our new mock objects in the latest
CTP.
https://affiliate.vsipmembers.com/login.aspx?err=cannot_find_user

3.) You can find information about joining the VSIP program here. Our
next developer lab will be in the spring of next year, and all VSIP
partners will have the opportunity to attend.
http://msdn.microsoft.com/vstudio/partners/

4.) I've sent your name to Mark Colburn, the program manager who drives
our Visual Studio ecosystem team. Mark is looking for Visual Studio
Extensibility MVP's, and as we discussed I believe you would be a great
addition to the program, and it would be much more applicable than your
current ASP.Net MVP involvement. Please look for mail from Mark in the
coming months.

5.) Finally I've sent your contact information to the VSTS unit testing
team, and you should hear from them shortly after the holidays. They
sounded excited to work with you. If they don't contact you please let
me know and I'll ping them again.

Sorry to spring the bad news about the Express SKU's. I see that you
updated your build today. Did you already remove your hack? Man that was
quick ;-)


Take care, and good luck!
- jason



From: Jamie Cansdale
To: Jason Weber
Date: Dec 8, 2005 11:29 PM
Subject: Re: Follow-up Information

Hi Jason,

Thanks for the follow up. I look forward to hearing from Mark and the
VSTS unit testing team. I actually already know Noah Coad. I believe
he's one of the PMs on that team.

> Sorry to spring the bad news about the Express SKU's. I see that you
> updated your build today. Did you already remove your hack? Man that was
> quick ;-)
>
I'm quick, but not that quick. ;o)  I think you must have been caught
out by the time zone. I released something earlier on that day.

Is there any chance you could let me know which specific clause in the
licence I was contravening? I'm drafting an email to my users and
wanted to give them something concrete. I know a lot of people will be
disappointed.

Thanks, Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Dec 9, 2005 4:37 AM
Subject: RE: Follow-up Information

Since I'm not a lawyer I shouldn't comment on the license. However if
you read the Express SKU EULA you'll see verbiage around reverse
engineering, and if you read the VS SDK license (the license that covers
all native API's that you're accessing when you QueryService from your
add-in) you'll see additional terms that are relevant to your hack.
Sorry that I can't be more specific, but I'm just a developer ;-)

Later - jason



From: Jason Weber
To: Jamie Cansdale
Cc: Lorna Williamson, Ben Miller
Date: Dec 20, 2005 9:08 PM

Hi Jamie,

It's been two weeks since we last spoke. I wanted to send a quick mail
to see if you've had an opportunity to think through our previous
conversation (specifically about further integrating unit testing into
VSTS and also about your Express extension). I was hoping that we could
schedule a conference call for early January to answer any questions you
might have. I've included Lorna and Ben who would like to attend the
call. It would be appreciated if you could propose a date and time!

Thanks - jason



From: Jamie Cansdale
To: Jason Weber
Cc: Lorna Williamson, Ben Miller
Date: Dec 20, 2005 11:50 PM
Subject: Re: Follow-up Information

Hi Jason,

> It's been two weeks since we last spoke. I wanted to send a quick
> mail to see if you've had an opportunity to think through our previous
> conversation (specifically about further integrating unit testing into
> VSTS and also about your Express extension).
>
I have indeed been thinking about this. Obviously I am concerned about
the licence issue. However I think there may have been a
misunderstanding as to how my "hack" works. You mentioned my use of
QueryService to access the native APIs. I am in fact using the add-in
extensibility API and have intentionally not been touching the VSIP
interfaces.

To be on the safe side, I asked a friend who works as a lawyer in the
UK to go through the Express licence with me. In his opinion I'm not
in breach of anything as my technique didn't require any reverse
engineering or decompilation.

As things stand, I am reluctant to remove support for the Express SKU
as the reason for doing so is unclear and I would be unable to justify
it properly to my users (and to myself).

> I was hoping that we could schedule a conference call for early January
> to answer any questions you might have. I've included Lorna and Ben who
> would like to attend the call.
>
I would be happy to have another conference call. How does the 4th of
Jan sound, say 6PM GMT?

Thanks, Jamie.



From: Jason Weber
To: Jamie Cansdale
Cc: Lorna Williamson, Ben Miller
Date: Dec 21, 2005 7:21 AM
Subject: RE: Follow-up Information

We should certainly talk through your integration again Jamie to ensure
we're on the same page. As a precursor would it be possible for you to
send me the project references that you're linking to? I believe those
will expedite our discussions. I would be happy to discuss your
integration at the API level and help you understand what API's are
licensed under which licenses.

The 4th of January at 6PM GMT (10AM PST) works great. I will send a
meeting request.

I'm officially on vacation until the 4th of January but will
occasionally check email.

Happy Holidays! - jason



From: Jamie Cansdale
To: Jason Weber
Cc: Lorna Williamson, Ben Miller
Date: Jan 3, 2006 2:58 PM
Subject: Re: Follow-up Information

Hi Jason,

> As a precursor would it be possible for you to send me the project references
> that you're linking to? I believe those will expedite our discussions.
>
When compiled with Visual C# Express installed, the following
assemblies are referenced:
C:\Program Files\Common Files\Microsoft Shared\MSEnv\PublicAssemblies\envdte.dll
C:\Program Files\Common Files\Microsoft
Shared\MSEnv\PublicAssemblies\extensibility.dll
C:\Program Files\Common Files\Microsoft
Shared\MSEnv\PublicAssemblies\Microsoft.VisualStudio.CommandBars.dll
C:\Program Files\Common Files\Microsoft Shared\MSEnv\PublicAssemblies\stdole.dll
C:\Program Files\Common Files\Microsoft
Shared\MSEnv\PublicAssemblies\VSLangProj.dll
C:\WINDOWS\assembly\GAC\Microsoft.VisualStudio.OLE.Interop\7.1.40304.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.OLE.Interop.dll
C:\WINDOWS\assembly\GAC\Microsoft.VisualStudio.Shell.Interop.8.0\8.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Shell.Interop.8.0.dll
C:\WINDOWS\assembly\GAC\Microsoft.VisualStudio.Shell.Interop\7.1.40304.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Shell.Interop.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll

I'm also referencing 'office.dll' and
'Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll', which
come with Visual Studio .NET 2003 and Visual Studio 2005 Team Suite
respectively.

> I would be happy to discuss your integration at the API level and help
> you understand what API's are licensed under which licenses.
>
I thought it might help the discussion if we had some concrete code to
look at. I've put together an example extension that can be compiled
and used with only Visual C# Express installed. In a few places I've
added links to information about various APIs (see the TODO comments).
You can find the example code here:
http://www.mutantdesign.co.uk/downloads/ProjectReferences.zip

> The 4th of January at 6PM GMT (10AM PST) works great. I will send a
> meeting request.
>
Any word from Lorna and Ben?

> I'm officially on vacation until the 4th of January but will
> occasionally check email.
>
I'm sorry about the delay. I've been away on vacation as well.

Happy New Year!

Thanks, Jamie.



From: Jamie Cansdale
To: Jason Weber, Lorna Williamson, Ben Miller
Date: Jan 4, 2006 6:27 PM
Subject: Re: Discuss TestDrive.Net

Hi folks,

I thought it might be useful for people to have the licence(s) handy.
I've attached the Visual C# Express and Visual Studio SDK licences.

I included the following links in the source of my example extension
project. Here they are all in one place:

Automation Samples for Visual Studio .NET
http://msdn.microsoft.com/vstudio/downloads/code/automation2002/

Comparing Automation Add-ins to Visual Studio Packages
http://blogs.msdn.com/jim_glass/archive/2005/08/12/450870.aspx

How to guess if a VS 2005 project is a test project
http://forums.microsoft.com/msdn/showpost.aspx?postid=54530&siteid=1

Thanks, Jamie.



From: Jason Weber
To: Jamie Cansdale
Cc: Lorna Williamson, Ben Miller
Date: Jan 6, 2006 9:04 AM
Subject: RE: Follow-up Information

Jamie,

When we spoke yesterday on January 4th you had committed to getting back
to us by end-of-day January 5th. I didn't see any communication on the
5th, and was wondering if you have decided how you would like to
proceed.

Thanks - jason



From: Jamie Cansdale
To: Jason Weber
Cc: Lorna Williamson, Ben Miller
Date: Jan 6, 2006 1:03 PM
Subject: Re: Discuss TestDrive.Net

Jason,

I am sorry I was unable to get back to you yesterday. I have given
more thought to the issue of TestDriven.NET's integration into the
Express SKU. I remain of the opinion that I'm not technically in
breach of the licence. However I do not want the shadow of legal
action hanging over me, especially as I intend to release a commercial
version in the Spring.

I have therefore decided to drop support for the Express SKU, provided
that we're able to draft an acceptable announcement for my users. This
has not been an easy decision to make as I have invested a
considerable amount of time into developing and testing this feature
(on all of the Express languages).

I would appreciate it if you could draft an announcement stating
Microsoft's position towards TestDriven.NET and its integration into
the various SKUs, including the fact that Microsoft doesn't consider
unit testing integration appropriate for the Express SKU target users.
I am also keen to reassure my users that Microsoft is fully
supportive of TestDriven.NET's future integration with VSTS.

Regards, Jamie.



From: Jason Weber
To: Jamie Cansdale
Cc: Lorna Williamson, Ben Miller
Date: Jan 6, 2006 11:25 PM
Subject: RE: Discuss TestDrive.Net

Hi Jamie,

Thank you for your careful consideration and decision to remove Express
SKU integration. I would be happy to help you craft justification for
your customers, and you're welcome to use my name. Microsoft however
can't provide you a quote for your website. My recommendation would be
something like this...

"After speaking with Jason Weber from Microsoft I realized that by
adding features to Visual Studio Express I was in breach of the Visual
Studio license agreements and copyrights. I have therefore decided to
remove support for the Visual Studio Express SKU's from TestDriven.Net.
Jason was very supportive of TestDriven.Net's integration into the other
Visual Studio 2005 products and I was invited to join the VSIP program.
This would allow me to fly to Redmond each quarter and work closely with
the Visual Studio development team on deeper integration."

If you have other ideas let me know. I would be happy to review your
proposed messaging.

Thanks - jason



From: Jamie Cansdale
To: Lorna Williamson
Date: Jan 8, 2006 1:47 PM
Subject: Reading Office on Tuesday?

Hi Lorna,

I was wondering if you were going to be in the Microsoft Reading
office on Tuesday. There is a chance I'll be in the area and I
wondered if it would be convenient to meet up. I'd like to thank you
and Ben for sitting in on the marathon tele-conference the other day.
I thought it would be good to meet up under more agreeable conditions.

Thanks, Jamie.



From: Jason Weber
To: Jamie Cansdale
Cc: Lorna Williamson, Ben Miller
Date: Jan 12, 2006 8:22 AM
Subject: RE: Discuss TestDrive.Net

Hi Jamie,

I haven't seen a response to this email or changes to the TestDrive
website. Where do things stand? I would appreciate your assistance
resolving this problem by end of week.

Thank you! - jason



From: Ben Miller
To: Jamie Cansdale
Date: Jan 12, 2006 7:06 PM
Subject: Testdriven.NET and Express

Jamie,

I am following up on the conversation and the email that you sent that
you would take down support for the Express SKU’s.

I want to make sure that you got the email from Jason Weber, and also
that you are going to be able to comply with taking this down by the
end of the week.

Please reply to me so that I can help avoid any further calls and we
can wrap this up ASAP.

Thanks.



From: Jamie Cansdale
To: Ben Miller
Date: Jan 12, 2006 7:21 PM
Subject: Re: Testdriven.NET and Express

Hi Ben,

I'm seeking some more advice on the matter tonight. I hope to reply
with something more definitive tomorrow.

Thanks, Jamie.



From: Ben Miller
To: Jamie Cansdale
Date: Jan 12, 2006 7:22 PM
Subject: RE: Testdriven.NET and Express

Thanks for the reply.

More advice in what way?  I thought that you indicated that you were
going to remove the support and take it off the site.

Are you still considering not taking down the support for Express?

Ben J. Miller
MVP Lead  | ASP.NET, IIS, SQL Server, XML, XML Web Services



From: Jamie Cansdale
To: Jason Weber
Cc: Lorna Williamson, Ben Miller
Date: Jan 13, 2006 7:20 PM
Subject: Re: Discuss TestDrive.Net

Jason,

I'm afraid your recommended wording is totally unacceptable. As I
mentioned in my previous email, I remain of the opinion that I'm not
in breach of the licence. I would like to know if Microsoft is
officially requesting that I remove support for the Express SKU and if
so on what basis. I do insist on this if there is to be any
announcement.

Regards, Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Jan 18, 2006 7:18 AM
Subject: RE: Discuss TestDrive.Net

Jamie,

Yes, we are requesting that you remove your current extensions to the
Express SKU. As I explained in both calls, we believe that neither the
Express license terms nor the Visual Studio SDK license terms permit you
to create and offer these extensions.

We can work with you on the wording of the announcement. We don't need
you to admit breach of our license agreements or copyright infringement.
Instead, we would be comfortable with a statement essentially saying
that 'Microsoft does not believe the extensions are permitted under the
relevant license terms', and that although you may disagree, you have
decided to remove your extensions for the Express products.

Please let me know how you would like to proceed, or propose different
verbiage for the announcement.

Thanks - jason



From: Jamie Cansdale
To: Jason Weber
Cc: Lorna Williamson, Ben Miller
Date: Jan 23, 2006 3:48 PM
Subject: Re: Discuss TestDrive.Net

Jason,

In our last conference call you mentioned numerous ways in which you
believed I was in breach of the Visual Studio SDK licence agreement.
You also said that adding buttons to the Express SKU may be a breach
of Microsoft's copyright.

The code you believe violates the Visual Studio SDK licence agreement
is present in all versions of TestDriven.NET (but is only actually
invoked when executing inside a Visual Studio 2005 Team Edition). It
is therefore the case that removing support for the Express SKU
wouldn't remedy the licence situation. Even if Microsoft chose not to
pursue this perceived licence breach, it would still leave any future
versions of TestDriven.NET in a vulnerable position.

I have therefore decided to remove all references to Visual Studio SDK
assemblies. I find this situation regrettable as it does limit
integration possibilities. I'm planning to discuss the issues raised
and find out how other add-in developers interface with the Visual
Studio SDK. I have seen many blog entries that seem to encourage
add-in developers to circumvent the PLK mechanism (assuming that is
what casting the DTE object to IServiceProvider does).

As far as copyright is concerned, I still fail to understand - despite
having researched the subject - how extending an application could be
construed as a violation. I would appreciate if you could clarify
further this issue.

Regards,
Jamie.

[I never received a reply to this email]




From: Jason Weber
To: Jamie Cansdale
Date: Mar 24, 2006 3:57 AM
Subject: TestDriven Integration

Jamie,

It’s been a while since we last connected. Are you available for a conference
call next week? Craig Symonds, the General Manager for Visual Studio, would like
to meet you and discuss your integration.

Thanks - jason



From: Jamie Cansdale
To: Jason Weber
Date: Mar 27, 2006 3:48 PM
Subject: Re: TestDriven Integration

Jason,

I would be available for a call sometime this week. Could you let me
know the agenda and who would be joining the call?

Thanks, Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Mar 27, 2006 5:20 PM
Subject: RE: TestDriven Integration

The agenda is the same as our last two calls, to continue discussions
around your extensions to Visual Studio Express. It will be Craig
Symonds and myself on our side. Can you please make Thursday
12:00PM-12:30PM PST?

I will send you a conference call number.

Thanks! - jason



From: Jamie Cansdale
To: Jason Weber
Date: Mar 27, 2006 10:11 PM
Subject: Re: TestDriven Integration

Jason,

If the agenda would be the same as our last two calls, I don't think
it would be a productive use of anyone's time. I'm quite confident
that I'm not in breach of the Express SKU licence. I am reluctant to
spend any more time on this without the possibility of a more
constructive outcome.

Regards,
Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Mar 27, 2006 11:46 PM
Subject: RE: TestDriven Integration

Jamie, it's unfortunate to hear that you feel this way. My objective has
been to help you understand the technical, business and license
implications to your Visual Studio Express hacks. I hope that you feel
my assistance has been productive. What would you recommend as next
steps to resolving this situation?

Thanks! - jason



From: Jamie Cansdale
To: Jason Weber
Date: Mar 28, 2006 11:42 PM
Subject: Re: TestDriven Integration

Jason,

If you are keen to have a tele-conference, I think it would help if
Craig Symonds was CCed on the emails. It would be good to make our
positions clear and offer any suggestions up front. I'm reluctant to
have a fruitless discussion over licences without anything new being
added to the mix.

Regards,
Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Mar 29, 2006 1:49 AM
Subject: RE: TestDriven Integration

Our position hasn't changed and we don't have any new suggestions for
you. I wanted to provide you one last opportunity to discuss this with
the Microsoft executive responsible for the Visual Studio business. It's
your decision whether or not you take advantage of that opportunity.

If you don't want to discuss this with Craig please recommend next steps
toward resolution.

Thanks! - jason



From: Jamie Cansdale
To: Jason Weber
Date: Mar 29, 2006 11:27 AM
Subject: Re: TestDriven Integration

Jason,

My recommendation is that you CC Craig on this email. If we are going
to have a tele-conference I think that is perfectly reasonable. I
would also appreciate it if you could answer my email of Jan 23.

Regards,
Jamie.



From: Jason Weber
To: Jamie Cansdale
Date: Mar 29, 2006 7:04 PM
Subject: RE: TestDriven Integration

Craig Symonds runs the entire Visual Studio division (1,000 people) and
is a busy Microsoft executive. We're fortunate that we could get 30
minutes with him for a conference call. I will remain your primary
contact for these discussions. Including Craig on this email won't add
any value to the process. If you have something that you want to provide
to Craig you can work through me.

As I replied to you on January 23rd Microsoft can't provide you legal
advice. You will need to work with your legal council to answer these
questions.

Please let me know whether or not you would like to meet with Craig
tomorrow!

Thanks! - jason



From: Jamie Cansdale
To: Jason Weber
Cc: Grant Drake
Date: Mar 30, 2006 2:42 AM
Subject: Re: TestDriven Integration

Jason,

I will happily make my position clear to Craig. If you would like to
go ahead with the call, Grant Drake will be joining us as well (he is
responsible for the code coverage support that comes with
TestDriven.NET). Please copy him on any future emails. I would
appreciate it if you could sent a UK local conference call number.

Regards,
Jamie.