Scott Guthrie with more on ASP.NET 2.0 May 13,

Document Sample
Scott Guthrie with more on ASP.NET 2.0 May 13, Powered By Docstoc

            Carl Franklin and Richard Campbell
            interview experts to bring you insights
            into .NET technology and the state of
            software development. More than just
            a dry interview show, we have fun!
            Original Music! Prizes! Check out what
            you've been missing!

                          Text Transcript of Show #113
            (Transcription services provided by PWOP Productions)

         Scott Guthrie with more on ASP.NET 2.0
                      May 13, 2005
                            Our Sponsors    
                                                           Scott Guthrie with more on ASP.NET 2.0
                                                                                      May 13, 2005

Geoff Maciolek: The opinions and viewpoints          Carl Franklin: I don’t know. Lot of significant
expressed in .NET Rocks! are not necessarily         things happened today. Two things – one, a
those of its sponsors or of Microsoft Corporation,   grotesquely horrible serial killer was finally
its partners or employees. .NET Rocks! is a          executed today in Connecticut for the first time in
production of, which is solely         like I don’t know.
responsible for it’s content, –
“Training Developers to Work Smarter”.               Richard Campbell: 50 something years?

(Music)                                              Carl Franklin: 50 something years, yeah. And
                                                     after much ado and depending on death list of
Geoff Maciolek: Hey Rock Heads! stop                 military instillations, one of our local naval base
debugging you’re AJAX JavaScripts and listen         made it on there, which is not only a naval base
up, it’s time for another stellar episode of .NET    but a training center for submarine school and so
Rocks! – “The Internet Audio Talk Show” for          everybody is kind of depressed down here, little
.NET Developers with Carl Franklin and Richard       bummed out.
Campbell. This is Geoff Maciolek here to
announce show # 113 with guest Scott Guthrie,        Richard Campbell: They are going to shut the
recorded live, Friday May 13 2005.                   base down.

.NET Rocks! is brought to you by –     Carl Franklin: It made the list and the list is now,
“Training Developers to Work Smarter” and now        I don’t know what going to happen to it but the
offering hands on VB.NET and ASP.NET classes         Pentagon is recommending that they shut it
remotely online at and by          down.
DataDynamics makers of ActiveReports.NET -
“Simple, powerful and cost effective reporting for   Richard Campbell: New London is the base for
Windows       Forms       and   ASP.NET      Web     the Virginia class submarines too.
Applications” online at
and by start with better controls,     Carl Franklin: Yeah, that’s right it’s Groton,
finish with better sites          which is right across the river but you are right.
                                                     The sea wolf, the Virginias those are here.
Support is also provided by CoDe Magazine “The
Leading Independent Magazine” for .NET               Richard Campbell: Now if they do shut it down,
Developers online at           that decreases your likelihood of having a nuclear
and now the man who has been teaching all            detonation anytime soon.
week and has had his funny bone whacked right
out of him, Carl Franklin.                           Carl Franklin: Yes this is true, this is true. I think
                                                     it would make a nice university campus but
(Music)                                              enough about that. Anyway you are right, I have
                                                     been teaching all week and my brain is little bit
Carl Franklin: Thank you, Geoff for that creepy      mush. So don’t expect too much from me, but we
introduction and now let us take a moment to         do get some email Richard.
pray to the Gods that watch over the hard drives
during the show. Oh! Hard Drive Gods, we wish        Richard Campbell: Yes.
thee please keep them running, keep them intact.
                                                     Carl Franklin: We got this great note from Glenn
Richard Campbell: Let not our stripes break          Jermaine in beautiful New Zealand. Hey Carl!
down.                                                Just had to drop you a quick note after listening
                                                     to the latest DNR. I am embarrassed to say it, but
Carl Franklin: Well, this is Carl Franklin you are   until I listened to this last show, I’ve never gotten
listening to the .NET Rocks! I am live in New        around to investigating DotNetNuke. Sure I had
London, Connecticut on the East Coast with a         heard about it but between the server installs and
submarine base that just got whacked on the list     maintenance, the .NET programming, the
and we’ll talk about that maybe on Mondays! But      database and network troubleshooting, reading
anyway I’d like to introduce my co-host out there    50 blogs a day and of course “warning: obligatory
in Vancouver, British Columbia, Mr. Richard          gratuitous suck up ahead.”
Campbell. How are you?
                                                     Listening to DNR on Mondays each week, I had
Richard Campbell: Hey, I am good man, having         never gotten around to taking the look. What can
a good time, it’s 05/13/05, and I am not sure what   I say except wow! I have three clients, who are
to do about that.                                    hanging out for a solution that allows them
                                                     control over their content, allows subscriptions,
                                                     ease of management etc. This is undoubtedly it.

Transcription by PWOP Productions,                                       Page 2 of 17
                                                                  Scott Guthrie with more on ASP.NET 2.0
                                                                                             May 13, 2005

I’ve looked at a few commercial solutions, but
hey, these clients are small to medium size                 Carl Franklin: I have a couple other community
businesses without in-house IT support and                  announcements here. Rory Blyth, former .NET
without tens of thousands needed to purchase                Rocks! co-host is now executive producer of the
install and support some of these solutions. While          Code Room. If you haven’t seen the Code Room,
I was listening to the show, I was able to                  it’s a 1½-hour TV show that exposes
download the code, install the site and register a          technologists to the latest tools and technologies
couple of fake users, all before you signed off. I          for tracking real world software development
can’t believe I’ve missed looking into this product         issues. And it’s a professionally produced and
for so long. So, I was up till 4:00 this morning,           directed TV show that highlights the social
playing with DotNetNuke. My wife doesn’t thank              teaming and technical challenges faced when
you, but I do.”                                             attempting to complete a software development
                                                            project. Episode 2 is now online at
Richard Campbell: Yeah, I have had lots of         Also on May 4 , long time
nights where my wife didn’t thank me.                       .NET Rocks! fan Brian Kuhn became a proud
                                                            father of baby girl, Avery Ryanne Bentley Kuhn –
Carl Franklin: Yeah, so that’s from Glenn                   7 pounds, 9.9 ounces and was 20 inches in
Jermaine, iResolve IT, New Zealand, who, we                 length.
shrinksterized       this      website     for     you, I also did a little bit of work         Richard Campbell: It’s a big baby.
with DotNetNuke for the first time this week. Not
the first time but the first time I’d actually set it up    Carl Franklin: If you really want to see her,
from scratch. Somebody else had set it up here              check out
and I had some issues with it but apparently the
issues were, and I can’t say it wasn’t not reading          Richard Campbell: Congratulations, Brian.
the documentation, it was because I read the
documentation and chose to change a few items               Carl Franklin: Congratulations Brian, it’s
in the config file before installing it, which crashed      awesome. Jeffrey Palermo, who came to our
it. So, the solution was don’t touch it, just install it.   attention listening to .NET Rocks! while on active
And then go back and make some configurations,              duty in Iraq is now working at DELL computer
but do we see that?                                         and hosting a pre-show party at TechEd for the
                                                            early arrivers, details at Also I
Richard Campbell: Yeah, we get later when you               want to announce that Giancarlo Aguilera fights
have some idea of the way it works?                         back against the C# snobs over at the code
                                                            project in an article that takes on a recent C#
Carl Franklin: So, if you have problem installing,          versus VB article at the same website, which we
just don’t change anything. First install it and then       mentioned on an earlier show. You can read this
go back and tweak it. So, what’s happening up in            article entitled, ‘VB Defamation Indeed!’ at
Canada this week?                                  and that’s all I got man. Let’s
                                                            just go ahead and announce Scott Guthrie, shall
Richard Campbell: Well, I’ve got a session                  we?
coming up. I am doing the Vancouver technology
users group on Wednesday. I don’t even know                 Richard Campbell: A guy who really doesn’t
what the heck day that is. So 13 today what day             need much in the way of an announcement.
is it?
                                                            Carl Franklin: He really doesn’t, I mean we
                          th   th   th   th   th
Carl Franklin: Yeah, so 13 , 14 , 15 , 16 , 17 ,            could just say that he is God and leave it at. He
  th   th
18 . 18 .                                                   runs the IIS team, the ASP.NET team and the
                                                            Visual Studio web tools team. What can we say,
