<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Gareth Gauci's Blog</title><link>http://onthecloud.azurewebsites.net:80/</link><description>Gareth Gauci's Blog</description><item><title>Azure Resource Naming Convention</title><link>http://onthecloud.azurewebsites.net:80/azure-resource-naming-convention-2</link><description>&lt;p&gt;All Azure users, especially after the Classic-to-ARM switchover, have noticed this... There are a lot of different resource types, even for a simple deployment. Naming them becomes critical to find the appropriate resource, especially in an emergency. To make matters worse, there are a lot of similar resource types which, if you're not careful, you may end up naming the same. Need a couple of new Virtual Machines? You have to name the availability group, storage accounts, load balancer, resouce group and more.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here is a summary of my recommendations for naming the most common types of resources (based on Microsoft guidelines).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Overall&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Feel free to use suffixes or prefixes to describe the resource type within the name. Back in the old days of programming, we used to name variables with a prefix denoting the type. This was to make it absolutely clear how a variable was defined (usually in a different file) so that the code is more maintainable. With recent IDEs, this isn't needed any longer and the convention was dropped to favour shorter more readable code. In Azure, prefixes help because sorting a list of resources by name automatically groups resources by type, but sometimes (ex. storage accounts for VM disks) the first letter is used for something else. Therefore, suffixes are fine. For example, use rg for resource groups or sqldb for SQL Databases. Also, you may want to come up with two service names: one being the full name and one is a short equivalent. At times, you will have space to write the whole awesome-product-name-that-is-very-awesome and sometimes you just want to refer to it via the short name. Otherwise, just choose a short one.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Subscriptions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I suggest creating a subscription to keep logical boundaries between different resources. It's ultimately up to you to decide if to create a new subscription or use an existing one, but the main decision factor usually boils down to billing. Need absolute isolation between resources? Then you need a new subscription. Even if they are for the same company or product, if you keep separate budgets for production and development, you probably need a new subscription. Subscriptions are free so make use of them. There is a limit on the maximum number of subscriptions, but it's usually high enough not to be a problem. Besides, usually it is quite straightforward to move a resource from one subscription to another after the fact, either from the portal/powershell or through azure support. You do have an Azure support subscription, right?&lt;/p&gt;
&lt;p&gt;Clear naming for your subscription is important. I suggest including the following things: Company Name, Product or service and environment (prod/stg/test/dev)&lt;/p&gt;
&lt;p&gt;ex: MarbleHouse MarbleOrdersSite Prod&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Resource Group&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The aim or resources groups is to group multiple resource types together. Usually, we call this a deployment. Any resource being used for the same end objective, we should group it under the same resource group. Keep the name short and sweet (but recognisable) and put all related resources together.&lt;/p&gt;
&lt;p&gt;ex: ordersite-prod-rg&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Availability Set&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Make sure you include the short name of the service and the role, especially in a layered infrastructure.&lt;/p&gt;
&lt;p&gt;ex: ordersite-frontend-as, order-site-sql-as&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Virtual Machine&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I suggest putting the short name of the service as well as the role. Use VMx when you have multiple VMs with the same role.&lt;/p&gt;
&lt;p&gt;ex: ordersite-frontend-vm1, ordersite-frontend-vm2&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;App Service (Web App/Function/Bot)&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is tricky because it needs to be unique across of Azure. I suggest have a company prefix (to make it rather unique) and add the app name. You may also want to add the type of app service it is (function, app or bot etc.). Remember that app services can also have slots.&lt;/p&gt;
&lt;p&gt;ex: marbles-ordersite-app&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Storage Account for Blobs/Tables/Files/Queues&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Again, this one needs to be unique across of Azure. Adding a company prefix helps make it unique. Some people prefer to use GUIDs for storage account names, especially those created programmatically though that is definitely not readable.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Storage Account for VM Disks&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Similarly for storage accounts for blobs/tables/files/queues, this needs to be unique. However, if you're using storage accounts to support your VM availability group, I suggest creating a storage account per VM to avoid 1) having a performance bottleneck your VM set and 2) if the storage account goes down, the effect should be limited to one VM only. Microsoft also suggests to have a different first character for each storage account to ensure that each account is created in a different Azure storage 'stamp'. A 'stamp' is a collection of storage accounts with the same hardware dependencies. Therefore, I suggest a naming convention whereby the first letter is the VM's index number.&lt;/p&gt;
&lt;p&gt;ex: 1marbles-vm-sa, 2marbles-vm-sa&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Storage Table&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Annoyingly, table names have a lot of restrictions, including not supporting the hiphen character, and are lower case only. Luckily they don't need to be globally unique (just unique for your storage account). Therefore keep them short and readable.&lt;/p&gt;
&lt;p&gt;ex. marblesservicelogs&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;VNet&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is one of those resources that if you get wrong, is difficult to correct. Changing VNet details once your VMs are deployed is annoying and sometimes requires you to recreate the VMs themselves. Make sure you include the service name, but keep in mind that eventually, you may want to connect different VMs/services to the same VNet. Remember to name your subnets too (but these should be simple).&lt;/p&gt;
&lt;p&gt;ex. marbles-vnet&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If you need to save additional information, each resource can have a maximum of 15 tags. Each tag name is limited to 512 characters and each value can have up to 256 characters. Perfect for scripting. Use them wisely.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You can use any convention that makes sense to you but it also makes sense to see what's out there, especially if you're starting anew. Whatever the case, before you start any project, create your own policy (WRITE IT DOWN) and stick to it. Changing policy usually means that you need to go through the services and rename them (when possible), so starting with a good policy makes absolute sense. Be consistent!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here's Microsoft's Best Practices: Naming Conventions:&amp;nbsp;&lt;a href="https://docs.microsoft.com/en-us/azure/architecture/best-practices/naming-conventions" title="https://docs.microsoft.com/en-us/azure/architecture/best-practices/naming-conventions" target="_blank"&gt;https://docs.microsoft.com/en-us/azure/architecture/best-practices/naming-conventions&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 27 Nov 2017 09:17:30 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/azure-resource-naming-convention-2</guid></item><item><title>The Global Azure Bootcamp 2015 - Malta!</title><link>http://onthecloud.azurewebsites.net:80/the-global-azure-bootcamp-2015---malta</link><description>&lt;p&gt;Malta is on the map once again for the Global Azure Bootcamp, a one-day deep-dive training into the Microsoft Azure cloud.&lt;/p&gt;
&lt;div style="text-align: center;"&gt;&lt;img src="http://global.azurebootcamp.net/wp-content/uploads/2014/11/2015-logo-250x169.png" alt="" width="250" height="169" /&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;From my last count, there will be 184 locations in total participating in this event around the world, from Hawaii to Japan! (Malta is bang in the middle!) And as usual, I'm again at it!&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Locations.PNG" alt="" width="915" height="497" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The bootcamp will be on April 25th 2015 (hey that's tomorrow! I suck with keeping my blog updated!) and will be held at the Microsoft Innovation Centre at Skyparks, Luqa (just right near the airport).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here's the agenda for the day:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="width: 150px;"&gt;8.30-9&lt;/td&gt;
&lt;td&gt;Welcome Coffee&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9-10&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Building Scalable Apps on Azure&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10-11&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Global Azure Bootcamp Hands-on Lab&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11-11.15&lt;/td&gt;
&lt;td&gt;Coffee break&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11.15-12.45&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Azure SQL Databases and Saas Multi-Tenant Database Design&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12-45-13&lt;/td&gt;
&lt;td&gt;Coffee &amp;amp; Snacks&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13-14.30&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Resource Management &amp;amp; Application Insights&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14.30-14.45&lt;/td&gt;
&lt;td&gt;(Yet another) Coffee break&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14.45-16&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;What you can do with Azure Media Services&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Remember, get the following with you:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A laptop (and charger!) capable of Windows 7/8/10&lt;/li&gt;
&lt;li&gt;Visual Studio 2012/2013/2015 (any edition)&lt;/li&gt;
&lt;li&gt;Latest Azure SDK installed (&lt;a href="http://azure.microsoft.com/en-us/downloads/" target="_blank"&gt;http://azure.microsoft.com/en-us/downloads/&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;An active Azure subscription (&lt;a href="http://azure.microsoft.com/en-us/pricing/member-offers/msdn-benefits/" target="_blank"&gt;MSDN &lt;/a&gt;or &lt;a href="http://azure.microsoft.com/en-us/pricing/free-trial/" target="_blank"&gt;1 month trial account&lt;/a&gt; is fine, but prepare them before coming!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;The event is free of charge (sponsored by Microsoft). You can book your place here: &lt;a href="https://azurebootcampmalta.eventbrite.com" target="_blank"&gt;https://azurebootcampmalta.eventbrite.com&lt;/a&gt;&lt;br /&gt; &lt;br /&gt; See you there!&lt;/p&gt;</description><pubDate>Fri, 24 Apr 2015 07:16:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/the-global-azure-bootcamp-2015---malta</guid></item><item><title>SEO Tip: How to block the *.azurewebsites.net domain</title><link>http://onthecloud.azurewebsites.net:80/seo-tip-how-to-block-the-.azurewebsites.net-domain</link><description>&lt;p&gt;Are you using Azure Websites to host your sites? Great! Then you know that whenever you deploy a website on Azure websites, you get the mysite.azurewebsites.net URL.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The sub domain is great for you to test your application, but most probably you have your own domain that is mapped to the site. However, the azurewebsites.net domain is still there and still works! Do you know that this can be a problem?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;One of the rules in the SEO bible says that each page should only have one URL. Your site now has two urls for all pages. Google and Bing will eventually find the azure URL, and may penalise your site for that! Try it now: Go to your favourite search engine and write your azurewebsites.net URL. It's probably there in the list.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I've got some bad news. Unfortunately, you cannot remove the azurewebsites.net domain. That's perhaps for the best. However, there's a workaround. What we want to do is make sure that any search engine (or user!) that accesses the site using the azurewebsites.net URL gets redirected to the main URL. That way, even if the url was accessed by mistake, the client is automatically forwarded to the right place. Making the redirect a permanent redirect will ensure that browsers would cache it and search engines will not index the wrong URL.&lt;/p&gt;
&lt;p&gt;Since Azure Websites works with IIS (what? you thought it was using Apache?), we can use the URL Rewrite module. There is nothing to install as Azure Websites have that module enabled by default. All you need to do is create a rule in the site's web.config for this. This works both for .NET of PHP (wordpress included).&lt;/p&gt;
&lt;p&gt;This is the magic configuration:&lt;/p&gt;
&lt;pre&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;configuration&amp;gt;
  &amp;lt;system.webServer&amp;gt;
    &amp;lt;rewrite&amp;gt;
      &amp;lt;rules&amp;gt;
        &amp;lt;rule name="Disable Azure Domain" patternSyntax="Wildcard" stopProcessing="true"&amp;gt;
          &amp;lt;match url="*" /&amp;gt;
          &amp;lt;conditions logicalGrouping="MatchAll" trackAllCaptures="false"&amp;gt;
            &amp;lt;add input="{HTTP_HOST}" pattern="*.azurewebsites.net" /&amp;gt;
          &amp;lt;/conditions&amp;gt;
          &amp;lt;action type="Redirect" url="http://www.mysite.com{REQUEST_URI}" redirectType="Permanent" /&amp;gt;
        &amp;lt;/rule&amp;gt;
      &amp;lt;/rules&amp;gt;
    &amp;lt;/rewrite&amp;gt;
    ...
  &amp;lt;/system.webServer&amp;gt;
&amp;lt;/configuration&amp;gt;
&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Try it out!&lt;/p&gt;</description><pubDate>Thu, 12 Mar 2015 15:14:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/seo-tip-how-to-block-the-.azurewebsites.net-domain</guid></item><item><title>Free eBook: Microsoft Azure Essentials - Fundamentals of Azure</title><link>http://onthecloud.azurewebsites.net:80/free-ebook-microsoft-azure-essentials---fundamentals-of-azure</link><description>&lt;p&gt;A great book on the fundamentals of Azure. If you're new to Azure, this is a great start. Get it now!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p style="margin-top: 12px; color: #333333; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-size: 14px; line-height: 21px;"&gt;The topics explored in this book include:&lt;/p&gt;
&lt;ul style="color: #333333; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-size: 14px; line-height: 21px;"&gt;
&lt;li&gt;&lt;strong&gt;Getting started with Azure:&amp;nbsp;&lt;/strong&gt;Understand what cloud computing is, visit the management portals, and learn about billing.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Websites and Cloud Services:&lt;/strong&gt;&amp;nbsp;Learn about Azure Websites, from deployment to monitoring, and gain an understanding of the web and worker roles used in Azure Cloud Services.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Virtual Machines:&lt;/strong&gt;&amp;nbsp;Explore the basic features of Azure Virtual Machines, including how to create, configure, and manage them.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Storage:&lt;/strong&gt;&amp;nbsp;Read about the basics of Azure Storage, including blobs, tables, queues, and file shares.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Virtual Networks:&amp;nbsp;&lt;/strong&gt;Learn the basics of virtual networks, including how to create one, and why a virtual network might be necessary. This also covers site-to-site and point-to-site networking, as well as ExpressRoute.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Databases:&lt;/strong&gt;&amp;nbsp;Explore two relational database options available in Azure: Azure SQL Database and SQL Server in Azure Virtual Machines.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Azure Active Directory:&lt;/strong&gt;&amp;nbsp;Explore basic features of Azure AD, including creating a directory, users and groups, and using the application gallery.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Management Tools:&lt;/strong&gt;&amp;nbsp;Explore three common tools for working with Azure: Visual Studio 2013 and the Azure SDK, Azure PowerShell cmdlets, and the Cross-Platform Command-Line Interface&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Business Scenarios:&lt;/strong&gt;&amp;nbsp;Explore four common scenarios for utilizing Azure features: development and test, hybrid, application and infrastructure modernization, and Azure Mobile Services.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Get the eBook here:&amp;nbsp;&lt;a href="http://blogs.msdn.com/b/microsoft_press/archive/2015/02/03/free-ebook-microsoft-azure-essentials-fundamentals-of-azure.aspx" target="_blank"&gt;http://blogs.msdn.com/b/microsoft_press/archive/2015/02/03/free-ebook-microsoft-azure-essentials-fundamentals-of-azure.aspx&lt;/a&gt;&lt;/p&gt;</description><pubDate>Thu, 19 Feb 2015 08:46:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/free-ebook-microsoft-azure-essentials---fundamentals-of-azure</guid></item><item><title>When Azure broke down...</title><link>http://onthecloud.azurewebsites.net:80/when-azure-broke-down</link><description>&lt;p&gt;... the world shook in terror on the 19th November 2014.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;That means two things: firstly, the importance of a public cloud platform such as Azure.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/not%20all%20good.PNG" alt="" width="637" height="482" /&gt;&lt;/p&gt;
&lt;p&gt;When such a huge thing gets a hiccup, a lot of people stress out. And they should. A lot of businesses nowadays depend on public cloud services (be it AWS or Azure), and each business trusts the availability of their service to these skilled engineers. It's true, Microsoft (or Amazon) do not own your availability promises. (&lt;a href="http://www.whoownsmyavailability.com" target="_blank"&gt;You can check yours here&lt;/a&gt;) But due to financial or practical constraints, it makes sense to 'offload' this responsibility onto someone who should be able to manage it well. This is relationship is based on trust. Trust that the system is managed, operated and governed well.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Outages are not only Microsoft's domain. We all know that Amazon AWS had some really bad couple of years in 2012/2013, affecting multiple high profile sites such as AirBnB, Instagram, Vine, Flipboard and others. Public cloud platforms are complicated beasts, and until we figure out how to build them properly, outages must be expected. However, Azure seems to always get that bad outage at least annually. Why?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Which brings me to the second thing: Maturity. Amazon's AWS is Azure's grandpa. There may not be any shared DNA, but they are both trying to be the same thing; Amazon AWS was just born earlier. But this also means that Azure wants to grow up fast. Microsoft is taking bold steps to try to reach Amazon so much so that (just like an adolescent would do), it might be doing things too quickly for its own good.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Microsoft! Slow down! Good things come to those who be patient. I'm always impressed by the sheer rate of announcements of new features coming to us. &lt;a href="http://azure.microsoft.com/en-us/updates" target="_blank"&gt;Check this blog out &lt;/a&gt;and you'll know what I mean. We get at least one big new service with five to ten medium feature additions quarterly, with tons of smaller changes monthly. AT LEAST!&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;"That's great!" you might say. Yes, but maturity insists that platform stability and feature depth (as opposed to shallowness) comes before. We're now starting to see non-beta features being deprecated, or completely removed (shared cache, SQL Azure web/business plans, bla bla bla), even though they're barely 3 years old. Targeting such a dynamic platform means that you start to doubt whether you'd need to re-engineer your apps in a couple of months/years just to keep up. We have enough headaches with keeping up with Azure SDK library versions already. What will happen to Azure Storage Tables now that DocumentDB (which I think is very cool) is here? They may not stop the service, but I'm not sure they will continue building on it. Same thing with cloud services vis-a-vis Web Sites. We havn't had a feature announcement for web/worker roles for ages now while Web Sites' feature-set seem to grow by the minute.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;What Microsoft needs is the maturity to slow down. Platform stability (especially for core services such as Azure Storage) come before features. The way status updates were handled during the downtime can definitely be improved. No, not 'everything is running great'. Every engineer knows that whenever a change is introduced, it creates risk (even if you tested it a million times). There's always those few lines of code that created the infinite loop that did not come up in testing. You need to minimise the amount of changes done, and that could mean to slow down. Worse than that, you've applied the change to all regions at one go instead of rolling it out slowly. Microsoft engineers insist that for a truly highly available app, you need to deploy in different datacenters, expensive and complicated as it is. Those who followed that advice are poorer and definitely angry after yesterday.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/not%20all%20good2.PNG" alt="" width="836" height="350" /&gt;&lt;/p&gt;
&lt;p&gt;If your availability graph for the day looks like this, you definitely have a problem. This is the behaviour of an adolescent, and to be able to grow, you need the maturity and respect for the trust your clients are giving you. Remember that trust must be gained and not given. I still strongly believe that Azure is one of the best public cloud platforms available (if not THE best), but I'm looking forward for the time when it's all grown-up!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://azure.microsoft.com/blog/2014/11/19/update-on-azure-storage-service-interruption" target="_blank"&gt;For the curious ones that want to know what happened, click here.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Rant over. Now let's get back to work.&lt;/p&gt;</description><pubDate>Thu, 20 Nov 2014 15:12:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/when-azure-broke-down</guid></item><item><title>How to protect against POODLE attacks!</title><link>http://onthecloud.azurewebsites.net:80/how-to-protect-against-poodle-attacks</link><description>&lt;p&gt;Maybe you've heard about HEARTBLEED or SHELLSHOCK. POODLE is the next one.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Anyone using Windows Server and IIS was lucky enough to avoid both HEARTBLEED (openssl library vulnerability - CVE-2014-0160) and SHELLSHOCK (unix bash shell vulnerability - CVE-2014-6271). However, POODLE hits everyone.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What is POODLE?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;POODLE, spelled in caps to distinguish from our furry canine friends, stands for "Padding Oracle On Downgraded Legacy Encryption". It is a type of man-in-the-middle exploit whereby an attacker can force a client connection to fallback to a vulnerable version of the HTTPS protocol, SSL v3.0. This particular type of attack is different from both HEARTBLEED and SHELLSHOCK in the sense that it is not caused by a bug in implementation, but it is a flaw in the protocol design. That means that it is unpatchable. Any type of patch would break compatibility with standard SSL v3.0 clients.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How do I protect myself against POODLE attacks?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Luckily, the vulnerable SSL v3.0 protocol has been around for ages and is now superceded by better, more robust protocols. The best way to protect your applications would be to disable vulnerable protocols, and using TLS (ideally v1.2) instead. Unless your clients are different, it is safe to disable these old protocols as most clients already support TLS. According to &lt;a href="https://jve.linuxwall.info/blog/index.php?post/TLS_Survey" target="_blank"&gt;this study&lt;/a&gt;, 98.7% of clients already support TLS.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Am I vulnerable?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is your first step: checking. Even if you fix it, you need to verify it, so having a reliable checking mechanism is imperative. I recommend POODLE Scan Testing tool - &lt;a href="https://www.poodlescan.com" target="_blank"&gt;https://www.poodlescan.com&lt;/a&gt;. Drop your URL in the textbox and go. Obviously, if your app is not on HTTPS, it is not vulnerable to this particular type of attack.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture1.PNG" alt="" width="877" height="227" /&gt;&lt;/p&gt;
&lt;p&gt;If your application is private (not accessible from a public site), you can use openssl (get it from &lt;a href="https://www.openssl.org/related/binaries.html" target="_blank"&gt;here&lt;/a&gt;) to attempt to connect to your service using SSL v3, like so:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;pre&gt;openssl s_client -connect www.myserver.com:443 -ssl3&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If SSL v3 is disabled, you will get the following error (ssl handshake failure).&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture3.PNG" alt="" width="654" height="403" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How to disable old versions of SSL?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Once you know that SSL v2 or v3 are enabled on your server, you need to disable them. Unfortunately, there is no in-built way how to disable SSL protocols in IIS. You need to do this the old-fashioned way, through the registry.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Create a new batch file (poodle.bat) and paste the following lines to the file:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;pre&gt;REG ADD "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\DES 56/56" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 40/128" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 56/128" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 128/128" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128" /v Enabled /t REG_DWORD /d 00000000 /f
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 64/128" /v Enabled /t REG_DWORD /d 00000000 /f&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Running the above batch file on the affected server will disable obsolete weak protocols, including SSL v3. You may need to restart the server to apply the changes. Once the server is up and running again, re-check using the &lt;a href="https://www.poodlescan.com" target="_blank"&gt;POODLE Scan Testing tool&lt;/a&gt;. Always remember to do this on your test/staging servers BEFORE applying it on your live servers!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You can also create the registry entries using powershell: &lt;a href="http://azure.microsoft.com/blog/2014/10/19/how-to-disable-ssl-3-0-in-azure-websites-roles-and-virtual-machines/" target="_blank"&gt;http://azure.microsoft.com/blog/2014/10/19/how-to-disable-ssl-3-0-in-azure-websites-roles-and-virtual-machines/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture2.PNG" alt="" width="867" height="215" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What about Azure Paas Cloud Services?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;To ensure all your Paas VMs are automatically protected, you will need to create a startup task to run the poodle.bat on every VM startup.&lt;/p&gt;
&lt;p&gt;To do this, just grab the poodle.bat file you created earlier and add it to your Cloud Project in Visual Studio as a resource. Once done, edit the &lt;strong&gt;ServiceDefinition.csdef&lt;/strong&gt; to add it as a startup task. Make sure you set the executionContext to 'elevated' for administrator access. Something like this:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;pre&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;ServiceDefinition name="myCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2014-06.2.4"&amp;gt;
&amp;nbsp; &amp;lt;WebRole name="MyWeb" vmsize="Small"&amp;gt;
&amp;nbsp; &amp;nbsp; ...
&amp;nbsp; &amp;nbsp; &amp;lt;Startup&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;Task commandLine="..\poodle.bat" executionContext="elevated" /&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;lt;/Startup&amp;gt;
&amp;nbsp; &amp;lt;/WebRole&amp;gt;
&amp;lt;/ServiceDefinition&amp;gt;&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What about Azure Web Sites?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Microsoft has promised to disable SSL v3 on all Azure Web Sites. Official quote from &lt;a href="http://azure.microsoft.com/blog/2014/10/19/how-to-disable-ssl-3-0-in-azure-websites-roles-and-virtual-machines/" target="_blank"&gt;http://azure.microsoft.com/blog/2014/10/19/how-to-disable-ssl-3-0-in-azure-websites-roles-and-virtual-machines/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;"Azure Websites will disable SSL 3.0 for all sites by default to protect our customers from the vulnerability mentioned before. We are rolling out the changes across our data-centers and monitoring traffic in the process. The changes will be rolling out through the week of Monday October 27th, 2014. Once this is complete, customers will no longer need to take any action to disable SSL 3.0 in Azure Websites and should have protection by default."&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Once all this is done, POODLE would have virtually killed off SSL v3. I'm positive that it's for the best!&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UPDATE 31st Oct 2014&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://venturebeat.com/2014/10/30/google-plans-to-disable-fallback-to-ssl-3-0-in-chrome-39-and-remove-ssl-3-0-completely-in-chrome-40/"&gt;Google plans to disable fallback to SSL 3.0 in Chrome 39, and remove SSL 3.0 completely in Chrome 40&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 29 Oct 2014 10:13:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/how-to-protect-against-poodle-attacks</guid></item><item><title>Quick Tip: How to output custom error messages on Azure Web Sites</title><link>http://onthecloud.azurewebsites.net:80/quick-tip-how-to-output-custom-error-messages-on-azure-web-sites</link><description>&lt;p&gt;You've published your latest masterpiece to Azure Web Sites. Great! How was it? Not bad!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Now, does your application output its own error messages (HTTP 500, 404 etc?) IIS will by default hide your errors with the message:&lt;/p&gt;
&lt;pre&gt;&lt;strong&gt;&lt;span style="font-family: 'Times New Roman'; font-size: medium; line-height: normal;"&gt;The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.&lt;/span&gt;&lt;/strong&gt;&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If you want to output your own custom output for non-200 statuses, you need to put this in your web.config:&lt;/p&gt;
&lt;pre&gt;&amp;nbsp; &amp;lt;system.webServer&amp;gt;
&amp;nbsp; &amp;nbsp; &amp;lt;httpErrors existingResponse="PassThrough" /&amp;gt;
...
&amp;nbsp; &amp;lt;/system.webServer&amp;gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt;That's it!&lt;/p&gt;</description><pubDate>Mon, 01 Sep 2014 15:33:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/quick-tip-how-to-output-custom-error-messages-on-azure-web-sites</guid></item><item><title>Azure icons in Visio</title><link>http://onthecloud.azurewebsites.net:80/azure-icons-in-visio</link><description>&lt;p&gt;Building any cloud apps lately? Great!&lt;/p&gt;
&lt;p&gt;Documenting them? Not so...&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Firstly, make sure you're using the best tools of the trade: Microsoft Visio. It's by far the easiest and most powerful tool for diagrams.&lt;/p&gt;
&lt;p&gt;Wanna add Azure-specific icons? Yeah, I know it's difficult to find them... But here's a secret: Visio supports SVG.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;What does that mean, you ask? Well, it seems that the current azure site uses SVG for the majority of icons. If you want to use a particular Azure icon, just find the icon from the site and import it into Visio. (PS: mind the copyright!)&lt;/p&gt;
&lt;p&gt;Here's the one that I found while browsing the Azure site: &lt;a href="/Media/Default/BlogPost/azure%20icons.zip" target="_blank"&gt;azure icons.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Remember, I never claimed I hold copyright on these icons! If you're the owner of these icons, and wouldn't like them to be here, let me know and I'll remove them!&lt;/p&gt;</description><pubDate>Wed, 25 Jun 2014 12:44:55 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/azure-icons-in-visio</guid></item><item><title>How to migrate legacy apps to Microsoft Azure (part 1)</title><link>http://onthecloud.azurewebsites.net:80/how-to-migrate-legacy-apps-to-microsoft-azure-part-1</link><description>&lt;p&gt;How to migrate legacy apps to Windows Azure&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I see a lot of interest by startups to start using Windows Azure to power their products. It's the perfect platform to start small and have room to scale quickly and easily. But the most important advantage that startups have, is not having to worry about legacy issues.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;A lot of companies would like to start using the cloud. By now, we know what the advantages are: scalability, resiliency, low management overhead, low service costs, etc. However, most companies out there are not lucky enough to have new products to launch regularly. Most companies already have a platform that they've invested years of development and tons of money (possibly literally!) in, and it's crazy to think that they need to start from scratch just to take the trip to the cloud. If you've got a brand new product to work on, great! Start thinking about the cloud from day 1! For the rest of you, I say you don't need a rewrite.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I know most developers think rewriting is always great, but there are pitfalls. You will be replacing code that's been tweaked year after year and been working error free with brand new (possibly) bug-laden code. You can test all you want, but the reality is that you can never compare your efforts with a 5-year period in the production environment. System rewrites are usually followed by a big bang launch, with the next few weeks (months?) serving only to fix, tweak and educate your clients. Unlike developers, users generally don't like to be surprised. They'd like you to ease changes bit by bit, and a rewrite would definitely be a shock.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Instead, you need to focus to refactor code incrementally. Make a plan and be specific. Think about which areas you'd like to target before others, and give priorities accordingly. Target areas individually and avoid starting from scratch when possible. If you use SCRUM, start introducing refactoring stories into the product backlog and get your product owner onboard. Reuse code that works and improve code that doesn't. Investigate and understand which areas are not tailored for the cloud and consider using short to medium term solutions as well. Even if you do not move to a fully automated Platform-as-a-service model, moving your service to a basic virtual machine can give significant advantages too!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Before you begin&lt;/p&gt;
&lt;p&gt;Some apps are more 'legacy' than others, but the main problems remain the same. Here are some guidelines to consider before moving your legacy app to the Windows Azure.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Know your application well&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You will not have a successful migration if you do not know the system well. Period. Explore how it works. Have a clear idea of the present architecture. Do not limit yourself to the running code but include the system as a whole, including backup processes, software versions and dependencies.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Know your licensing&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Well, people need to eat. Chances are, you respect that so whenever you need a piece of software, you will pay for a license. Check if the licenses are transferrable to a cloud environment. Be wary of licenses that are server specific in some way. Some licenses might be IP bound, or hardware bound (MAC address?), which sucks. Remember that you cannot transfer your current IP address to Windows Azure so you will have to use one of Microsoft's IPs.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Know your uptime requirements&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Do you need to have a disaster recovery site? Do you need high availability? If so, you need to realise that these cost money. You may need different editions of software (which SQL Server edition should you choose?) or will have a different topology. Remember that Windows Azure does not give an SLA with a single VM for both Infrastructure-as-a-service and Platform-as-a-service offerings. Do you need to move your application to a multi-instance environment? Make sure you incorporate these requirements into your plan.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Know your current costs&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you plan to move to Windows Azure, or any cloud for that matter, you need to know why you'd like to do it. If the move is related to cost, make sure you compare like-with-like. Remember that the cost of a single virtual machine in Windows Azure includes invisible costs such as electricity supply, cooling, standby engineers, automatic healing etc. Most on-premises environments will have a different cost distribution so be aware of the real cost. Even if the reason you are migrating to Windows Azure is another, knowing your costs well lets you plan better for the future.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Know your restrictions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Some projects are restricted artificially in some way. You might have clauses in your client's contract which limit services or data going outside of a specific region (Europe?) or country. Although Windows Azure has a range of datacenters around the world, there isn't one in every country. Some projects require certain infrastructure standards to be adhered to. Refer to the Windows Azure trust center http://www.windowsazure.com/en-us/support/trust-center/ for a list of certifications and standards that Windows Azure complies to (they recently added PCI DSS level 1, amongst others).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;In my next post, I will list some common issues that a lot of people starting up in Windows Azure encounter, and how to best solve them.&lt;/p&gt;</description><pubDate>Wed, 02 Apr 2014 09:02:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/how-to-migrate-legacy-apps-to-microsoft-azure-part-1</guid></item><item><title>How to put a robots.txt file in your Windows Azure Blob Storage domain</title><link>http://onthecloud.azurewebsites.net:80/how-to-put-a-robots.txt-file-in-your-windows-azure-blob-storage-domain</link><description>&lt;p&gt;Google or Bing is indexing your public blobs on Windows Azure Blob Storage? Here is how to stop it...&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The idea is to put a robots.txt file at the root of the Azure Blob Storage domain. ie: http(s)://myaccount.blob.core.windows.net/robots.txt&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Follow these steps:&lt;/p&gt;
&lt;p&gt;1. Create a new container in your storage account in question. Name it $root and allow public access to blobs. This is a special container that serves as a default container for the storage account. Any blobs in this container may be accessed without referencing the container name, and that's exactly what we need.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;2. Create the robots.txt file. Usually, it will just contain the following two lines:&lt;/p&gt;
&lt;pre&gt;User-agent: *
Disallow: /&lt;/pre&gt;
&lt;p&gt;The first line indicates all user agents, and the second line indicates to disallow all paths starting from the root (/).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;3. Upload the robots.txt file in the $root container created earlier.&lt;/p&gt;
&lt;p&gt;To do the above (create the container and upload the file), you can use a third-party blob storage tool (Ex. &lt;a href="http://www.cloudberrylab.com/free-microsoft-azure-explorer.aspx" target="_blank"&gt;CloudBerry Lab's WA Cloud Storage Explorer&lt;/a&gt;). You can also do this using Visual Studio 2012/2013, with the Azure SDK (v2.2+). If so, use the Server Explorer tab, navigate to the Windows Azure Storage Account/Blobs node. Right click on the node and create the $root container. Once done, right click on it and select properties where you can change the 'Public Read Access' to 'Blob'.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/robots1.png" alt="" width="447" height="74" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Then open the container (double click on it) and click on the arrow to upload a new blob. Upload the robots.txt file and you're done!&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/robots2.png" alt="" width="246" height="72" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Before indexing a site, search engines will access the robots.txt file at the root of the domain to check which files should be excluded. With our new robots.txt, the whole site is excluded and thus the search engine will not index it. Easy no?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;p&gt;Working with the Root Container:&amp;nbsp;&lt;a href="http://msdn.microsoft.com/library/azure/hh488356.aspx" target="_blank"&gt;http://msdn.microsoft.com/library/azure/hh488356.aspx&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 01 Apr 2014 15:26:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/how-to-put-a-robots.txt-file-in-your-windows-azure-blob-storage-domain</guid></item><item><title>The Global Windows Azure Bootcamp - In Malta!</title><link>http://onthecloud.azurewebsites.net:80/gwab-malta</link><description>&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;After last year's amazing success, the&amp;nbsp;&lt;a href="http://global.windowsazurebootcamp.com/" target="_blank"&gt;Global Windows Azure Bootcamp&lt;/a&gt;&amp;nbsp;is back in Malta, and Tech-Spark is hosting!&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;span style="line-height: 1.6em;"&gt;Those who made it last year know how this works:&amp;nbsp;&lt;/span&gt;&lt;strong style="line-height: 1.6em;"&gt;A full day of free in-depth training on Windows Azure, organised by local experts!&lt;/strong&gt;&lt;span style="line-height: 1.6em;"&gt;&amp;nbsp;This event is both for pros and newbies, starting from the basics of Windows Azure to mid-to-expert level material. You will get up-to-speed to start developing and deploying apps on Microsoft's killer cloud platform!&lt;/span&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;a href="https://www.facebook.com/media/set/?set=oa.10151429382661219&amp;amp;type=1" target="_blank"&gt;Browse GWAB Malta 2013 pics!&lt;/a&gt;&lt;br /&gt;&lt;a href="https://www.youtube.com/watch?v=wWjdO6Ogncg" target="_blank"&gt;Watch GWAB Malta 2013 video!&lt;/a&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Malta's event will be hosted at the Microsoft Innovation Centre at SkyParks and will be run by Jonathan Cassar (Tech-Spark founder), Edward Portelli (Microsoft Malta) and myself!&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;a href="http://gwabmalta2014.eventbrite.com" target="_blank"&gt;&lt;span style="line-height: 1.6em;"&gt;Register to the Global Windows Azure Bootcamp - Malta now!&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;strong style="line-height: 1.6em;"&gt;The Big Lab experiment&lt;/strong&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Last year, as you may know, we've had this silly global render lab where we rendered 724,059 3D ray traced image frames in about a 26 hour period. This turned into playful 3D videos spending almost eight years&amp;rsquo; worth of computing! Imagine how much research could be done with that amount of power? What if we use this computational power to study human disease?&lt;br /&gt;&lt;br /&gt;At our 2014 Global Windows Azure Boot Camp, we will join thousands of friends online by participating in our&amp;nbsp;&lt;a href="http://global.windowsazurebootcamp.com/charity/" target="_blank"&gt;Global Charity Event&lt;/a&gt;&amp;nbsp;and support cutting edge diabetes research! We will be deploying a package on your own Windows Azure test account to participate in this record breaking event!&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;strong&gt;The Prerequisites&lt;/strong&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;This is a workshop, so we expect you to get your own laptop! You will need:&lt;/p&gt;
&lt;ul style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; line-height: normal;"&gt;
&lt;li&gt;&lt;span style="line-height: 1.6em;"&gt;A computer which can run Visual Studio 2012 or 2013&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="line-height: 1.6em;"&gt;Visual Studio 2012 or 2013&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.windowsazure.com/en-us/downloads/" target="_blank"&gt;&lt;span style="line-height: 1.6em;"&gt;The Windows Azure SDK&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=8396" target="_blank"&gt;&lt;span style="line-height: 1.6em;"&gt;The Windows Azure Training Kit&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;You will need a Windows Azure subscription! There are several ways to get one:&lt;/p&gt;
&lt;ol style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; line-height: normal;"&gt;
&lt;li&gt;&lt;span style="line-height: 1.6em;"&gt;Start a FREE trial at&amp;nbsp;&lt;a href="http://www.windowsazure.com/pricing/free-trial/" target="_blank"&gt;http://www.windowsazure.com/pricing/free-trial/&lt;/a&gt;&amp;nbsp;(Note that this trial is only valid for one month and you should only register it when March 29th is less than a month away!)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="line-height: 1.6em;"&gt;Make use of the MSDN benefit! If you have MSDN, BizSpark or DreamSpark there are a number of options to choose from at&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/pricing/member-offers/msdn-benefits/" target="_blank"&gt;http://www.windowsazure.com/en-us/pricing/member-offers/msdn-benefits/&lt;/a&gt;. Bottom line? As long as you don't over-do it, Windows Azure is FREE!&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="line-height: 1.6em;"&gt;None of the above works? Go to&amp;nbsp;&lt;a href="http://www.windowsazure.com" target="_blank"&gt;http://www.windowsazure.com&lt;/a&gt;&amp;nbsp;and create a new subscription with a credit card linked to it.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Don't waste valuable time, set everything before hand!&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&lt;strong&gt;FAQs&lt;/strong&gt;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Q: I do not have a laptop available but I still want to attend! What can I do?&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;A: Since this will be a workshop, it is strongly recommended that you get a laptop (though we won't stop you from attending). Try to find out if a friend is coming and share a laptop. You may also ask on the Tech-Spark facebook group to see if anyone wants to share. Guaranteed way to make a friend! If you still can't get a laptop, let us know and we'll do our best to lend you one for the event.&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Q: I'd like to use my company's azure subscription. Possible?&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;A: You can use any subscription you'd like as long as the owner (who's paying!) gave you permission. Check with your boss; I'm sure s/he will encourage you to go ahead!&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Q: I would like to ask questions related to Windows Azure. Will there be a Q/A session?&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;A: It depends on time. Usually, the speakers will be available during break for any Azure-related questions you might have (and also just to say hello).&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;Q: I would like to contact one of the experts privately for Azure-related questions. How?&lt;/p&gt;
&lt;p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6em;"&gt;A: Come to the event. You can chat with us there. We can then organise a private follow-up.&lt;/p&gt;</description><pubDate>Wed, 05 Mar 2014 09:27:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/gwab-malta</guid></item><item><title>Coding for Charity &amp; MS Speaker</title><link>http://onthecloud.azurewebsites.net:80/coding-for-charity-ms-speaker</link><description>&lt;p&gt;"Aaah, how I miss my bed." That's the phrase that's currently coming to mind after a three-day hackaton for charity. Tech-Spark's Christmas hackaton was really fun. We met new people, made new friends, learnt stuff and team-bonded for over 42 hours. And the place (the Microsoft Innovation Center) was great too! I swear they painted the walls and ceiling with awesomesauce! Best of all, all proceeds go to charity!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What we did:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;- Brainstormed ideas&lt;/p&gt;
&lt;p&gt;- Had strong coffee&lt;/p&gt;
&lt;p&gt;- Discussed features&lt;/p&gt;
&lt;p&gt;- Fought with facebook API&lt;/p&gt;
&lt;p&gt;- Met new friends&lt;/p&gt;
&lt;p&gt;- Learnt Windows 8 Application development&lt;/p&gt;
&lt;p&gt;- JavaScripted (like crazy)&lt;/p&gt;
&lt;p&gt;- Sketched plans&lt;/p&gt;
&lt;p&gt;- Had more strong coffee&lt;/p&gt;
&lt;p&gt;- Tried Oculus Rift! \m/&lt;/p&gt;
&lt;p&gt;- Wrestled with Google Maps API&lt;/p&gt;
&lt;p&gt;- Played XBOX/Kinect on a huge TV (fun!)&lt;/p&gt;
&lt;p&gt;- Presented prototype &amp;amp; product vision&lt;/p&gt;
&lt;p&gt;- Had great time!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What we did not do:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;- Sleep enough&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://onthecloud.azurewebsites.net/Media/Default/BlogPost/1483438_709395625746751_1534692275_n%5B1%5D.png" alt="" width="433" height="420" /&gt;&lt;/p&gt;
&lt;p&gt;The proceeds will be presented to charity (L-Istrina) during the Christmas days. Any development team manager should always try to get his team to participate in such a thing as it's such a great team-building exercise! Maybe next year, huh?&lt;/p&gt;
&lt;p&gt;Photos here:&amp;nbsp;&lt;a href="https://www.facebook.com/media/set/?set=a.710824402270540.1073741832.561638557189126&amp;amp;type=1"&gt;https://www.facebook.com/media/set/?set=a.710824402270540.1073741832.561638557189126&amp;amp;type=1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Now back to my (full) work week! It starts with preparations for the &lt;strong&gt;Microsoft Innovation Day &lt;/strong&gt;on Tuesday, 10th December 2013, which I'll be speaking at (on Windows Azure of course!). Hopefully will see you there!&lt;/p&gt;</description><pubDate>Mon, 09 Dec 2013 10:31:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/coding-for-charity-ms-speaker</guid></item><item><title>Help wanted? Here it is!</title><link>http://onthecloud.azurewebsites.net:80/help-wanted-here-it-is</link><description>&lt;p&gt;Interested in experimenting with Windows Azure for a project? I'm interested in helping!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Don't get me wrong. Tackling the cloud alone is definitely dooable. You should go for it. Like, now! Did you know that Windows Azure charges &amp;euro;0.09 per GB of bandwidth to EU or US? That's like a bazillion times cheaper than anywhere else on the island. Storage? Put 100GB on the cloud and you'll pay somewhere around &amp;euro;5.22 per month (including triple-replicate backups). Is your current data center able to handle The slashdot effect? &lt;a href="http://www.urbandictionary.com/define.php?term=slashdot%20effect" target="_blank"&gt;It exists!&lt;/a&gt; It's pretty much the webmaster's dream scenario when millions of people visit the site. Unfortunately, it usually turns into a nightmare when the server can't cope with the load and goes down. Usually, the result would be that people would actually copy that uber-interesting article from your site and host it somewhere else, with the rare capability of hosting it during THAT week. Well, with the cloud, it usually can scale well to handle such scenarios.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Those who have already jumped into the cloud can tell you that it is a different place from on-prem setups. The technology might be similar, but looks can be deceiving! (Why are there so many &lt;a href="http://www.windowsazure.com/en-us/support/legal/sla/" target="_blank"&gt;different SLAs&lt;/a&gt;?) Well, the reality is that Windows Azure and most other cloud hosting platforms have had to adopt different rules to bring out the best advantages that the cloud can offer. Be it high availability, flexibility, scalability or, hell, the sheer affordability, all these have created a different world with slightly different, but important, changes in how we design and set up our infrastructure. It is like a living in a parallel universe. Everything looks exactly the same, but the ice cream tastes different.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Don't believe me? There is a huge section on MSDN and all across the web highlighting these differences. Here are two to start you off:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj717232.aspx%20" target="_blank"&gt;Best Practices for the Design of Large-Scale Services on Windows Azure Cloud Services&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/jj156146.aspx" target="_blank"&gt;Development Considerations for Windows Azure Cloud Services&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Some of the best practices sometimes actually go totally the other way from what is usual with on-prem. For instance, near-data concepts (where the assumption that the code is running very near your data source) starts to break apart when in the 'foggy' cloud. There are cases where 'chatty' database transactions will actually slow down your application. Ironically, ADO.net Datasets, although they might be frowned upon (they still are), were actually on the right track back in .NET 2.0. Iterating in SQL data readers can cripple your on-prem blistering fast application when deployed in the cloud. This may be something that was not visible before giving those important estimates to your boss.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Cloud computing is the next big thing, want it or not, and I predict that most of the Internet will be migrating to some form of private/public cloud within the next few years. The big ones have already moved (both pinterest and foursquare are on &lt;a href="http://aws.amazon.com/solutions/case-studies" target="_blank"&gt;Amazon Web Services AWS&lt;/a&gt; while Microsoft claims that 50% of fortune 500 already use &lt;a href="http://blogs.msdn.com/b/windowsazure/archive/2013/06/14/50-percent-of-fortune-500s-using-windows-azure.aspx" target="_blank"&gt;Windows Azure&lt;/a&gt;). If you'd like your company to remain profitable, this is the only road. Just make sure that you have the right vehicle for the journey.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Given my personal interest in the cloud, especially in Windows Azure, I'd like to get to know of Windows Azure projects, especially here in Malta. Got one? Great! Let me know. Share your problems and I'll share my experience. If you prefer having someone with bucket-loads of experience by your side while you flick the switch, I can help! I'm a Microsoft certified professional for Windows Azure (&lt;a href="http://www.microsoft.com/learning/en-us/exam.aspx?id=70-583" target="_blank"&gt;PRO: Designing &amp;amp; Developing Windows Azure Applications Exam 70-583&lt;/a&gt;), and I work with Windows Azure daily on both large and small projects. I have set up infrastructures with multiple load balanced VMs, and given sessions/workshops on how to use Windows Azure technologies. Chances are, I've already met that problem that's currently kicking your butt.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If you'd like to contact me, send me an email on admin[at]playreaction.com and we'll get chatting.&lt;/p&gt;</description><pubDate>Tue, 15 Oct 2013 18:10:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/help-wanted-here-it-is</guid></item><item><title>Which Azure datacenter should you choose?</title><link>http://onthecloud.azurewebsites.net:80/which-azure-datacenter-should-you-choose</link><description>&lt;p&gt;Big decision!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Well, it turns out that there's a tool to give you an indication.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://azurespeedtest.azurewebsites.net/"&gt;http://azurespeedtest.azurewebsites.net/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here is the result from my local Maltese connection!&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture%201.PNG" alt="" width="706" height="291" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here are the results in tabular format.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/fastestdc.PNG" alt="" width="471" height="344" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Remember, if you're serving media (images/video) from blob storage, this is the latency you'd expect for them to load. Pretty good in my opinion!&lt;/p&gt;</description><pubDate>Mon, 26 Aug 2013 09:29:53 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/which-azure-datacenter-should-you-choose</guid></item><item><title>Microsoft sends Thanks!</title><link>http://onthecloud.azurewebsites.net:80/microsoft-sends-thanks</link><description>&lt;p&gt;I'm quite an avid online shopper. This can be easily seen from the number of cardboard boxes in the trash (poor environment!). However, I get surprised when I receive a package when I did not have anything ordered. Wouldn't you?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Well, that's what happened. Although I was fearing for a box-sized mega bill of some sort (my steam purchases finally caught up with me?), I was very much pleasantly surprised to find a gift from Microsoft!&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/IMAG0062.jpg" alt="" width="410" height="725" /&gt;&lt;/p&gt;
&lt;p&gt;'Thank you for your participation in the Windows Azure Infrastructure Services Customer Program, April 2013.'&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Brilliant!&lt;/p&gt;
&lt;p&gt;Not only did I get a cool looking frame to hang in my office (who has enough of these anyway?), but also an AWESOME Victorinox backpack for my laptop. It's custom made as it features a really cool Windows Azure logo embroidered on the front. Thumbs up! Will wear it with pride to all techie events I go to.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This merits a short note regarding Microsoft's approach to working with partners. Microsoft does a GREAT job to keep 'in touch' and involve active or potential customers in product design. All large companies should do this. So, I encourage you: If you have something to say about a Microsoft product, get speaking. Good or bad. Microsoft believes that any feedback is good feedback, and not just for the PR. Approach your region representative and build a good relationship. I assure you, we have great people from Microsoft looking after us, including in Malta. Have something to say about the new Windows Azure changes? Or what about the new Windows 8.1? Try it now and let &lt;a href="https://www.facebook.com/pages/Microsoft-Malta/161455953882539" target="_blank"&gt;these guys&lt;/a&gt; know what you think. You might be surprised how much they actually listen.&lt;/p&gt;
&lt;p&gt;So above all, Microsoft, you're welcome. But it was my pleasure.&lt;/p&gt;</description><pubDate>Mon, 01 Jul 2013 09:56:08 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/microsoft-sends-thanks</guid></item><item><title>New Windows Azure Auto scaling &amp; Monitoring</title><link>http://onthecloud.azurewebsites.net:80/new-windows-azure-auto-scaling-monitoring</link><description>&lt;p&gt;It's been a while since my last post, but not because there wasn't anything new, but rather because I'm working on a prototype for something cool that just got delayed by a couple of weeks. I will definitely post info on it here once it's ready for your eyes. (Hint: I'm going to share some code with you).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;In the meantime, the folks at Windows Azure have launched two new preview services that I specifically was looking for. The first is the reason the cloud exists: Auto scaling. This is the process that, based on load, your service can grow or shrink automatically (within specified parameters). If your service is suddenly featured on a heavy traffic site (digg? reddit? slashdot?) or goes viral, your service can take it. The number of instances can organically grow with your demand, and shrink back when it's low again. Previously, auto scaling was only possible through third parties like AzureWatch (even though AWS has it!)&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture.PNG" alt="" width="669" height="475" /&gt;&lt;/p&gt;
&lt;p&gt;Not only is your service capable of handling that traffic spike (while you're sleeping), but it can also cost you less. Far less actually. Considering that some services require, say, 4 VM instances running for mid-day peaks, it is very usual that 2 VM instances would be enough to take the night load. That will shave off potentially 50% off your bill!&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Capture%202.PNG" alt="" width="667" height="481" /&gt;&lt;/p&gt;
&lt;p&gt;Apparently, this new capability works with cloud services (we saw this one coming) and websites, but also VMs. For virtual machines, VMs on an availability set are turned on or off depending on load. That's quite nifty. Load can be defined as CPU usage, or (more interestingly) Windows Azure storage queues length. The latter can be quite cool (and granular!).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Learn more on Windows Azure scaling at &lt;a href="http://www.windowsazure.com/en-us/manage/services/cloud-services/how-to-scale-a-cloud-service/" target="_blank"&gt;http://www.windowsazure.com/en-us/manage/services/cloud-services/how-to-scale-a-cloud-service/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The second preview feature being launched as we speak is the ability to monitor your services within Windows Azure itself. With Azure monitoring, you can add metrics (cpu, network io, memory usage etc) and then attach notifications and tresholds for each. It builds on top endpoint monitoring that had been launched some months ago, but extends it greatly. Strangely, the MSDN blog post related to this has been deleted and I can't find the feature any where on my portal. Weird.&lt;/p&gt;</description><pubDate>Thu, 27 Jun 2013 08:28:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/new-windows-azure-auto-scaling-monitoring</guid></item><item><title>Personal URL Shortening Service with Azure Storage</title><link>http://onthecloud.azurewebsites.net:80/personal-url-shortening-service-with-azure-storage</link><description>&lt;p&gt;So, you've got your own domain. Let's say azure123.com. Wouldn't you like to have a URL shortening service just for you? How would that work? What's the cheapest way to do it?&lt;/p&gt;
&lt;p&gt;I always forget my work webmail address. I always forget my blog URL (not true). I always forget my friend's site url. I'd like to have a URL that I always remember, and I'd like to have total control over it. I also am poor, so I'd like to avoid having to pay for a website or for a web role.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here is one way to do it... using Azure Storage (and a little javascript)!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 1: Create a Windows Azure Storage Account&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Do you have a Windows Azure subscription? Get one. You can use a trial account too. Login the management portal, click on the new button at the bottom left of the screen, select 'Data Services', 'Storage' and 'Quick Create'. Set a URL (you'll probably want to use your own custom domain later on), choose a data center closest to you. You can disable Geo-Replication if you want to shave off a little more off your usage (it won't matter really).&lt;/p&gt;
&lt;p&gt;&lt;img src="http://onthecloud.azurewebsites.net/Media/Default/BlogPost/1.png" alt="" width="614" height="145" /&gt;&lt;/p&gt;
&lt;p&gt;While the storage account is being created, you can start on step 2.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 2: Create your javascript redirector&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;So let's start work on the redirector itself. We'll have one for each url, but we can reuse most of it. Here's a sample javascript redirector:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;pre&gt;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;script&amp;gt;
// Where is Malta's Airport? Here!
var toUrl='http://binged.it/13dedtl';
window.location=toUrl;
&amp;lt;/script&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;For every redirector, just change the toUrl variable to point to the link you always forget, and save the file to a friendly name.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 3: Install a storage app&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;The next step is to get an application that will allow you to upload the redirector(s). You may want to use a dedicated app such as the CloudBerry Explorer with Windows Azure (&lt;a href="http://www.cloudberrylab.com/free-microsoft-azure-explorer.aspx" target="_blank"&gt;http://www.cloudberrylab.com/free-microsoft-azure-explorer.aspx&lt;/a&gt;). It's a free tool that works well and is pretty easy to use. Otherwise, you can stick with Visual Studio with the latest Azure SDK to do so. Let's do it with Visual Studio.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;img src="http://onthecloud.azurewebsites.net/Media/Default/BlogPost/2.png" alt="" width="470" height="352" /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 4: Upload the redirectors to the Storage Account&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;First, add the storage account to your server explorer.&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;Right click on 'Windows Azure Storage', and select 'Add New Storage Account'. &amp;nbsp;You can enter the settings manually. All you need is the account name and account key, both can be found in the Azure&amp;nbsp;Management Portal (find the azure account, and click on 'Manage Access Keys' from the bottom.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://onthecloud.azurewebsites.net/Media/Default/BlogPost/3.png" alt="" width="356" height="323" /&gt;&lt;/p&gt;
&lt;p&gt;Once the account has been created, expand it select 'Blobs' and create a new container. Here's an neat trick. Name the container '$root' (without the quotes). That will eliminate the container part from the final URL, making it as short as possible. We need this container to be publicly accessible so we need to switch this on. Right click on the container, select properties, find the 'PublicAccess' property and make sure it's set to 'Blob'.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/4.png" alt="" width="301" height="239" /&gt;&lt;/p&gt;
&lt;p&gt;Right click the container again and open it by clicking 'View Blob Container'. Great! Now find the upload icon (arrow pointing upwards) to upload your redirector files. I've saved mine as 'airport.html'. Upload the files in the $root container. Notice that the content-type is set to 'text/html'. This is important so that the javascript would be run by the browser, and not downloaded. If this doesn't happen on upload, you may want to check the file .html extension. If you'd like, you can use another azure storage tool (like the CloudBerry Explorer) to remove the extension (but keep the content-type) so that the final url would be even shorter. Havn't managed to find a way to do this last part in Visual Studio as yet! If you upload it without the extension, the content-type would be incorrect.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/5.png" alt="" width="823" height="62" /&gt;&lt;/p&gt;
&lt;p&gt;Till now, I got http://testme123.blob.core.windows.net/airport&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 5: Associate your custom domain with Azure Storage&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;The above url is great, but it's a tad longer than my maximum memory limit (yeah, I know). I want it shorter! Shorter? I need a custom domain! If you've got a custom domain to play around with, we'll need to create a new DNS CNAME record. Let's say I own the domain azurerocks.com (which I don't), and I'd like to use this domain to add my cool redirector. I want the redirector to have the url http://urls.azure123.com/airport.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/6.png" alt="" width="374" height="357" /&gt;&lt;/p&gt;
&lt;p&gt;First, register the custom domain with Azure using the Management Portal. To access the dialog, select your storage account, and navigate to the 'Configure' tab. At the bottom, click on the 'Manage Domain' button. It will require an activation process before the domain is activated. The activation process would require you to register (temporarily) a long CNAME to point to verify.azure.com. Once this is done, click on the validate button to complete the registration. However, due to DNS propagation, it usually takes some time (even hours sometimes so have patience).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Step 6: See it work!&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Well, at this point you should have your redirector work with your custom domain. If you'd like to add new redirectors, just copy/paste the file and change the URL from the javascript. Remember that since we're not using any cloud services or azure website hosting, we're just using Azure storage, this redirector is dirt cheap. You'll be charged only for the bandwidth and the storage cost, which both are ridiculously cheap. In comparison, my test redirector was 188bytes. Storage and bandwidth costs are measured in Gigabytes. First 5GB of bandwidth is free as well, so there!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4&gt;&lt;strong&gt;Here's what we've covered:&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;1. Setting up a Windows Azure Storage Account&lt;/p&gt;
&lt;p&gt;2. Creating a simple redirector with javascript&lt;/p&gt;
&lt;p&gt;3. Installing and using an Azure storage application&lt;/p&gt;
&lt;p&gt;4. Adding the storage account to Visual Studio&lt;/p&gt;
&lt;p&gt;5. Creating a new container. Name it $root to make it invisible in the url!&lt;/p&gt;
&lt;p&gt;6. Setting the container as public would allow public access without requireing security checks&lt;/p&gt;
&lt;p&gt;7. Associate a custom domain with the Azure Storage account through some CNAMEs.&lt;/p&gt;
&lt;p&gt;8. Play around with it. Show it to your friends. Create other redirectors!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4&gt;&lt;strong&gt;Want to learn more? Follow these links!&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;&lt;a href="http://www.w3schools.com/js/js_window_location.asp" target="_blank"&gt;http://www.w3schools.com/js/js_window_location.asp&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/downloads" target="_blank"&gt;http://www.windowsazure.com/en-us/downloads&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage" target="_blank"&gt;http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windowsazure/ee395424.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/library/windowsazure/ee395424.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description><pubDate>Mon, 27 May 2013 19:40:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/personal-url-shortening-service-with-azure-storage</guid></item><item><title>Malta's Windows Azure Bootcamp</title><link>http://onthecloud.azurewebsites.net:80/malta-s-windows-azure-bootcamp</link><description>&lt;p&gt;Just a short update on Malta's bootcamp as part of the Global Windows Azure Bootcamp that's happening at the Microsoft Innovation Center, SkyParks, on the 27th April: It's full!&lt;/p&gt;
&lt;p&gt;&lt;img src="http://globalwindowsazure.azurewebsites.net/wp-content/uploads/2013/01/bootcamp.png" alt="" width="441" height="298" /&gt;&lt;/p&gt;
&lt;p&gt;Registrations have skyrocketed in the first three (3!) days of ticket availability, and now they're all fully booked! I'm very glad we received such interest on such a new product as Windows Azure. Perhaps the next one would be even bigger!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;For those who registered, I'm currently compiling the content for the bootcamp. We will be covering Platform-as-a-service (Paas) and Infrastructure-as-a-service (Iaas). We'll go through the basics of creating a new deployment, and accessing it. Of course, there is the Azure load experiment (big render job) that each participant will take part in (which also serves as a little experience). Something like this:&amp;nbsp;&lt;a href="http://www.youtube.com/watch?v=2rXdyd9LcVU"&gt;http://www.youtube.com/watch?v=2rXdyd9LcVU&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Let me remind you that you need to get with you a laptop with Windows 7/8, Visual Studio 2010/2012, installed Azure SDK and the Azure Training kit (&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=8396"&gt;http://www.microsoft.com/en-us/download/details.aspx?id=8396&lt;/a&gt;). Those who do not have a laptop available, let me know and we'll do our best to get you one for the event.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;We'll also have some giveaways, to keep you peeled! ;)&lt;/p&gt;</description><pubDate>Thu, 18 Apr 2013 11:10:26 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/malta-s-windows-azure-bootcamp</guid></item><item><title>April 2013 Azure Changes Overview</title><link>http://onthecloud.azurewebsites.net:80/april-2013-azure-changes-overview</link><description>&lt;p&gt;April seems to have been a busy month for the Azure team. Loads of new functionality and changes have been announced; all of them exciting (some more than others).&lt;/p&gt;
&lt;p&gt;Let's start with the obvious. Remember when you were trying to convince your boss to 'try out' Azure. Well, prices have gone down (20-30%) for the most important service: compute. Compute prices are usually 75% of the bill for all hosting subscriptions. Hosting a VM, or web/worker roles is now cheaper. Hosting a small cloud service instance is now just &amp;euro;45/mo (with all the reliability and automatic management that comes with it). It's a good price to start at.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://onthecloud.azurewebsites.net/Media/Default/BlogPost/pricing.PNG" alt="" width="591" height="284" /&gt;&lt;/p&gt;
&lt;p&gt;Want full control over your VMs? A Windows Server small VM is at &amp;euro;50/mo a pop (including of server license of course). Which reminds me: one of the new changes is that the VMs are finally out of the dreaded 'preview'. VMs are now fully supported, with an uptime guarantee of 99.9% per VM. Want more? Just add another instances, load balance them and you can get as many 9s are required. Oh by the way, the cheap preview prices will remain till 1st June 2013 (even though it's out of preview).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Still thinking about the prices? So is your boss. Well, they've also added a whole new sub section on their site to explain to every detail for every cent. Go here for a full explanation: &lt;a href="http://www.windowazure.com/en-us/pricing/overview/" target="_blank"&gt;http://www.windowazure.com/en-us/pricing/overview/&lt;/a&gt;. If, like me, you prefer to visualise a deployment and check how much it would cost, use the calculator instead: &lt;a href="http://www.windowsazure.com/en-us/pricing/calculator/" target="_blank"&gt;http://www.windowsazure.com/en-us/pricing/calculator/&lt;/a&gt;. There's also a nifty new plan to be able to pay monthly for a fully fledged VM with a fully fledged MS SQL Server 2012 (Web/Standard/Enterprise). There are others for BizTalk Server and SharePoint 2013 (still in trial though) and apparently Dynamics NAV is incoming. Would be great to avoid that hefty one-time license cost, and pay just as the money starts coming in...&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/vms.PNG" alt="" width="667" height="442" /&gt;&lt;/p&gt;
&lt;p&gt;There's also a push to standardise further the compute sizes. Extra small instances are now called A0, Small A1, Medium A2 etc. They've also added extra sizes for memory intensive instances. The A6 size comes with 4 cores and 28GB of RAM. The A7 comes with 8 cores and a whopping 56GB of ram. Remember that you can have multiple instances of each. For the curious, hosting just one A7 for 24 hours would cost just over &amp;euro;36. Remember that huge compute-intensive task that you were dreading to execute on your existing infrastructure? That one.&lt;/p&gt;
&lt;p&gt;There are other interesting changes to talk about. Windows Azure Active Directory is now out of preview too. Best of all, it's become free (though regrettably it doesn't come with an SLA)! It's an interesting topic to discuss. I've yet to see some good software to use it, though just because it involves custom integration. Apparently, it's the tech that powers all new Saas software from Microsoft, including Office365 and Windows Azure itself. Cool.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Apart from getting a lot of stuff out of preview, they've added new stuff too. There's something new called Windows Azure Recovery Services (http://www.windowsazure.com/en-us/home/features/recovery-services/). It is a way to use Windows Azure storage as an all important offsite backup. After installing an agent, it integrates with existing backup tools on Windows Server 2012 or System Center 2012 Data Protection Manager and allows you to put your backups in the cloud. With Windows Azure Hyper-V Recovery, it can also be used to automatically replicate your on-premise Hyper-V VMs onto Azure for that rainy day. It's still in preview (so don't rely only on it for your production backups), but it's an interesting direction for Azure. Unfortunately, to time of writing, Malta isn't one of the countries where this last feature is available.&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/backups.PNG" alt="" width="510" height="305" /&gt;&lt;/p&gt;
&lt;p&gt;There are of course other updates that I didn't mention. But let me go to the dark side for a moment and mention some stuff that I expected. Where is traffic manager? Most people don't know what it is as it's not even in the Azure management portal. Traffic manager is a brilliant service that allows you to do site load balancing and other intelligent load routing. Why do I have to go to the old Silverlight portal to use it? CDN settings are the same; no new portal functionality. Why are a lot of things part of the platform, but not manageable from the management portal? Did you know that you can customise how the Windows Azure Fabric Controller decides if your VM is operational or not by giving it an HTTP/S URL it can 'probe'? It's a great feature that can only be configured through PowerShell. Well, I don't do new VMs daily and I always forget the PowerShell commands to do that. I expected that the management portal covers these areas well, but even after the updates, it doesn't.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Overall, I'm quite pleased with the additions, especially the focus on Iaas. Paas is great (and we all should push towards it) but there are times that it does not fit well in all scenarios. Having the power to click a button and a new VM is created is an awesome feeling, especially since it doesn't cost an arm and a leg.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;In my next blog update, I would like to delve deeper into more specific areas of Azure. Perhaps some powershell commands, or configuring virtual networks; or just plan Azure websites. Any requests?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;p&gt;Pricing: &lt;a href="http://www.windowazure.com/en-us/pricing/overview/" target="_blank"&gt;http://www.windowazure.com/en-us/pricing/overview/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Pricing Calculator: &lt;a href="http://www.windowsazure.com/en-us/pricing/calculator/" target="_blank"&gt;http://www.windowsazure.com/en-us/pricing/calculator/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Recovery Services: &lt;a href="http://www.windowsazure.com/en-us/home/features/recovery-services/" target="_blank"&gt;http://www.windowsazure.com/en-us/home/features/recovery-services/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Updates announcement: &lt;a href="http://blogs.msdn.com/b/windowsazure/archive/2013/04/16/the-power-of-and.aspx" target="_blank"&gt;http://blogs.msdn.com/b/windowsazure/archive/2013/04/16/the-power-of-and.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Magnus Martensson's blog post: &lt;a href="http://magnusmartensson.com/the-new-face-of-total-domination-windows-azure-iaas-general-availability" target="_blank"&gt;http://magnusmartensson.com/the-new-face-of-total-domination-windows-azure-iaas-general-availability&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 17 Apr 2013 17:15:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/april-2013-azure-changes-overview</guid></item><item><title>Attending the Windows Azure Bootcamp?</title><link>http://onthecloud.azurewebsites.net:80/attending-the-windows-azure-bootcamp</link><description>&lt;p&gt;... this is what you should expect!&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;The GLOBAL Event!&lt;/h2&gt;
&lt;p&gt;This event is somewhat like Azure: It is GLOBAL! During the same day, over 80+ countries will be having the same exact event! Windows Azure experts will be giving a FREE in-depth workshop on what is, and how to best use the Azure platform. Learn about Azure by following the presentations and labs that will be taking place this April, 27th 2013! We are all over the map!&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="/Media/Default/BlogPost/Map%20Capture%209Apr13.PNG" alt="" width="864" height="458" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;strong&gt;Agenda!&lt;/strong&gt;&lt;/h2&gt;
&lt;table cellpadding="1" cellspacing="1" width="445" height="226"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;8.30am&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Registration (and coffee!)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;9am&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Intro to the Windows Azure bootcamp!&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;10am&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;The BIG Render Experiment&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;11am&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Labs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;12pm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Lunch &amp;amp; Networking (the social kind)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;12.30pm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;More Labs! (not the canine type)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;3pm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Coffee!&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;3.30pm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;More Labs!&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;4.30pm&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Round-off&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;* Q/A session is THROUGHOUT! Don't hold back!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;The Experiment!&lt;/h2&gt;
&lt;p&gt;As part of the event, we'll try to melt on of Microsoft's datacenter. No kidding! During the day, each participant in all of the sessions around the world (that's over 3k+ and still counting!) will start by deploying a worker task, possibly with multiple instances. All these tasks will become part of a very large render farm that works on graphics renderings, as a BIG workload. At the end of the day, we will gather statistics on how it fared and will publish the results! Think about it, this experiment will potentially have tens of thousands of running instances at the same time! Can Windows Azure keep up?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;What YOU should bring&lt;/h2&gt;
&lt;p&gt;Laptop, an Azure subscription and a hungry brain. That's basically it. If you like to scribble notes, get a pen/paper (or just use word/skydrive).&lt;/p&gt;
&lt;p&gt;System Requirements for the laptop:&lt;/p&gt;
&lt;ul style="border: 0px; margin: 0px 0px 0px 15px; padding: 0px; vertical-align: baseline; list-style: none; font-family: 'Segoe UI', 'Open Sans', Helvetica, Garuda, Arial, sans-serif; font-size: 14px; line-height: normal;"&gt;
&lt;li style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; position: relative; background-position: initial initial; background-repeat: initial initial;"&gt;&lt;a href="http://www.microsoft.com/visualstudio/eng/downloads" style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; text-decoration: none; color: #1ba1e2; background-position: initial initial; background-repeat: initial initial;"&gt;Microsoft Visual Studio 2012 (full version or Visual Studio Express 2012 for Web)&lt;/a&gt;&amp;nbsp;or&amp;nbsp;&lt;a href="http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express" style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; text-decoration: none; color: #1ba1e2; background-position: initial initial; background-repeat: initial initial;"&gt;Microsoft Visual Studio 2010 with SP1 installed&amp;nbsp;(full version or&amp;nbsp;Visual Studio Express 2010 for Web)&lt;/a&gt;&amp;nbsp;- do note if you use Express Edition you will not be able to complete all of the labs.&lt;/li&gt;
&lt;li style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; position: relative; background-position: initial initial; background-repeat: initial initial;"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=254364&amp;amp;clcid=0x409" style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; text-decoration: none; color: #1ba1e2; background-position: initial initial; background-repeat: initial initial;"&gt;Install the Windows Azure Tools for Visual Studio&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/downloads/"&gt;http://www.windowsazure.com/en-us/downloads/&lt;/a&gt;&lt;/li&gt;
&lt;li style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; position: relative; background-position: initial initial; background-repeat: initial initial;"&gt;&lt;a href="http://www.microsoft.com/en-us/download/details.aspx?id=8396" style="background-color: transparent; border: 0px; margin: 0px; padding: 0px; vertical-align: baseline; text-decoration: none; color: #1ba1e2; background-position: initial initial; background-repeat: initial initial;"&gt;Install the Windows Azure Training Kit&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;a href="http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/" style="font-family: 'Segoe UI', Trebuchet, Arial, sans-serif; font-size: 13px; line-height: 20px;"&gt;http://www.windowsazure.com/en-us/develop/net/other-resources/training-kit&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Remember that the SDK requires Windows 7/8 (NO XP!) and Visual Studio 2010/2012.&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;The Rest!&lt;/h2&gt;
&lt;p&gt;Well, I hope to do my best in showing how great Windows Azure is. After some introductory presentations, we'll do some hands-on work (the best way to learn). Q/A session is THROUGHOUT so prepare as many questions as your brain can hold (you may want to write some down too!). We'll also have some freebie software to give out, but I'm sure you won't be coming just for that, right? RIGHT?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;Thanks to!&lt;/h2&gt;
&lt;p&gt;Magnus M&amp;aring;rtensson (Windows Azure MVP and generally bright guy!) for inspiring me to host this event -&amp;nbsp;&lt;a href="http://magnusmartensson.com/"&gt;http://magnusmartensson.com/&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 09 Apr 2013 20:04:00 GMT</pubDate><guid isPermaLink="true">http://onthecloud.azurewebsites.net:80/attending-the-windows-azure-bootcamp</guid></item></channel></rss>