Important .NET 4.0 News

Scott “Gu” (Guthrie) has started a series of posts about VS2010 and (more importantly) .NET 4.0, touting its new features that so far have been incredibly important for developers. It seems that Microsoft is finally “getting it” and listening to us about certain things.

While most of you have already heard about the ability to define Debug and Release web.config files, these two new features may put you over the edge in waiting for .NET 4.0 to release.

  • Clean Web.Config Files

    Finally Microsoft has realized that while having configuration files that are verbose enough to support wild customizations, most of us do not need to change the default sections in the web.config file. So it should come as no surprise that clean configuration files will now be a thing of the (recent) past. It is just a shame it took so long to get.

  • Control over Client Ids

    Hidden in this post about new project templates and what looks to be the ASP.NET WebForms version of the ASP.NET MVC template is a bit about client ids for controls.

    All of the styles and content within the site are configured using CSS, and take advantage of some of the new features with Web Forms in ASP.NET 4 – including clean client-side “id” names (no more ctrl_ mangled names – ASP.NET 4 gives you complete control over the client id), and CSS based rendering instead of table based rendering for the built-in server controls.

    This, again, should come as no surprise as the mangled names can present problems for developers looking to write some quick javascript as well as those looking to simply clean up their HTML. Here’s to hoping that Microsoft cleans up its HTML in other places as well (SharePoint anyone?).

IIS For Dummies: Allowing Anonymous Access!

Pro-tip for today: When attempting to create a website (I am using ASP.NET MVC 1.0) with IIS7 that allows anonymous users under an Active Directory domain it is imperative that you remember to give anonymous users read rights to the web directory on the system’s physical file system. Otherwise you could end up with pages that do not load the CSS correctly.

Furthermore, if you are running into assembly load problems when running on Windows Server 2008 R2 remember that everything is running in X64 and that you need to enable 32-bit compatibility in your Application Pools. To do this select the App Pool and click “Advanced Settings” and set “Enable 32-Bit Applications” to true.

Developers May Become Liable?

By way of a Twitter post1, developers may become liable for damages caused by known bugs in released software. This is an issue that all developers need to pay attention to because it has a very broad range of implications for the industry. Could you imagine if NVIDIA, Apple or Microsoft were required to not only disclose all bugs in each build but also to close them before a release was possible? What time was spent on Vista could double or triple easily with this law. What about developers who focus on XBLIG and/or iPhone Apps? These small (one person) teams are in dangerous waters now and could face suits that they cannot financially defend.

While I agree developers should not be held responsible for serious damages (can a buggy driver burn down your house?), tying down the industry and its workhorse (developers) is not the way to go.

Notes:

1: @nuvm RT @a_williams: RT @cwoodruff: RT @atomicobject: Developers to be held accountable for shipping buggy software: http://bit.ly/Yhax3

Open User Information within Browsers

For those who are blissfully unaware, it is the year 2009 and I still have to click three dropdowns to see many videos on popular sites like Shack News. With the recent news about the HTML5 spec and how it could support a geo-location tag has got me thinking about the information we are willing to give and what other information would be beneficial to open up for sites.

The perfect example of this is known by any avid gamer who enjoys watching the latest trailers of upcoming games. Most, if not all, of the video sites have an age block on "mature" videos and it seems none of them are really willing to go out of their way to improve the experience. Instead users are left with clicking the same old annoying dropdowns for month, day and year so that they can simply watch a video. While some are ok, providing many items to remove the need for scrolling or sorting the year in ascending order so we can cheat, others are limited by their host control and force the user to grab and drag the scrollbar.

Wouldn’t it be nice if our browsers new some basic information about us that could also be tied into our local user account? For instance at work a browser could pull in information about myself from ActiveDirectory like my birthdate, position, et cetera. The browser itself, or the OS could provide a layer of security that disables software from gaining access to certain data I want to keep private.

My point is that within the near (5 years?) future we could possibly see an application for Facebook that allows you to see specifically where your friends are while still having to click the same old dropdowns to view a 30 second game trailer. Thanks W3C for focusing on the important stuff!

P.S. This should be bigger than just HTML5 – it would be helpful to have access to the data from any scripting language. I see a big chance here for Microsoft and ASP.NET 4 to lead the way with an open format, however I am sure that I am unaware of something that would cause such data from being available.