Richard Campbell: Yeah, so I am doing the                   give it up for Scott Guthrie. How are you sir?
Vancouver technology user group’s presentation
on May 18th on Wednesday night. We will be                  Scott Guthrie: Pretty good, thanks.
talking about some advance querying tricks, one
of my favorite sessions and one I am actually               Carl Franklin: Yeah, you’ve been on the show
going to do at TechEd in Orlando as well.                   before, you were on the show actually last year,
                                                            talking about ASP.NET 2.0 and it was really you
Carl Franklin: Awesome.                                     wet our appetite. I think that show may have
                                                            been the first time people many people had
Richard Campbell: Yeah, it will be good fun                 heard what ASP.NET 2.0 is going to be doing?
there. They are nice bunch of guys there and we             And you ran through a list of the major features,
eat some really bad pizza and drink too much                but a lot has changed since the, huh?
cola and talk shop for a while.

Transcription by PWOP Productions,                                             Page 3 of 17
                                                                 Scott Guthrie with more on ASP.NET 2.0
                                                                                            May 13, 2005

Scott Guthrie: Yeah, it was probably almost                items in the tree view, first time, we went into the
maybe 2 years ago, that we did the show I think.           page. Instead just fill out the first level of depth on
                                                           the tree view and then if people go ahead and
Carl Franklin: Jeez! You may be right.                     expand subfolders to see other sub items, only at
                                                           that point go back to the Server, just grab the
Scott Guthrie: Yeah, so we’ve shipped 2 Betas              next set of lists and automatically populate the
since then. So Beta 1.0 and Beta 2.0 just came             tree view on demand and you are not doing a
out about a month ago. And it’s getting to the             post back. It’s much -- much cleaner, much --
final legs of the release and it’s pretty much             much smoother experience and you as a
baked and we’re getting ready to ship it.                  developer you really don’t have to do anything
                                                           special in order to enable it.
Carl Franklin: Well I was just reading an article, I
can’t remember exactly which magazine it was,              Richard Campbell: See I do that kind of stuff
but I read an article about the asynchronous               and so Carl. I did this kind of stuff in 1998 with IE
events and we made a joke about AJAX, in the               5.0, it was XML HTTP existed then, it’s just
beginning of the show. But I’ve been playing with          nobody was using it for anything and was all
that stuff and Richard has done some stuff with it         pretty raw XML and there were those standards
as well although it was before it was called AJAX.         or anything, but we used the same basic concept
But I downloaded a .NET AJAX, .NET DLL, which              in which you described almost to the letter. We
is this guy’s project that’s basically simplifies          just did it by hand, it worked great but if I’d known
access to XML HTTP and I know that you guys                everybody was going to get so excited about it I
are doing something in ASP.NET 2.0 or around               would have kept on doing it.
that. What can you tell us about that?
                                                           Scott Guthrie: Well, the beauty of the stuff, the
Scott Guthrie: Yeah, in ASP.NET 2.0, we have a             infrastructure in ASP.NET 2.0 is you don’t have
feature called Client Callbacks, we should have            to write any Java Script to enable it. The control
come up with the cool sexy name like AJAX but              itself, all you do I think on the tree view it is like
previously we were working over the descriptive            populate on demand or some property that you
name.                                                      set and you specify populate on demand Server
                                                           event. And then anytime whether it’s on the
Richard Campbell: Yeah, that took all the fun              Client or Server, you want to populate a node
out of it.                                                 with this call up to this event, you write your code
                                                           the way you go. And so instead of having to write
Scott Guthrie: Yeah, it’s been in the product for          hundreds of lines of Java Script code that you
bunch of years now, but the idea is to enable,             need to debug and multiple browsers, in about
provide a framework, so that from the client you           two minutes you can enable that and it works.
can callback to the Server and rather than have
to do a post back or rather than refresh the entire        Richard Campbell: It really is almost like a
page, you can actually effectively have HTML or            switch option instead of post back.
for a script of the client talk directly to a control on
the Server. So, you can actually reference and             Carl Franklin: Well, let me ask you this. Is it only
send a message directly into a Server control in           a feature that’s baked in the some controls for
your page and Server control can then return               certain things or can you?
data. The nice thing about it is from the Server
prospective you don’t have to write in special             Scott Guthrie: No you can exchange any type of
code in order to enable it. And it provides a really       data. The built in controls, we have in ASP.NET
nice kind of hierarchical composition model. So            2.0, we have built into the tree view, we have
you can have a control nested within a control,            built in the grid views so you page through data.
thus exposing your callback and yeah we do all             We can actually do client, basically if you go from
the magic to make sure the calls gets to the right         page 1 to page 2 to page 3 of a 100 pages of
place.                                                     Google results or data base search or whatever
                                                           you have when you click on page 3 it will go back
Richard Campbell: And the nice thing here is               to the Server grab page 3 and just automatically
the user experience is very stable. You no longer          re-pan it on the client. So it’s just built in so that
re-panning the whole page, you are just going off          properties are under control.
and getting the chunk you want.
                                                           Carl Franklin: Well I guess what I am getting at
Scott Guthrie: Yeah, exactly. So, example would            is, can you do some low level stuff if you really
be – let’s say you have a tree view. And the tree          wanted to?
view has thousands of items in it. And one of the
nice things about it, you could say Oh! actually on        Scott Guthrie: Oh! Yeah, there is a whole
the tree view rather than populate all thousand            framework. I mean basically, there is a whole

Transcription by PWOP Productions,                                             Page 4 of 17
                                                             Scott Guthrie with more on ASP.NET 2.0
                                                                                        May 13, 2005

framework tied into the page framework for             last two years it is browsers have caught up now.
enabling it. So if you want to drop down and write     So it’s that you can do this in the browser
your own custom thing more power to ya.                independently. And Firefox fully supports it, IE
                                                       fully supports it. You can also make it work with
Carl Franklin: Yeah, if you want to write you own      Safari. And you think back two or three years
JavaScript, what comes back you can.                   ago, browsers didn’t have, there is version I think
                                                       origin of subset that within 99% of on devices.
Scott Guthrie: Yeah, the beauty is control
developers can encapsulate that and hide it from       Richard Campbell: Yeah it was IE or nothing.
users. So users don’t have to see all that, all that
kind of implementation. They just have a very          Scott Guthrie: It’s sort of pre-Mozilla versions of
nice clean model. And in ASP.NET 2.0 we just           browsers, LINUX or extra on Mac, where didn’t
built the whole bunch of control to take               support clients of Java script as well or there
advantage of it.                                       were enough differences from IE that there
                                                       wasn’t a good standards based way that you
Carl Franklin: Cool. And you are using XML             could go ahead and write it. And now there kind
HTTP?                                                  of really is, you can write an XHTML, spec and
                                                       you can use standard Java script and you can
Scott Guthrie: Yeah we use XML HTTP.                   basically build these experiences that run on any
                                                       browser. I think you are going to see a lot more
Carl Franklin: All right so it’s essentially the       people take advantage of that.
same stuff that AJAX is doing, is using.
                                                       Richard Campbell: We are all enjoying the fact
Scott Guthrie: Yeah it is similar. The beauty is       that Netscape2 and IE 3 are nowhere to be found
just you don’t have to; you don’t even have to         any more.
write as the AJAX layer.
                                                       Scott Guthrie: Yeah.
Carl Franklin: In classic Microsoft’s style, you
guys write the tools that take the grunt work out      Carl Franklin: Definitely. Well what would you
of it.                                                 think, how about support for Mozilla in the next
                                                       framework, in terms of Firefox building the stuff
Scott Guthrie: Yeah I mean that’s what we are          right into the machine.config?
trying to and you will see even more probably
with the next version of ASP.NET.                      Scott Guthrie: Yeah we have full support and
                                                       one of the things that we did with ASP.NET2.0 is
Richard Campbell: And you know what they               try to make sure that we support kind of all
say, everyday you don’t debug. Java script is a        modern browsers and so one of the things that
very good day.                                         people have with ASP.NET 1.1 is validators only
                                                       due up level for IE they didn’t do up level for say
