Speaking Events http://rickgaribay.net/category/1.aspx Speaking Events en-US Rick G. Garibay rickgaribay@hotmail.com Subtext Version 1.9.5.176 Visual Studio Live Redmond &ndash; 8/18 to 8/21 http://rickgaribay.net/archive/2014/08/11/visual-studio-live-redmond-ndash-818-to-821.aspx <div align="center"> <h1>The Goods... </h1> <br /> Thank you Redmond, 1105 Media, Microsoft, fellow speakers and all attendees for a great show. I had a blast! <br /> <table><tbody> <tr> <td><iframe height="400" marginheight="0" src="//www.slideshare.net/slideshow/embed_code/38229557" frameborder="0" width="476" marginwidth="0" scrolling="no"></iframe> <br />Code: <a href="https://github.com/rickggaribay/neurl">https://github.com/rickggaribay/IoT</a> </td> <td> </td> <td><iframe height="400" marginheight="0" src="//www.slideshare.net/slideshow/embed_code/38229551" frameborder="0" width="476" marginwidth="0" scrolling="no"></iframe> <br />Code: <a href="https://github.com/rickggaribay/neurl">https://github.com/rickggaribay/neurl</a> </td> </tr> </tbody></table> </div> +++ <p> </p> <p>I’m thrilled to be speaking at VS Live Redmond next week. The show starts on Monday August 18th and goes through Thursday the 21st on Microsoft campus in Redmond, WA. </p> <p>Events in Redmond a<a href="http://bit.ly/RDSPK10"><img title="RDSPK10 (1)" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; margin: 15px 10px; display: inline; border-top-width: 0px" border="0" alt="RDSPK10 (1)" align="left" src="http://rickgaribay.net/images/rickgaribay_net/WindowsLiveWriter/VisualStudioLiveRedmond818to821_E9B6/RDSPK10%20(1)_3.jpg" width="184" height="154" /></a>re always a special treat as it gives everyone a chance to see the campus, interact with product team members and as always, meet and hang out with some of the best, most recognized speakers in the industry like Ted Neward, Michael Collier, Brian Noyes, Eric Boyd, Rachel Appel, Miguel Castro, Rocky Lhotka, Andrew Brust- the list goes on.</p> <p>I’ll be delivering two Azure focused presentations on the Internet of Things and API development with NodeJS.</p> <p>Since there is only so much space available for the abstracts themselves, I thought I’d elaborate a bit on what you can expect from each session in this short post. You can find more details about both talks on the VS Live Redmond <a href="http://bit.ly/RDSPK10" target="_blank">website</a> or go directly to the abstracts by following the links below.</p> <p><strong>From the Internet of Things to Intelligent Systems: A Developer's Primer</strong></p> <p>In this talk, I lay the foundation for IoT and why you, as a developer should care. I’ll show off a handful of devices ranging from Arduino, Netduino and Fez Spider and demonstrate a number of common patterns currently in the wild including default communication, brokered and service assisted. We’ll explore the challenges that exist today in supporting commands, notifications, inquiries and telemetry. I’ll then spend some time giving you an in-depth tour of Reykjavik, Microsoft’s code name for its reference architecture focused on delivering highly scalable messaging fabrics for modern IoT solutions. </p> <p>We’ll take a look at the reference architecture and how it maps to components on Microsoft Azure. I’ll then demonstrate what a first-class Reykjavik device looks like and demonstrate live telemetry and commands for an end-to-end tour of Reykjavik. I’ve been spending a lot of time with Clemens and team over the last several weeks so this promises to be an inside look at the reference architecture and general shape of things you're unlikely to find publically anywhere else.</p> <p>Learn more about this talk here: <a title="http://bit.ly/VSLRIOT" href="http://bit.ly/VSLRIOT">http://bit.ly/VSLRIOT</a> or follow the conversation on Twitter #VSLTH04</p> <p><strong>Building APIs with NodeJS on Microsoft Azure Websites</strong></p> <p>This is a talk that I’ve been working on for several months now and continues to evolve. As I discuss in my <a href="http://bit.ly/1nT4K6h" target="_blank">latest article in CODE Magazine</a>, it started off as a spike for teaching myself basic NodeJS and kind of evolved into a little project for work that needed a hosting environment. After exploring various options, Azure Websites made the most sense and this talk focuses on the key features and functionality of a little URL shortening API along with key ALM considerations like IDE, unit testing, continuous integration and deployment. </p> <p>I’ll walk you through each step I took in building this API from scratch and deploy it live to Azure Websites as well as show you some really cool things you can do with the Kudu console when things go awry (as they almost always do in a live demo :-)) </p> <p>More about this talk here: <a title="http://bit.ly/VSLRAPI" href="http://bit.ly/VSLRAPI">http://bit.ly/VSLRAPI</a> or follow the conversation on Twitter  #VSLW09</p> <p>If you plan on attending either of my sessions please stop by and say hi or after the talk. I hope to see you there!</p><img src="http://rickgaribay.net/aggbug/371.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2014/08/11/visual-studio-live-redmond-ndash-818-to-821.aspx Mon, 11 Aug 2014 23:38:01 GMT http://rickgaribay.net/archive/2014/08/11/visual-studio-live-redmond-ndash-818-to-821.aspx#feedback http://rickgaribay.net/comments/commentRss/371.aspx http://rickgaribay.net/services/trackbacks/371.aspx Visual Studio Live Chicago Recap: Building APIs with NodeJS on Microsoft Azure Websites http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-building-apis-with-nodejs-on.aspx <p>My first talk at VS Live Chicago this week (if you’re looking for my IoT talk, please click <a href="http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-from-the-internet-of-things.aspx">here</a>) was based on a talk I started doing last year demonstrating fundamental unit testing techniques with NodeJS and Mocha. Since then, the code and the talk has evolved into a real API currently is early alpha at Neudesic. </p> <p>In this session, we started with looking at the problem – and opportunity- with long, ugly URLs and how most URL minification APIs like bit.ly, tinyurl, etc. solve the problem today. </p> <p>From there, we looked at why NodeJS is a great choice for building a Web API and proceeded to build the 3 key APIs required to fulfill the most fundamental features you’d expect from a URL shortening API including:</p> <ul> <li>Shorten <ul> <li>When I submit a long, ugly URL to the create API, I should get back a neurl. </li> </ul> </li> <li>Redirect <ul> <li>When I submit a neurl to the submit API, my request should be automatically redirected. </li> </ul> </li> <li>Hits <ul> <li>When I submit a neurl to the hits API, I should get back the number of hits/redirects for that neurl. </li> </ul> </li> </ul> <p>With the API up an running on my laptop, we proceeded to create an Azure Website and push the Node app via my local Git repository, taking it live. All was not well unfortunately as initial testing of the Shorten API returned 500 errors. A quick look at the log dumps using the venerable Kudu console revealed the cause: The environment variable for the MongoDB connection string didn’t exist on the Azure Website deployment which was quickly remedied by adding the variable to the website from the Azure portal. Yes, this error was fully contrived, but Kudu is so cool.</p> <p>With the API up and running, we exercised it a bit, verifying that the Redirect and Hits APIs were good to go and the scaled out the API from one to six instances with just a few clicks.</p> <p>As the API continues to mature, I’ll update the talk to demonstrate how this level of indirection brought forth by virtualizing the actual URL (as with traditional services and APIs) introduces many opportunities to interact with the person consuming the API (all via URIs!) as they take the journey that starts with the click and ends with the final destination.</p> <p>Without further ado, the code and more details on the talk can be found below.</p> <p>Code: <a title="https://github.com/rickggaribay/neurl" href="https://github.com/rickggaribay/neurl">https://github.com/rickggaribay/neurl</a></p> <p>Abstract: <a title="http://bit.ly/1iEEbNV" href="http://bit.ly/1iEEbNV">http://bit.ly/1iEEbNV</a> </p> <p>Speaking of which, if you haven’t already, why not register for Visual Studio Live Redmond or Washington DC? Early bird discounts are currently available so join me to see where we can take this API from here! h<a title="http://bit.ly/vslive14" href="http://bit.ly/vslive14">http://bit.ly/vslive14</a></p><img src="http://rickgaribay.net/aggbug/369.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-building-apis-with-nodejs-on.aspx Sat, 10 May 2014 00:10:11 GMT http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-building-apis-with-nodejs-on.aspx#feedback http://rickgaribay.net/comments/commentRss/369.aspx http://rickgaribay.net/services/trackbacks/369.aspx Visual Studio Live Chicago Recap: From the Internet of Things to Intelligent Systems - A Developer's Primer http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-from-the-internet-of-things.aspx <p>I had the pleasure of presenting at Visual Studio Live! Chicago this week. Here is a recap of my second talk “From the Internet of Things to Intelligent Systems- A Developer’s Primer (if you’re looking for a recap of my “Building APIs with NodeJS on Microsoft Azure Websites” you can find it <a href="http://bit.ly/1gwnz9E">here</a>).</p> <p>While analysts and industry pundits can’t seem to agree on just how big IoT will be in the next 5 years, one thing they all agree on is that it will be big. From a bearish 50B internet connected devices by 2020, to a more moderate 75B and bullish 200B, all analysts agree that IoT is going to be big. But the reality is that IoT isn’t something that’s coming. It’s already here and this change is happening faster than anyone could have imagined. Microsoft predicts that by 2017, the entire space will represent over $1.7T in market opportunity spanning from manufacturing and energy to retail, healthcare and transportation. </p> <p>While it is still very early, it is clear to see that the monetization opportunities at this level of scale are tremendous. As I discussed in my talk, the real opportunity for organizations across all industries is two-fold. First, the <em><strong>data</strong></em> <em><strong>and analytical insights</strong></em> that the telemetry (voluntary data shared by the devices) will provide will change the way companies plan, execute and the rate at which they will adapt and adjust to changing conditions in their physical environments. This brings new meaning to decision support and no industry will be left untouched in this regard. These insights will lead to intelligent systems that are capable of taking <strong><em>action at a distance</em> </strong>based either on pre-configured rules that interpret this real-time device telemetry or other command and control logic that prompts communication with device. </p> <p>As a somewhat trivial but useful example, imagine your coffee maker sending you an SMS asking you permission to approve a descaling job. Another popular example of a product that’s already had significant commercial success is the Nest thermostat. Using microcontrollers very similar to the ones I demonstrated, these are simple examples that are already possible today.</p> <p>Beyond the commercial space, another very real example is a project my team led for our client that involved streaming meter and sensor telemetry from a large downtown metroplex enabling real-time, dynamic pricing, up-to-the-minute views into parking availability and significant cost and efficiency savings by adopting a directed enforcement approach to ticketing. </p> <p>So, IoT is already everywhere and in many cases, as developers we’re already behind. For example, what patterns do you use for managing command and control operations? How do you approach addressability? How do you overcome resource constraints on devices ranging in size from drink coasters to postage stamps? How do you scale to hundreds and thousands of devices that are sharing telemetry data every few seconds? What about security? </p> <p>While 75 minutes is not a ton of time to tackle all of these questions, I walked the audience through the following four scenarios based on the definition of the Command message pattern in the "<a href="http://bit.ly/saccv">Service Assisted Communications</a>" paper that Clemens Vasters (@clemensv) at Microsoft published this February:</p> <p>1. Default Communication Model with Arduino - demonstrates the default communication model whereby the Arduino provides its own API (via a Web Server adapted by zoomcat). Commands are sent from the command source to the device in a point to point manner. </p> <p>2. Brokered Device Communication with Netduino Plus 2 - demonstrates an evolution from the point to point default communication model to a brokered approach to issuing device commands using MQTT. This demo uses the excellent M2MQTT library by WEB MVP Paolo Patierno (@ppatierno) as well as the MQTT plug-in for RabbitMQ (both on-premise and RabbitMQ hosted). </p> <p>3. Service-Assisted Device-Direct Commands over Azure Service Bus - applies the fundamental service assisted communications concepts evolving the brokered example to leverage Azure Service Bus using the Device Direct pattern (as opposed to Custom Gateway). As with the brokered model, the device communicates with a single endpoint in an outbound manner, but does not require a dedicated socket connection as with MQTT implicitly addressing occasionally disconnected scenarios, message durability, etc. </p> <p>In the final, capstone demo, “Service-Assisted Device-Direct Commands on the Azure Device Gateway”, I demonstrated the culmination of work dating back to June 2012 (in which Vasters first shared the concept of Service-Assisted Communications) which is now available as a reference architecture and fully functional code base for customers ready to adopt an IoT strategy today: </p> <p><a href="http://rickgaribay.net/images/rickgaribay_net/WindowsLiveWriter/RecapVisualStudioLiveChicago_E226/image_2.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="http://rickgaribay.net/images/rickgaribay_net/WindowsLiveWriter/RecapVisualStudioLiveChicago_E226/image_thumb.png" width="640" height="227" /></a> </p> <p>As a set up for the demo, I discussed the Master and Partition roles. The Master role manages the deployment of partitions and the provisioning of devices into partitions using the command line tools that ship with the code base.</p> <p>In the demo, I provided a look at the instance of Reykjavik deployed on our Neudesic Azure account including the Master and Partition roles. I showed the Azure Service Bus entities for managing the ingress and egress of device messaging for command, notification, telemetry and inquiry traffic (The Device Gateway is currently capable of supporting 1024 partitions with each partition supporting 20K devices today) as well as the storage accounts responsible for device registration and storing partition configuration settings. </p> <p>I also discussed the protocols for connecting the device to the gateway (AMQP and HTTP are in the box and an MQTT adapter is coming very soon) and walked through the Telemetry Pump which dispatches telemetry messages to the registered telemetry adapter (Table Storage, HD Insight adapters, etc.) </p> <p>The demo wrapped up with a Reykjavik device sample consisting of a Space Heater emulator that I registered on the Neudesic instance of the Device Gateway to acquire it’s ingress and egress endpoints, initialize fan speed, rpm and begins to send telemetry messages to it’s outbox every 30 seconds (fully configurable). </p> <p>The beauty of the demo is in its simplicity. Commands are received via the device’s inbox and telemetry is shared via it’s outbox. The code is simple C# with no heavy frameworks which is really key to running on devices with highly constrained resources:</p> <div class="csharpcode"> <pre class="alt"><span class="lnum"> 1: </span><span class="kwrd">void</span> SendTelemetry()</pre> <pre><span class="lnum"> 2: </span> {</pre> <pre class="alt"><span class="lnum"> 3: </span> <span class="kwrd">this</span>.lastTelemetrySent = DateTime.UtcNow;</pre> <pre><span class="lnum"> 4: </span> </pre> <pre class="alt"><span class="lnum"> 5: </span> var tlm = <span class="kwrd">new</span> BrokeredMessage</pre> <pre><span class="lnum"> 6: </span> {</pre> <pre class="alt"><span class="lnum"> 7: </span> Label = <span class="str">"tlm"</span>,</pre> <pre><span class="lnum"> 8: </span> Properties =</pre> <pre class="alt"><span class="lnum"> 9: </span> {</pre> <pre><span class="lnum"> 10: </span> {<span class="str">"From"</span>, gatewayId},</pre> <pre class="alt"><span class="lnum"> 11: </span> {<span class="str">"Time"</span>, DateTime.UtcNow},</pre> <pre><span class="lnum"> 12: </span> {<span class="str">"tiv"</span>, (<span class="kwrd">int</span>) <span class="kwrd">this</span>.telemetryInterval.TotalSeconds},</pre> <pre class="alt"><span class="lnum"> 13: </span> {<span class="str">"fsf"</span>, <span class="kwrd">this</span>.fanspeedSettingRpmFactor},</pre> <pre><span class="lnum"> 14: </span> {<span class="str">"fss"</span>, <span class="kwrd">this</span>.fanSpeedSetting},</pre> <pre class="alt"><span class="lnum"> 15: </span> {<span class="str">"fon"</span>, <span class="kwrd">this</span>.fanOn},</pre> <pre><span class="lnum"> 16: </span> {<span class="str">"tsc"</span>, <span class="kwrd">this</span>.temperatureSettingC},</pre> <pre class="alt"><span class="lnum"> 17: </span> {<span class="str">"hon"</span>, <span class="kwrd">this</span>.heaterOn},</pre> <pre><span class="lnum"> 18: </span> {<span class="str">"ofr"</span>, <span class="kwrd">this</span>.lastObservedFanRpm},</pre> <pre class="alt"><span class="lnum"> 19: </span> {<span class="str">"otm"</span>, <span class="kwrd">this</span>.lastObservedTemperature}</pre> <pre><span class="lnum"> 20: </span> }</pre> <pre class="alt"><span class="lnum"> 21: </span> };</pre> <pre><span class="lnum"> 22: </span> </pre> <pre class="alt"><span class="lnum"> 23: </span> tlm.SessionId = Guid.NewGuid().ToString();</pre> <pre><span class="lnum"> 24: </span> </pre> <pre class="alt"><span class="lnum"> 25: </span> <span class="kwrd">this</span>.sender.SendWithRetryAsync(tlm);</pre> <pre><span class="lnum"> 26: </span> }</pre> </div> <style type="text/css"><![CDATA[ .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, "Courier New", courier, monospace; background-color: #ffffff; /*white-space: pre;*/ } .csharpcode pre { margin: 0em; } .csharpcode .rem { color: #008000; } .csharpcode .kwrd { color: #0000ff; } .csharpcode .str { color: #006080; } .csharpcode .op { color: #0000c0; } .csharpcode .preproc { color: #cc6633; } .csharpcode .asp { background-color: #ffff00; } .csharpcode .html { color: #800000; } .csharpcode .attr { color: #ff0000; } .csharpcode .alt { background-color: #f4f4f4; width: 100%; margin: 0em; } .csharpcode .lnum { color: #606060; }]]></style> <p> </p> <p>A screenshot from the telemetry table populated by the Reykjavik Table Storage adapter is shown in the Neudesic Azure Storage Explorer below:</p> <p><a href="http://rickgaribay.net/images/rickgaribay_net/WindowsLiveWriter/RecapVisualStudioLiveChicago_E226/image_4.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="http://rickgaribay.net/images/rickgaribay_net/WindowsLiveWriter/RecapVisualStudioLiveChicago_E226/image_thumb_1.png" width="644" height="450" /></a> </p> <p>As I discussed, this is an early point in a journey that will continue to evolve over time, but the great thing about this model is that everything I showed is built on Microsoft Azure so there’s nothing to stop you as a developer form building your own Custom Protocol Adapter and this is really the key to the thinking and philosophy around Device Gateway. </p> <p>It is still very early in this wave and every organization is going to have different devices, protocols and requirements. So while you’ll see investments in the most common protocols as you can already see like (AMQP, MQTT, and CoAp) the goal is to make this super pluggable and fully embrace custom protocol gateways that just plug in. </p> <p>As with the Protocol Adapters, there’s nothing to stop you from building your own Telemetry adapter or to use Azure Service Bus or BizTalk Services to move data on premise, etc. </p> <p>Still with me? Great. The links to my demo samples and more details on the talk are available here:</p> <p>Abstract: <a title="http://bit.ly/vsl-iot" href="http://bit.ly/vsl-iot">http://bit.ly/vsl-iot</a> </p> <p>Demo Samples: <a title="https://github.com/rickggaribay/IoT" href="https://github.com/rickggaribay/IoT">https://github.com/rickggaribay/IoT</a> </p> <p></p> <p>Oh, and if you missed the Chicago show, don’t worry! I’ll be repeating this talk in Redmond and Washington DC, so be sure to register now for early bird discounts: <a title="http://bit.ly/vslive14" href="http://bit.ly/vslive14">http://bit.ly/vslive14</a></p><img src="http://rickgaribay.net/aggbug/368.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-from-the-internet-of-things.aspx Fri, 09 May 2014 23:41:19 GMT http://rickgaribay.net/archive/2014/05/09/visual-studio-live-chicago-recap-from-the-internet-of-things.aspx#feedback 1 http://rickgaribay.net/comments/commentRss/368.aspx http://rickgaribay.net/services/trackbacks/368.aspx Visual Studio Live! Las Vegas http://rickgaribay.net/archive/2013/02/17/visual-studio-live-las-vegas.aspx <p> </p> <p>I’ll be <a href="http://vslive.com/events/las-vegas-2013/Speakers/Speaker%20Window.aspx?SpeakerId={E7CDD516-A07D-4FB8-A7B3-AA538E893EA7}&amp;ID={6EF8BE9C-3D36-4000-8879-02F12BDF2D2F}" target="_blank">speaking</a> at <a href="http://vslive.com/home.aspx" target="_blank">Visual Studio Live</a>!, March 25-29 in Las Vegas, NV <a href="http://bit.ly/VSLPKK14Reg">http://bit.ly/VSLPKK14Reg</a>.  <a href="http://vslive.com/events/las-vegas-2013/home.aspx?utm_source=AttendeeMktg&amp;utm_medium=Fax&amp;utm_campaign=VLSPK14" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="VSL13_Badge_See125x125" border="0" alt="VSL13_Badge_See125x125" align="right" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/Visual-Studio-Live-Las-Vegas_AD06/VSL13_Badge_See125x125_3.jpg" width="129" height="129" /></a></p> <p>There are a ton of great sessions from fellow friends, MVPs and <a title="" href="http://neudesic.com" rel="">Neudesic</a> colleagues so this is sure to be a great show.</p> <p>I’ll be presenting the following sessions:</p> <ul> <li><a href="http://vslive.com/Events/Las-Vegas-2013/Sessions/Tuesday/T21--Build-Speedy-Azure-Applications-with-HTML-5-and-Web-Sockets-Today.aspx" target="_blank">Build Speedy Azure Applications with HTML5 and Web Sockets Today</a> </li> <li><a href="http://vslive.com/Events/Las-Vegas-2013/Sessions/Tuesday/T13--Chalk-Talk-Building-a-URL-Shortening-Service-with-Node.js.aspx" target="_blank">Chalk Talk: Beyond Hello World – A practical introduction to Node.js</a> </li> </ul> <p>SPECIAL OFFER: As a speaker, I can extend $500 savings on the 5-day package. Just be sure to use this link to register and use code <b>VLSPK14: </b><a href="http://bit.ly/VSLPKK14Reg">http://bit.ly/VSLPKK14Reg</a></p> <p>Hope to see you there!</p><img src="http://rickgaribay.net/aggbug/354.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2013/02/17/visual-studio-live-las-vegas.aspx Sun, 17 Feb 2013 19:32:12 GMT http://rickgaribay.net/archive/2013/02/17/visual-studio-live-las-vegas.aspx#feedback 1 http://rickgaribay.net/comments/commentRss/354.aspx http://rickgaribay.net/services/trackbacks/354.aspx Azure Conf Session is Up http://rickgaribay.net/archive/2012/11/16/azure-conf-session-is-up.aspx <p>I had a total blast delivering my session on WebSockets on Windows Azure at <a href="http://channel9.msdn.com/Events/WindowsAzureConf/2012" target="_blank">AzureConf</a> on Wednesday and am pleased to share that the recording of my session is now up.</p> <p>You can view it by clicking below or <a href="http://channel9.msdn.com/Events/WindowsAzureConf/2012/A01" target="_blank">follow this link to view on Channel 9</a> along with a number of other fantastic sessions that highlight how MVPs are using Windows Azure today.</p> <p><a href="http://channel9.msdn.com/Events/WindowsAzureConf/2012/A01" target="_blank"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/4af85884bd01_EAC3/image_3.png" width="553" height="484" /></a></p> <p>Thanks again to Brady, Cory and team for an amazing event!</p><img src="http://rickgaribay.net/aggbug/351.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/11/16/azure-conf-session-is-up.aspx Fri, 16 Nov 2012 23:45:55 GMT http://rickgaribay.net/archive/2012/11/16/azure-conf-session-is-up.aspx#feedback 1 http://rickgaribay.net/comments/commentRss/351.aspx http://rickgaribay.net/services/trackbacks/351.aspx Speaking at AzureConf on Channel 9 Next Week http://rickgaribay.net/archive/2012/11/07/speaking-at-azureconf-on-channel-9-next-week.aspx <p>I am flattered to share that I’ve been invited to speak at <a href="http://www.windowsazureconf.net/" target="_blank">AzureConf</a> one week from today at Channel 9 Studios in Redmond on Wed. 11/14.<a href="http://www.windowsazureconf.net/" target="_blank"><img style="display: inline; float: right" alt="AzureConf Logo" align="right" src="http://az118040.vo.msecnd.net/cdn/microsite/1.7.27/customer/6a6d717f-531c-40a8-b7e3-862700071004/img/azureconf-logo.png" width="409" height="136" /></a></p> <p><a href="http://www.windowsazureconf.net/" target="_blank">AzureConf</a> is a premier live streamed event delivered for the community by the community from Channel 9 Studios on the Microsoft Campus in Redmond, WA.</p> <p> <a href="http://twitter.com/bradygaster" target="_blank">Brady Gaster</a> and <a href="http://twitter.com/syntaxc4" target="_blank">Corey Fowler</a> have been hard at work for several weeks organizing content, logistics and I can tell you that I am both excited and humbled by the speaker line-up and content.</p> <p>The event will kick off with a keynote presentation by <strong><a href="twitter.com/scottgu" target="_blank">Scott Guthrie</a></strong>, along with numerous sessions executed by Windows Azure community members including my friend, colleague and fellow (Azure) MVP <a href="http://twitter.com/michaelcollier" target="_blank"><strong>Michael Collier</strong></a> and esteemed MVPs and Insiders flying in from all over the country/world to join Scott and team at the Channel 9 studios including <a href="http://twitter.com/noopman" target="_blank"><strong>Magnus Martensson</strong></a> and <a href="http://twitter.com/ericdboyd" target="_blank"><strong>Eric Boyd</strong></a>, just to name a few. </p> <p>Streamed live for an online audience on <a href="http://channel9.msdn.com">Channel 9</a>, the event will allow you to see how customers, partners and MVPs are making the most of our skills to develop a variety of innovative applications on Windows Azure. The goal of the conference is to be just as valuable to seasoned Azure developers and architects as well as those just learning the tremendous power of this exciting platform. </p> <p>You can learn more about AzureConf by visiting <a title="http://www.windowsazureconf.net/" href="http://www.windowsazureconf.net/">http://www.windowsazureconf.net/</a>. Please be sure to register as capacity for the live streamed event will be limited (however sessions will be available for playback following the conference).</p> <p>Thank you for your interest and please help spread the word!</p> <p><a href="http://windowsazureconf.net"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="MS1621_Banner_960x60_r06" border="0" alt="MS1621_Banner_960x60_r06" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/Speaking-at-AzureConf-on-Channel9-Next-W_A4E3/MS1621_Banner_960x60_r06_3.jpg" width="964" height="64" /></a></p><img src="http://rickgaribay.net/aggbug/349.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/11/07/speaking-at-azureconf-on-channel-9-next-week.aspx Wed, 07 Nov 2012 19:07:06 GMT http://rickgaribay.net/archive/2012/11/07/speaking-at-azureconf-on-channel-9-next-week.aspx#feedback 1 http://rickgaribay.net/comments/commentRss/349.aspx http://rickgaribay.net/services/trackbacks/349.aspx Windows 8 Unleashed: Microsoft Tempe on 11/2 http://rickgaribay.net/archive/2012/10/31/windows-8-unleashed-microsoft-tempe-on-112.aspx <p><a href="http://tempewin8unleashed.eventbrite.com/#" target="_blank"><img style="margin: 10px; display: inline; float: left" align="left" src="http://kinlane-productions.s3.amazonaws.com/api-evangelist-site/events/windows-8-unleashed.png" /></a>I’m thrilled to share that I will be presenting with Phoenix MVPs <a href="http://twitter.com/danwahlin" target="_blank">Dan Wahlin</a> and <a href="http://twitter.com/jguadagno" target="_blank">Joe Guadagno</a> at the upcoming Windows 8 Unleashed event in Tempe to celebrate the release of Windows 8 and help jump start the local community to start building Windows 8 apps.<a href="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/Windows-8-Unleashed-Microsoft-Tempe-on-1_A9F6/image_2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/Windows-8-Unleashed-Microsoft-Tempe-on-1_A9F6/image_thumb.png" width="149" height="62" /></a></p> <p> </p> <p>The event is 100% <strong><em>FREE </em></strong>and you are welcome whether you are an experienced .NET developer, or even if you are just getting started. </p> <p> </p> <p>The detailed agenda is below (I’ll be delivering Session II), but in a nutshell, we’ll spend the morning in lecture and hands on labs. Half way through, you’ll get a chance to take what you learned in the morning and compete in a hackathon with a chance to win some great prizes!</p> <p>Space is limited, so be sure to register right away if you haven’t already done so: <a title="http://tempewin8unleashed.eventbrite.com/#" href="http://tempewin8unleashed.eventbrite.com/#">http://tempewin8unleashed.eventbrite.com/#</a> </p> <p><strong></strong></p> <p><strong>Required Software and Downloads</strong></p> <p>This is a BYOL event, so please make sure to bring your laptop and get the required software and downloads <strong><u>BEFORE</u></strong> coming to the event. You can find everything you need on the “<a href="http://devunleashed.com/windows-8-unleashed-installs/"><u>Windows 8 Unleashed Installs</u></a>” page.</p> <p><strong>Agenda</strong></p> <p><strong>Session I – Overview</strong></p> <p>·Metro Style Apps Overview</p> <p>·Developing Metro Style Apps</p> <p>·Working with Controls</p> <p>·Implementing Navigation</p> <p><strong>Session II – Location and Data</strong></p> <p>·Working with Location</p> <p>·Data Binding</p> <p>·Roaming</p> <p>·App Bar</p> <p><strong>Session III – Metro Principals</strong></p> <p>·Live Tiles &amp; Toast</p> <p>·Contracts</p> <p>·Full, Fill Snap and Portrait Views</p> <p>·Advertising</p> <p><strong>Build an App and Win Money and Prizes!</strong></p> <p>Our sponsors have stepped up with some awesome prizes. Not only do you get a ton of information for FREE, but you have an opportunity to win some awesome stuff! You can’t afford to miss this! </p> <p><strong>DAY-OF prizes will be awarded (<em>sponsored by PDSA</em>):</strong></p> <p>·1st Place: $500 Gift Card</p> <p>·2nd Place: $200 Gift Card</p> <p>·3rd Place: $100 Gift Card</p> <p><strong>“Best Overall App” Prizes will be awarded to the best app from ALL unleashed events:</strong></p> <p>·$10,000 from <em>Component Art</em></p> <p>·Windows 8 Tablet from <em>PDSA, Inc.</em></p> <p><em>In addition all attendees will receive a FREE eBook from O’Reilly</em></p> <p>Hope to see you all there!</p><img src="http://rickgaribay.net/aggbug/348.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/10/31/windows-8-unleashed-microsoft-tempe-on-112.aspx Wed, 31 Oct 2012 19:25:47 GMT http://rickgaribay.net/archive/2012/10/31/windows-8-unleashed-microsoft-tempe-on-112.aspx#feedback http://rickgaribay.net/comments/commentRss/348.aspx http://rickgaribay.net/services/trackbacks/348.aspx Interview on SSWUG TV http://rickgaribay.net/archive/2012/10/17/interview-on-sswug-tv.aspx <p><a href="http://www.sswug.org/" target="_blank"><img style="background-image: none; border-right-width: 0px; margin: 5px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="left" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/Interview-on-SSWUG-TV_D5A8/image_3.png" width="175" height="135" /></a>I was recently interviewed on <a href="http://www.sswug.org/" target="_blank">SSWUG TV</a> to talk about my new book, <a href="http://www.packtpub.com/microsoft-windows-server-appfabric-cookbook/book" target="_blank">Windows Server AppFabric Cookbook</a>. </p> <p>SSWUG.ORG is the one of the largest community-driven sites that focuses on enterprise technology, as more than 570,000 members regularly visit our site for answers to their IT-related questions and to access the information they need to grow as professionals.</p> <p>As I mention in the interview, everyone who watches the video is eligible for a 22% discount on both the print and e-copy version and is valid through the end of October. </p> <p>You can watch the video and learn more about the SQL Server Worldwide User Group here: <a title="http://www.sswug.org/" href="http://www.sswug.org/">http://www.sswug.org/</a></p> <p>Thanks to Stephen and Josh for the opportunity to catch up and talk about the book!</p><img src="http://rickgaribay.net/aggbug/347.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/10/17/interview-on-sswug-tv.aspx Wed, 17 Oct 2012 22:20:07 GMT http://rickgaribay.net/archive/2012/10/17/interview-on-sswug-tv.aspx#feedback http://rickgaribay.net/comments/commentRss/347.aspx http://rickgaribay.net/services/trackbacks/347.aspx The Goods: WebSockets Programming in .NET 4.5 and Windows Azure at That Conference http://rickgaribay.net/archive/2012/08/14/the-goods-websockets-programming-in-.net-4.5-and-windows-azure.aspx <p>We’re just wrapping up day 2 of sessions at <a href="http://www.thatconference.com/" target="_blank">That Conference</a> in Wisconsin Dells, WI and like yesterday, this has been a great day chock full of sessions, great conversations and meeting new people.</p> <p>On Monday I had the opportunity to support Microsoft at their table by staffing an Ask the Experts slot on Windows Azure which was a great opportunity to talk to folks about Azure, Azure Service Bus, etc. and handing out drink tickets to those with the best question.</p> <p>I was also flattered to be interviewed by <a href="http://www.russtoolshed.net/" target="_blank">Russ Fustino</a> for ComponentOne. It was great catching up with Russ- a true legend in the Microsoft developer community!</p> <p>I am really impressed by the developer scene here in the Midwest with developers from all languages and platforms coming together to invest in themselves, their organization and most of all their community for 3 days at the Kalahari Resort. Big shout out to <a href="http://twitter.com/sseely" target="_blank">Scott Seely</a> , <a href="http://twitter.com/csell5" target="_blank">Clark Sell</a> and the legions of invisible people behind the scenes for making this a great inaugural event.</p> <p>On that note, I’d like to thank everyone who attended <a href="http://www.thatconference.com/Sessions/session_198" target="_blank">my talk on WebSockets in .NET 4.5 and Windows Azure</a>. </p> <p>I essentially reprised my content from Azure Connections in Las Vegas this Spring, with updates to Visual Studio 2012 RC and Windows Server 2012.</p> <p>Please take a look at my <a href="http://rickgaribay.net/archive/2012/03/29/building-speedy-azure-applications-with-html5-and-web-sockets-today.aspx">post recapping the content</a> if you want more details but be sure to take the bits posted below instead if you are targeting the RC versions of VS 2012 and Windows Server 2012/Windows 8 as the code samples have changed to align with the RC wave:</p> <p> </p> <div align="center"> <table border="1" cellspacing="0" cellpadding="2" width="1366"><tbody> <tr> <td valign="top" width="81"> <p align="center"><strong>Demo</strong></p> </td> <td valign="top" width="562"> <p align="center"><strong>Summary</strong></p> </td> <td valign="top" width="249"><strong>Goods </strong></td> </tr> <tr> <td valign="top" width="81">Demo 1</td> <td valign="top" width="562"> <p align="left">Live chat sample of Silverlight-based client and WCF Service running on Windows Azure. <br /> <br />Please note that this implementation is deprecated and will not be carried forward. <br /> <br />Instead, please use .NET 4.5 WebSocket support in WCF and ASP.NET. </p> <p align="center"><strong>Sample:</strong></p> <p align="center"></p> <p><a title="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html" href="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html">http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html</a></p> </td> <td valign="top" width="249"> <p align="left"><a href="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_4.png" width="244" height="203" /></a></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 2</p> </td> <td valign="top" width="562"> <p align="left">Simple “Hello World” example of ASP.NET ASHX handler using WebSocketHandler and HTML 5 client demonstrating a trivial “echo” service that displays the date/time each second. <br /> <br />Also included in the Demo 2 folder is a WCF version of the same implementation (which I did not demo during my talk). </p> <p align="left"> </p> <p><strong>Projects:</strong> </p> <p> <br />SimpleEventingSample <br />SimpleEventingService <br /> <br /><font color="#ff0000">Requires Visual Studio 2012 RC &amp; Windows 8/Windows Server 2012 RC/RP</font> </p> <p align="left"></p> </td> <td valign="top" width="249" align="center"> <p align="left"><a href="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/image_2.png"><img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/image_thumb.png" width="244" height="149" /></a></p> <p><iframe height="120" src="https://skydrive.live.com/embed?cid=DF930EE6F91132FD&amp;resid=DF930EE6F91132FD%211307&amp;authkey=AOD71R5iqJfI5sM" frameborder="0" width="98" scrolling="no"></iframe></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 3</p> </td> <td valign="top" width="562"> <p align="left">Example of using the Twitter Search API as an event stream with WCF using  WebSocketService, Linq to Twitter and HTML 5 with some nice JQuery and CSS animation. </p> <p><strong>Projects:</strong> </p> <p> <br />StatusStreamClient <br />StatusStreamService <br />StatusStreamServiceTests </p> <p align="left"><font color="#ff0000"></font></p> <p align="left"><font color="#ff0000">Requires Visual Studio 2012 RC &amp; Windows 8/Windows Server 2012 RC/RP</font> <br /></p> </td> <td valign="top" width="249" align="center"> <p align="left"><a href="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/SNAGHTML4ba4793.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="SNAGHTML4ba4793" border="0" alt="SNAGHTML4ba4793" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/SNAGHTML4ba4793_thumb.png" width="244" height="89" /></a></p> <p><iframe height="120" src="https://skydrive.live.com/embed?cid=DF930EE6F91132FD&amp;resid=DF930EE6F91132FD%211307&amp;authkey=AOD71R5iqJfI5sM" frameborder="0" width="98" scrolling="no"></iframe></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 4</p> </td> <td valign="top" width="562"> <p align="left">Another event streaming example, this time using the Twitter Streaming API, Node.js and WebSocket.IO in Windows Azure and HTML 5 animations with CSS 3 box shadow and rotate. <br /> <br />As opposed to the Twitter Search API used in Demo 3, you can see that events are immediately captured and the Streaming API is much more reliable than the Search API. <br /></p> </td> <td valign="top" width="249" align="center"> <p align="left"><a href="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/image_4.png"><img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/images/rickgaribay_net/Windows-Live-Writer/ed8f9a7b9892_137BA/image_thumb_1.png" width="244" height="120" /></a></p> <p align="center"><iframe height="120" src="https://skydrive.live.com/embed?cid=DF930EE6F91132FD&amp;resid=DF930EE6F91132FD%211306&amp;authkey=ABQuTN27kcFSjMI" frameborder="0" width="98" scrolling="no"></iframe></p> </td> </tr> <tr><center> <td valign="top" width="81" colspan="3" align="center"><iframe height="327" src="https://r.office.microsoft.com/r/rlidPowerPointEmbed?p1=1&amp;p2=1&amp;p3=SDDF930EE6F91132FD!1308&amp;p4=&amp;ak=!AO1Dm-rT_vUnzhc&amp;kip=1" frameborder="0" width="402" scrolling="no" align="center"></iframe></td> </center></tr> </tbody></table> <div align="center"></div> </div> <p> </p> <p>On a side note, the next issue of <a href="http://code-magazine.com" target="_blank">CODE Magazine</a> (Sept/Oct 2012) will include a complete, step by step walkthrough of everything you saw in the demo so if you are interested, please check it out and let me know what you think!</p> <p>Thanks again for attending my talk and please share any comments/feedback questions by commenting below.</p><img src="http://rickgaribay.net/aggbug/342.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/08/14/the-goods-websockets-programming-in-.net-4.5-and-windows-azure.aspx Wed, 15 Aug 2012 02:52:26 GMT http://rickgaribay.net/archive/2012/08/14/the-goods-websockets-programming-in-.net-4.5-and-windows-azure.aspx#feedback http://rickgaribay.net/comments/commentRss/342.aspx http://rickgaribay.net/services/trackbacks/342.aspx Building Speedy Azure Applications with HTML5 and Web Sockets Today http://rickgaribay.net/archive/2012/03/29/building-speedy-azure-applications-with-html5-and-web-sockets-today.aspx <p>I had the pleasure of presenting at Spring DevConnections today in Las Vegas and as promised, below are the samples for each of my demos.</p> <p>To recap. WebSocket brings full-duplex, bi-directional TCP sockets to web, desktop and mobile applications, introducing an alternative to XHR and long-polling, particularly when latency is a primary focus. What makes WebSocket so significant to developers in addition to providing a direct, socket-based connection is that it is standardized by both the IETF Hybi working group and W3C which has brought wide industry support across both browser vendors implementing the client support and platform vendors providing support for building WebSocket servers. </p> <p><a href="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image.png"><img style="background-image: none; border-right-width: 0px; margin: 2px 8px 2px 2px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="left" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_thumb.png" width="244" height="133" /></a>Microsoft has been an early champion of the WebSocket protocol, sharing some early investments via HTML5 <a href="http://html5labs.interoperabilitybridges.com/" target="_blank">Interoperability Labs</a> website and maintaining that investment with support for the WebSocket protocol announced at //Build 11 which introduced WebSocket support to Windows 8, Windows Server 8. .NET 4.5 and IE 10 Developer Preview based on the hybi-10 specification.</p> <p><a href="https://www.windowsazure.com/nodejs" target="_blank"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_3.png" width="244" height="110" /></a>With the release of .NET 4.5 Beta 1, all of the above have been updated to RFC 6455, which is the latest specification and expected to be final. </p> <p>Along with broad native support for WebSockets in modern browsers like Chrome, IE 10, Safari and FireFox, the standardization dust has settled making this the right time to jump in.</p> <p>In my talk, we took a lap around the WebSocket support in .NET 4.5, highlighting the APIs that Microsoft has made available in the Microsoft.WebSocket namespace that ships <a href="http://nuget.org/packages/Microsoft.WebSockets" target="_blank">as a package on NuGet</a>. While you can go as deep as you want in the new System.Net.WebSockets namespace that forms the core of Microsoft’s investment in the protocol, the Microsoft.WebSocket package provides higher level abstractions for developing WebSocket solutions today with WCF using WebSocketService and ASP.NET using WebSocketHandler.</p> <p>Since .NET 4.5 and Window 8/Server 8 have not yet been released, it is currently not possible to deploy your .NET 4.5 applications to Windows Azure. That said, while Windows Azure will certainly be updated to support these key technologies following RTM, Azure supports a variety of non-Microsoft programming languages and platforms including Node.js. </p> <p>Demonstrating the latest <a href="https://www.windowsazure.com/nodejs" target="_blank">Azure SDK for Node.js</a>, we got a fully RFC 6455 complain WebSocket service up and running on Windows Azure in a worker role running Node.js and using the WebSocket.IO module to integrate with Twitter’s Streaming API which provides a one-way firehose for tapping into Twitter’s event stream which proved to be a great example of using these capabilities together while having a little fun with HTML 5 JQuery and CSS 3.</p> <div align="center"> <table border="1" cellspacing="0" cellpadding="2" width="1366"><tbody> <tr> <td valign="top" width="81"> <p align="center"><strong>Demo</strong></p> </td> <td valign="top" width="562"> <p align="center"><strong>Summary</strong></p> </td> <td valign="top" width="472"> <p align="center"><strong>Artifacts</strong></p> </td> <td valign="top" width="249"> </td> </tr> <tr> <td valign="top" width="81">Demo 1</td> <td valign="top" width="562"> <p align="left">Live chat sample of Silverlight-based client and WCF Service running on Windows Azure. <br /> <br />Please note that this implementation is deprecated and will not be carried forward. <br /> <br />Instead, please use .NET 4.5 WebSocket support in WCF and ASP.NET. <br /></p> </td> <td valign="top" width="472"> <p align="left"> </p> <p align="left"> </p> <p align="left"> </p> <p align="left"><a title="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html" href="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html">http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html</a></p> </td> <td valign="top" width="249"> <p align="left"><a href="http://html5labs.cloudapp.net/WebSockets/ChatDemo/wsdemo.html"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_4.png" width="244" height="203" /></a></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 2</p> </td> <td valign="top" width="562"> <p align="left">Simple “Hello World” example of ASP.NET ASHX handler using WebSocketHandler and HTML 5 client demonstrating a trivial “echo” service that displays the date/time each second. <br /> <br />Also included in the Demo 2 folder is a WCF version of the same implementation (which I did not demo during my talk). <br /></p> </td> <td valign="top" width="472"> <p align="center"> </p> <p align="center"><a title="http://sdrv.ms/HofK53" href="http://sdrv.ms/HofK53">http://sdrv.ms/HofK53</a> </p> <p align="center"> <br />Projects: <br />SimpleEventingSample <br />SimpleEventingService <br /> <br />Requires Visual Studio 11 Beta 1 &amp; Windows 8/Windows 8 Server</p> </td> <td valign="top" width="249"> <p align="left"><a href="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_5.png"><img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_thumb_3.png" width="244" height="190" /></a></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 3</p> </td> <td valign="top" width="562"> <p align="left">Example of using the Twitter Search API as an event stream with WCF using  WebSocketService, Linq to Twitter and HTML 5 with some nice JQuery and CSS animation. <br /></p> </td> <td valign="top" width="472"> <p align="center"><a title="http://sdrv.ms/HofK53" href="http://sdrv.ms/HofK53">http://sdrv.ms/HofK53</a> <br /> <br />Projects: <br />StatusStreamClient <br />StatusStreamService <br />StatusStreamServiceTests <br /> <br /></p> <p align="center">Requires Visual Studio 11 Beta 1 &amp; Windows 8/Windows 8 Server</p> </td> <td valign="top" width="249"> <p align="left"><a href="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_6.png"><img style="border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_thumb_4.png" width="244" height="113" /></a></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Demo 4</p> </td> <td valign="top" width="562"> <p align="left">Another event streaming example, this time using the Twitter Streaming API, Node.js and WebSocket.IO in Windows Azure and HTML 5 animations with CSS 3 box shadow and rotate. <br /> <br />As opposed to the Twitter Search API used in Demo 3, you can see that events are immediately captured and the Streaming API is much more reliable than the Search API. <br /></p> </td> <td valign="top" width="472"> <p align="center"> </p> <p align="center"> </p> <p align="center"><a title="http://sdrv.ms/H1DVru" href="http://sdrv.ms/H1DVru">http://sdrv.ms/H1DVru</a></p> <p align="center"> <br />Use any text editor or your favorite JavaScript IDE. <br /></p> </td> <td valign="top" width="249"> <p align="left"><a href="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_7.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_thumb_5.png" width="244" height="183" /></a></p> </td> </tr> <tr> <td valign="top" width="81"> <p align="left">Deck</p> </td> <td valign="top" width="562"> <p align="left"></p> </td> <td valign="top" width="472"><a title="http://sdrv.ms/Hf5oZB" href="http://sdrv.ms/Hf5oZB"> <br /> <br /> <br />http://sdrv.ms/Hf5oZB</a></td> <td valign="top" width="249"><iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 204px; padding-right: 0px; height: 118px; padding-top: 0px" title="Preview" height="120" marginheight="0" src="https://skydrive.live.com/embed?cid=DF930EE6F91132FD&amp;resid=DF930EE6F91132FD%21751&amp;authkey=ALQ9gS4_Yvb89c0" frameborder="0" width="98" marginwidth="0" scrolling="no"></iframe></td> </tr> </tbody></table> </div> <div align="center"> </div> <p>Please feel free to play with any of the samples, extend them and make them your own.</p> <p>Please remember that demos 2 and 3 require .NET 4.5 Consumer Preview and either Windows 8 or <a href="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_8.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://rickgaribay.net/Images/customcontent/c1f79a9417a5_B3EF/image_thumb_6.png" width="644" height="356" /></a>Windows 8 server.</p> <p>Since the Microsoft.WebSockets NuGet package is the easiest way to get started with WebSocketHandler and WebSocketService, I’d recommend starting with Demo 2 and Demo 3. </p> <p>For demo 4, you will need an Azure account which you can sign up for free (really, free) at <a href="http://azure.com">http://azure.com</a> </p> <p>As we discussed during my talk, even though .NET 4.5 and Windows 8 are not yet RTM:</p> <p>•Now is the time to dive into WebSockets in .NET 4.5!</p> <p>•Consider how WebSockets can improve existing near real-time messaging scenarios.</p> <p>•Start building WebSocket apps on Windows 8 and Windows Server 8 today.</p> <p>•.NET 4.5 support in Windows Azure is coming soon. In the meantime, consider alternate frameworks like Node.js which is supported today!</p> <p>Last but not least, here are the resources I provided on my last slide for easy access:</p> <p>•Microsoft.Web.WebSockets NuGet Package: <a href="http://nuget.org/packages/Microsoft.WebSockets">http://nuget.org/packages/Microsoft.WebSockets</a></p> <p>•Paul Batum’s blog: <a href="http://www.paulbatum.com/2011/09/getting-started-with-websockets-in.html">http://www.paulbatum.com/2011/09/getting-started-with-websockets-in.html</a></p> <p>•Damir Dobric’s blog on WCF WebSockets: <a href="http://developers.de/blogs/damir_dobric/archive/2011/11/26/wcf-duplex-via-websocket.aspx">http://developers.de/blogs/damir_dobric/archive/2011/11/26/wcf-duplex-via-websocket.aspx</a></p> <p>•ASP.NET Documentation: </p> <p>●<a href="http://msdn.microsoft.com/en-us/library/system.web.websockets(v=vs.110).aspx">http://msdn.microsoft.com/en-us/library/system.web.websockets%28v=vs.110%29.aspx</a></p> <p>●<a href="http://msdn.microsoft.com/en-us/library/system.net.websockets(v=vs.110).aspx">http://msdn.microsoft.com/en-us/library/system.net.websockets%28v=vs.110%29.aspx</a></p> <p>•WebSocket.IO: <a href="https://github.com/learnboost/websocket.io">https://github.com/learnboost/websocket.io</a></p> <p>•Nice CSS &amp; JQuery scripts/samples: <a href="http://marcofolio.net">http://marcofolio.net</a></p> <p>Last but not least, I’d like to thank <a href="http://twitter.com/paulbatum" target="_blank">@paulbatum</a>, PM at Microsoft working on the WCF and ASP.NET  WebSocket features for helping me grok WebSockets in .NET 4.5. His guidance and thought leadership around WebSocket are invaluable to the community, so if you run into Paul, thank him or better yet, buy him a beer.</p> <p>Happy Messaging!</p><img src="http://rickgaribay.net/aggbug/337.aspx" width="1" height="1" /> Rick G. Garibay http://rickgaribay.net/archive/2012/03/29/building-speedy-azure-applications-with-html5-and-web-sockets-today.aspx Thu, 29 Mar 2012 07:15:00 GMT http://rickgaribay.net/archive/2012/03/29/building-speedy-azure-applications-with-html5-and-web-sockets-today.aspx#feedback http://rickgaribay.net/comments/commentRss/337.aspx http://rickgaribay.net/services/trackbacks/337.aspx