Archives
-
IIS Applications, Virtual Directories, and ASP.NET
I have just posted 2 new articles: IIS Applications and Virtual Directories, and IIS Applications and ASP.NET Specifics. I've noticed for a very long time that there is hardly anything documented about IIS Applications, and yet understanding them is critical to successful ASP.NET development. I've even noticed that nearly everyone, including Scott Guthrie and Fritz Onion, incorrectly refers to Virtual Directories when what they really mean is IIS Applications. These terms are not interchangeable -- you can have a Virtual Directory without it being an IIS Application, and you can also have an IIS Application without it being a Virtual Directory. Being a Virtual Directory is not relevant to ASP.NET -- its just a logical way to organize your web-site and physical directories. On the other hand, there are all sorts of things relevant to ASP.NET when it comes to IIS Applications, and I've tried to list most of them and provide some useful tips also. So please read both of these articles -- and let's see if we can keep our terms correct when talking about IIS Applications and Virtual Directories.
-
ASP.NET Developer's Cookbook Stolen
I was one of the contributors to the ASP.NET Developer's Cookbook with Steve Smith and Rob Howard. Today I finally got my free copy, only it was already opened and stolen off my front porch, or somewhere in route. I've never had any stolen from my mail before, and this seemed like one of the least likely things to be taken. My wife even had something come today that's probably more useful and expensive, but I guess the package didn't look as interesting. The upside is that maybe someone around here will actually read it and start working with ASP.NET, and then later need my help to bail them out of a mess they get themselves into. I can dream anyway.
-
Welcome Jerry Dennany to WebLogs
One of my colleagues, Jerry Dennany, has finally got a blog here -- and it should be a good one. Don't believe him for a minute when he describes himself as a "software configuration manager / release engineer". That may be his title here at Roche, but Jerry is actually one of the smartest "developers" I know period, .NET or otherwise, even though he claims to not be a developer. He has been one of the main guys on "my" team that answers my questions -- not the other way around! Remoting, garbage collection, MSIL (or CIL), COM+ configuration, network admin -- this guy is your .NET and overall Microsoft internals resource guy! I've been very fortunate to have worked with him for the past couple of years, and I know he will have some great posts here on some of the internals of .NET and other things Microsoft (or even Linux if we let him). I see he's already correcting Microsoft's Suzanne Cook, from the CLR team, in his blog -- and he's right of course. Also, check out his article on CodeProject on "TraceListeners and Reflection" -- definitely a very good read on tracing.
-
DLL Search Order Changed in Latest Windows
I found the following breaking change in the MSDN article "Development Impacts of Security Changes in Windows Server 2003" by Michael Howard:
-
Pocket PC Development with VS.NET 2003
I finally got my free PocketPC yesterday and its vastly superior to my Handspring Treo. Of course, my Handspring Treo actually works with the Internet over the built-in cell phone, so it will continue to be my main PDA. I suppose this is why so many other developers are already starting to put their free PocketPCs up on EBay! I'm keeping mine to develop on though, and its amazing how easy it really is to do with VS.NET 2003 -- Microsoft definitely got this right. There is already a project type for PocketPC development, and using it automatically lets you know what .NET functionality is valid for the PocketPC. Setting a reference to the System.Data.SqlServerCe namespace even automatically installs SqlCE on the PocketPC when you deploy. I haven't really done much yet, but what I have tried has been remarkably easy, so I plan on doing more. So if you qualify for this free PocketPC you really need to sign up and get yours before the offer is no longer valid.
-
Do You Need Your Very Own ASP.NET Guru ?
I got my 60-day notice earlier this week, so if anyone needs an ASP.NET guru, or .NET in general and other Microsoft technologies for that matter, I'll be available starting August 11. I've known they were going to be closing our Atlanta office now for about a year and a half, so this wasn't a surprise, and I actually pushed for it to occur now instead of later this year, so I'm ready. You can see my resume at http://Paul.WilsonDotnet.com if you are so inclined, otherwise just let me know if you have a lead. I live in Atlanta, actually the North-Northwest side, and would like to stay here, although I'm willing to consider a few other things for the right opportunity. I'm leaning towards consulting or contracts, although once again I'm open to permanent positions if they fit me and my location well.
-
Patterns and Practices to Finish my TechEd Trip
I attended two sessions from the Patterns and Practices group this morning. I was very impressed, not just with what they've done, but also with their honesty and openness. They already documented a fair number of patterns and released several application blocks, like the Data Access Application Block, and more will be coming soon. I'll have to reevaluate their work, and the community additions they've encouraged, since I wasn't real impressed the last time I checked.
-
Finishing Up this Morning at TechEd 2003
I've got two sessions this morning before I head back to Atlanta this afternoon. I struggled through two boring sessions yesterday afternoon, while finding one that was pretty good. It was "Building Application Back-Ends Quickly" by Kate Gregory and Kenneth Spencer. There was good discussion of design patterns and lots of examples of code generation. They did not, however, mention Eric Smith's CodeSmith, which would beat their tools hands down. They also did not mention O/R mappers, my latest interest, which promises to make lots of code obsolete, generated or not. Last night was the big attendee party -- it featured SmashMouth and the WallFlowers. Good music, but its just hard to get a bunch of techies, mostly male, to get real excited, so it seemed a little dull.
-
More Fabulous Sessions and TechEd Updates
So last night I said "Real-World Tips for Real-World Web Applications" by Paul Sheriff and Ken Getz was the best ASP.NET session. I was also asked why in the comments and I will try to explain that in a minute. Today I went to two of Clemens Vasters sessions, "Building Distributed .NET Applications" and "Aspect-Oriented Programming", and these were also fabulous. I will even have to go out on a limb and say Clemens' "Building Distributed .NET Applications" is the best overall session for me so far. I'm not saying its better than Paul and Ken's talk for everyone, but that depends on whether you need to learn more ASP.NET or not, and I'm simply past that point. Clemons spent some time first talking about the difference between layers (logical separation) and tiers (physical separation), including some real cool pictures and a comparison to something Men In Black. He showed a demo of one of his apps that works both disconnected and connected -- can't wait to get the code for this later on his blog. Finally, there was a lot of distinctions made between the types of tiers, that being local (same machine), near (LAN), and far (everything else). Local should use Remoting and take advantage of properties, inheritance, byref, events, and be synchronous. Near should use Enterprise Services and take advantage of chunky calls, interfaces, byval, and may be synchronous. Far should use Web Services and take advantage be asynchronous message based. There were a lot more details, but I had never heard anyone say that Remoting is only best for same machine communication and once you step out into the LAN you should be using Enterprise Services. I've heard hints of this before, including some stuff from Ingo himself at DevConnections, but this was right in your face this is the way to do it conclusion. It sounded good to me, but I don't have much experience with these, so let me know your thoughts on this.
-
The Absolute Best Session on ASP.NET
I have not attended all that many ASP.NET sessions (just the ones I'm required to review) since I already know all of ASP.NET (ha ha), but "Real-World Tips for Real-World Web Applications" by Paul Sheriff and Ken Getz is definitely the absolute best of all the ones I have seen. It may even be the best of any period that I've seen, although I have not mentally walked through all the others to be sure that is the case -- but it may be. Apparently the audience thought so too -- it was standing room only and lots of good vibrations were evident during and after the session. I haven't read their book, but I'm thinking it might be one of the best out there based on what I just saw -- and they also did say it was the best!
-
More Assorted and Useless TechEd Notes
Scoble linked to me! Not exactly my best stuff to have generated a link, but I'll take it. I'm actually well known among my colleagues and employers for telling it like it is, so I guess its one of the best things I have to offer. Does anyone think this trait could be valuable for an independent consultant? I've been pondering this of late, as I try to decide what I'm going to do after my current gig is up around September. I mean its easy to get lots of billable hours if you just do what you're asked to do, but sometimes the best thing is to actually not do what you've been asked, or to just offer some raw advice that may not get you lots of work either. Feel free to send me your thoughts or advice on whether I should continue with low-risk corporate jobs or go out on my own in some fashion. I've got to minimize the risk since I've got a wonderful wife and two kids, but I do think something more independent would be more interesting.
-
Critique of Disappointing Session at TechEd
I attended a session entitled "Object-Relational Mapping As a Foundation for ADO.NET Database Access" here at TechEd. The speaker was Terry Weiss, one of the Microsoft Regional Directors, which is kind of like being a super-MVP. Here's the description of the session as it was provided in the TechEd materials:
-
What Should be Said About Terrible Sessions?
What, if anything, should I say publicly in a blog about one of the worst sessions ever? Should I dive into it and tell the world, or should I keep this type of criticism private?
-
CommNet Problem at TechEd
There's one huge CommNet area at TechEd, and lots of little satellite areas. Apparently since roaming profiles are enabled the machines tend to run out of disk space a lot. That's probably quickly fixed at the main area, but not at the other areas. This sounds bad, and it is for most people, but the upside is that you can always go back to any particular computer that you have previously used and be one of the only ones able to use it now. Its kind of like reserving my own computer for the rest of the week! Sorry, it wasn't my idea, but I'm willing to exploit this to its fullest. :)
-
SQL Server Yukon and .NET Programming Features
I went to see the talk about SQL Server Yukon and its .NET Programming Features given by Jose Blakeley and Eric Brown this morning. There weren't as many demos as I would have liked to see, but there was no shortage of new things coming that they talked about. My take is that its not just use any language to work with SQL, but also work with your data in any way you want. That's right, you will be able to work with any data as either normal data (DataSet), objects (ObjectSpaces), or xml (XmlReader). I'm not sure what all the implications or limitations are since I haven't gotten a copy of it myself (yet), but it makes sense. Since .NET languages and constructs will be a native part of the database, its just a natural evolution to be able to natively expose objects. Also, they will be adding an xml data-type to the database itself, so once again it just makes sense to expose any data as xml also. My question is whether or not ObjectSpaces will be part of .NET itself, or part of SQL Server? Why does it matter -- because I want to read and persist my objects totally independent of the database so my code will automatically work with Oracle and Access too! I can do this now with Thona Consulting's EntityBroker, and others are also going down this path, like Andres Aguiar's DeKlarit, who I met this morning.
-
Meeting More Gurus at TechEd on Day 1
I went to listen and review Nikhil Kothari's talk on server controls and Scott Guthrie's talk on assorted black-belt tips. Scott again keeps giving hints about ASP.NET version 2.0, basically saying that everything he showed will be unnecessary. Let's see, he talked about setting focus, keeping scroll position on postbacks, lots of client-side javascript, and how to add themes or skins to templated controls. I then went to help at the ASP.NET Ask the Experts booth, and I got to meet more of the ASP.NET team, like David Ebbo and Joseph Croney. David knew who I was and said he was referring lots of people asking about his original MasterPages to my article -- really cool. Then I went to a get-together of TechEd bloggers, meeting Clemens Vasters, Scott Hanselman, and too many others to list here. I also re-discovered a former co-worker, so you never really know what all to expect at these conferences. Finally, I got to see the book I co-wrote -- ASP.NET Developer's Cookbook. OK, I didn't contribute that much, but the book doesn't say how much, it just says I did!
-
C# Future and First Morning at TechEd
I made it to TechEd on an early flight this morning. I saw a couple of other bloggers after registering: DataGridGirl, Eli Robillard, and Stephen Swienton. Stephen made me feel good since he said he presented some of my template techniques at a user group. I just finished listening to Dan Fernandez talk about the future of C#. Nothing new was said that isn't already available in white papers on the net, but he did demo some real generics using Gyro, that is available for Rotor now, that I hadn't personally seen. That one always seems to get the most attention, although ASP.NET developers should also be interested in Partial Types. :) I'm off now to see Rob Howard give a Tips and Tricks talk that I'm supposed to formally review as part of my deal for being here. It looks like Rob is going to go the route that I really prefer, that being lots of code and less slides, so maybe he'll get a good review out of me yet!