Carl Franklin: Oh God! I ever have to debug            Firefox or other things.
Java, actually did some this week as I was doing
this. So, obliviously the application that             Carl Franklin: Well there was no Firefox when
everybody is trying to hack now is Google maps,        1.1 came out, right?
right? And that’s exactly what they are doing,
they are using it. XML HTTP calling out to code        Scott Guthrie: Yeah there was no Firefox but it
on the Server returning graphic data, image data,      didn’t work with say Netscape 4 or Netscape 6.
whatever it is. And just for a joke we went and        One of the things that we have done is gone back
looked this week on the web to try to find             and made sure that all our up level forum group
somebody who has done any kind of successful           features now work with all modern browsers. So
hack to Google maps. And while we have found           you can maintain scroll back positions, you can
of couple of websites, where people had done it,       do client site validation by using client site
they weren't really forthcoming with their code.       validation framework. You can use the tree view
But anyway, I can see that, what do you think? I       and the menu and some of the Richter controls,
mean this is a real popular thing right now, this      perfectly well, no browsers. And so, I think people
AJAX wacky stuff and you think that this is trend,     that are targeting multi browser scenarios are
it’s just a phase or a trend or you think a lot more   going to be pretty happy with the results.
websites are going to take advantage of this kind
of stuff in the future?                                Carl Franklin: When .NET first came out and I
                                                       saw ASP.NET and the browser support there in,
Scott Guthrie: Oh definitely it’s a trend. I think     which if people listening don’t know the device
you will see a lot more websites take advantage        capabilities for the different browsers are located
of it. I think the big thing was changed within the    in machine.config, which is in your .NET directory

Transcription by PWOP Productions,                                      Page 5 of 17
                                                             Scott Guthrie with more on ASP.NET 2.0
                                                                                        May 13, 2005

under Microsoft .NET framework in your version         strings suddenly you always get the default
and then under config. And it’s a big XML file that    behavior over the previous versions. So you don’t
has all the configuration settings for the             have to worry about, every time someone
framework for the machine level. And you can           changes the user agent string you have to do
just do a search and find Opera in there, you can      something.
find web TV, you can find all these browsers that
you thought, we are never going to see again           Carl Franklin: Right. And do you think there will
they were in there. And I thought to myself, how       be updates that will come interim if necessary
are you guys going to keep up with that? Like if,      between, maybe even between service packs for
in between versions of the framework a browser         those devices if we start getting back into
comes out that you need capabilities for it. And I     browser war type scenario between difference
know that there hasn’t been any sort of -- did the     versus value?
last service pack contain patches to that for
different browsers or do you have a plan to do         Scott Guthrie: Definitely yeah. It’s pretty easy for
that?                                                  us to go ahead and do. And so if devices change
                                                       dramatically in capabilities that are certainly
Scott Guthrie: Yeah one thing is in 2.0 actually       something we would look at.
we changed the browser, the way the browser
detection works a little bit so same API. But we       Carl Franklin: Yeah and now having them in
have actually partitioned out so that instead of       separate files much easier for you, obviously.
embedding all the browser definitions in
machine.config they actually can now live in           Scott Guthrie: Yeah makes it makes it much
separate files, kind of .browser files. And one of     easier, the other thing that we have done which,
the benefits is that you can have multiple             now I haven’t seen any developer take
.browser files. So no wonder a single giant file       advantage of yet, outside Microsoft but it’s
you have to update. And one of the things if you       something advanced people will want to play with
use Visual Studio, we are starting with beta 2. If     to take a look at, is we have introduced the same
you are working on a web project and you say           we call an adapter model in ASP.NET 2.0. And
add new items, you will notice there is a browser      basically the way that works is, there is now
definition file now actually in the item template.     extensibility hooks built in to the core ASP.NET
You can pick that just as you can do new page or       control framework. For example, you put a button
new web.config file, you can say, oh new browser       on the page, by default it will use what is called
definition and it will create a browser’s directory    the built-in rendering capability and so that’s the
for you and provide you with an XML file that          HTML definition that we provide and the behavior
actually defines the template for how you define       definition that we provide. But you can actually as
browser capabilities. So it’s really easy for you to   part of the browser file, define an optional
add your own and the beauty is you can either          overwrite adapter for the button. And what that
add at the machine level but you can now easily        does is it keeps the same object model so you
add it your app level. So if you want to say, oh       still program it the same way in your page and all
just for this app I want to have opera do this         that. But when it comes time to render the control
weird wacky thing or I want to have IE do a weird      or to handle post back, we’ll call out the adapter
wacky thing. You can do that and you can also          and let it participate. And so, you could for
just add your own user agent devices and stuff.        example, build adapters that render a different
                                                       markup or radically different looking feel if you
Richard Campbell: And you just keep it in its          wanted to. And it will be easy just register them in
own file and does not to be combined with your         the config file and from that point on any button
main file or anything like that?                       used on that page for that particular device will
                                                       scape out to your adapter and you can configure
Scott Guthrie: Yeah, exactly. And there is the         it.
special directory it’s called app_browsers that we
look in underneath your app, where now you can         Richard Campbell: It’s very Windows sub
just copy it in there, you should be get to go,        classing like behavior except that there is…
which is kind of cool. But anyway, so creating
new devices is fairly easy. The other thing about      Scott Guthrie: Similar, the difference is not you
the browser capabilities is it’s, we use a regular     are not sub classing it.
expression based model for looking at user agent
strings. And so, you don’t have to worry about, oh     Richard Campbell: Yeah there is no subclass
we have version 5 comes out and you have               actually.
definitions for version 4.5 out there. You can say,
oh if it’s greater than 5 or greater than 4 do this.   Scott Guthrie: You are actually modifying the
So by default when new devices come out,               core control itself. And so the beauty there is, an
because it typically just read the user agent          advanced developer could define adapters let’s

Transcription by PWOP Productions,                                       Page 6 of 17
                                                            Scott Guthrie with more on ASP.NET 2.0
                                                                                       May 13, 2005

say once that used layers instead of tables for UI    for a few months. But at that point, the only thing
and more CSS specific stuff. You could build a        we are looking at is last minute performance
set of those and say, “Oh! I am going to replace      progressions, looking to get long haul stress, our
the rendering for the grid view.” And in effect you   machines running for huge extended periods of
add a whole lot of features to the actual grid view   time under heavy load. There are more and more
itself. And a developer using the grid view on a      customers are starting to go live on beta 2. And
page doesn’t have to learn new object model,          so, we’ll spend time actually watching how those
doesn’t have to learn new control. They are using     machines are doing and having them update
the same one, they just get more features or          periodically to use newer builds and then doing
different rendering. So it’s fully an advanced        compatibility testing and trying to fix as many
feature but it’s one that we expect to take           compat issues that as we as see. And we got to
advantage of more in the future as new devices        go. So it’s considering the end game of the cycle.
come out.
                                                      Carl Franklin: So Scott, you know that a
Richard Campbell: Yeah not only just for us but       company has come out with C++ Server pages,
for you as well it’s easy ways for you to add         active Server pages for a C++, are you scared?
extensibilities on to these different bits. And you
guys have done the hard part by just making sure      Scott Guthrie: Not terribly. I mean we obviously
all these intercept points are available.             use managed C++ with ASP.NET pretty well. I
                                                      am not too worried about embedding C++ inside
Scott Guthrie: Yeah exactly and so we have a          pages.
mobile set of adapters that we have built that
won't ship directly in the product but we might       Richard Campbell: I am waiting                for   the
ship like web download little bit later. And if you   assembly language implementation.
plug those in, our controls for example like WAP,
WML or XHTML mobile renderings.                       Carl Franklin: Yeah that would be the best right
Richard Campbell: Yeah that way both guys
that are still using WAP can make their phones        Scott Guthrie: Well someone has built a
work.                                                 managed compiler for IL. So you can actually,
                                                      yeah seriously you can…
Scott Guthrie: Yeah exactly.
                                                      Richard Campbell: Code write in IL?
Richard Campbell: I did a get a chance to peek
at your blog earlier on this week and I see you’re    Scott Guthrie: Angle bracket (< >) percent (%)
downloaded the compatibility testing level. So        and then just stick an IL. It’s like I think it is more
feature wise ASP.NET 2.0 is pretty much locked        built for the joke than as …
up now?
                                                      Richard Campbell: As a gag, yeah.
