Along with HTML5 Boilerplate's rock solid commitment to cross-browser consistency, H5BP brings you delicious documentation, a site optimizing build script, and a custom boilerplate builder. In addition to this, we now support lighttpd, Google App Engine, and NodeJS with optimized server configurations (along with Apache, Nginx, and IIS) and we've reduced the overall size of the published boilerplate by 50%.
You can read more of HTML5Boilerplate at the project website.
A nice way to get started with HTML5Boilerplate can be found at Dan Wahlin’s blog on this post.

A jQuery Plugin for adding IE9 features (site pinning, site mode, etc.) to your websites. Several new features of Internet Explorer 9 are designed to enhance the browsing experience of consumers by enabling sites that leverage certain features to behave like applications on the desktop when those sites are ‘pinned’ to the taskbar in Windows 7. A user pins a site by dragging the site’s tab (or favicon in the address bar) to the taskbar. For all sites, IE9 will create a default experience (called ‘site mode’) that will use information about the site to create an instance of the browser customized to look specific to that site. Developers can also add specific meta tags and script commands to extend these features to further customize user’s pinned experience of the site.
Your site, from zero-to-pinned in less than 5 minutes:
- install-package jquery.ie9ify
- $(‘head’).pinify();
- Run and Pin!
More information at http://ie9ify.codeplex.com/
When I am working on some project, it is normal to need to analyze the queries that are executed on the database to detect a possible bug or something that is not matched with what I expected.
For this, SQL Server Profiler gives me a good and quick overview of what is being requested for each connection to the database.
The case of a registration in the profiler can be shown as:

As can be seen in the Application Name column has the value ".Net Sql Client Data Provider", which makes it very difficult in filtering to only the application that we intend to analyze the data.
To avoid this, we only need to indicate on ConnectionString, the name of our application, and everything gets easier.
"Data Source=localhost;Initial Catalog=MyDatabase;
Integrated Security=True;Application Name=MyAppName"
After that, we get something more friendly like:

After HTML 5 Microsoft WebCamp Portugal, I came up with some interest in exploring the Menubar plugin.
This plugin transforms a list into a nice menu, and as such, I like to implement it on a project which I use web.sitemap.
To this, I needed to use an XSLT to transform the web.sitemap file, which is nothing more an XML, into an unordered list in a format required by Menubar.
Here’s an example of web.sitemap file:
<?xml version="1.0" encoding="utf-8"?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0">
<siteMapNode url="~/" title="Home" description="Home">
<siteMapNode url="" title="Menu 1" description="Menu 1" >
<siteMapNode url="http://www.google.pt" title="Submenu 1" description="Submenu 1" />
</siteMapNode>
<siteMapNode url="" title="Menu 2" description="Menu 2">
<siteMapNode url="http://www.microsoft.com" title="Submenu 2" description="Submenu 2" />
<siteMapNode url="http://www.apple.com" title="Submenu 3" description="Submenu 3" />
</siteMapNode>
</siteMapNode>
</siteMap>
To transform the XML file on an unordered list, I’ve used the next XSLT:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:map="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0"
exclude-result-prefixes="map">
<xsl:output method="xml" encoding="utf-8" indent="yes"/>
<xsl:template match="map:siteMapNode">
<li>
<a href="{@url}" title="{@description}">
<xsl:value-of select="@title"/>
</a>
<xsl:if test="map:siteMapNode">
<ul>
<xsl:call-template name="mapNode"/>
</ul>
</xsl:if>
</li>
</xsl:template>
<xsl:template name="mapNode" match="/*/*">
<xsl:apply-templates/>
</xsl:template>
</xsl:stylesheet>
This way, I’m getting an list like this:
<?xml version="1.0" encoding="utf-16" ?>
<li><a href="" title="Menu 1">Menu 1</a>
<ul>
<li><a href="http://www.google.pt" title="Submenu 1">Submenu 1</a></li>
</ul>
</li>
<li><a href="" title="Menu 2">Menu 2</a>
<ul>
<li><a href="http://www.microsoft.com" title="Submenu 2">Submenu 2</a></li>
<li><a href="http://www.apple.com" title="Submenu 3">Submenu 3</a></li>
</ul>
</li>
Finally, we only need to add a XML control to render the list:
<ul id="bar1" class="menubar">
<asp:Xml runat="server" ID="xmlSiteMapViewer" DocumentSource="~/web.sitemap" TransformSource="~/sitemap.xslt" />
</ul>
The insertion of XML control between an unordered list was deliberated, because only then we have the menu working properly and like the one on this site:
http://view.jqueryui.com/master/demos/menubar/default.html
Since we don’t have a direct way to indicate that some user will be locked, the only way I got to do that, was forcing a wrong login multiple times, until reach the maximum attempts defined on “maxInvalidPasswordAttemps” attribute.
When we use ASP.NET Membership, on web.config file you have something like this:
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="MyAppConnectionString"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10" applicationName="MyAppName" />
And the code I use is:
public static bool LockUser(MembershipUser user)
{
try
{
for (int i = 0; i < Membership.MaxInvalidPasswordAttempts; i++)
Membership.ValidateUser(user.UserName, "thisisandummypasswordonlytolocktheuser");
return user.IsLockedOut;
}
catch (Exception)
{
throw;
}
}
Hope it helps.
Project Silk provides guidance for building cross-browser web applications with a focus on client-side interactivity. These applications take advantage of the latest web standards like HTML5, CSS3 and ECMAScript 5 along with modern web technologies such as jQuery, Internet Explorer 9, and ASP.NET MVC3.
To illustrate this guidance, the project includes a reference implementation called Mileage Stats that enables its users to track various metrics about their vehicles and fill-ups. Much of the effort in building Mileage Stats was applied to the usability and interactivity of the experience. Animations were included to enhance the enjoyment of the site and AJAX is used to keep the interface responsive and immersive. A great deal of care was also taken to ensure the client-side JavaScript facilitates modularity and maintainability. To accomplish these design goals, the JavaScript code was structured into “widgets” that benefit from the jQuery UI Widget Factory.
More information at http://silk.codeplex.com/
A quick way to get a menu to work on our website, is using the Menu control and assign it to a web.sitemap using SiteMapDataSource.
Example of web.sitemap file:
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/" title="Home" description="Home">
<siteMapNode url="" description="Menu 1" title="Menu 1">
<siteMapNode url="" description="SubMenu 1" title="Sub Menu 1"/>
</siteMapNode>
<siteMapNode url="" description="Menu 2" title="Menu 2"/>
<siteMapNode url="" description="Menu 3" title="Menu 3"/>
</siteMapNode>
</siteMap>
Sample code to add to the page menu:
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu"
EnableViewState="False" IncludeStyleBlock="False" Orientation="Horizontal"
DataSourceID="SiteMapDataSource1">
</asp:Menu>
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="false" />
Running the application, we will have something like the next picture:

