<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Towards Web 3.0</title><subtitle type="html">This blog aims to deliver useful and innovative information for Web developers. My goal is to inform readers about the latest trends and techniques in Web development - clearly, precisely and regularly.  The objective is to convince you with the quality of the information and collection of resources, tools and tips.</subtitle><id>http://blogs.msdn.com/rajandwivedi/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/rajandwivedi/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2009-03-19T16:30:00Z</updated><entry><title>PDC2009 @ LA – Day 2 Coverage – Keynotes and Announcements Summary</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/11/19/pdc2009-la-day-2-coverage-keynotes-and-announcements-summary.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/11/19/pdc2009-la-day-2-coverage-keynotes-and-announcements-summary.aspx</id><published>2009-11-19T13:20:27Z</published><updated>2009-11-19T13:20:27Z</updated><content type="html">&lt;p&gt;Steven Sinofsky (President, Windows Division), Scott Guthrie (VP, Microsoft Developer Division) and Kurt DelBene (Sr. VP, Office Business Productivity Group) were the top speakers and headliners for today’s (day# 2) keynote at PDC2009 in Los Angeles, CA today. The PDC is historically quite important for announcements, this year was no different. &lt;p&gt;· Biggest applause of the day# 2&amp;nbsp; comes from Sinofsky when he mentioned about a partnership project with Acer where it puts its own team through the process of actually building a laptop computer, just to see how one is built - what laptop engineers actually go through. In learning the system that Acer goes through, Microsoft built its own limited editions for PDC'09 laptops. They (i.e. Acer machine with Microsoft’s preferred software image, resistive multi-touch, accelerometer) will be giveaways to all PDC attendees!!  &lt;p&gt;· In terms of pure wow factor from the announcements, Silverlight 4.0 steals the show!&amp;nbsp; The big news today is Silverlight, specifically the beta of version 4.0. Silverlight continues its march towards providing more and more of the functionality of .net, almost full WPF and Windows. Silverlight 4.0 is incredible, that’s what you’ll hear from anyone that watched the day 2 keynote and demos.  &lt;p&gt;(Background, Silverlight 3 released just over a year ago and here we are with yet another release full of features that our developer community has been asking for. This beta release is a developer release.) &lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;/u&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Background from PDC2009 Day # 1&lt;/u&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;/u&gt;&lt;/b&gt; &lt;p&gt;· Everything is about 3 screens (desktop, phone and tv) and the cloud.  &lt;ul&gt; &lt;li&gt;Day 1 focus – Backend i.e. Azure and cloud based services&lt;/li&gt; &lt;li&gt;Day 2 focus – Office, IE, Silverlight &amp;amp; Windows&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Emphasis on IE + Silverlight for all 3 screens – desktop, phone and TV.  &lt;p&gt;There was quite a bit of developer emphasis with Silverlight in contrast to Windows 7.&amp;nbsp; Windows 7 is great but the difference between Silverlight and Windows is continuing to shrink.&amp;nbsp; Silverlight 4.0 also even supports multi-touch as well as lots more direct hardware access. &lt;p&gt;&lt;b&gt;&lt;u&gt;Announcements from Keynotes&lt;/u&gt;&lt;/b&gt; &lt;p&gt;· Public beta will include all features demonstrated&amp;nbsp; today, tooling support for VS 2010. Available for download now at &lt;a href="http://silverlight.net/getstarted/silverlight-4-beta/"&gt;http://silverlight.net/getstarted/silverlight-4-beta/&lt;/a&gt;.  &lt;ul&gt; &lt;li&gt;Final release of Silverlight 4 shipped first half of next year.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Office 2010 and SharePoint 2010 public betas go live today. &lt;p&gt;· Office Mobile Clients for Windows Mobile 6.5 betas available today in Windows Mobile Marketplace. &lt;p&gt;· Outlook Social Connector -- . Get social networking in Outlook with people info, history, activities; SharePoint 2010 Provider, Windows Live Provider and a plug-in involving partners such as LinkedIn. Hence, enabling information from individuals' social organizations and networks to be displayed in a meaningful context in Outlook. This is “SDK based approach/ ability to make providers” implying that developers will be expected to integrate and deploy it.  &lt;p&gt;· Promise of discussion on Windows Mobile at MIX’10 – March 15-17, 2010 in Las Vegas. &lt;p&gt;· The announcement that got faded due to other announcements was XRM for Microsoft Dynamics. It is one of the more silent&amp;nbsp; but promising pieces of Microsoft’s cloud technology.  &lt;ul&gt; &lt;li&gt;oXRM is Microsoft’s only fully multitenant application platform as a service technology that runs on and off premises. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Other betas released today are  &lt;ul&gt; &lt;li&gt;Microsoft Project 2010 Beta &lt;/li&gt; &lt;li&gt;Microsoft Visio 2010 Beta&lt;/li&gt; &lt;li&gt;Also announced: PowerPivot for Excel 2010 – CTP version is available - &lt;a href="http://www.powerpivot.com/"&gt;http://www.powerpivot.com/&lt;/a&gt;&lt;/li&gt; &lt;li&gt;Download URL: &lt;a href="http://www.microsoft.com/2010"&gt;http://www.microsoft.com/2010&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;/u&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;/u&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Details&lt;/u&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;Silverlight &lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;· Silverlight now on 45% of the world’s internet-connected devices (up from 33% in the summer) &lt;p&gt;· Silverlight 4.0 under trial by Bloomberg, National Instruments, Siemens (medical diagnostic imaging) &lt;p&gt;· Silverlight will be used this Winter for Victoria’s Secret Fashion Show and Winter  &lt;p&gt;· Silverlight 4.0 key focus – Media, Business Applications, Beyond the Browser &lt;p&gt;· Silverlight 4.0 offers Webcam &amp;amp; Microphone support on the machine (including raw access), multi-cast streaming and offline DRM support &lt;p&gt;· Silverlight 4.0 introduces support for printing, rich text, clipboard access, rights click, mouse wheel, implicit styles, drag and drop, html hosting (including content as brush) &lt;p&gt;· Silverlight 4.0 includes compile REST protocol enhancements; improved WCF support (such as TCP channel support) and RIA  &lt;p&gt;· Visual Studio 2010 Silverlight support - WYSIWYG Design Surface for XAML  &lt;p&gt;· Better intelli-sense, Improvements for Data Binding, Layout and Styles, Services Integration &lt;p&gt;· Silverlight 4.0 offline capabilities includes Windowing APIs, Notification pop-ups, HTML hosting and Drop Target &lt;p&gt;· Silverlight 4.0 offline ‘elevated’ model includes: Custom Windows Chrome, Local File System, Cross-Site Network, Keyboard in Full Screen Mode, Hardware Device Access, COM Automation of local objects (using the dynamic keyword in C#) and location APIs. &lt;ul&gt; &lt;li&gt;Ability to build trusted applications that run outside the sandbox on Windows and the Mac, the key is that user consent dialog is provided automatically.&lt;/li&gt; &lt;li&gt;For example: &lt;/li&gt; &lt;li&gt;Office 2010 calendar can be queried, Pivot-Charts brought up from Excel&lt;/li&gt; &lt;li&gt;Multi-touch features with basic features, zoom in, zoom out.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Silverlight 4.0 - Twice as fast, 30% faster startup and offers new profiling support; Transfer data 600% faster using internal transfer protocols instead of HTTP. &lt;p&gt;· Silverlight 4.0 is supported on Google Chrome. &lt;p&gt;· Silverlight 4.0 is still under 5MB to install. &lt;p&gt;· It will ship the Silverlight 4.0 Facebook integration demo as a reference sample &lt;p&gt;· •70% of voted-for Silverlight 4 features (including 9 of top 10) included &lt;p&gt;· View the list of the new features at &lt;p&gt;o &lt;a href="http://channel9.msdn.com/learn"&gt;http://channel9.msdn.com/learn&lt;/a&gt; &lt;p&gt;· Silverlight can use client-side object model to talk to SharePoint 2010 &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Silverlight Key Demos&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;· Webcam application that captures live video, can do live effects with bulge, distortion. Integration with Twitter enables the result to be live-integrated into Twitter profile, so a picture just taken becomes the user's Twitter icon. &lt;p&gt;· Open-source library for barcode reading, can immediately look up the prices of any object scanned from the barcode scanner, pulls up distributors or retail sellers. &lt;p&gt;· Demo of Vancouver Olympics site with Silverlight player, with instant seek. &lt;p&gt;· Rich text control that ships in Silverlight 4.0: Arabic, Hebrew, Kanji character sets all within the text editor. Custom context menu after right-click. Can paste and insert text, pictures, and DDE-like controls into a Silverlight app, such as a Data Grid control  &lt;p&gt;· from Excel. Can cut and paste from Data Grid control back into Excel. &lt;p&gt;· Text can be dragged and dropped from a browser to the application. Print Preview works, including with custom Print Preview dialogs. Silverlight 4.0 will now write directly to the printer, has a print API. &lt;p&gt;· HTML control is hosted within Silverlight app. HTML image can be converted into a brush -- the entire HTML page can be used as a brush, so that the page can be converted into, say, a jigsaw puzzle, the pieces of which can be juggled around the screen. &lt;p&gt;· Brian Goldfarb is demonstrated an S4 application that utilizes Facebook, but which uses its own chrome to develop a real, custom app on top of custom Facebook apps. Can also take advantage of COM automation to right-click data from Facebook, then add to the Outlook calendar. Access to the Outlook inbox, with virtual wall on the right "to contextualize who I'm talking to." Photos dragged-and-dropped from the outside can be loaded into the application live, then tagged, prior to being sent to Facebook. &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Internet Explorer (IE)&lt;/b&gt; &lt;p&gt;· First IE9 news: Three weeks into the project, the team is focused on the following areas: &lt;ul&gt; &lt;li&gt;Standards: Acid3 and new emerging standards like HTML5&lt;/li&gt; &lt;li&gt;JavaScript performance&lt;/li&gt; &lt;li&gt;Hardware-accelerated DirectWrite/Direct2D Graphics &amp;amp; Text&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· IE9 already on 32/100 on Acid3 test, up from 20/100 on IE8 &lt;p&gt;· CSS selectors test, using CSS3.info - passed 572 out of 578 (a variation of the SlickSpeed test) for CSS selectors used in rendering. &lt;p&gt;· IE rendering engine will support rounded borders in CSS.  &lt;ul&gt; &lt;li&gt;Rendering engine will use hardware-acceleration in DX9 mode (not DX10), using Direct2D. Highly resolved text with much resolved clarity.&lt;/li&gt; &lt;li&gt;Sub-pixel positioned text using DirectWrite. Zooms used to be jittery in GDI, nice and smooth as we move to Direct2D. Smooth realignments - "changes without you having to do anything different with your site."&lt;/li&gt; &lt;li&gt;Maps re-rendering will use 60 fps rather than 2 or 3, by moving to Direct2D from GDI.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Lot of new APIs in Windows 7, and IE will take advantage of these APIs.  &lt;p&gt;· Videos of demos will soon be available on Microsoft Channel 9.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;IIS Media Capabilities&lt;/b&gt; &lt;p&gt;IIS media tool, new version will enable streaming of media directly to Apple iPhone. Video can be encoded once using smooth streaming, target clients using the iPhone. &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Windows &lt;/b&gt; &lt;p&gt;&lt;b&gt;Telemetry Data&lt;/b&gt; &lt;p&gt;Sinofsky mentioned about the lessons learned at Microsoft about being responsible about how to disclose information about the product. "You should expect us to have learned that lesson about responsible disclosure, and to continue as we move forward.” &lt;p&gt;The value of the "Send Feedback" button, learning from clients what drivers were loaded, whether the installation of drivers and services were successful. Software Quality Monitor is designed to be opt-in for customers, but the customers were "opted in automatically" during the preview and beta. &lt;p&gt;· Lots of telemetry data from the Windows development cycle – even stuff like number of presses on Start button and Aero Snap/Shake uses. &lt;p&gt;· The audio of the audience at the last PDC was analyzed – best reaction was to the new Windows 7 slider control for UAC levels. &lt;p&gt;There was also a silly Video about how Microsoft programmers are held directly responsible for the errors of their ways, by way of a kind of "agony chair" that shocks, stuns, or stabs the individual developers discovered using the Watson logs to have been responsible for a specific problem. Filled with entertainment-only disclaimer. &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Windows Demos:&lt;/b&gt; &lt;p&gt;· Various demos of W7 new hardware-supporting features – touch, sensors, hardware-accelerated encoding, DirectX 11, etc. &lt;p&gt;· Angiulo demonstrated the differences between DirectX 11 processing power and DX10, mainly by means of offloading much of the computing power from the CPU to the GPU.  &lt;ul&gt; &lt;li&gt;Demos of moving thousands of "star" objects simultaneously in a simulated galaxy formation, with gravity and physical forces between them, all in a 40+ Gflops operation running on a $400 graphics card rather than a $15,000 computer.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;This year if you did not have the opportunity to join the Microsoft PDC event personally then I hope that these notes will help you. Also, Keynotes were streamed live both on November 17th and November 18th. If you would like to watch them on-demand they are being made available on the &lt;a href="http://www.microsoftpdc.com"&gt;www.microsoftpdc.com&lt;/a&gt; site soon. One last thing: if you haven’t watched the keynote, take the time to watch it soon because I promise, it’s worth it. As Silverlight is one of my focus points I can recommend you to watch the Silverlight 4 part at the very least. &lt;p&gt;Also, credit to the following post where Tim has as provided a comprehensive blog on Silverlight 4.0 features:  &lt;p&gt;&lt;a href="http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx"&gt;http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Hope that you have enjoyed this post! &lt;p&gt;Rajan Dwivedi &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9925369" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="IIS Media Services" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/IIS+Media+Services/default.aspx" /><category term="PDC09" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/PDC09/default.aspx" /><category term="PDC2009" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/PDC2009/default.aspx" /><category term="Keynotes" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Keynotes/default.aspx" /><category term="IE9" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/IE9/default.aspx" /><category term="Announcements Silverligh 4" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Announcements+Silverligh+4/default.aspx" /><category term="Windows7" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Windows7/default.aspx" /></entry><entry><title>PDC2009 @ LA – Day 1 Coverage – Keynotes and Announcements Summary</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/11/18/pdc2009-la-day-1-coverage-keynotes-and-announcements-summary.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/11/18/pdc2009-la-day-1-coverage-keynotes-and-announcements-summary.aspx</id><published>2009-11-18T09:42:40Z</published><updated>2009-11-18T09:42:40Z</updated><content type="html">&lt;p&gt;Microsoft kicked off Professional Developer Conference (PDC) 2009 with a&amp;nbsp; keynote by Ray Ozzie and Bob Muglia.  &lt;p&gt;· Ray started with the theme for "Three Screens and a Cloud”, with focus on the back end today.&amp;nbsp;&amp;nbsp; &lt;p&gt;· Expect news on client software (Silverlight and IE) to be covered tomorrow i.e. Nov-18, 2009.  &lt;p&gt;&amp;nbsp; &lt;p&gt;You can visit &lt;a href="http://microsoftpdc.com"&gt;http://microsoftpdc.com&lt;/a&gt;&amp;nbsp; for&amp;nbsp; continuing coverage from the Channel 9 team as well as for Day 2 Keynote featuring Scott Guthrie. &lt;p&gt;· Starting from 10:30AM PST each day the Channel 9 team will interview conference presenters, technical leaders, industry luminaries, partners and the Channel 9 community. If you or your customers are unable to attend PDC09 in person, please tune in to the live smooth-streaming broadcast (powered by IIS7 and Silverlight) by visiting &lt;a href="http://microsoftpdc.com"&gt;http://microsoftpdc.com&lt;/a&gt;. &lt;p&gt;&amp;nbsp; &lt;p&gt;Lots of big news and interesting announcements but the big word is “Azure” and "Fabric". First of all, the idea of a fabric for running distributed applications is not new, but its applicability to better explaining the vision of running apps on premises and off premises using a consistent framework is new and is a good step forward.&amp;nbsp; Here are the highlights of the morning's&amp;nbsp; key announcements for Day 1 (Nov 17, 2009), with links to more information in several areas.  &lt;p&gt;· Windows Azure - Microsoft's Cloud Computing platform was officially launched. It will be available for production use beginning January 1, 2010.  &lt;p&gt;· Microsoft Pinpoint - A new online marketplace for Microsoft partners to offer applications. &lt;p&gt;· Microsoft Codename “Dallas” -&amp;nbsp; A place where developers can find and license commercial and public data from the cloud. &lt;p&gt;· Windows Server AppFabric - A set of application server technologies including formerly code-named "Dublin" and “Velocity”. These features will simplify and enhance the use of Windows Workflow Foundation (WF) and Windows Communication Foundation (WCF).  &lt;p&gt;· ASP.NET MVC 2 - The first beta release of MVC v2 was announced and made available to developers. – Download from &lt;a href="http://asp.net/mvc"&gt;http://asp.net/mvc&lt;/a&gt;. &lt;p&gt;&amp;nbsp; &lt;p&gt;The following are the details: &lt;p&gt;&lt;b&gt;&lt;u&gt;Windows Azure&lt;/u&gt;&lt;/b&gt; &lt;p&gt;· Windows Azure Launch Date: Windows Azure will officially launch 01/01/10 (January 1, 2010) and, as a little sweetener for New Year, the 1st month will be free. &lt;ul&gt; &lt;li&gt;Nov 17 2009 - Feature complete &lt;/li&gt; &lt;li&gt;Jan 1, 2010 - Production &lt;/li&gt; &lt;li&gt;Feb 1, 2010 - Customer billing begins &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Features that go live today:  &lt;ul&gt; &lt;li&gt;Single Sign-on &lt;/li&gt; &lt;li&gt;Project templates out-of-box in Visual Studio 2010 &lt;/li&gt; &lt;li&gt;Multiple sizes of VMs &lt;/li&gt; &lt;li&gt;FastCGI (Enabling extremely flexible binding with Zend Framework, MySQL, Java, php, eclipse) &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;· Entity Group Transactions added to Azure tables, integrated content delivery network  &lt;p&gt;· Support for pushing popular downloads to the edge. &lt;p&gt;· XDrive - Azure Storage blobs that are mountable as NTFS drives  &lt;p&gt;Landing Site: &lt;a href="https://www.microsoft.com/windowsazure/"&gt;https://www.microsoft.com/windowsazure/&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;SQL Azure&lt;/u&gt;&lt;/b&gt; &lt;p&gt;· A true database as a service, simply create a new database when you need a new one (don’t need to think about memory, disaster recovery, etc. It is all automatic) &lt;p&gt;· Support for ADO.NET, ODBC, JDBC  &lt;p&gt;· Cloud-based authentication service for cloud-leveraged database in SQL Azure, through SQL Server Management Studio. &lt;p&gt;Landing Site: &lt;a href="https://www.microsoft.com/windowsazure/developers/sqlazure/"&gt;https://www.microsoft.com/windowsazure/developers/sqlazure/&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Customers that Go Live today&lt;/u&gt;&lt;/b&gt;&lt;u&gt;!&lt;/u&gt; &lt;p&gt;Select customers are taken into production starting today, some are &lt;p&gt;· WordPress running on Azure - Matt Mullenweg, founder of WordPress (parent company Automatic), shares the story with MySQL and Apache on Windows Azure. &lt;p&gt;· Kelly Blue Book, running on Azure - Kelley Blue Book demonstrates a Silverlight app for an online car finder. Needs a second data center for failover, "only using it a couple of hours per week," and the cloud model provides a cost-effective, flexible solution. &lt;p&gt;· OddlySpecific.com (team from &lt;a href="http://www.ICanHazCheeseburger.com"&gt;http://www.ICanHazCheeseburger.com&lt;/a&gt;), launching today; running on SQL Azure and Windows Azure. When it gets popular, Azure specifications can be modified instantaneously. &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Microsoft Project Sydney&lt;/u&gt;&lt;/b&gt; &lt;p&gt;Announced today Microsoft Project Sydney will enable you to connect existing in-house/on-premise services with those running in the cloud on Azure-based instances. It also allows you to connect direct to on-premise SQL Server from cloud roles. The goal is to make Azure an integral part of corporate/IT environments. &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Microsoft Pinpoint&lt;/u&gt;&lt;/b&gt; &lt;p&gt;Announcing Microsoft Pinpoint, integrated into Azure Developer Portal, Microsoft Partner Network, in the midst of integrating into Microsoft Portal for IT. The idea here being a sharing of customers searching for services, and searches searching for customers. &lt;p&gt;"It's difficult for me to overstate the importance of common catalogs...a place where anyone can see some stunning network effects for the things found to be most popular to the community. Online catalogs aren't just about apps, they can be places to discover the most popular and useful data." – Ray Ozzie &lt;p&gt;Landing Site: &lt;a href="http://www.pinpoint.com/en-US/"&gt;http://www.pinpoint.com/en-US/&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Microsoft Project Dallas&lt;/u&gt;&lt;/b&gt; &lt;p&gt;A CTP of a "game-changing new subsystem" code-named Dallas, an open catalog and marketplace for commercial and public data, with a uniform discovery mechanism, binding mechanism, a uniform licensing model for easy joining and recombining.  &lt;p&gt;"By delivering data as a service, our aspirations are that Dallas could catalyze a whole new wave of experimentation by developers." &lt;p&gt;It serves as an “information and brokerage service” designed to allow access to commercial and reference data from various entities. The following are among the data providers in the early going: &lt;p&gt;· Associated Press  &lt;p&gt;· NASA  &lt;p&gt;· National Geographic  &lt;p&gt;· UN  &lt;p&gt;The aim is to create Data As A Service (DAAS) and let data become a commodity that catalyzes a whole new way of remixing and presenting data. There was a public data demonstration from NASA that included 3D images of landscapes taken by the Mars Rovers. Everyone used 3D glasses during the demo. &lt;p&gt;Dallas data feeds will be discovered through Pinpoint. For example, infoUSA has interesting data about businesses, some of it shows reviews by users.  &lt;p&gt;Key benefits includes: &lt;p&gt;· Taking the friction out of discovering, exploring and using data  &lt;p&gt;· Subscriptions to data consumption  &lt;p&gt;· Explore the dataset, REST-based data consumption  &lt;p&gt;· Import into Excel through PowerPivot  &lt;p&gt;· OpenData protocol (ADO.NET Data Services = Open Data); Build a service proxy from Dallas  &lt;p&gt;· Apps and innovation around public data  &lt;p&gt;· Eliminate inconsistency in data formats (CSV, XML, etc.); - “Dallas” brings consistency to the data format  &lt;p&gt;Landing Site: &lt;a href="http://www.pinpoint.com/en-US/Dallas"&gt;http://www.pinpoint.com/en-US/Dallas&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Windows Server AppFabric&lt;/u&gt;&lt;/b&gt; &lt;p&gt;Announced the release of a new application server called Windows Server AppFabric that goes into Beta 1 today.&amp;nbsp; It is a set of integrated technologies that make it easier to build, scale and manage web and composite applications that run on IIS. It has 3 main parts: &lt;p&gt;· Caching  &lt;p&gt;· Workflow Management  &lt;p&gt;· Service Management  &lt;p&gt;Muglia announced it as a "platform for building scale-out, high-tier services" enabling developers to&amp;nbsp; concentrate on core functionality, fielding out the failover part of the operation to Microsoft. Database cache is kept entirely in the cloud.  &lt;p&gt;· a set of integrated, high-level application services that enable developers to more easily deploy and manage applications spanning both server and cloud  &lt;p&gt;· a platform for building scale-out middle-tier services such as WCF, WF, database cache, automatic failover and scale-out  &lt;p&gt;· underlying technologies include “Dublin” for hosting and “Velocity” for caching – the combination provides “high-speed access, scale, and high availability to application data”. &lt;p&gt;· .NET Services is now referred as “AppFabric Service Bus” and “AppFabric Access Control”  &lt;p&gt;You can see more info and some AppFabric samples here: &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-gb/windowsserver/ee695849.aspx"&gt;http://msdn.microsoft.com/en-gb/windowsserver/ee695849.aspx&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Tailspin Demo&lt;/u&gt;&lt;/b&gt; &lt;p&gt;This morning, in Bob Muglia’s keynote at the PDC, Cameron Skinner presented a demo focused on some of the most exciting new features coming in Visual Studio 2010, .NET Framework 4, and the server platform. The demo was built to align with the following&amp;nbsp; release announcements: ASP.NET MVC 2 beta, Windows Identity Foundation RTM,&amp;nbsp; and the beta of the new Windows Server AppFabric.  &lt;p&gt;Do check it out, it is a great way of familiarizing with the new features in VS2010 and our new server wave! You can now download the Tailspin Travel application from Codeplex.&amp;nbsp; &lt;p&gt;&lt;a href="http://tailspintravel.codeplex.com"&gt;http://tailspintravel.codeplex.com&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Miscellaneous Topics&lt;/u&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Vivek Kundra speaks live from Washington&lt;/b&gt; &lt;p&gt;Vivek Kundra, speaks live from Washington. He invited attendees to look at &lt;a href="http://beamartian.jpl.nasa.gov"&gt;http://beamartian.jpl.nasa.gov&lt;/a&gt; to see the public data collected by the Jet Propulsion Laboratory -- also over 100,000 data sets from the EPA on toxic waste. &lt;p&gt;Vivek Kundra also demonstrated the Azure-based mobile job finder application this morning running on an iPhone. It enables job seekers to use full data center contents from Microsoft's back end, to find jobs sorted by category, and also by seekers' personal GPS locations. "Data applications for the good of the republic," says Kundra. &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;C++ and Azure&lt;/b&gt; &lt;p&gt;Developer crowd favorite Don Box demonstrated low-level programming techniques (including assembler macros) that leverage Azure services. C++ demonstration (not C#) to show how standardized this can be.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Seesmic.com&lt;/b&gt; &lt;p&gt;Loic LeMeur, Founder &amp;amp; CEO of Seesmic, took the stage. He demonstrated a Silverlight-based application which collects together feeds from individual users in social networks, plus RSS feeds, plus Twitter feeds.. &lt;p&gt;· Shipping today Seesmic for Windows - very smooth, very fast! &lt;p&gt;· Taking advantage of Win7; sensor for location  &lt;p&gt;· It is #1 request, Seesmic for Windows will be a platform for plug-in development  &lt;p&gt;· Community needs Seesmic to be available on every device  &lt;p&gt;· It will ship Silverlight version soon  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Funny Video&lt;/b&gt; &lt;p&gt;The job of giving identity to the cloud concept has been left to Bob Muglia, whose annual funny video this morning wasn't too far off the mark from reality. In the video, he is serving as a "life coach" for the cloud (a guy dressed in a puffed-up pillow costume), who is suffering an identity crisis and he acts as a kind of personal, spiritual counselor for "the cloud". Here "The Cloud" is trying to find a purpose for itself, and Muglia's advice is that the cloud can be anything and everything it wants to be...whatever that is. Then The Cloud takes Muglia's advice. &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Windows Live&lt;/b&gt; &lt;p&gt;Unlike last PDC, PDC2009 Day 1- there was no news on Windows Live. You may have to wait for MIX '10 in Las Vegas. &lt;p&gt;&lt;b&gt;&lt;u&gt;&lt;/u&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;&lt;u&gt;Articles and Resources&lt;/u&gt;&lt;/b&gt; &lt;p&gt;Here is the press releases from today’s announcements: &lt;p&gt;· &lt;a href="http://www.microsoft.com/presspass/press/2009/nov09/11-17pdc1pr.mspx"&gt;Microsoft Cloud Services Vision Becomes Reality With Launch of Windows Azure Platform&lt;/a&gt; &lt;p&gt;· &lt;a href="http://www.microsoft.com/presspass/features/2009/nov09/11-17beamartian.mspx"&gt;From the Cloud to the Crowd: NASA and Microsoft Ask Citizen Scientists to “Be a Martian”&lt;/a&gt; &lt;p&gt;· &lt;a href="http://www.microsoft.com/presspass/features/2009/nov09/11-17pdcappfabric.mspx"&gt;On-Premises or in the Cloud, One Consistent Composite Application Experience for Developers&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;More New Downloads &amp;amp; Resources &lt;p&gt;· &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=29e4ead0-fd81-42ba-862b-f3589378466a"&gt;SQL Server Modeling CTP Nov 2009 (Formerly Codename "Oslo")&lt;/a&gt; &lt;p&gt;· &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=bce4ad61-5b76-4101-8311-e928e7250b9a"&gt;Sync Framework PowerPack for SQL Azure&lt;/a&gt; &lt;p&gt;· &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=16bb10f9-3acc-4551-bacc-bdd266da1d45"&gt;SQL Server 2008 R2 November CTP Reporting Services Add-in for Microsoft SharePoint Technologies 2010&lt;/a&gt; &lt;p&gt;· &lt;a href="http://channel9.msdn.com/learn/courses/Azure/"&gt;Windows Azure Platform Training Course&lt;/a&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Hope it helps if you could not attend or watch/track the developments at PDC2009 in LA.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9924195" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="Azure" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Azure/default.aspx" /><category term="Project" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Project/default.aspx" /><category term="Microsoft PinPoint" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Microsoft+PinPoint/default.aspx" /><category term="PDC09" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/PDC09/default.aspx" /><category term="SOA" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/SOA/default.aspx" /><category term="Project Sydney" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Project+Sydney/default.aspx" /><category term="Dallas" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Dallas/default.aspx" /><category term="Announcements" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Announcements/default.aspx" /><category term="PDC2009" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/PDC2009/default.aspx" /><category term="Keynotes" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Keynotes/default.aspx" /><category term="Cloud Services" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Cloud+Services/default.aspx" /></entry><entry><title>Choosing a Collection Class</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/10/29/choosing-a-collection-class.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/10/29/choosing-a-collection-class.aspx</id><published>2009-10-29T23:30:40Z</published><updated>2009-10-29T23:30:40Z</updated><content type="html">&lt;h6&gt;&amp;nbsp;&lt;/h6&gt; &lt;p&gt;I see quite often customer asking what is the right type of collection for specific purpose and performance overhead versus flexibility. This is again a passionate topic and it’s easy to get into debate with your colleagues especially during the peer code review processes.  &lt;p&gt;Choosing the right &lt;b&gt;Collections&lt;/b&gt; class must be done carefully. Using the wrong collection can unnecessarily restrict how you use it.  &lt;p&gt;Consider the following questions:  &lt;p&gt;Do you need temporary storage?  &lt;ul&gt; &lt;li&gt;If yes, consider &lt;b&gt;Queue&lt;/b&gt; or &lt;b&gt;Stack&lt;/b&gt;.  &lt;li&gt;If no, consider the other collections.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Do you need to access the elements in a certain order, such as first-in-first-out, last-in-first-out, or randomly?  &lt;ul&gt; &lt;li&gt;The &lt;b&gt;Queue&lt;/b&gt; offers first-in, first-out access.  &lt;li&gt;The &lt;b&gt;Stack&lt;/b&gt; offers last-in, first-out access.  &lt;li&gt;The rest of the collections offer random access.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Do you need to access each element by index?  &lt;ul&gt; &lt;li&gt;&lt;b&gt;ArrayList&lt;/b&gt; and &lt;b&gt;StringCollection&lt;/b&gt; offer access to their elements by the &lt;i&gt;zero-based index&lt;/i&gt;.  &lt;li&gt;&lt;b&gt;Hashtable&lt;/b&gt;, &lt;b&gt;SortedList&lt;/b&gt;, &lt;b&gt;ListDictionary&lt;/b&gt;, and &lt;b&gt;StringDictionary&lt;/b&gt; offer access to their elements by the &lt;i&gt;key of the element&lt;/i&gt;.  &lt;li&gt;&lt;b&gt;NameObjectCollectionBase&lt;/b&gt; and &lt;b&gt;NameValueCollection&lt;/b&gt; offer access to their elements &lt;i&gt;either&lt;/i&gt; by the zero-based index or by the key of the element.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Will each element contain just one value or a key-singlevalue pair or a key-multiplevalues combination?  &lt;ul&gt; &lt;li&gt;One value: Use any of the collections based on &lt;b&gt;IList&lt;/b&gt;.  &lt;li&gt;Key-singlevalue pair: Use any of the collections based on &lt;b&gt;IDictionary&lt;/b&gt;.  &lt;li&gt;Key-multiplevalues combination: Consider using or deriving from the &lt;b&gt;NameValueCollection&lt;/b&gt; class in the &lt;b&gt;Collections.Specialized&lt;/b&gt; namespace.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Do you need to sort the elements differently from how they were entered?  &lt;ul&gt; &lt;li&gt;&lt;b&gt;Hashtable&lt;/b&gt; sorts the elements by the &lt;i&gt;hash code&lt;/i&gt; of the key.  &lt;li&gt;&lt;b&gt;SortedList&lt;/b&gt; sorts the elements by the &lt;i&gt;key&lt;/i&gt;, based on an &lt;b&gt;IComparer&lt;/b&gt; implementation.  &lt;li&gt;&lt;b&gt;ArrayList&lt;/b&gt; provides a &lt;b&gt;Sort&lt;/b&gt; method that takes an &lt;b&gt;IComparer&lt;/b&gt; implementation as a parameter.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Do you need fast searches and retrieval of information?  &lt;ul&gt; &lt;li&gt;&lt;b&gt;ListDictionary&lt;/b&gt; is faster than &lt;b&gt;Hashtable&lt;/b&gt; for small collections of ten items or less.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;Do you need collections that accept only strings?  &lt;ul&gt; &lt;li&gt;&lt;b&gt;StringCollection&lt;/b&gt; (based on IList) and &lt;b&gt;StringDictionary&lt;/b&gt; (based on &lt;b&gt;IDictionary&lt;/b&gt;) are in the &lt;b&gt;Collections.Specialized&lt;/b&gt; namespace.  &lt;li&gt;Generic &lt;b&gt;List&amp;lt;string&amp;gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this is useful to you when you make the choice about the collections!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9915014" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author></entry><entry><title>.NET - Domain Neutral Assemblies</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/05/05/net-domain-neutral-assemblies.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/05/05/net-domain-neutral-assemblies.aspx</id><published>2009-05-06T02:25:43Z</published><updated>2009-05-06T02:25:43Z</updated><content type="html">&lt;p&gt;Recently few of my colleagues enquired about Domain Neutral Assemblies esp. when to build and implement them due to lack clarity around them. I did research and thought to share here so that other folks can discover the information too.&lt;/p&gt; &lt;p&gt;Here is some background before we get into the topic. An AppDomain is a unit of code isolation. You must load an assembly into an application domain before you can execute the code it contains. Running a typical application causes several assemblies to be loaded into an application domain. The way an assembly is loaded determines whether its just-in-time (JIT) compiled code can be shared by multiple application domains in the process, and whether the assembly can be unloaded from the process.  &lt;p&gt;By definition, a domain neutral assembly is an assembly that lives across multiple app-domains. Essentially the host hints CLR that assemblies can be domain neutral. Hence, CLR will share those assemblies as much as possible across multiple app-domains after jitted only once.&amp;nbsp; The jitted code, as well as various runtime data structures (used to represent the assembly in memory) like MethodTables, MethodDescs, will be shared across app-domains. In many ways, this sharing of runtime data is analogous to the way the operating system shares static code pages for DLLs that are loaded by multiple processes. This cuts down unnecessary duplication. However we still get some "duplication" since the data segments are duplicated in order to provide the appearance to our code that the AppDomains have each got their own copy of the assembly. When we load an AppDomain as domain-neutral, all of it's referenced assemblies have to be loaded domain-neutral too. This set of assemblies is referred to as an assemblies binding closure. Well, if the binding closures are identical, then all is well and good. However, if the binding closures are different, the CLR will create two copies of our domain-neutral assembly in SharedDomain. Any future AppDomains using this shared assembly will have their binding closures evaluated, and will get a reference to the appropriate copy (or a new copy made).  &lt;p&gt;Domain neutral assemblies are stored in a shared area generally referred as SharedDomain. SharedDomain is simply a repository for domain neutral assemblies. There is no code execution in SharedDomain. Code in domain neutral assemblies is executed in user app-domains. Domain neutral assemblies cannot directly access domain bound assemblies. This constraint is enforced automatically by CLR. Please also make sure you understand that domain neutral assemblies cannot be unloaded, even though all the app-domains using those assemblies have been unloaded. They're never unloaded because the SharedDomain only unloads on process exit.  &lt;p&gt;The runtime host determines whether to load assemblies as domain-neutral when it loads the runtime into a process.&amp;nbsp; There are two ways for a host to specify this hint. One way is through hosting API CorBindToRuntimeEx. Another way is decorating your Main method with LoaderOptimizationAttribute.&amp;nbsp; For managed applications, apply the LoaderOptimizationAttribute attribute to the entry-point method for the process, and specify a value from the associated LoaderOptimization enumeration. For unmanaged applications that host the common language runtime, specify the appropriate flag when you call the CorBindToRuntimeEx Function method. Please note that an assembly can be domain neutral if and only if it is in GAC, and all the assemblies in its transitive binding closure are all in GAC.  &lt;p&gt;Domain Neutral Assemlies help in performance gain in multi app-domains scenario in middle tier server application scenarios. If an assembly is loaded domain-neutral, all application domains that share the same security grant set can share the same JIT-compiled code (but not its data), which reduces the memory required by the application.&amp;nbsp; FYI, access to static data and methods is slower for domain-neutral assemblies because of the need to isolate assemblies. The extra internal logic slows down the call. Hence, the performance of a domain-neutral assembly is slower if that assembly contains relatively higher amount of static data or static methods that are accessed frequently. When you decide whether to load assemblies as domain-neutral, you must make a tradeoff between reducing memory use and other performance factors.  &lt;p&gt;Some useful links:  &lt;ul&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/yk22e11a.aspx"&gt;Programming with Application Domains&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/43wc4hhs.aspx"&gt;Application Domains and Assemblies&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/25y1ya39.aspx"&gt;How to: Load Assemblies into an Application Domain&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Hope this helps.  &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9589945" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="&amp;quot;Domain Neutral Assemblies&amp;quot; CLR &amp;quot;AppDomains&amp;quot;" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/_2600_quot_3B00_Domain+Neutral+Assemblies_2600_quot_3B00_+CLR+_2600_quot_3B00_AppDomains_2600_quot_3B00_/default.aspx" /></entry><entry><title>Great Debate: Store Procedure vs. Dynamic SQL</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/04/28/great-debate-store-procedure-vs-dynamic-sql.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/04/28/great-debate-store-procedure-vs-dynamic-sql.aspx</id><published>2009-04-28T23:54:43Z</published><updated>2009-04-28T23:54:43Z</updated><content type="html">&lt;p&gt;&lt;i&gt;This is one of those topics that always generate a lot of heat among developers, architects and DBAs etc. People typically take a very strong stance on one approach over the other.&lt;/i&gt;  &lt;p&gt;&lt;i&gt;As most of the IT situations, the answer to this question is : “It Depends”. It really depends upon the type of your application and what the application is supposed to do. We are only talking about OLTP applications here…for BI applications where heavy data churning is required, it is always advisable to keep the code in the DB layer to use SET based logic to do your processing logic or use an ETLM tool for the processing logic. &lt;/i&gt; &lt;p&gt;It depends on whether you are doing things dynamically (lots of ad-hoc queries really aren’t a good match for sprocs), it depends on how your org is run (do you have locked down DBs and strong DBAs, or do the “enterprise architects” with an interest in ORMs who win every argument). It depends on whether the app is read-heavy or write-heavy, on whether the DB is strict 3rd normal or de-normalized for reporting reasons. It depends on whether the DB schema makes any sense at all to devs (was it created for this application, or is it some hodge-podge that was created 15 years ago and is now used for 200 different reasons). It depends on a lot of things.  &lt;p&gt;&lt;b&gt;Store Procedure Advantages&lt;/b&gt;  &lt;p&gt;Although you can do most of the things a stored procedure can do with simple ad hoc Transact-SQL statements, stored procedures have a number of advantages over ad hoc queries, including  &lt;ul&gt; &lt;li&gt;Execution plan retention and reuse  &lt;li&gt;Query auto-parameterization  &lt;li&gt;Encapsulation of business rules and policies  &lt;li&gt;Application modularization  &lt;li&gt;Sharing of application logic between applications  &lt;li&gt;Access to database objects that is both secure and uniform  &lt;li&gt;Consistent, safe data modification  &lt;li&gt;Network bandwidth conservation  &lt;li&gt;Support for automatic execution at system start-up  &lt;li&gt;ENCRYPTION option&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;b&gt;Needless to say secondary benefits include:&lt;/b&gt;  &lt;ul&gt; &lt;li&gt;Syntax checking (pseudo-compiled i.e. a kind of normalized query tree as it saves SQL resources)  &lt;li&gt;Object dependency model  &lt;li&gt;Schema buckets  &lt;li&gt;Consistent monitoring  &lt;li&gt;Permissions and Limitations  &lt;li&gt;Ability to view exec plans  &lt;li&gt;You can use sp_usage to generate stored procedure usage info  &lt;li&gt;Set environmental options (e.g., NOCOUNT, LOCK_TIMEOUT, user options, @@NESTLEVEL, @@TRANCOUNT, SET XACT_ABORT, SET CURSOR_CLOSE_ON_COMMIT, SET TEXTSIZE, SET IMPLICIT_TRANSACTIONS etc.)&amp;nbsp; and Built-In protection such as max allowed nested is 32 levels deep  &lt;li&gt;Dash board reports  &lt;li&gt;Temporary procedures (# for current connection, ## for global)  &lt;li&gt;Replace your complex SQL statements with a single stored procedure&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;b&gt;Strategic Advantage&lt;/b&gt;  &lt;ul&gt; &lt;li&gt;Clear choice between Top Heavy vs. Bottom Heavy Architecture  &lt;li&gt;Migration of core business logic and IP is easy as SQL has not changed much over decades vs. programming languages (COM to .Net). How many apps still need to be completely re-written from VB6 to VB.NET?  &lt;li&gt;Intentional use of indexes to cover the query  &lt;li&gt;Proven, almost no learning curve (compare to new technologies like LINQ/ADO.NET EF)  &lt;li&gt;No exposure of database design schema in applications (encapsulation)  &lt;li&gt;Bandwidth savings!! No SQL over the wire repeatedly.  &lt;li&gt;DBA Control and Optimizations (Throttling and saving resources, Increased data security and integrity: One can secure the tables for direct access and only grant privileges on the stored procedures/packages.  &lt;li&gt;By using bind variables (parameterized queries), SQL injection mitigate  &lt;li&gt;Single Vendor DB&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Let me elaborate on some key points:&lt;/p&gt; &lt;p&gt;&lt;b&gt;Network Bandwidth&lt;/b&gt;  &lt;p&gt;As the procedures/functions are stored in the database there is no need to transfer the code from the clients to the database server or to transfer intermediate results from the server to the clients. This results in much less network traffic and again improves scalability.  &lt;p&gt;Assume that the application server(s) and the database server(s) are separate servers. Since the source code is actually stored on the database server, the application only needs to send the name and the parameters for executing it and this in turn reduces the amount of data that is sent to the server. When you use embedded SQL or dynamically generated SQL through an ORM, then the full source of commands must be transmitted and in a scenario where there is a lot of concurrent activity going on and the load on the system requires a lot of users, this can very soon become a performance bottleneck. This can be mitigate in part by a judicious usage of views as well.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Abstraction Layer (Encapsulation)&lt;/b&gt;  &lt;p&gt;SPs help in separating the business logic from data manipulation logic. Since the interface to the application remains the same, changes done internally to the stored procedures/packages do not affect the application and in turn leads to easy deployment of changes.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Unit of Work (Batching)&lt;/b&gt;  &lt;p&gt;It offers simplified batching of the commands. Since stored procedures/packages are meant to do a “Unit of Work”, this procedural logic can be simple to maintain and offers additional advantages like making use of the rich feature functionality that the database engines provide. SQL is a SET based language and using SET based procedural logic is the easiest and most performant way of dealing with the data. With every new release of Oracle, SQL Server or DB2 LUW, new features are being introduced in PL/SQL, T-SQL and/or SQL/PL which makes handling of different types of requirements very easy in the DB layer code.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Adhoc Work (Temporary SPs)&lt;/b&gt;  &lt;p&gt;Temporary procedures are useful when you want to combine the advantages of using stored procedures such as execution plan reuse and improved error handling with the advantages of ad hoc code. Because you can build and execute a temporary stored procedure at run-time, you get the best of both worlds. For the most part, sp_executesql can alleviate the necessity for temporary procedures, but they're still nice to have around when your needs exceed the capabilities of sp_executesql.  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Data-Centric Tracking&lt;/b&gt;  &lt;p&gt;Code Instrumentation and tracing logic can be built in very easily using the stored procedures. This is one thing that we implemented for one of our clients recently. We created a table which had a list of the DB code that was being used in the schema and this table had a trace_flag column in it which could have 4 different values:  &lt;ul&gt; &lt;li&gt;0 (no code instrumentation),  &lt;li&gt;1 (log the sequence of events),  &lt;li&gt;2 ( log the sequence of events and the time taken by those SQL statements),  &lt;li&gt;3 ( log the sequence of events + the time taken + the execution plan from that point of time - since the execution plan can very easily be different at the time of execution under a load scenario vs when you actually run it separately)  &lt;li&gt;4 (Start the trace - example: starting 10046 level 12 trace in the case of Oracle).&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Using this logic, code instrumentation and troubleshooting production issues became very easy. One could then run reports against the data that was logged and present it to the end user or the support personnel. Code instrumentation can be done in the application tier as well using the same guidelines (or using logging blocks like MSFT logging block in .Net) and a good programmer would always instrument their code. However, for the DB code, this code instrumentation becomes a lot more easier to implement.  &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Store Procedure Challenges&lt;/b&gt;  &lt;ul&gt; &lt;li&gt;Applications that involve extensive business logic and processing could place an excessive load on the server if the logic was implemented entirely in stored procedures. Examples of this type of processing include data transfers, data traversals, data transformations and intensive computational operations. You should move this type of processing to business process or data access logic components, which are a more scalable resource than your database server. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Maintenance and the agility of your application becomes an issue when you must modify business logic in T-SQL. For example, ISV applications that support multiple RDBMS should not need to maintain separate stored procedures for each system. If your application runs on multiple RDBMS, example: You are a vendor and you need to provide your product that runs on Oracle, SQL Server and DB2 LUW in order to expand your customer base, then in that scenario, you have to code or put fixes in for three different code bases. Not only that, you need to have proper staffing to ensure that the code written is optimal since the locking and concurrency mechanisms are very different between these RDBMS. Also, the language used by all these “big 3″ is very different as well.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Writing and maintaining stored procedures is most often a specialized skill set that not all developers possess. This situation may introduce bottlenecks in the project development schedule. We have seen client shops which offload all of their CRUD operations on the DB tier - as a result they end up with one-liner stored procedures and if you have say 200 objects, you now have 200 * 4 (select/insert/update/delete) stored procedures or one procedure per object with the flag option to indicate the operation and need to code the procedure to use dynamic SQL in order to take into account the conditional parameter logic. Maintenance becomes a nightmare in this case. Also, developers/DBAs sometimes get carried away with this approach and forget that SQL is a set based language - one example is that using this scheme, a client shop was doing purges of the data and kept calling the delete procedure by passing in the ID (surrogate Key) value when they actually could have purged and archived the data using a SET based logic. Procedures are supposed to do unit of work - having one liner procedures and invoking that many calls in a batch does not yield any benefit. In addition, it has to un-necessarily incur the cost of checking permissions and plan associated with that one liner procedure - the cost is albeit a very miniscule one.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Parsing of strings is not one of the forte’s of the DB languages - that code is better suited in the application tier unless you start using CLR or Java code.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Another thing to remember is when people point out that an advantage of stored procedures is that the code is always pre-compiled, that is not always true, and there can be scenarios that can lead to re-compilation. Also, if proper bind variables are being used for the queries built using an ORM, it serves the same purpose (i.e. has the same advantage as that of a parsed/compiled stored procedure query) since the plan for that SQL statement is parsed and compiled. Depending upon a lot of factors (cache sizes, concurrent load, statistics updates etc.), that plan may or may not be available the next time the call gets made.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Needless to say Versioning issues, Max Size 128MB, Max Parameters 102, Lack of Documentation - Naming Convention and Headers.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Before we wind up, let us also review compilation mechanism as people assume many things here.&lt;/p&gt; &lt;p&gt;&lt;b&gt;First Time Execution Mechanics&lt;/b&gt;  &lt;p&gt;When you execute a stored procedure for the first time, it's compiled into an execution plan. This plan is not compiled into machine code or even byte codes, but is pseudo-compiled in order to speed execution. "Pseudo-compiled" means that object references are resolved, join strategies and indexing selections are made, and an efficient plan for executing the work that the procedure is to carry out is rendered by the SQL Server query optimizer. The optimizer compares a number of potential plans for performing the procedure's work and selects the one it thinks will cost the least in terms of total execution time. It bases this decision on a number of factors, including the estimated I/O cost associated with each plan, the CPU cost, the memory requirements, and so on.  &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Conclusion&lt;/b&gt;  &lt;p&gt;So, the bottom line is that one needs to carefully evaluate which portion(s) of the application really belong as stored procedure/packages. In applications that work on volume of data and do bulk data processing, it is always advisable to have that logic in stored procedures/packages that reside on the DB layer so that one can take advantage of the SET based approach of the SQL language.  &lt;p&gt;One can also use ORMs (Object Relational Mappers) to prepare their data access strategy - one can then extend it to make calls to the database stored procedure (if so desired in certain situations), have externalized SQL statements, have dynamic SQL statements being prepared by the ORM etc.. One just has to make the right decision depending upon the application and the requirements that are needed.  &lt;p&gt;A good mix of an ORM plus DB code is usually the best compromise to get the best of both the worlds. Deciding what goes where is the key and though there are guidelines on that, it can vary from application to application depending upon the requirements.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9574274" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author></entry><entry><title>Data Strategy based on ADO.NET 3.5</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/04/15/data-strategy-based-on-ado-net-3-5.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/04/15/data-strategy-based-on-ado-net-3-5.aspx</id><published>2009-04-15T18:09:00Z</published><updated>2009-04-15T18:09:00Z</updated><content type="html">&lt;P&gt;Often most of my customer seek guidance on data strategy based on ADO.Net technologies stack such as ADO.NET DAL, LINQ and Entity Framework and the Data Services. 
&lt;P&gt;The choices for developers/architects are: 
&lt;P&gt;1) Traditional ADO.Net Provider Model 
&lt;UL&gt;
&lt;LI&gt;Reduces OR mapping impedance mismatch through (typed) dataset 
&lt;LI&gt;Tightly coupled with store/RDBMS (Like name of table columns and SP Parameters) 
&lt;LI&gt;Sweet Spot: Hand coded Data Access Layer (DAL)/ Folks who don’t like ORMs (or Dynamic SQL within App Tiers)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;2) LINQ to SQL 
&lt;UL&gt;
&lt;LI&gt;Suitable for TPH model (Table per Hierarchy) 
&lt;LI&gt;Provides abstraction and compile time checks 
&lt;LI&gt;Sweet Spot: RAD/Prototype/Proof-of-Concept (PoC) 
&lt;LI&gt;Limitation: No further advancement planned&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;3) Entity SQL 
&lt;UL&gt;
&lt;LI&gt;Dynamic query creation 
&lt;LI&gt;Independence from storage/RDBMS 
&lt;LI&gt;ESQL based on underlying Entity Data Model 
&lt;LI&gt;Limits: Read Only, Text-Based, Reader based (EntityDataReader) 
&lt;LI&gt;Sweet Spot – use it when you have multiple databases, leverage your SQL like skills&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;4) LINQ to Entities 
&lt;UL&gt;
&lt;LI&gt;Supports TPH, TPT (Table per Type), TPCT (Concrete Types) inheritance and O/R mappings 
&lt;LI&gt;Strongly typed, compile time verification, Intelligence 
&lt;LI&gt;Uses Entity Client Provider under the covers but returns collection (IEnumerable) 
&lt;LI&gt;Powerful LINQ lambda expressions, operators and dynamic criteria 
&lt;LI&gt;Sweet Spot: LINQ and Dynamic SQL lovers&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;5) Object Services (Entity Framework) 
&lt;UL&gt;
&lt;LI&gt;Full CRUD 
&lt;LI&gt;Choice of Entity SQL, LINQ or EDMContext 
&lt;LI&gt;Fully materialized and strongly typed objects (Entity Type and Entity Sets aka Containers) 
&lt;LI&gt;Sweet Spot: No Data Access Layer required, First Class Entities, Heavy-Lifting by Entity Framework 
&lt;LI&gt;Limits: Thin Object Layer required to process basic entities as per business logic, transaction and concurrency management challenges, SQL hints, Diagnostics is difficult (like source of SQL Query)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;5) Data Services (Astoria) 
&lt;UL&gt;
&lt;LI&gt;Ability to consume EDM or LINQ-to-SQL models 
&lt;LI&gt;Any Store + (interface to support update semantics for ADO.NET Data Services) implementation&amp;nbsp; 
&lt;LI&gt;Provides &lt;B&gt;platform&lt;/B&gt; for exposing data over HTTP as a service for various clients such as AJAX/Silverlight/.Net and non-MSFT applications 
&lt;LI&gt;REST Style resource model for full CRUD 
&lt;LI&gt;Uses minimalistic formats to represent data, and supports AtomPub/JSON format to accommodate as many clients. 
&lt;LI&gt;Extensibility through pipeline (Query and Change Interceptors) and Service Operations 
&lt;LI&gt;Granular security at entity level 
&lt;LI&gt;IIS based security for service level such as SSL and Auth/Z&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Store Procs can be imported as Functions and can be invoked over the model directly (both LINQ to SQL and EF supports it). 
&lt;P&gt;It’s perfectly fine to have a mixed strategy that addresses your needs in an existing project. When starting a new project, you can make clear choices such as discarding dataset/adapter based approach.&lt;/P&gt;
&lt;P&gt;Hope that this brief summary is useful to you in order to quickly compare various options offered by ADO.NET for data access.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9550924" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="ADO.NET" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/ADO.NET/default.aspx" /><category term="Entity Framework" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Entity+Framework/default.aspx" /><category term="Data Services" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Data+Services/default.aspx" /><category term="LINQ" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/LINQ/default.aspx" /></entry><entry><title>MIX 2009: Day 2 Summary</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/03/20/mix-2009-day-2-summary.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/03/20/mix-2009-day-2-summary.aspx</id><published>2009-03-20T17:50:16Z</published><updated>2009-03-20T17:50:16Z</updated><content type="html">&lt;p&gt;The keynote on Day# 2 was all about Internet Explorer 8 and passion for design by Deborah Adler about the prescription drug containers that finally adopted by national pharmacy chain (Target).  &lt;p&gt;Dean Hachamovitch, General Manager for the Internet Explorer team, released the final build of IE8.0 (Theme: Faster, Easier and Safer).  &lt;ul&gt; &lt;li&gt;We used real-world data to build IE8 – hundreds of millions of users, 200+ data points with the products, millions of user sessions, hundreds of hours of usability labs, and dozens of in-home studies.  &lt;li&gt;Available in 25 languages for Windows Vista, Windows XP, Windows Server 2003, and Windows Server 2008 within x86 and x64 editions.  &lt;li&gt;Performance has been a major area of investment in Internet Explorer 8, as &lt;a href="http://www.microsoft.com/video/en/us/details/cffddf93-14cf-4047-9b25-b4e07cdf6bf6"&gt;this performance testing video demonstrates&lt;/a&gt;. IE8 is faster than other browsers on many real-world sites. Even the JavaScript engine itself is 70% faster than the one shipped in IE7.  &lt;li&gt;In IE8, we now have tab crash isolation – when one tab of the browser fails, it doesn’t bring down the entire browser.  &lt;li&gt;New features includes Full CSS 2.1 Support, accelerators, web slices and provider model for Visual Search.  &lt;ul&gt; &lt;li&gt;Great opportunities for developers for interoperability, extensibility and integrating their sites/tools.  &lt;li&gt;There are over 1,200 accelerators, web slices and visual search providers out there already today, including Digg, ESPN, OneRiot, Amazon, Sina, TaoBao, and Yahoo.  &lt;li&gt;Get some at &lt;a href="http://ieaddons.com"&gt;http://ieaddons.com&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;IE blocks over a million phishing and malware attacks a month. (Check more at: &lt;a href="http://www.nsslabs.com/anti-malware/browser-security"&gt;http://www.nsslabs.com/anti-malware/browser-security&lt;/a&gt;)  &lt;li&gt;Visit the &lt;a href="http://msdn.microsoft.com/en-us/ie/default.aspx"&gt;IE8.0 MSDN Developer Center&lt;/a&gt; and the &lt;a href="http://blogs.msdn.com/ie/"&gt;IE8 Team Blog&lt;/a&gt;. Watch the great video on &lt;a href="http://www.microsoft.com/windows/internet-explorer/nethistory/"&gt;internet history&lt;/a&gt; for yourself!&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Deborah Alder (*Designer’s&amp;nbsp; inspirational story- start video around the middle)&amp;nbsp; - a successful design experience begins by  &lt;ol&gt; &lt;li&gt;Having a love affair with your customer and really digging into your customer's needs.  &lt;li&gt;Bringing your design skills to bear in solving those needs humanly and humanely.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;More about Deborah at &lt;a href="https://content.visitmix.com/2009/speakers/default.aspx#DeanHachamovitch"&gt;https://content.visitmix.com/2009/speakers/default.aspx#DeanHachamovitch&lt;/a&gt;  &lt;p&gt;Regards,  &lt;p&gt;Rajan Dwivedi &lt;br&gt;Premier Services, Microsoft &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9492558" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="IE8" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/IE8/default.aspx" /><category term="MIX2009" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/MIX2009/default.aspx" /></entry><entry><title>MIX2009 Announcements Summary</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/rajandwivedi/archive/2009/03/19/mix2009-announcements-summary.aspx" /><id>http://blogs.msdn.com/rajandwivedi/archive/2009/03/19/mix2009-announcements-summary.aspx</id><published>2009-03-20T00:30:00Z</published><updated>2009-03-20T00:30:00Z</updated><content type="html">&lt;p&gt;For those of you that did not get a chance to attend the MIX09 conference, or watch any of the &lt;a href="http://live.visitmix.com/Default.aspx"&gt;live streams&lt;/a&gt; I wanted to provide you with a summary of all the announcements made yesterday morning.  &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;strong&gt;Bill Buxton&lt;/strong&gt; announced the theme for MIX this year is “Return on Experience,” and that is precisely what he focused on during the opening minutes of keynote.  &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;strong&gt;Scott Guthrie&lt;/strong&gt;&lt;br&gt;“The Gu” came on stage after a funny video which featured him dancing, getting his hair fixed and passion for red polo shirt. Major announcements in web space include: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;The preview of &lt;a href="http://www.microsoft.com/expression/try-it/blendpreview.aspx"&gt;Expression Blend 3&lt;/a&gt; is available for download today!  &lt;li&gt;&lt;a href="http://www.microsoft.com/expression/try-it/superpreview/"&gt;SuperPreview&lt;/a&gt; is a new tool that is part of Expression Web 3 that will allow web developers to comprehensively test their web pages for cross-browser compatibility.  &lt;li&gt;The &lt;a href="http://www.asp.net/mvc/"&gt;ASP.NET MVC 1.0&lt;/a&gt; framework shipped as of today.  &lt;li&gt;A series of &lt;a href="http://stephenwalther.com/blog/archive/2009/03/15/speaking-at-mix.aspx"&gt;improvements for ASP.NET 4.0&lt;/a&gt;, including:  &lt;ul&gt; &lt;li&gt;Enhanced web form development  &lt;li&gt;Integration of ASP.NET MVC and AJAX  &lt;li&gt;Distributed caching &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Enhancements to &lt;a href="http://www.microsoft.com/visualstudio/en-us/products/2010/default.mspx"&gt;Visual Studio 2010&lt;/a&gt; for web developers, including:  &lt;ul&gt; &lt;li&gt;New and enhanced tools for JavaScript, AJAX and JQuery development  &lt;li&gt;SharePoint developers become first class citizens in the IDE with new &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Sharepoint-Development-with-Visual-Studio-2010/"&gt;development tools for MOSS&lt;/a&gt;  &lt;li&gt;New publishing and deployment tools, including the ability to keep multiple web.config files specific to a deployment environment, i.e. development, test, staging and production &lt;/li&gt;&lt;/ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/web/downloads/platform.aspx"&gt;Microsoft Web Platform Installer 2 beta&lt;/a&gt; provides you with the ability to get all the tools and technologies for developing web applications for the ASP.NET platform in one place.  &lt;li&gt;&lt;a href="http://www.microsoft.com/commerceserver/en/us/default.aspx"&gt;Microsoft Commerce Server 2009&lt;/a&gt; available today.  &lt;li&gt;Customer-driven enhancements to the &lt;a href="http://www.azure.com/"&gt;Windows Azure Service Platform&lt;/a&gt;, including FastCGI, PHP and .NET full trust, SQL Data Services will become a true relational database in the cloud and commitment to ship Windows Azure &lt;strong&gt;in 2009!&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp; &lt;p&gt;&lt;a href="http://blogs.msdn.com/dphill/archive/2009/03/18/mix-09.aspx"&gt;Silverlight 3.0&lt;/a&gt; highlights:  &lt;ul&gt; &lt;li&gt;Silverlight 3 will provide cross-platform support for hardware acceleration.  &lt;li&gt;Silverlight 3 will include the H.264, AAC and MPEG-4 codecs - it will also include a raw bit-stream AV API which will allow developers to create custom codecs in managed code.  &lt;li&gt;Silverlight 3 includes enhanced logging capabilities for managing app analytics (monetization and SEO)  &lt;li&gt;IIS Media Services, as a free add-on, will enable any IIS7 web server to provide smooth AV streaming (key features includes advanced logging, bit-rate throttling and edge caching)  &lt;li&gt;Few of the slides for Silverlight 3 listed the following feature enhancements:  &lt;ul&gt; &lt;li&gt;GPU acceleration and hardware compositing  &lt;li&gt;Perspective 3D, essentially moving 2D objects in the UI in a 3D space  &lt;li&gt;An API for bitmap images and pixels  &lt;li&gt;Shader effects  &lt;li&gt;Hardware acceleration for Deep Zoom  &lt;li&gt;“Deep linking,” which is the ability for a user to link to a specific place &lt;em&gt;inside&lt;/em&gt; a Silverlight application  &lt;li&gt;Navigation and search engine optimization  &lt;li&gt;Clear Type Fonts  &lt;li&gt;Assemblies/Library caching support  &lt;li&gt;More than 100+ controls available&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Silverlight 3 will ship with the native ability to run &lt;strong&gt;outside the browser&lt;/strong&gt;. This means a big challenge to Adobe AIRsJ  &lt;li&gt;Olympics in Vancouver (2010) will be streamed live using Silverlight platform.  &lt;li&gt;&lt;strong&gt;&lt;i&gt;The Silverlight 3 installer package is SMALLER (40K) than the previous version.&lt;/i&gt;&lt;/strong&gt;&lt;b&gt;&lt;i&gt;&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;b&gt;&lt;/b&gt;&amp;nbsp; &lt;p&gt;&lt;b&gt;Netflix Case Study - Kevin McEntee, VP, Web Engineering shared the stage with ScottGu&lt;/b&gt;  &lt;ul&gt; &lt;li&gt;Netflix acknowledged moving away from own (proprietary) player to Silverlight. (Great platform for having great video players!!)  &lt;li&gt;Silverlight‘s Adaptive Media streaming works!! (including Mac - Safari and Firefox)  &lt;li&gt;Cross Platform is “a reality” using Silverlight!!&amp;nbsp; (Cross Browser, Cross Platform and On-Devices such as Xbox)  &lt;li&gt;Installers are Evils&amp;nbsp; but Silverlight offers sweet experience!!  &lt;li&gt;Silverlight’s DRM abilities for content protection is great!!&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Hope this helps in case you have limited time to watch many hours of streaming to mine golden nuggets :=))  &lt;p&gt;&amp;nbsp; &lt;p&gt;Best Regards, &lt;br&gt;Rajan Dwivedi &lt;br&gt;Premier Services, Microsoft  &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9491181" width="1" height="1"&gt;</content><author><name>rajand</name><uri>http://blogs.msdn.com/members/rajand.aspx</uri></author><category term="MIX2009" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/MIX2009/default.aspx" /><category term="IIS Media Services" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/IIS+Media+Services/default.aspx" /><category term="Expression Blend" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Expression+Blend/default.aspx" /><category term="ASP.NET MVC" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/ASP.NET+MVC/default.aspx" /><category term="Web Platform Installer" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Web+Platform+Installer/default.aspx" /><category term="SuperPreview" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/SuperPreview/default.aspx" /><category term="Silverlight" scheme="http://blogs.msdn.com/rajandwivedi/archive/tags/Silverlight/default.aspx" /></entry></feed>