Scott Guthrie: Yeah it’s pretty much locked up. It
is a across my team is right now so that’s Visual     Scott Guthrie: ... you would actually build a
Studio side and the ASP.NET side we got about         whole website that way. But it’s pretty cool to
a 140 bugs left in the product. It’s refreshing the   see, I mean it’s very clever and very cool.
bug for you.
                                                      Carl Franklin: Here is a question from the chat
Richard Campbell: This is realtime here we are        room from Alfred Gary Myers Jr. in Brazil. He
looking at it right now.                              says, “As Whidbey approaches to RTM, you guys
                                                      probably already started to think about Orcas,
Scott Guthrie: Got about 7 bugs since we              any trends that you could share with us?”
started, I got to feel what's going on? Yeah so we
are down to the last couple of bugs. And we are       Scott Guthrie: Yeah, we are just sort of starting
basically pushing to hit zero bugs June 3 . So it’s   our, the Orcas is a code name for the version that
about three weeks away.                               shipped after V2. So Whidbey is an island here in
                                                      Seattle, that’s a code name for V2 just North of
Richard Campbell: That’s a good tough three           Seattle. And then Orcas is set of islands North of
weeks.                                                Whidbey. And so that’s the code name for our
                                                      next release and we are still in the early planning
Scott Guthrie: Yeah it would be busy three            phase there. But, I think we’ll probably have a
weeks. I have a lot of pizza for the team.            pretty good idea what we are going to build
Basically what we are at is push at zero bugs to      feature wise in probably next six weeks.
that point. And at that point we are basically
going to lock down. And we will stay locked down

Transcription by PWOP Productions,                                        Page 7 of 17
                                                              Scott Guthrie with more on ASP.NET 2.0
                                                                                         May 13, 2005

Richard Campbell: And one of the things that I          we start coding, have vision doc that we circulate
found when I was working multi version of               to the team and call out, “Here is the big features
software is often features the people have              just how it all is going to tie together.” And then
thought of that you have to triage out into the         we spend a couple months designing and once
next version. So you have this grab bag of, boy         when we finish this whole rollover then we start
those were neat ideas, we are just not going to         working on the next release.
get a chance to do these now they will be -- then
let’s look at our next version. So you are sitting      Richard Campbell: Are there any big features
on a heap of things like that?                          out there that just didn’t make this cut that you
                                                        can think of?
Scott Guthrie: Yeah, I mean in general there are
two classes of features you can do usually with         Scott Guthrie: Oh yeah, I think Orcas will be
releases. One is kind of specific, ‘oh it’d would be    pretty exciting release, lots of new stuff. There
really nice to add this property or add this small      will be lots of goodies to bring. Yeah, I can
feature to an existing feature or existing control or   definitely think of lots.
app service or something like that’. And then
there is kind of like the bigger themes, which are      Richard Campbell: But you are not going to tell
assemblies of features that work together and           us any of them.
accomplish a specific goal.
                                                        Scott Guthrie: Yeah I think…
Richard Campbell: Almost sort of a style of how
we want them to shift the development model.            Carl Franklin: Just drop one on us man.

Scott Guthrie: Yeah, so for example in Whidbey          Richard Campbell: Yeah we are not going to
we updated the validator controls to support            hold you to it, we know it’s too early.
Firefox. Other examples are taking the existing
feature and doing a little bit more with it to make     Scott Guthrie: I think you will see a lot more
it better. But example is kind of--. A bigger theme     spent, a lot more time, we will spend a lot of time
would be we said “hey! We want to dramatically          looking at, how could you do more client side
simplify doing security and so we added the             web development in the sense of taking
membership, the role management services,               advantage of AJAX style model stuff. We made a
more login controls.” And that’s a much bigger          really good start without in V2 and I think you will
kind of new thing. So usually what I try to do          see us push that even more in V3.
when we were planning out our next release is
come up with a vision doc that called out a             Carl Franklin: And in terms of the controls that
couple of big themes and tries to orient a whole        you build in and things like that.
bunch of features around that theme. And then,
we will go back into same time, look at our             Scott Guthrie: Yeah, there is a lot of--. I think it’s
existing feature set and make sure that we              still pretty darned hard to do AJAX style
enhance the existing features as well.                  development.

Richard Campbell: There are key factors around          Richard Campbell: Absolutely, and I do think
web development specifically that I guess you           you hit to the heart of AJAX in the sense that
can tackle one at a time and say what would be a        giving us a way to go, get more data without
better way. Security is obviously one of them –         rebuilding the page. And if that’s a very
data handling is another one. And I think the           fundamental part of that equation but then
master page sells into the whole idea of how do         another part of it is there should be some ability
we separate look in and content effectively.            to do more work at the client level. It’s got some
                                                        power to it, it’s got symmetry between the
Scott Guthrie: Yeah. For Whidbey the role of            versions now. There are some things that could
theme we had developed our productivity. And all        be done there. We don’t have to go, ask the
those features as mentioned nicely dubbed down          Server for every little thing.
underneath them in the sense of how can we
dramatically make building web applications             Scott Guthrie: And one of the big things that we
easier and more productive. And then we broke it        also pushed with ASP.NET V2.0 is XHTML
out from, hey how do we label you, how                  support and trying to be really standards
consistent you are. Well master pages and               compliance, still find there is a mark up and in
themes come into play there. How do we enable           terms of capabilities. And one of the goals of that
data access to be radically simpler and easier,         is so that in the next release for example we can
the source of the data stuff came in security and       leverage the fact that in theory your page would
all that stuff. So, that’s kind of usually, so all we   work everywhere in the same way and you can
usually try to do is use a couple months before         write through a kind of a common up level,

Transcription by PWOP Productions,                                          Page 8 of 17
                                                            Scott Guthrie with more on ASP.NET 2.0
                                                                                       May 13, 2005

functionality. You can do a lot of stuff there and    change of it, some that frankly I haven’t seen in
sort of having to kind of special case for this       any other tool or tried to do in real time. And
browser and that browser which is a mark up           Dreamweaver I think lets you run a switch over
difference by getting customers to a point where      will do one time validation but will actually
the writing pages that are standard’s complying       validate as you are typing in real time, which is
and will work by default in all these different       pretty cool.
                                                      Carl Franklin: Are you guys looking at doing any
Richard Campbell: And also very rich.                 kind of cascading style sheet tool that goes
                                                      beyond with just basic editor does?
Scott Guthrie: Yeah exactly and because it’s
actually XHTML and because it supports that           Scott Guthrie: I think for work as you see is I
kind of important common subset. It’s a rich          also mentioned the designer developer workflow
subset and you can do a lot of stuff with it.         integration and I think we have done the first
                                                      level, which is to be to go to XHTML for mark up.
Richard Campbell: Further we get away from            Obviously we support CSS with V2 but I think
the if, IE statements the happier I am going to be.   there are lots more interesting things we could do
                                                      in terms of re-factoring for CSS and really
Scott Guthrie: Yeah exactly. So I think you will      pushing style sheets more. And I think we will
see AJAX is a -- AJAX style kind of development       see a lot more of that both in the runtime side
has a big theme in Orcas and I think another big      and also on the tool side in Orcas. So, Whidbey
theme you will see is richer designer developer       is going to be a giant stepping stone towards kind
workflow integration.                                 of achieving that Nirvana of designers and
                                                      developers working together, is even more we
Carl Franklin: That’s great I am very happy to        can do.
see that.
Richard Campbell: You have said something
about XHTML and I remember from your blog             Carl Franklin: Folks do yourself a favor and
entry you are talking about one of the things         check out our friends DataDynamics website
about ASP 2.0 in studio 2005 was XHTML is    makers of ActiveReports.NET
going to be the default setting that when you built   – simple, powerful and cost effective reporting for
pages you built them compliant. And then when         Windows Forms and ASP.NET, very nice stuff.
you ran into conversion issues with the               You compile the reports right into your
compliance you are now got to sort of vary the        applications ship them with your assemblies. It
rule that when you are upgrading an app from          has all the great features you come to expect in a
2003 will turn that off to make sure you work.        reporting engine. And you can use active
                                                      Xcontrols writing the reports too. So great stuff,
Scott Guthrie: It’s, one of the issues that we run    DataDynamics has been an excellent sponsor of
into is there are people who have been                .NET Rocks! for a long time. They deserve a little
generating non standards mark up for long time        bit of your love and attention. So go check them
and frankly a lot of our development tools have       out at
been grudging that by not themselves generating
standards compliance.                                 Carl Franklin: Scott when I first heard about all
                                                      the great high level features that are going into
