Paul Wilson's .NET Blog
Ramblings from the Creator of WilsonDotNet.com
-
Best Sandwich in the World
I had the best sandwich of my life tonight -- the Gyro Melt at Gondolier Pizza. Its a small Italian and Greek franchise in Georgia, Tennessee, and Florida. Also truly wonderful pizza. Sorry its not .NET related, but this was a really good sandwich!
-
DevConnections Conference Summary
I went to the DevConnections conference in New Orleans last week. I got to meet some great .NET folks for the first time, like DataGridGirl, Ken Getz, Don Kiely, and Keith Pleas, and saw some I'd previously met too, like Steve Smith. I attended some great sessions given by gurus like Dino Esposito, John Lam, and Ingo Rammer. Dino even knows who I am and said I get a credit in his upcoming book -- I probably shouldn't say that but its just too good to resist! I also attended sessions by Scott Guthrie, Rob Howard, and Jeff Prosise, but they were in the ASP.NET track so they were things I already knew. They were still great talks, but not as exciting for me, plus I had already met each of these guys last year at Microsoft. I also saw my share of totally boring sessions, and some that were a complete waste of time, which really makes me think I that I could be a conference speaker. The best parts for me were the keynote featuring ASP.NET v2.0, sessions from Dino, John, and Ingo, and a parade featuring a marching band to Pat O'Briens for all you could drink! Next month its off to TechEd 2003 in Dallas to be one of the "Experts" in the Ask the Experts booth -- see you there.
-
ASP.NET Version 2.0 Public Preview
I'm at the DevConnections conference in New Orleans this week and last night's keynote featured Scott Guthrie's first ever public demo of ASP.NET Version 2.0! It looks like DataGridGirl beat me to the scoop about how cool the new grid control will be -- no code for paging and sorting and even editing. The other feature he showed was the new sql dependency supported by output caching -- the data is cached as long as you set and is automatically invalidated when it changes in the raw data table. He didn't show any of the other cool things that some of us have seen in private, but this was a really cool initial public preview. By the way, it was obvious looking at Scott's demo that "Venus" is the codename being used for at least part of ASP.NET v2.0.
-
ValidateRequest in ASP.NET v1.1
There's been a lot of discussion lately, both here and elsewhere, on the ValidateRequest feature in ASP.NET v1.1. For those who aren't familiar with it, ASP.NET is basically checking all submitted form and querystring parameters, as well as cookies, for < and > to prevent script attacks. Its easy to turn off this feature when you need to allow for this type of input, just set ValidateRequest=false in Page directive or in the web.config file, but you should then be taking the appropriate precautions in your own code. Anyhow, the point of my post here is to APPLAUD Microsoft and the ASP.NET Team for the guts to add this new feature with it enabled by default (true)! Yes, this is breaking a lot of people's sites, but that's because they simply didn't read the docs or perform any significant testing before upgrading to the latest and greatest. That's right -- this feature has been documented all over the place since v1.1 came out in beta as something to watch out for when you upgrade. So why didn't MS just make the default to be false and avoid all the hassle that everyone is now experiencing? Security! Everyone has been complaining forever that MS doesn't make security a priority and that products ship with insecure features enabled. Well that's changed now -- as it should have -- so let's stop the grumbling simply because we were inconvenienced due to our own lack of due diligence. Yes, this can be interpreted as a breaking change, but this should be expected when something is done in the name of security for now on -- get over it!
-
NUnit, Log4Net, and O/R Mappers
I've been playing around with some of the cool .NET tools that have been ported from Java lately. The simplest and most standard ones are NUnit for unit testing and Log4Net for logging. I got NUnit v2.0 working no problem with .NET v1.1 and really like the idea of using it for automated unit testing. On the other hand, Log4Net v1.1, which SharpReader uses, looks good, but I still haven't gotten it to actually work. Finally, I've been testing Thona Consulting's EntityBroker, which is the first O/R mapper for .NET. Object/relational mappers, also known as persistence frameworks, are well established in the Java world, but are new to most Microsoft developers. They basically allow you to totally skip writing or generating code for your DAL (data access layer) and domain objects so you can focus on objects. You just define your objects and use some attributes to map them to the proper database tables, fields, and relationships. That's all -- and it really works! I just gave a demo to a group of friends, and I never had to write any SQL or data access code. It worked equally well with both MS SQL and Access, as well as both Windows Forms and ASP.NET, including databinding in both. I'm definitely convinced this is something worth knowing about, since it radically simplifies development and maintenance. I'll admit, however, that I'm still shaking a little since this goes against the normal stored procedure paradigm that I'm used to with Microsoft. But even there, its worth remembering that Microsoft itself will be in this game soon with ObjectSpaces, so . . .
-
Microsoft's Free PocketPC Offer
I just got confirmation that my free PocketPC is on the way (in 8-12 weeks). If you haven't seen this yet and you have VS.NET or MSDN Subscription, then you need to check this out quick since time and supplies are limited. Thanks Microsoft for the free PocketPC -- now if only it were a camera phone too.
-
QuickFix for Bug in ASP.NET Version 1.1
There is now a QuickFix available for the __DoPostBack bug in ASP.NET Version 1.1 that I had previously provided a short-term work-around for. Thanks ScottGu and the ASP.NET Team for this quick update.
-
Earthquake Rocks the SouthEast
OK, so maybe we didn't exactly rock, but we did shake for a minute at 5:00 am EST here in the Atlanta area. This is big news in the South since we seldom get noticeable earthquakes -- its actually the only one I've ever felt in my life. This was a 4.9 on the Richter scale, centered along the Alabama / Georgia line near Fort Payne in Alabama. Fort Payne is the location of the deepest gorge east of the Mississippi, and the fault line there runs along the Appalachian Mountains. I estimate my house is about 75 miles from the epicenter -- I've seen several hurricanes and now an earthquake!
-
Atlanta DotNetWeblogs Lunch
I had lunch today with some local Atlanta .NET gurus -- how's this for a group: Kirk Evans, Don Browning, Matthew Nolton, Wally McClure, James Shaw, John Croft, and myself. That's 5 guys with Blogs here at DotNetWeblogs.com, along with 2 other really top-notch guys in the industry also. Of course, Wally's really from Knoxville, but that will be a suburb of Atlanta in a few more years, so that's close enough to count. We really need to get some girls next time though -- hey Dana, do you have lots of blonde friends that can join us next time. :) So who else is in or near the Atlanta area?
-
Windows 2003 Blue Screen of Death
I've had my computer at home running Windows Server 2003 RTM for a few weeks now and I finally got my first Blue Screen of Death last night! I haven't even seen one on a Windows 2000 system in years, so it really surprised me when it did occur, but it was a lot nicer and informative. It had larger print and less information, although what was there was more helpful, and I could easily spot IRQ and Alcatel on the screen. So to me it seemed obvious that this was due to my DSL modem somehow, which really means this was more of a hardware driver problem than a Windows 2003 problem. After the automatic reboot after 60 seconds, I was prompted to submit a report to Microsoft, which was quickly analyzed with an online response. The web response very clear stated the problem was my Alcatel modem, in plain English of all things, and gave me a link to download the latest driver to fix it. I was very impressed, although I still think that the whole process would not have been so nice to experience for my wife or kids. Also, the auto reboot would have left me wondering what they were talking about, although I still think that this is the appropriate behavior for a server. I don't really know if anything can be done to improve this any better, but a couple of my colleagues are debating this today -- so what do you think: are Blue Screens acceptable or is there an alternative?