To show or hide the menu depending on the type of access each user, we may define the Roles in each SiteMapNode.
Another way to control the menus visible, is to add an attribute in each SiteMapNode and depending on its value, or will not display each menu.
For this, the web.sitemap will be something like:
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/" title="Home" description="Home" visible="true">
<siteMapNode url="" description="Menu 1" title="Menu 1" visible="true">
<siteMapNode url="" description="SubMenu 1" title="Sub Menu 1" visible="true"/>
</siteMapNode>
<siteMapNode url="" description="Menu 2" title="Menu 2" visible="true"/>
<siteMapNode url="" description="Menu 3" title="Menu 3" visible="true"/>
</siteMapNode>
</siteMap>
The attribute "visible" is that we will indicate whether or not the menu is shown, and we'll add the event MenuItemDataBound on Menu with the following code:
protected void NavigationMenu_MenuItemDataBound(object sender, MenuEventArgs e)
{ SiteMapNode node = e.Item.DataItem as SiteMapNode;
if (!string.IsNullOrEmpty(node["visible"]))
{
bool isVisible;
if (bool.TryParse(node["visible"], out isVisible))
{
if (!isVisible)
{
if (e.Item.Parent != null)
e.Item.Parent.ChildItems.Remove(e.Item);
else
((Menu)sender).Items.Remove(e.Item);
}
}
}
}
Thus, we have our menu to show all nodes whose attribute value equals True.
To be able to directly control the menus that will be visible or not, I used a Treeview to bind the web.sitemap file and set all items to show a checkbox, which will indicate the status of the Visible attribute.
<asp:TreeView runat="server" ID="tvMenus" AutoGenerateDataBindings="False" DataSourceID="XmlDsSiteMap"
OnTreeNodeCheckChanged="tvMenus_TreeNodeCheckChanged" ShowCheckBoxes="All" ShowLines="True"
OnTreeNodeDataBound="tvMenus_TreeNodeDataBound">
<DataBindings>
<asp:TreeNodeBinding DataMember="siteMapNode" SelectAction="None" ShowCheckBox="True"
TextField="title" />
<asp:TreeNodeBinding DataMember="siteMapNode" TextField="title" />
<asp:TreeNodeBinding DataMember="siteMapNode" TextField="title" />
<asp:TreeNodeBinding DataMember="siteMap" />
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource ID="XmlDsSiteMap" runat="server" DataFile="~/Web.sitemap" XPath="/*/*/*">
</asp:XmlDataSource>
protected void tvMenus_TreeNodeDataBound(object sender, TreeNodeEventArgs e)
{ XmlElement node = e.Node.DataItem as XmlElement;
if (node.Attributes["visible"] != null)
{ if (!string.IsNullOrEmpty(node.Attributes["visible"].Value))
{
bool isVisible;
if (bool.TryParse(node.Attributes["visible"].Value, out isVisible))
{
e.Node.Checked = isVisible;
}
else
e.Node.Checked = true;
}
else
e.Node.Checked = true;
}
}

Finally, to record the attribute changes depending on the state of the checkbox, we added to the Treeview TreeNodeCheckChanged event the following code:
protected void tvMenus_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
{ XmlDsSiteMap.GetXmlDocument().SelectSingleNode(e.Node.DataPath)
.Attributes["visible"].Value = e.Node.Checked.ToString();
}
And we add the button to save the changes the following code:
protected void btn_Click(object sender, EventArgs e)
{ XmlDsSiteMap.Save();
}
Now just enable and disable these items like we want to.

On Day 2 of Mix 2011, it announced the new version of Silverlight.
The main features in this first beta version are:
- XAML Debugging with breakpoints for binding debugging
- Implicit data templates for easy UI reuse
- Double (and multi) click support
- GPU-accelerated XNA-compatible 3D and immediate-mode 2D API
- Low-latency sound effects and WAV support
- Real operating system windows and multi-display support
- Significant performance improvements, fixes and much more
You can see all necessary information and download links in http://www.silverlight.net/getstarted/silverlight-5-beta/