Richard Campbell: Some would say all of the           ASP.NET I really think that’s awesome and great.
tools.                                                In the back of my head I have a fear like oh my
                                                      god! I am not going to be able to get down and
Scott Guthrie: Some would say all of the tools.       code at the level that I need to code at. And just
And so one of the big things that we are doing        address that like you can literary code at any
with Visual Studio 2005 is you are generating         level you want in ASP.NET 2.0’s isn’t that right?
XHTML compliance mark up by default. Adding
the XHTML doc type by default and then I think a      Scott Guthrie: Oh absolutely it’s if anything we
really key feature is providing XHTML validation      have added more low-level features I think than
inside the source editor by default. And so as you    the previous version of the release. I think the
are doing IntelliSense you are actually filtered by   stuff that gets the big buzz is well I can you know
default on what are the XHTML component               there is all these features that I can just take
properties events etc. And we even provided a         advantage of to kind of assemble a site really-
Java script statement completion based on             really quickly. But the sensibility hooks that we
whether it’s XHTML or IE or Netscape. So literally    have added to all those features really let
vary everything based on what schema or what          advance developers drop down and really get
device you are targeting. I think a pretty huge       their fingers dirty.

Transcription by PWOP Productions,                                     Page 9 of 17
                                                              Scott Guthrie with more on ASP.NET 2.0
                                                                                         May 13, 2005

                                                        membership provider base class. Implement the
Carl Franklin: Tell me some more about the              contract methods that you want for example
provider model. Like what is that entail and how        create user, validate user etc. Register in the
can I, where can I expect to see that?                  config. file and at that point anyone in the system
                                                        who calls membership.createuser it will
Scott Guthrie: So some of the big features we           automatically call into your message and you can
have added in V2 are things like the membership         basically control what happens. And there is a big
system for doing username password credential           beauty of that is you can go ahead and integrate
store management. The role management                   that then with any existing backend system you
system for managing, usernames and roles, the           have, you can really modify the behavior in the
profile system for managing personalization data,       semantics however you want. But then the
a site navigation system for managing kind of a         beauty is anyone within the app though that’s
link structure in your site. Those are some of          using the standard API automatically goes
examples we call application services. And out of       through implementation.
the box they just work. There is a whole bunch of
controls that you can write your code against           Richard Campbell: It’s really a cool trick. Gets
them directly. So, your membership doc, validate        me so extorted about this is, it has always been
user, membership doc add user and there is also         the truth the situation when you are developers
the in controls that go against those APIs. So you      you are either fully committed to the solution or
can also just drop in ASP:Login and it will talk to     you can’t use any of it all. So, you are either all in
the membership system in a way you go. So it            or you are not in and as soon as you find
gives you a lot out of the box capability it was        whichever you go look for the variation as soon
great. The thing obviously if you are in a complex      as something didn’t fit you okay we can’t use any
environment or you already had -- like an               of those we got to roll it all ourselves. And you’ve
enterprise environment or you already have a            defeated that by creating this almost like reverse
username, password database that you are                API instead of me coming to you and saying I
using, the question is what do I do with these          want you to do this I am saying I bring my code to
features? Are they useful for me or not? And            you and say tell me when you need me to do
obviously we want the answer to be yes and so           this?
what we did was we made sure that all of our
core features are built in with what’s called this      Scott Guthrie: And the really nice thing is all
provider pattern. And basically the pattern is fairly   these productivity features in ASP.NET are built
easy or simple is, is don’t ever have an API            on top of that. So it’s not just, oh! If you build in a
directly talk to it’s implementation or data stored.    membership provider you now have a new
Instead basically looking with config file to see       membership API you can use for financial
what providers configured for that particular API.      management. All the log in controls will just work
There was ample membership and it has been              against the only provider without you having to
load with what’s called the membership provider         change anything.
implements an abstract class, which defines the
contract for what the membership provider looks         Carl Franklin: You can build it on both sides of
like. And the membership API then directly              the interface in other words.
delegates to that class that’s implemented that
contract. And that class then provides the              Scott Guthrie: Exactly and for example if you
ultimate behavior. And so there is a built in SQL       build a site navigation system that stores the link
membership provider class in the product and            structures for your site in the database that you
what that does is when it’s configured which is by      define, it’s probably under a 150, 200 lines of
default when you install ASP.NET and you call           code that you could write for your provider. Our
membership.createuser                           and     menu control as a built in data source that can
membership.createuser will then go ahead and            bind against sub site navigation system. Hey
call the SQL membership.createuser method.              suddenly you have a built in menu control that
Anything goes against the database and creates          does build Firefox and IE and Safari, smart fly up
a wrong database for user.                              menu system going into database.

Carl Franklin: Not unlike your data providers that      Richard Campbell: Awesome.
you have in .NET now.
                                                        Scott Guthrie: Likewise is the Breadcrumb
Scott Guthrie: Yeah and the beauty is you can           control that’s built in the box that tells you where
go ahead and build your own provider. So if you         you are in the site map just works likewise a tree
want to have your own existing database provider        view you can just bind against it. And so you get
or you want to have the XML file system provider        all these built-in features for free.
that’s going to do username password
management. All you need to do is subclass the

Transcription by PWOP Productions,                                         Page 10 of 17
                                                              Scott Guthrie with more on ASP.NET 2.0
                                                                                         May 13, 2005

Carl Franklin: How many controls you expect to          repeat across columns. Is there any kind of
ship, new controls?                                     hybrid control that does both of those things?

Scott Guthrie: I think we are shipping about 60         Scott Guthrie: Well we have repeater in terms of
new controls.                                           recurring controls. There are some multiple items
                                                        at once. So we have repeater, data list and grid
Richard Campbell: 60?                                   view or kind of the three big controls that handle
                                                        repetition. There is also then a new control we
Scott Guthrie: I think it’s about 60, yeah.             call details view and a new one we call form view,
                                                        which let you look at single items. And so if you
Richard Campbell: You guys are out of control.          want to pin it they both support paging as well.
                                                        So if you want to look at like a single record, it’s
Scott Guthrie: There are lot of new controls.           ideal for master details in particular. But if you
                                                        want to look like a single record you can use one
(Laugh)                                                 of those controls and then you can also page
                                                        back and forth, across the list with them.
Carl Franklin: And you mentioned the
breadcrumb control, what are some of the ones           Carl Franklin: Mike from the chat room is going
that people are immediately going to go, thank          to kill me if I don’t answer his question he asked
God.                                                    that three times now. How does the new
                                                        ASP.NET Whidbey deal with browsers that have
Richard Campbell: I am “thank Godding” about            Java script turned off?
the breadcrumb control I tell you that. I love
breadcrumbs.                                            Scott Guthrie: Good question. So basically we
                                                        don’t require Java script for most of our core
Scott Guthrie: Breadcrumb control, I think the          things. So you can turn off Java script and the
menu control that does both heirarchical and fly        core controls will still continue to work. There are
out menus and drop down menus, tree view                some controls, I mean there are some behaviors
controls can be big fan. I think the logging            you can’t really simulate without client side script.
controls, we have a logging control, create user        But if you are doing data entry, you are doing
control, change password control, recover               master pages, you are doing themes, you are
password, so if you want to implement that kind         doing pretty much like most of the controls it just
of, what’s your mother’s maiden name and you            continues to work.
get to set a new password.controls in the box.
                                                        Carl Franklin: So like the grid in the calendar for
Carl Franklin: Let me ask you about the                 example has that two post backs that are not
Datagrid.                                               there any more or what?

Scott Guthrie: Sure up to data controls.                Scott Guthrie: Calendar, I don’t think you can
                                                        do. I don’t think you do calendar selection for
Carl Franklin: Is the Datagrid, a new Datagrid in       grid. I think we have an option with grid that we
addition to the old one or is it an extension of the    actually can use images and do post back on
new one with more stuff?                                that. One of the things, a little known feature is
                                                        <input type=”image” and that allows you do post
