<?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">Marcelo&amp;#39;s WebLog</title><subtitle type="html">Improving the world one entity at a time (now tweeting on @mlrdev)</subtitle><id>http://blogs.msdn.com/b/marcelolr/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/b/marcelolr/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2011-04-08T14:49:55Z</updated><entry><title>New WCF Data Services Release</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2012/04/09/new-wcf-data-services-release.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2012/04/09/new-wcf-data-services-release.aspx</id><published>2012-04-09T21:00:00Z</published><updated>2012-04-09T21:00:00Z</updated><content type="html">&lt;p&gt;WCF Data Services 5.0 for OData v3 is out today. Read all about it &lt;a href="http://blogs.msdn.com/b/astoriateam/archive/2012/04/09/wcf-data-services-5-0-rtm-release.aspx"&gt;here&lt;/a&gt;, and &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=29306"&gt;get it&lt;/a&gt; while it's hot. &lt;a href="http://www.odata.org/blog/2011/10/7/actions-in-odata"&gt;Actions&lt;/a&gt;, &lt;a href="http://www.odata.org/blog/2011/5/3/geospatial-data-support-in-odata"&gt;geospatial support&lt;/a&gt;, and an assortment of other goodies, not the least of which is support for Any and All operators. This restriction has been around for &lt;a href="http://blogs.msdn.com/b/marcelolr/archive/2008/01/10/filter-query-option-in-ado-net-data-services.aspx"&gt;a long time&lt;/a&gt;, and it's great to see that workaround are &lt;a href="http://blogs.msdn.com/b/marcelolr/archive/2010/05/11/service-operations-for-any-and-all.aspx"&gt;no longer required&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10291969" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Astoria" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Astoria/" /><category term="ADO.NET Data Services" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/ADO-NET+Data+Services/" /><category term="WCF Data Services" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/WCF+Data+Services/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /></entry><entry><title>Performance for Metro style app</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2012/04/04/performance-for-metro-style-app.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2012/04/04/performance-for-metro-style-app.aspx</id><published>2012-04-04T21:00:00Z</published><updated>2012-04-04T21:00:00Z</updated><content type="html">&lt;p&gt;The Windows 8 app developer blog recently published &lt;a href="http://blogs.msdn.com/b/windowsappdev/archive/2012/04/03/how-to-improve-performance-in-your-metro-style-app.aspx"&gt;How to improve performance in your Metro style app&lt;/a&gt;. A lot of the content might be familiar, including the always-handy Interaction class table, but there are additional considerations to play nice with the rest of the system, particularly with regards to how expectations change for different app states, so I recommend reading the full thing.&lt;/p&gt;
&lt;p&gt;And if this whets your appetite, you can always learn more at the &lt;a href="http://msdn.microsoft.com/en-us/performance/cc709422"&gt;Windows Performance Analysis Developer Center&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10290612" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Performance" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Performance/" /><category term="Windows" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Windows/" /></entry><entry><title>datajs version 1.0.2 released</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/11/10/datajs-version-1-0-2-released.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/11/10/datajs-version-1-0-2-released.aspx</id><published>2011-11-10T10:00:00Z</published><updated>2011-11-10T10:00:00Z</updated><content type="html">&lt;p&gt;A new release of datajs with a minor update is available today, version 1.0.2. The most significant change is support for high-precision DateTime values, which incidentally means that Azure Table Storage feeds are now better supported.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://datajs.codeplex.com/releases/view/75402"&gt;Get it while it's hot&lt;/a&gt; and enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10235888" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Server-side paging in OData with datajs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/09/08/server-side-paging-in-odata-with-datajs.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/09/08/server-side-paging-in-odata-with-datajs.aspx</id><published>2011-09-08T21:00:00Z</published><updated>2011-09-08T21:00:00Z</updated><content type="html">&lt;p&gt;I haven't posted for a while and it seems to be an effective method to get others to do so. :)&lt;/p&gt;
&lt;p&gt;Today, I'm happy to point you to &lt;a href="http://kashyapas.com/dotnet/client-side-paging-of-server-paged-odata-entity-sets-using-datajs/"&gt;Client side paging of Server Paged OData Entity Sets using datajs&lt;/a&gt;. Lohith does a good and detailed job at explaining what server-side pagination looks and how to handle it from a client, and ends with a handy summary. Don't miss it!&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10207652" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>datajs at DevCon5</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/07/25/datajs-at-devcon5.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/07/25/datajs-at-devcon5.aspx</id><published>2011-07-25T21:00:00Z</published><updated>2011-07-25T21:00:00Z</updated><content type="html">&lt;p&gt;Later this week I'll be speaking at &lt;a href="http://html5.tmcnet.com/conference/newyork/"&gt;DevCon5 in New York&lt;/a&gt;. We'll look at how the browser landscape is evolving and where it's going, and present some of the work we've done in layering conventions over REST in producing &lt;a href="http://www.odata.org/"&gt;OData&lt;/a&gt;, as well as the work we've been doing in &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt; to leverage the increase in capabilities.&lt;/p&gt;
&lt;p&gt;Hope to see any readers of this blog at the conference - drop me a comment if you want to meet up during/after the conference, or catch me on Twitter at @mlrdev.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10189323" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>SkyDrive - HTML5 improving performance, again</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/07/18/skydrive-html5-improving-performance-again.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/07/18/skydrive-html5-improving-performance-again.aspx</id><published>2011-07-18T21:00:00Z</published><updated>2011-07-18T21:00:00Z</updated><content type="html">&lt;p&gt;Continuing in the spirit of my &lt;a href="http://blogs.msdn.com/b/marcelolr/archive/2011/07/06/thoughts-on-radically-improving-web-performance.aspx"&gt;last post&lt;/a&gt;, I wanted to make sure that folks are aware of the &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2011/07/14/how-we-used-html5-to-make-skydrive-fast-for-millions-of-people.aspx"&gt;How we used HTML5 to make SkyDrive fast for millions of people&lt;/a&gt;&amp;nbsp;post on the Inside Windows Live blog.&lt;/p&gt;
&lt;p&gt;It's an accessible read that walks you through a number of important improvements that are powering the new SkyDrive experience. Definitely worth the read.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10187200" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Performance" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Performance/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /></entry><entry><title>Thoughts on radically improving web performance</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/07/06/thoughts-on-radically-improving-web-performance.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/07/06/thoughts-on-radically-improving-web-performance.aspx</id><published>2011-07-06T21:00:00Z</published><updated>2011-07-06T21:00:00Z</updated><content type="html">&lt;p&gt;If you're a web developer, you definitely owe it to yourself to read the &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2011/06/30/instant-email-how-we-made-hotmail-10x-faster.aspx"&gt;Instant email: how we made Hotmail 10x faster&lt;/a&gt;&amp;nbsp;post on the Inside Windows Live blog. Go ahead and read it - I can wait.&lt;/p&gt;
&lt;p&gt;You see, with the right techniques, it's possible to provide a very, very compelling and performant experience for users. That translates into happier, more productive users.&lt;/p&gt;
&lt;p&gt;I found it reassuring to read the post because although Hotmail doesn't use &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt;, it still leverages some of the same techniques we used when we set out to develop a APIs to help improve web performance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Caching&lt;/strong&gt;. datajs provides a&amp;nbsp;&lt;a href="http://datajs.codeplex.com/wikipage?title=Using%20Stores&amp;amp;referringTitle=Documentation"&gt;store API&lt;/a&gt;&amp;nbsp;suitable for&amp;nbsp;caching different kinds of data by the application, and a &lt;a href="http://datajs.codeplex.com/wikipage?title=Using%20Caches&amp;amp;referringTitle=Documentation"&gt;cache API&lt;/a&gt; that is suitable for large, slowly changing collections.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pre-loading&lt;/strong&gt;. The cache API support &lt;a href="http://datajs.codeplex.com/wikipage?title=Cache%20Prefetching"&gt;prefetching&lt;/a&gt; out of the box, which makes the typical use case much faster for end users.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Asynchronous operations&lt;/strong&gt;. datajs was built from the ground up on purely asynchronous operations. The store, cache, networking and OData components are all asynchronous, and so the user interface is never blocked.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10182671" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Performance" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Performance/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>datajs samples</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/07/05/datajs-samples.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/07/05/datajs-samples.aspx</id><published>2011-07-05T21:00:00Z</published><updated>2011-07-05T21:00:00Z</updated><content type="html">&lt;p&gt;One of the things that we care about a lot in datajs is in being practical and enabling better productivity. As such, we don't think you should spend a lot of time pouring over the library documentation to figure out how to put it to use.&lt;/p&gt;
&lt;p&gt;Instead, we build some high-level pages with important information, and put together a set of &lt;a href="http://datajs.codeplex.com/wikipage?title=Samples"&gt;samples&lt;/a&gt; that you can use to get up and running quickly. The samples cover using OData, the storage API, and the cache API. They try to show some good best practices, like how to organize UI, in-memory objects and server-data representations so you have cleaner, more maintainable code.&lt;/p&gt;
&lt;p&gt;But of course you don't have to rebuild things from the ground up to use datajs to make your site better. You can add a cache on a page to make some lookups faser. You can add preferences locally so the user doesn't have to round-trip to the server to keep them around. You can have input on the side send structured data to your server, or query from it, without having to start from scratch - there is no "page model" associated with datajs, so you can simply pick and choose what you want to get started with and then take it from there.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10182635" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>datajs V1 Now Available</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/30/datajs-v1-now-available.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/30/datajs-v1-now-available.aspx</id><published>2011-06-30T18:45:00Z</published><updated>2011-06-30T18:45:00Z</updated><content type="html">&lt;p&gt;Check out the &lt;a href="http://blogs.msdn.com/b/adonet/archive/2011/06/29/datajs-v1-now-available.aspx"&gt;official announcement&lt;/a&gt;. The library is out there in all its glory. The datajs team will be writing a couple more samples as well as listening to the post-release feedback, then enjoying the long weekend (4th of July is a holiday in the US).&lt;/p&gt;
&lt;p&gt;If you're near a browser during the weekend, why not challenge yourself to learn how to use &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt; to be more productive?&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10182051" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Microsoft Office 365 is now available!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/28/microsoft-office-365-is-now-available.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/28/microsoft-office-365-is-now-available.aspx</id><published>2011-06-28T21:00:00Z</published><updated>2011-06-28T21:00:00Z</updated><content type="html">&lt;p&gt;Personally, I think that having some storage and Office Web Apps is a great combination on its own. The fact that you also get mail &amp;amp; calendar (including Outlook Web Access), SharePoint Online, Lync Online, and Forefront protection, makes this an unbelievably awesome package. I think this is delivering on the "&lt;a href="http://www.microsoft.com/about/en/us/default.aspx"&gt;help realize potential&lt;/a&gt;" mission in a major way, particularly for small businesses who perhaps never had access to these capabilities in the past.&lt;/p&gt;
&lt;p&gt;If you haven't already, check it out at &lt;a href="http://www.microsoft.com/en-us/office365/online-software.aspx"&gt;http://www.microsoft.com/en-us/office365/online-software.aspx&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10181030" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="Office" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Office/" /></entry><entry><title>datajs 0.0.4 is out - very important release!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/21/datajs-0-0-4-is-out-very-important-release.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/21/datajs-0-0-4-is-out-very-important-release.aspx</id><published>2011-06-21T21:00:00Z</published><updated>2011-06-21T21:00:00Z</updated><content type="html">&lt;p&gt;So, as per yesterday's &lt;a href="http://blogs.msdn.com/b/astoriateam/archive/2011/06/20/announcing-datajs-version-0-0-4.aspx"&gt;announcement&lt;/a&gt;, datajs 0.0.4 is out. Go get it while it's fresh!&lt;/p&gt;
&lt;p&gt;An important thing that's worth remarking is &lt;strong&gt;this is the last planned release before version 1.0.0&lt;/strong&gt;. We don't have plans to add any new features or&amp;nbsp;change the API for the next release. Right now we're considering whether there's anything else that needs to be fixed, testing across various browsers &amp;amp; devices, building samples, spiffing up the docs, and generally giving people a few more days to give us feedback on whether things are looking the way they should be.&lt;/p&gt;
&lt;p&gt;So if you've got any issues or additional feedback that you think should be considered for the first release, this is a great time to let us know - we're listening more attentively than ever.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10177203" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Network capture with Internet Explorer</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/15/network-capture-with-internet-explorer.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/15/network-capture-with-internet-explorer.aspx</id><published>2011-06-15T21:00:00Z</published><updated>2011-06-15T21:00:00Z</updated><content type="html">&lt;p&gt;Here is a handy video showing how you can quickly try something out with datajs and get a network capture (even if you don't have a functioning website!).&lt;/p&gt;
&lt;p&gt;Of course it's easier if you do, simply enable capturing and run your repro steps through your app. You can download the video &lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-42-43/5582.network_2D00_capture.wmv"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;p align="center" id="video_10175018"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-42-43/5582.network_2D00_capture.wmv"&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-42-43/5314.network_2D00_capture_2D00_thumb.jpg" border = "0" width="640" height="480"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href = "http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-42-43/5582.network_2D00_capture.wmv"&gt;View Video&lt;/a&gt;&lt;br /&gt;Format: wmv&lt;br /&gt;Duration: 04:27&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10175018" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Populating a combo box from the cache with datajs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/08/populating-a-combo-box-from-the-cache-with-datajs.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/08/populating-a-combo-box-from-the-cache-with-datajs.aspx</id><published>2011-06-08T21:00:00Z</published><updated>2011-06-08T21:00:00Z</updated><content type="html">&lt;p&gt;A new documentation topic is up on CodePlex with&amp;nbsp;a sample page demonstrating how to &lt;a href="http://datajs.codeplex.com/wikipage?title=Populating%20a%20combobox%20from%20the%20cache"&gt;populate a combo box from a datajs cache&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If the browser doesn't support any storage API or if the user's storage quota is full, it still works as intended.&lt;/p&gt;
&lt;p&gt;There is also some very simple code to disable and re-enable the control, always a good thing. Note that the error handler leaves the combo box disabled on purpose and removes any partial progress made, which is often better than letting the user work with incomplete data.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10172406" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Latest datajs changes - changeset 8334</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/07/latest-datajs-changes-changeset-8334.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/07/latest-datajs-changes-changeset-8334.aspx</id><published>2011-06-07T21:00:00Z</published><updated>2011-06-07T21:00:00Z</updated><content type="html">&lt;p&gt;Yesterday we uploaded the &lt;a href="http://datajs.codeplex.com/SourceControl/changeset/changes/8334"&gt;changeset 8334&lt;/a&gt;&amp;nbsp;to &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt;, which includes a pretty extensive list of improvements. These haven't made it into a release yet, but you can build and play with the sources - here's what's new.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Adds support for configuring cache sizes&lt;/strong&gt;. The options argument to datajs.cacheSize can include a cache size in (estimated) bytes - this helps allocate storage across different stores, and make sure you leave room for the most important ones.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adds support for RxJs to caches&lt;/strong&gt;. If you include the &lt;a href="http://msdn.microsoft.com/en-us/data/gg577609"&gt;Reactive Extensions&lt;/a&gt; for JavaScript library, you can get an observable source by simply invoking ToObservable on a cache.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adds support for options in cache constructor&lt;/strong&gt;. This includes things like &lt;em&gt;user&lt;/em&gt; and &lt;em&gt;password&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adds support for filtering forward/backwards to caches&lt;/strong&gt;. You don't have to wait for data to be local - after all, the cache can't index on an opaque callback. So we're simplifying this, and you can simply call &lt;em&gt;filter&lt;/em&gt; at any point.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Supports JSON options on a per-request basis&lt;/strong&gt;. In the OData.request object (and the cache options), you can specify values that would otherwise have been set on default objects, including whether to enable JSONP, the callback handler name, whether dates should be handled, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Supports user and password in requests&lt;/strong&gt;. In addition to the JSON/JSONP flags, you can also specify &lt;em&gt;user&lt;/em&gt; and &lt;em&gt;password&lt;/em&gt; for basic authentication scenarios.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improves default success handler&lt;/strong&gt;. Now we stringify the response data, so if you're just playing with the API to get a sense of the response data it's super-easy to get started.&lt;/li&gt;
&lt;li&gt;And a bunch of bug fixes, internal changes and test improvements...&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10171857" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Cool tricks with Internet Explorer Developer Tools and datajs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/06/06/cool-tricks-with-internet-explorer-developer-tools-and-datajs.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/06/06/cool-tricks-with-internet-explorer-developer-tools-and-datajs.aspx</id><published>2011-06-06T21:00:00Z</published><updated>2011-06-06T21:00:00Z</updated><content type="html">&lt;p&gt;Today I want to show you how the &lt;a href="http://msdn.microsoft.com/en-us/ie/ff468705.aspx"&gt;Internet Explorer Developer Tools&lt;/a&gt; and &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt; make it easy for developers to experiment with code and data. Just follow along in another Internet Explorer window and enjoy.&lt;/p&gt;
&lt;p&gt;First, we'll want to start with a page, let's say &lt;a href="http://www.bing.com/"&gt;http://www.bing.com/&lt;/a&gt;. As always, we're greeted with a nice background picture.&lt;/p&gt;
&lt;p&gt;Next, we'll bring up the developer tools. Simply press F12 in your browser and the window will come up. Pin it by pressing Ctrl+P (or clicking the rightmost button on the menu area).&lt;/p&gt;
&lt;p&gt;Now we'll check whether we have datajs loaded. Click on the &lt;strong&gt;Script&lt;/strong&gt; tab, and type datajs at the prompt. A red message will be shown, &lt;span style="font-family: Consolas, Lucida Console, Courier New;"&gt;"'datajs' is undefined"&lt;/span&gt;. OK then, let's load it by pasting the following code at the prompt.&lt;/p&gt;
&lt;p style="font-family: Consolas, Lucida Console, Courier New; border: 1px solid gainsboro; padding: 2px;"&gt;(&lt;span style="color: blue;"&gt;function&lt;/span&gt;() {&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; url = &lt;span style="color: a31515;"&gt;"http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=datajs&amp;amp;DownloadId=227462&amp;amp;FileTime=129470492005570000&amp;amp;Build=17889"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; scriptTag = document.createElement(&lt;span style="color: a31515;"&gt;"SCRIPT"&lt;/span&gt;);&lt;br /&gt;&amp;nbsp; scriptTag.setAttribute(&lt;span style="color: a31515;"&gt;"type"&lt;/span&gt;, &lt;span style="color: a31515;"&gt;"text/javascript"&lt;/span&gt;);&lt;br /&gt;&amp;nbsp; scriptTag.setAttribute(&lt;span style="color: a31515;"&gt;"src"&lt;/span&gt;, url);&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; h = document.getElementsByTagName(&lt;span style="color: a31515;"&gt;"HEAD"&lt;/span&gt;)[0];&lt;br /&gt;&amp;nbsp; h.appendChild(scriptTag);&lt;br /&gt;})();&lt;/p&gt;
&lt;p&gt;This pulls in datajs 0.0.3 from CodePlex. You'll note that the tool went into multi-line mode after pasting; you can go back to the single line by clicking on the 'Single line mode' button. 'Single line' is more convenient in that you can execute everything by pressing Enter, but of course it doesn't work well for multi-line snippets like the one above. If you run &lt;span style="font-family: Consolas, Lucida Console, Courier New;"&gt;OData&lt;/span&gt; now, you'll get a few of the members displayed, and we're ready to go.&lt;/p&gt;
&lt;p&gt;Next, if we check whether jQuery is loaded like before, we'll see that it's not, so the following snippet will do the trick (we're really just changing the url value).&lt;/p&gt;
&lt;p style="font-family: Consolas, Lucida Console, Courier New; border: 1px solid gainsboro; padding: 2px;"&gt;(&lt;span style="color: blue;"&gt;function&lt;/span&gt;() {&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; url = &lt;span style="color: a31515;"&gt;"http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; scriptTag = document.createElement(&lt;span style="color: a31515;"&gt;"SCRIPT"&lt;/span&gt;);&lt;br /&gt;&amp;nbsp; scriptTag.setAttribute(&lt;span style="color: a31515;"&gt;"type"&lt;/span&gt;, &lt;span style="color: a31515;"&gt;"text/javascript"&lt;/span&gt;);&lt;br /&gt;&amp;nbsp; scriptTag.setAttribute(&lt;span style="color: a31515;"&gt;"src"&lt;/span&gt;, url);&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; h = document.getElementsByTagName(&lt;span style="color: a31515;"&gt;"HEAD"&lt;/span&gt;)[0];&lt;br /&gt;&amp;nbsp; h.appendChild(scriptTag);&lt;br /&gt;})();&lt;/p&gt;
&lt;p&gt;Now we're ready to rock and roll. Let's get some sample data from the web and display it on the page.&lt;/p&gt;
&lt;p style="font-family: Consolas, Lucida Console, Courier New; border: 1px solid gainsboro; padding: 2px;"&gt;(&lt;span style="color: blue;"&gt;function&lt;/span&gt;() {&lt;br /&gt;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; url = &lt;span style="color: a31515;"&gt;"http://services.odata.org/Northwind/Northwind.svc/Customers"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp; OData.defaultHttpClient.enableJsonpCallback = &lt;span style="color: blue;"&gt;true&lt;/span&gt;;&lt;br /&gt;&amp;nbsp; OData.read(url, &lt;span style="color: blue;"&gt;function&lt;/span&gt;(data) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;var&lt;/span&gt; html = &lt;span style="color: a31515;"&gt;"&amp;lt;table&amp;gt;"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;for&lt;/span&gt; (&lt;span style="color: blue;"&gt;var&lt;/span&gt; i = 0; i &amp;lt; data.results.length; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; html += &lt;span style="color: a31515;"&gt;"&amp;lt;tr&amp;gt;"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color: blue;"&gt;for&lt;/span&gt; (&lt;span style="color: blue;"&gt;var&lt;/span&gt; element &lt;span style="color: blue;"&gt;in&lt;/span&gt; data.results[i]) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; html += &lt;span style="color: a31515;"&gt;"&amp;lt;td&amp;gt;"&lt;/span&gt; + data.results[i][element] + &lt;span style="color: a31515;"&gt;"&amp;lt;/td&amp;gt;"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; html += &lt;span style="color: a31515;"&gt;"&amp;lt;/tr&amp;gt;"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; html += &lt;span style="color: a31515;"&gt;"&amp;lt;/table&amp;gt;"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(document.body).append(html);&lt;br /&gt;&amp;nbsp; });&lt;br /&gt;})();&lt;/p&gt;
&lt;p&gt;Of course, you can also use the developer tools to craft more interesting queries, submit changes, test / tweak scripts, extract and reshape some interesting page... There are lots of scenarios and uses for this very useful tool for web developers.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10170893" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Netflix + OData + datajs sample released</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/25/netflix-odata-datajs-sample-released.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/25/netflix-odata-datajs-sample-released.aspx</id><published>2011-05-25T21:00:00Z</published><updated>2011-05-25T21:00:00Z</updated><content type="html">&lt;p&gt;Check out the sample and code walkthrough at &lt;a href="http://kashyapas.com/2011/05/releasing-netflix-catalog-using-htmlodatadatajsjquery/"&gt;http://kashyapas.com/2011/05/releasing-netflix-catalog-using-htmlodatadatajsjquery/&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Some highlights:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;All the app components run in the browser!&lt;/li&gt;
&lt;li&gt;Clever use of the datajs cache - those values aren't changing anytime soon, and it definitely speeds things up to avoid round-trips. Nice way of reducing the page startup time.&lt;/li&gt;
&lt;li&gt;Templates are stored as plain text files on the server, then retrieved at runtime when the page needs them - again, clever!&lt;/li&gt;
&lt;li&gt;A server that opens up its data for cross-domain access enables some very, very powerful scenarios.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The code is available on CodePlex and is short &amp;amp; sweet. Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10168024" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>More datajs on Twitter</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/19/more-datajs-on-twitter.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/19/more-datajs-on-twitter.aspx</id><published>2011-05-19T21:00:00Z</published><updated>2011-05-19T21:00:00Z</updated><content type="html">&lt;p&gt;These days, I'm using #datajs when I &lt;a href="http://twitter.com/#!/mlrdev"&gt;tweet&lt;/a&gt; about small updates like minor code fixes or improvements to the CodePlex site.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10166127" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>Windows Azure Storage Emulator returning 503 - Service Unavailable</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/06/windows-azure-storage-emulator-returning-503-service-unavailable.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/06/windows-azure-storage-emulator-returning-503-service-unavailable.aspx</id><published>2011-05-06T21:00:00Z</published><updated>2011-05-06T21:00:00Z</updated><content type="html">&lt;p&gt;Today's post is the result of about four hours of tracking down a tricky problem, so hopefully this will help others.&lt;/p&gt;
&lt;p&gt;My problem began when I was testing an Azure project with the &lt;a href="http://msdn.microsoft.com/en-us/library/gg432983.aspx"&gt;storage emulator&lt;/a&gt;. The code that was supposed to work with the blob service would fail any request with a "503 - Service Unavailable" error. All other services seemed to be working correctly.&lt;/p&gt;
&lt;p&gt;Looking at the headers in the Response object of the exception, I could see that this was produced by the HTTP Server library by the telling &lt;a href="http://msdn.microsoft.com/en-us/library/aa364621(VS.85).aspx"&gt;Server header&lt;/a&gt; (Microsoft-HTTPAPI/2.0 in my case). So this wasn't really a problem with the storage emulator - something was failing earlier on.&lt;/p&gt;
&lt;p&gt;Looking at the error log at &lt;span style="font-family: courier new,courier;"&gt;%SystemRoot%\System32\LogFiles\HTTPERR\httperr1.log&lt;/span&gt; in an Administrator command prompt, there almost no details,&amp;nbsp;so I had to look around more to figure out what was wrong.&lt;/p&gt;
&lt;p&gt;Turns out that some time ago I had configure port 10000 on my machine to self-host WCF services according to the instructions on &lt;a href="http://msdn.microsoft.com/en-us/library/ms733768.aspx"&gt;Configuring HTTP and HTTPS&lt;/a&gt;, using http://+:10000. The storage emulator currently sets itself up as http://127.0.0.1:10000/. According to the &lt;a href="http://msdn.microsoft.com/en-us/library/aa364687.aspx"&gt;precedence rules&lt;/a&gt;, "+" trumps an explicit host name, so that was routed to first, but there was no service registered for "+" at the moment, so http.sys was correctly returning 503 - Service Unavailable.&lt;/p&gt;
&lt;p&gt;To verify, I can simply run this command from an Aministrator command prompt:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;C:\Windows\system32&amp;gt;netsh http show urlacl&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;URL Reservations:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;-----------------&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Reserved URL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : http://*:2869/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; User: NT AUTHORITY\LOCAL SERVICE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Listen: Yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delegate: No&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SDDL: D:(A;;GX;;;LS)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Reserved URL&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : http://+:80/Temporary_Listen_Addresses/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; User: \Everyone&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Listen: Yes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Delegate: No&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SDDL: D:(A;;GX;;;WD)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;... (an entry for http://+:10000/ was among these!) ...&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The first was a simple one-liner, again from an Administrator command prompt, to delete that bit of configuration I didn't need anymore, and the storage server is up and running again.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: courier new,courier;"&gt;netsh http delete urlacl url=http://+:10000/&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160721" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Windows" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Windows/" /><category term="Azure" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Azure/" /></entry><entry><title>Must-have resource for Azure developers</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/05/must-have-resource-for-azure-developers.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/05/must-have-resource-for-azure-developers.aspx</id><published>2011-05-05T21:00:00Z</published><updated>2011-05-05T21:00:00Z</updated><content type="html">&lt;p&gt;Lately I've been looking into writing Azure applications. I already know the .NET platform, so it's a very familiar development experience for me: all the libraries I know and love are there.&lt;/p&gt;
&lt;p&gt;There are two aspects however that are new to me.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The first is how to build systems that can &lt;strong&gt;scale up and be always on&lt;/strong&gt;. There is a lot of support from Windows Azure in terms of runtime environment, libraries and services, and I think I've got a fair grip on them, but I'm still building the muscle of thinking about building highly scalable, highly reliable systems.&lt;/li&gt;
&lt;li&gt;The second is how to &lt;strong&gt;engineer the development environment&amp;nbsp;and runtime operations&lt;/strong&gt;. In other words, how to set up my environment correctly, design things to be able to run unit tests quickly and with flexibility, and how to maintain enough information flowing and stored in the system to be able to keep the thing going when it's deployed. It turns out that building in flexiblity and diagnostics can help in both cases.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you're in a similar situation as I am, I can't recomment the &lt;a href="http://msdn.microsoft.com/library/gg432998.aspx"&gt;Windows Azure How-To Index&lt;/a&gt; enough. It's a densely packed page with lots of information to get you going with practical tasks, and it's refreshed quite frequently.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160278" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Azure" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Azure/" /></entry><entry><title>Anecdotally, datajs delivers quiet success</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/04/anecdotally-datajs-delivers-quiet-success.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/04/anecdotally-datajs-delivers-quiet-success.aspx</id><published>2011-05-04T21:00:00Z</published><updated>2011-05-04T21:00:00Z</updated><content type="html">&lt;p&gt;Most of the people I've discussed &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt; describe their experience as simply getting the code, using it and having it work on the first go. "It just works", and people get on with building the rest of their web app.&lt;/p&gt;
&lt;p&gt;So far it seems that the simple API resonates well with developers, and we're hitting the right level of simplicity with control, but I'm interested in hearing more of course. If you've tried datajs, what was your experience like? Good things, bad things, difficult things? If you haven't, is there something that's getting in your way or something that could change that would make the library more appealing to you?&lt;/p&gt;
&lt;p&gt;If you want to be heard, just comment on this post or drop me a message - thanks in advance for your time!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160274" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>What we're up to with datajs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/05/03/what-we-re-up-to-with-datajs.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/05/03/what-we-re-up-to-with-datajs.aspx</id><published>2011-05-03T21:00:00Z</published><updated>2011-05-03T21:00:00Z</updated><content type="html">&lt;p&gt;It's been a while since I last blogged about &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt;, so in the interest of transparency I thought I'd give a quick update on what we're up to.&lt;/p&gt;
&lt;p&gt;There are three things that we're working on.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cache implementation. &lt;a href="http://www.codeplex.com/site/users/view/ATrigo"&gt;Alex&lt;/a&gt; is doing some awesome work here, but the changes are pretty deep, which is why we haven't uploaded code for a while; we want to make sure that the codebase gets more stable over time at this moment.&lt;/li&gt;
&lt;li&gt;Bug fixes. A few minor things here and there, nothing too serious has come up so far.&lt;/li&gt;
&lt;li&gt;Responding to feedback. There are a couple of tweaks in design that we're considering to help with some scenarios. This is a great time to contribute ideas, so if you're interested, just go over to the &lt;a href="http://datajs.codeplex.com/discussions"&gt;Discussions page&lt;/a&gt; and post - we're listening.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160272" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>Supporting JSONP callbacks in WCF Data Services</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/04/19/supporting-jsonp-callbacks-in-wcf-data-services.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/04/19/supporting-jsonp-callbacks-in-wcf-data-services.aspx</id><published>2011-04-19T21:00:00Z</published><updated>2011-04-19T21:00:00Z</updated><content type="html">&lt;p&gt;By default, WCF Data Services does not support the $format and $callback options to support JSONP.&lt;/p&gt;
&lt;p&gt;If you're using &lt;a href="http://datajs.codeplex.com/"&gt;datajs&lt;/a&gt; to access a service and have set the enableJsonpCallback flag to true but you're seeing an error on the response that looks like "The query parameter '$callback' begins with a system-reserved '$' character but is not recognized." (you'll need a network capture to see this), then the server doesn't support JSONP. Thanks to &lt;a href="http://blog.bettiolo.it/"&gt;Marco Bettiolo&lt;/a&gt; for the problem report and network diagnostics!&lt;/p&gt;
&lt;p&gt;A very common way to add support is described by Pablo Castro in &lt;a href="http://blogs.msdn.com/b/pablo/archive/2009/02/25/adding-support-for-jsonp-and-url-controlled-format-to-ado-net-data-services.aspx"&gt;this blog post&lt;/a&gt;, or if you prefer to get up and running faster, the &lt;a href="http://code.msdn.microsoft.com/DataServicesJSONP"&gt;sample is here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10155366" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="WCF Data Services" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/WCF+Data+Services/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>datajs intro video now online</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/04/18/datajs-intro-video-now-online.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/04/18/datajs-intro-video-now-online.aspx</id><published>2011-04-18T17:00:00Z</published><updated>2011-04-18T17:00:00Z</updated><content type="html">&lt;p&gt;The &lt;a href="http://channel9.msdn.com/events/MIX/MIX11/HTM02"&gt;MIX11 session on datajs&lt;/a&gt; is now online&amp;nbsp;- enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10154676" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="Web" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Web/" /><category term="datajs" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/datajs/" /></entry><entry><title>datajs release announcement</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/04/13/datajs-release-announcement.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/04/13/datajs-release-announcement.aspx</id><published>2011-04-13T23:30:00Z</published><updated>2011-04-13T23:30:00Z</updated><content type="html">&lt;p&gt;I'm excited about the &lt;a href="http://blogs.msdn.com/b/astoriateam/archive/2011/04/13/announcing-datajs-version-0-0-3.aspx"&gt;announcement of the datajs 0.0.3 release&lt;/a&gt;. This new release comes out within two months of the previous one, and as you can see from the &lt;a href="http://datajs.codeplex.com/SourceControl/list/changesets"&gt;changelists&lt;/a&gt;, there are a few very interesting changes.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic key/value storage API over various mechanisms.&lt;/li&gt;
&lt;li&gt;Caching component with prefetching and durable data.&lt;/li&gt;
&lt;li&gt;Support for OData $link and plain-text content.&lt;/li&gt;
&lt;li&gt;Compatibility with more browsers.&lt;/li&gt;
&lt;li&gt;Various bug fixes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you're attending &lt;a href="http://live.visitmix.com/"&gt;MIX11&lt;/a&gt;, you can see the library in action at the &lt;a href="http://channel9.msdn.com/events/MIX/MIX11/HTM02"&gt;Data in an HTML5 World&lt;/a&gt; session this Thursday.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10153618" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author></entry><entry><title>OData and TFS and yes, CodePlex</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/marcelolr/archive/2011/04/08/odata-and-tfs-and-yes-codeplex.aspx" /><id>http://blogs.msdn.com/b/marcelolr/archive/2011/04/08/odata-and-tfs-and-yes-codeplex.aspx</id><published>2011-04-08T21:49:55Z</published><updated>2011-04-08T21:49:55Z</updated><content type="html">&lt;p&gt;The beta of the &lt;a href="http://blogs.msdn.com/b/briankel/archive/2011/04/07/odata-service-for-team-foundation-server-2010.aspx"&gt;OData Service for Team Foundation Service 2010&lt;/a&gt; was announced yesterday, and of course as a TFS user I find this tremendously exciting. TFS ends up having a lot of data about my day-to-day work, and now thanks to OData it's easily unlocked and programmable!&lt;/p&gt;
&lt;p&gt;For extra awesome points, there is a preview of the &lt;a href="https://codeplexodata.cloudapp.net/"&gt;CodePlex OData API&lt;/a&gt; as well.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10151556" width="1" height="1"&gt;</content><author><name>Marcelo Lopez Ruiz - MSFT</name><uri>http://blogs.msdn.com/marcelolr/ProfileUrlRedirect.ashx</uri></author><category term="Development" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/Development/" /><category term="OData" scheme="http://blogs.msdn.com/b/marcelolr/archive/tags/OData/" /></entry></feed>