Scott Guthrie: Yes we fully support the existing        back even without having Java script.
Datagrid control in V2.0. So that still works just
fine. We have also added a new control we call          Carl Franklin: Nice.
grid view in V2.0. And that’s basically-- think of it
as a new Datagrid with some new features. So            Scott Guthrie: I mean that’s the feature that I
the object model is very similar to the old             think we use for next and previous buttons for
Datagrid with a few differences in terms of the         some of them, some of the controls.
eventing but it provides a number of kinds of nice
new features. Much easier, better, paging               Carl Franklin: Dan from Endsoft says, “What are
support over data. Much better updating support,        some of the new features for ASP.NET control
dozen-client side stuff, which is nice and just         developers, embedded resources etc.?”
generally kind of a better Datagrid.
                                                        Scott Guthrie: Oh boy! there are lots. One of the
Carl Franklin: I found myself recently wanting          big ones I think for control developers is much
like a cross between the data list and the              richer client side scripting support. I mentioned a
Datagrid. Like I wanted the Datagrid’s paging           little bit some of the client side call back
capability but I wanted the data list’s ability to      capabilities. There is also just a much richer
                                                        scripting object model for linking to Javascript

Transcription by PWOP Productions,                                       Page 11 of 17
                                                              Scott Guthrie with more on ASP.NET 2.0
                                                                                         May 13, 2005

files, adding Javascript events in key points of the    that a lot. But we ran into a lot of issues with it.
client side event model. So you want to hook an         And so I don’t think our built-in controls will take
event before post back occurs or on page load           advantage of that. But certainly the control
and all those things, now those are now all built       framework will support it and for some scenarios
in.                                                     it makes a lot of sense.

Carl Franklin: What about a generic designer            Richard Campbell: It’s not real. Well you got
and wizard make designer?                               enough trouble with browser compatibility now
                                                        get into XML Parser compatibilities.
Scott Guthrie: Well we don’t have a designer for
complied controls. Obviously you can do user            Scott Guthrie: It was one of the things we ran
control WYSIWYG. We do have new features for            into. The other thing that can be challenging is,
resources, so if you want to embed an image or          how do you handle hierarchy with XXLT, when
you want to embed a client side Java script today       you have input controls? So you are rending a list
typically what control developers do is they have       of input boxes. How do you rev the IDs of the
kind of require customers to, oh install this control   input boxes and generate and pull out the values
here and then create a __ and copy all these            from those input boxes and do the reverse
image files, peer and this is kind of installation      transform? And XXLT is great doing one way
nightmare. You can now just compile those               transforms.
directly into your assembly as a resource an
embedded resource, and then as a control                Richard Campbell: But it’s definitely one-way
developer we have a call back mechanism so the          and you try and do anything else you are going to
clients can reference them. And so basically you        get in the trouble.
can tell a customer, hey here’s this DLL copied it
into your bin directory or gagh it and you’re           Scott Guthrie: You really have to kind of dance
deployed.                                               through hoops to make it work two-way. There is
                                                        thing like InfoPath or I think InfoPath does that a
Carl Franklin: Is it possible to detect new             little bit. There are people that do it but you end
features or restrictions such as popup blockers         up constraining yourself a little bit.
that became popular recently?
                                                        Richard Campbell: I always thought of XXLT as
Scott Guthrie: Is it possible to block popup            another variation on programmer abuse like Perl?
                                                        Scott Guthrie: You can certainly abuse it quite a
Carl Franklin: Is it possible to detect them? The       bit.
new things like popup blockers.
                                                        Richard Campbell: Yeah, languages designed
Scott Guthrie: We don’t have built-in support for       to be completely un-understandable.
doing that. One challenge is that browsers don’t
really tell you whether or not you are doing popup      Scott Guthrie: Now I think Xpath is very
blocking so what some people do is they will            interesting. And so Xpath kind of came out I think
popup a Window that’s going to run in client side       probably through as part of XXLT. And so there
script. You will know if it runs then it’s not          are definitely very cool part things to take
disabled. But it’s hard to detect that                  advantage of. But I don’t think we will do too
automatically. Same way it’s hard to detect             much with XXLT.
whether or not client side script is enabled or
disabled. We did add support in ASP.NET 2.0 for         Carl Franklin: Well Scott I want to take a little bit
better cookie detection. And so we now have a           about Internet information service7.0 but before
richer mode, we can automatically detect whether        we do that, last week our show was about
or not cookies are enabled for things like session      DotNetNuke 3.0, we had Shaun Walker on and
state and fonts authentication.                         Jim Duffy and they were talking about it. You may
                                                        have heard the email in the beginning of the
Carl Franklin: Rory Baker asks, “Scott what are         show that we got about it. But some of the guys
the chances we might see controls in the future         in the DotNetNuke community have sent me
that render XXLT instead of HTML for client side        some emails, some questions by email for to ask
transformation of XML data?”                            you and so on behalf of them I guess I would like
                                                        to ask these questions. So Patrick Santry asks,
Scott Guthrie: You can certainly build them to do       “What is your take on the growing community of
that. We probably won't use XXLT as just kind of        ASP.NET      open     source      projects       like
a client side rendering format, we have tried that      DotNetNuke?”
in the past and in the very early days of ASP.NET
before we released B1 we played around with             Scott Guthrie: We think it’s great.

Transcription by PWOP Productions,                                        Page 12 of 17
                                                               Scott Guthrie with more on ASP.NET 2.0
                                                                                          May 13, 2005

                                                         We are also have been trying to build these kind
Carl Franklin: Okay next question.                       of, we call starter kits, which are more kind of
                                                         template apps that you start off with and so that
(Laugh)                                                  they won't be as rich as DotNetNuke. But it
                                                         basically provides a way you can in the tool say
Scott Guthrie: We have been actually trying to           file, new website pick one of these starter kits
do a lot of work to support efforts like                 and you are hopefully 70% or 80% of the way
DotNetNuke and promote them pretty heavily.              there in the project.

Richard Campbell: You mean the number of                 Richard Campbell: It’s sort of a Northwind for
really great knowledge sources for ASP.NET               ASP.NET.
online is staggering, I think it’s almost to find the
yonder. Granted that we do have Carl here from           Scott Guthrie: Yeah although a little bit richer. In
the original VB websites way back when but               Northwind with a database schema for kind of a
when you go out and you take a look around at            fictional company we are building for example,
some of the ASP sites that are out there, it’s           eBay is actually helping us build an eBay
amazing what's available today.                          storefront starter kit. And you create this and it
                                                         actually lets you easily register as an eBay seller
Scott Guthrie: Yeah, we really spend a lot of            today. And talks with the eBay service and will
time trying to build a community up around               populate what auctions you currently have going
ASP.NET because there are always so many                 on and all that. And then you can just easily add
people, any one person can talk to you and so            couple extra pages of functionality into the site,
more you can kind of get that to pull down a fact.       pop it and you are done. And it’s much more
                                                         scenario focused and we will have an
Carl Franklin: It’s a no-brainer you know what I         eCommerce one that we used to had built-in
mean?                                                    Paypal integration. So kind of like IBuySpy store
                                                         but more real and more you can just use it out of
Scott Guthrie: Yeah, no-brainer have experts             the box, update a reporting one. You have a
everywhere around the world that are eager to            personal starter kit that’s built in to beta 2 kind of
help and able to help and so.                            provides you with a personal site with a photo
                                                         album      system, a resume system, security
Carl Franklin: And there are so many cool things         system. And I think our goal is probably have 11
to share, there is just a wealth of coolness in          or 12 of these around the B1 RTM timeframe.
ASP.NET, you can’t get it all in one place.              And the really cool thing is once you have built
                                                         one of these starter kits there is a little tool that
Richard Campbell: And no should you want to.             we will ship is probably SDK that you can run,
If the first place you aren’t going is to a search       which is actually package up the starter kit into
tool for your ideas on building a web page, you          an installable unit. And then anyone with that has
are making a mistake. Somebody has been there            Visual Studio installed can basically point at your
before you.                                              website browse and see, oh on there
                                                         is a cool starter kit for talk radio. Click on it, it
Scott Guthrie: Yes, one of things that you check         downloads, you will actually then add itself into
out with ASP.NET 2.0 is a website that we are            the Visual Studio, file of a new website or file of a
kind of building out, it’s not officially live yet but   new project menu item. And so now anytime you
it’s up there. We haven’t finished tweaking as you       in Visual Studio say file new whatever you can
might say.                                               actually pick the downloaded template from the
                                                         web and use that as the basis for new project.
Richard Campbell: Might be a little raw.                 Then as you really make it dramatically easier for
                                                         people that kind of get started and more
Scott Guthrie: But it’s got a and           importantly share best practices.
that’s the new site we are building out specifically
around ASP.NET 2.0. And there is one of things           Carl Franklin: That’s great. Here is another
that’s on there is the new ASP.NET 2.0 quick             question along from the DotNetNuke community
starts. So a lot of people probably from B1              from Shaun Mahaffy, “How does DotNetNuke
remember the quick start. But 2.0 quick starts – I       compare to share point? What are some
think we have a thousand new samples. And they           advantages of each?”
really show off a new features and it’s a great
way to learn more about the product. Another             Scott Guthrie: In some way there are some
thing that’s cool is that we are kind of building        similarities in terms of providing customizable UI
ASP things for calling starter kits. And so there        interface. I think DotNetNuke is both on the
are big apps like DotNetNuke, which are kind of          Internet and on the Intranet. I think one
systems handlers themselves, which are great.            differential for DotNetNuke today is it has far

Transcription by PWOP Productions,                                         Page 13 of 17
                                                             Scott Guthrie with more on ASP.NET 2.0
                                                                                        May 13, 2005

more Internet style capabilities in terms of           think you already answered that, that your feature
support for built-in sort of albums and forums and     completed this point.
it supports forms based authentication for doing
username password management things like               Scott Guthrie: Yeah. I mean there will be very
that. Share point is more range in the current         little things. So lot of kind of last minute polishing
version for Internet scenarios that uses built-in      was kind of way I think about it. So, our migration
Windows. Some of the things that share point           wizard will get a lot better, through the handling,
has going forward for Internet scenarios are           compat issues that people have run into with
obviously rich integration with Office.                Beta2. A few other little things but it’s for most
                                                       part the features set are pretty much the same as
Richard Campbell: Yeah I think that was the key        it is in Beta2.
feature of share point what it was built around
was handling Office docs like they were HTML.          Carl Franklin: Question two, will there be a
                                                       visual designer for the sitemap files in 2.0’s final
Scott Guthrie: And so the ability to say, “Oh I am     release?
going to create a form around or say a team or a
project and at least 8 people have access to it,       Scott Guthrie: There won’t be. So, the sitemap
you can open and edit things directly from the         files today in ASP.NET 2.0 or XML files and so
website in Office and you can hit save inside          we have Intellisense support inside Visual Studio
Word and save it back on the original site, the        forum. It’s a fairly easy file format. But we won’t,
share point site. So some of those things are          unfortunately in 2.0 have a Visual Studio 2005 we
pretty darn cool for document life cycle and           won’t have a graphical designer for it. So we
management stuff. Starting really with ASP.NET         were looking and doing possibly in all case
2.0 is we have taken the concept of web parts,         though.
which used to be a share point only feature and
we have kind of baked it directly into ASP.NET         Carl Franklin: Here is another one, this one
2.0. And the next version of share point will build    comes from Alfred Myers again, Krzysztof
very heavily on top of ASP.NET 2.0.                    Cwalina and Brad Abraham’s are writing a book
                                                       on design guidelines. Are there any design
Richard Campbell: Yeah I was just thinking             decisions you regret, anything that you guys
share point needs to get to 2.0 themselves.            thought would be better to rewrite from scratch?

Scott Guthrie: And they have got a version that        Scott Guthrie: Design decisions that I regret!
ships with Office 12 next year will be fully           You always definitely have a design decision so
ASP.NET 2.0 based.                                     you kind of wish, I wish we go back and change
Carl Franklin: It’s amazing you can say that with
a straight face, man. Office 12 is like rocky 19.      Richard Campbell: Most of when you get to the
                                                       compatibility phase and you are trying to keep
Scott Guthrie: That’s looking pretty good              stuff working.
actually. But the really cool thing is share points
take full ASP.NET 2.0 app. So you can use for          Scott Guthrie: It’s somewhat compat. For the
example the same login controls and the same           most I think was ASP.NET V1, we really had a
membership system that you use in your vanilla         good architecture. So there isn’t really anything
ASP.NET site, share point using it. And so it will     fundamental in terms of the architecture that I
be much more Internet hostable and the nice            think I’d change. The only thing I think I wish in
thing is if you build the web part and when the        the architecture side, I wish we’d pushed,
ASP.NET 2.0 version of DotNetNuke comes out,           understood or spent a little more time taking on
you will be able to use that web part in potentially   application domains and made them a little bit
in both DotNetNuke and in share point. The             less heavy weight, this way I wish we spent a
benefit as you just get better capability and          little bit more time in V1. There are pretty big
obviously DotNetNuke will give you more                concepts with a lot of baggage associated with
flexibility in terms of being able to dive into the    them, mostly good but I think that’s an area we
core system and do rich changes and you have           might have invested a little bit more on. I wish
full access to everything. But being able to build a   code access security was on by default in V1.
reusable web part and be able to also have it run
in share point and vice versa, I think it’s going to   Carl Franklin: Lot of people just ignore that.
be something that’s pretty cool.
                                                       Scott Guthrie: Put user to turn on but I think it
Carl Franklin: Our friend Dax in India says two        would make it easier for people to build sites that
questions. One, will there be any surprises or         were just worked in the hosting environment by
new stuff between Beta2 and RTM versions and I         default. I feel a lot of cases where people that

Transcription by PWOP Productions,                                       Page 14 of 17
                                                             Scott Guthrie with more on ASP.NET 2.0
                                                                                        May 13, 2005

have doing kind of stuff that they don’t need to do    security authentication properties you can’t
but it ends up making their life harder in a hosting   control or the customers’ it’s hard to control. Now
environment. But for the most part that we got         you can actually have the IIS settings live right
most of stuff done pretty well in V1, so I feel        next to the ASP.NET settings inside your
pretty good about that.                                web.config file.

Carl Franklin: All right, let’s talk about Internet    Richard Campbell: You mean you can definitely
information server 7 because that’s one of the         get into a battle between ASP security settings
hats that you wear in Microsoft. When did you          and IIS security settings.
start that roll by the way?
                                                       Scott Guthrie: Yup, that’s for now merging
Scott Guthrie: I actually have known the IIS           those, there is basically a unified set, they will
team back in ’97, early ‘98, long time ago. A          push people to use going forward. We also
colleague of mine Mark Andres and I started the        support the old ones for compatibility purposes
ASP.NET team from the IIS team and there were          that basically will deprecate and say, hey you
just two of us and Dimitry who is the ASP.NET          should go this nice unified model now. There is
manager still today came on board and at some          one way to do it. Well, instead of some of the
point we basically splitted off from the IIS team      ability to disturb your config and do what's called
and kind of created our own new team and               delegation is a huge thing and specially for
group. So lot people always assumed, oh, you           application developers they really are going to
guys must be on the same team with IIS and for         like the fact that they have much more ability to
about 98 and till end of 2003 we actually worked.      set those settings directly in their application,
So in the year 2004 we merged to the ASP.NET           deploy them with their applications and not
team, the IIS team back together again and so I        require a separate script they need to run when
have kind of been responsible for that ever since.     they go ahead and set up that. So at that batch
                                                       will be pretty big. There is a new admin tool that
Richard Campbell: The two technologies are             provides also delegated view of your system. So
utterly dependent on each other, so you might as       for example, is your website hosted today,
well work together.                          

Scott Guthrie: Yeah. We always worked closely          Carl Franklin: We host it here.
as different teams but here we taught to put the
two teams together and look for you more kind of       Scott Guthrie: Okay. You host it here. Say for
richer synergies. So I have been driving kind of       example, you are hosting it in a hosting company
IIS 7 releases, which is a major, major new            either a stand-alone box or a shared hosting
release that will ship in the longhorn timeframe.      where you might have other customers on the
                                                       box. You are going to actually know, you’ll now
Carl Franklin: And what's IIS to -- tell us about      be able to use IIS admin tool to remotely manage
that?                                                  your site over HTP, doesn’t require you to open a
                                                       firewall or anything like that and more importantly
Scott Guthrie: There are lots of new stuff. So it’s    in a hosting environment you will only be able to
probably the most significant release of IIS or        change the settings that you own. So the host
major release of IIS we have done in terms of          can set up say 20 different customers on the box.
feature set.                                           Those 20 different customers only see their sites
                                                       and only are able to change their settings, but
Richard Campbell: It has been a while IIS 6 has        they have full use of the IIS admin tool in order to
been pretty stable.                                    do it.

Scott Guthrie: IIS6 shipped in first half 2003 and     Carl Franklin: That’s great.
it’s been hugely stable and hugely popular in
terms of deployments and customer feedback.            Scott Guthrie: Yeah, it gives you really nice
And we are basically taking all the goodness that      delegated administration model. From the
IIS 6 has in terms of the new process model, Hp        developer perspective we are unifying the IIS
Sis model and just kind of runtime engine and it       pipeline with the ASP.NET pipeline, which means
has a lot more. So, one thing that we have done        that ISAPI is still supported. But you can figure it
is for integrate, we are basically merging the         as deprecated and you can now, in addition to
ASP.NET configuration model with the IIS               building ISAPI extensions and filters like you can
configuration model. So you will be able to put all    today, you can build new models either in C++ or
IIS settings for example inside web.config files       in managed code.
now. So today if you deploy your site, you can X-
copy most of your settings up but default
document you can’t control order or some of the

Transcription by PWOP Productions,                                      Page 15 of 17
                                                                Scott Guthrie with more on ASP.NET 2.0
                                                                                           May 13, 2005

Carl Franklin: So you take a ISAPI out of the
picture as a middleman and you come directly              Scott Guthrie: Yeah. So, that’s our goal. But
from IIS to ASP.NET is what you are saying.               that’s certainly one of things that we are driving
                                                          towards just we will actually give out real bits.
Scott Guthrie: Right. So little level security
protocol thinks that you can't build an ASP.NET           Carl Franklin: That’s also means a beta          of
today, you can now build an IIS7. If you want to          longhorn obviously.
go ahead and replace how IIS does directory
handling or directory listening you can just              Scott Guthrie: Yeah. We also include obviously
unregister the built in IIS directory listing module      a beta longhorn as part of that. So, it’s openly
and replace it with your own Dephi or VB or C#            been people’s hands fairly soon and this is lot of
and the interface for doing that is the HP modular        stuff to like there. So, I think it could be pretty
interface that we have had since ASP.NET V1.              happy with it.
So it’s very familiar model to ASP.NET
developers and really lets advanced developers            Carl Franklin: That’s great. Well Scott, we have
to intrigue the system in a pretty cool way. And          gone over time, I could talk for another hour and
the beauty is all the IIS functionality is built on top   half easily but it is a one-hour show. So I ask all
of this public interface model. So, all of our built      of my guests at the end of the show, what's the
in features whether it’s compression, whether it’s        coolest thing you have downloaded lately and to
authentication or authorization or logging are all        the Microsoft people I have this extra piece that
built on this model and you can literally open up         isn’t on your own website.
the web.config file for your system and look at, oh
here are the built-in 35 IIS models, you can go           (Laugh)
ahead and oh there are the 10 ASP.NET models
that are built-in. I don’t care about these points        Scott Guthrie: What's the coolest thing that I
lets whack them out. And you delete them, hit             have downloaded lately?
save and you just reconfigure your server to use
a subset of the overall models and you can even           Carl Franklin: And you are not alone. Because
delete those models then off your disk. And so            most of the people who are doing serious work in
you can go ahead and build tune Server specific           Microsoft all say the same thing. I have just been
to workloads and dramatically reduce your attack          working so hard I haven’t had time to download
surface and more importantly the developer you            anything.
can go ahead and write functionality, the plugs in
basically a full control over the system.                 Scott Guthrie: I just got a new smart phone,
                                                          which is pretty cool.
Carl Franklin: That sounds awesome.
                                                          Richard Campbell: Which one?
Scott Guthrie: And it gives you a lot of really
interesting things to be built out as a result of         Scott Guthrie: I actually managed to break my
that.                                                     other smart phone by opening a door with it.

Carl Franklin: And this is going to run on                (Laugh)
longhorn only or is it also going to run on 2003.
                                                          Richard Campbell: I hate it when that happens.
Scott Guthrie: Right now is longhorn only. There
is enough of other core things that we are doing          Scott Guthrie: Yeah. That man has just cracked
that it kind of requires an OS release support. But       the screen. Some PDA 2K, I am not sure it’s re-
yet it should be a pretty exciting release upgrade        branded but it looks pretty cool. They are really
too.                                                      powering it up as we speak but it’s like a PDA
Richard Campbell: But we are still talking 18
months away so there are lots that can happen in          Carl Franklin: That’s a palm, isn’t it? No I am
that time.                                                just kidding.

Scott Guthrie: We are hoping to be give out the           Richard Campbell: No it’s running Windows. We
beta at PDC this September.                               got to wait a couple of minutes before it’s
                                                          powered up key thing. But it has like a black
Richard Campbell: Nice.                                   berry like keyboard that you can actually pop up
                                                          which looks pretty cool.
Carl Franklin: That would be very nice.
                                                          Richard Campbell: Slides out of the bottom.
Richard Campbell: A Beta!

Transcription by PWOP Productions,                                        Page 16 of 17
                                                               Scott Guthrie with more on ASP.NET 2.0
                                                                                          May 13, 2005

Scott Guthrie: Yeah, slides out of the bottom.           Scott Guthrie: Oh! There are lot of people on the
                                                         team. They pulled some pretty big Heroics lately
Richard Campbell: Yeah, that’s one of the                in terms in getting Whidbey out the door and
Siemens ones.                                            lead, big kudos to everyone. I guess that’s what I
                                                         would say.
Scott Guthrie: Yeah, it looks like a, it kind of
looks like a Siemens device.                             Carl Franklin: How many people on your team?

Richard Campbell: It’s a re-branded Siemens.             Scott Guthrie: About 150.

Carl Franklin: That’s the basically the one that I       Carl Franklin: Wow!
have, except, I have the Samsung version of that.
                                                         Scott Guthrie: Yeah so, we are kind of a big
Richard Campbell: Yeah, yours I think is the             team. But they’ve been really kicking butt and I
CDMA as well.                                            am pretty proud with their building.

Carl Franklin: CDMA, yeah.                               Carl Franklin: Oh! It’s great. Well kudos to you
                                                         and to the team and man we can’t wait for this
Scott Guthrie: Yeah, and it’s got it, the thing          stuff, can we Richard?
that’s cool it has a, I have a data plan so basically
I get my email has it arrive in my inbox, on the         Richard Campbell: No. I am stoked.
little phone.
                                                         Scott Guthrie: Cool.
Richard Campbell: I love the fact that they are
directly connected to exchange. Exchange is just         Carl Franklin: Playing with Beta 2.0, it looks
another client.                                          great and keep it up and I guess we’ll see you at
                                                         TechEd and PDC after that. Thanks a lot Scott.
Scott Guthrie: Yeah, that’s pretty cool, in terms
of how I change my work phone. They won’t                Richard Campbell: Thanks Scott.
downsize it; it means that I never have a vacation
again because…                                           Scott Guthrie: Thanks a bunch.

Richard Campbell: You never have an excuse               Carl Franklin: And from everybody here at .NET
for not answering your email now.                        Rocks! Richard Campbell, Geoff Maciolek and
                                                         out there, back in the sound room, and all the
Scott Guthrie: Exactly, but I had the audiovox,          people in the chat room, this is Carl Franklin,
the smart phone before that, I really like that, until   saying have a great week. See you next time.
I broke it but…
Richard Campbell: (Laughing). Well you know
if you open doors with your smart phones, they
generally going to get some pain.

Scott Guthrie: Really bad stuff happens, but
that’s my new poem that I am going to play with,
this weekend.

Carl Franklin: Awesome, well here is an
opportunity to give someone in your team, some
props and I don’t know how this is going to work
out but every time, every once in a while, there is
somebody who has been lurking in the back of
the room during a triage and is completely silent
and then all of a sudden everybody’s scratching
their head, trying to figure out how to do
something and from the back of the room, comes
is, ”Why don’t you guys just do X” and everybody
goes, yeah, that will work great man. Is there
anybody who has been like that on your team
lately that has just done something spectacular
that you want to give him a shout out?

Transcription by PWOP Productions,                                      Page 17 of 17