Archive for December, 2012

It’s always a drag having to create country lists for your web sites.

Thanks to WebResources.com though I found out that Saša Stamenković, a web developer, is working on sharing a list of all countries in many languages and data formats.

The data formats include HTML, JSON, PHP, SQL, CSV, YAML, text and there are SQL dumps for major databases.

Also, with the help of the world-flags-sprite, there is a HTML version of the list with the country flags.

Great work.


Earlier today the Windows Azure team released a number of improvements to Windows Azure.  These include:

  • Mobile Services: Job scheduler support, Europe Region Support, Command Line Support
  • Web Sites: Ability to scale up to 6 shared instances and 10 reserved VMs, integrated source control in custom create wizard
  • SQL Data Sync: Now supported in the new HTML portal
  • ACS Management: Now supported in the new HTML portal
  • Media Services: New job and task management, blob storage support, reserved compute
  • Virtual Network: Simplified workflow for custom scenarios
  • Windows Azure Store: Now available in more countries
  • Subscription Filtering Support

ScottGu has more details on the new features: http://weblogs.asp.net/scottgu/archive/2012/12/21/great-updates-to-windows-azure-mobile-services-web-sites-sql-data-sync-acs-media-more.aspx


Yesterday I had the opportunity to do a live meeting on how to migrate workloads to the cloud. You can find the video here (http://aka.ms/azure4of4) . In the meeting I spent some time on discussing enterprise scenarios and how you use windows azure vnet to connect services and your on premise infrastructure. This reminded me of a question one of my clients had a few months back which I would have liked to address in the meeting but didn’t have time, so I’ve decided to blog about it instead.

How to connect a Linux VM with a Windows VM on Windows Azure

To connect a linux and a windows vm and use static (permanent lease) IP addresses on those machines we need to create a virtual network. So from http://manage.windowsazure.net by clicking the new button we can start the new vnet wizard.

1

After specifying a name for the vnet, the region (datacenter) where the vnet will be created and the subscription we need to define the address range available for the vm instances as well as any subnets.

2In this case we don’t need any subnets and we’re specifying an address range from 192.168.1.1 to 192.168.1.255 by using the Classless Inter-Domain Routing (CIDR) format.

Next we need to provision our virtual machines.

Provisioning a windows image to join the created virtual network is quite easy and can be performed through the wizard. The only thing that we need to take care of is select the vnet from the combo “Region/Affinity Group/Virtual Network”.

3

Unfortunately provisioning the Linux images is not as straight forward as in Windows Images, since the portal wizard does not allow us to select the virtual network.

4

In order to provision the Linux Images we have to use Windows Azure PowerShell cmdlets the code looks like this:

First add the necessary credentials by importing you publish settings file. If you don’t have a publish settings file you can download one from https://windows.azure.com/download/publishprofile.aspx

 1: PS C:> Import-AzurePublishSettingsFile [path to the Aure publish settings]

 2: Setting: 3-Month Free Trial as the default and current subscription. To view other subscriptions use Get-AzureSubscription

Next we’ll have to set some variables in order to set the subscription in which we want to deploy the linux vm

 1: PS C:> $subscription = Get-AzureSubscription "Windows Azure Cloud Essentials"

 2: PS C:> $image = Get-AzureVMImage "OpenLogic__OpenLogic-CentOS-62-20120531-en-us-30GB.vhd"

 3: PS C:> $thumb = "[certificate thumbprint]"

 4: PS C:> $cert = Get-Item cert:CurrentUserMy$thumb

 5: PS C:> $subId = "[subscription id]"

 6: PS C:> Set-AzureSubscription -SubscriptionName $subscription -SubscriptionId $subId -Certificate $certa

After setting the subscription we can see by performing a get-azurevm the windows virtual machine that is already deployed.

 1: PS C:> Get-AzureVM

 2: ServiceName                             Name                                    Status

 3: -----------                             ----                                    ------

 4: windowsblogsvm                          dns                                     ReadyRole

Finally we can add the new Linux VM to our service with the following commands

 1: PS C:> $vm = New-AzureVMConfig -Name "web1" -InstanceSize "Small" -ImageName $image.ImageName | Add-AzureProvisioningConfig -Linux -LinuxUser demouser -Password P@ssw0rd

 2:

 3: PS C:> New-AzureVM -ServiceName "blogservice" -VNetName "blogvnet" -VMs $vm

 4: WARNING: VNetName, DnsSettings, DeploymentLabel or DeploymentName Name can only be specified on new deployments.

 5:

 6: OperationDescription                    OperationId                             OperationStatus

 7: --------------------                    -----------                             ---------------

 8: New-AzureVM - Create VM web1            254e7485-571e-426c-b8fa-9d82a656f0a7    Succeeded

 9:

That’s it. The two newly created machines will be able to communicate by IP or name.

Hope this guide will prove helpful for those thinking of moving their workloads to the cloud.


I’ve been working with windows 8 and Metro style apps since Microsoft released Its first private beta, I had to format my pc several times during this time due to bugs or incompatibilities with my hardware but it was worth it as through this I gained very useful experience and was able to get a head start on windows 8 application development.

So today I’m happy to announce two brand new free windows 8 applications available at the Windows store

MeteoGR

Meteo is the leading meteorological website in Greece backed by the National Observatory of Athens providing accurate and precision weather forecasts for Greece.  So a while back we approached the guys there in order to build a proof of concept application that would present their data using the Metro Style experience.

After straggling for a while with the APIs and the application certification team of the Windows Store :-), the application hit the store on October and has already achieved almost 5000 downloads.

The application features almost all of the windows 8 available application features such us Live Tiles, Roaming Settings, Semantic Zoom, Settings Contract and more and is built using XAML – C# and takes advantage of the MVVM pattern and of course the application is backed by Microsoft Windows Azure.

You can download the app from here http://apps.microsoft.com/webpdp/en-us/app/meteogr/1869f228-540a-469a-9581-64c4771378e8


Zougla

Zougla is one of the largest and probably the most visited news portal in Greece. Beside informing the visitor with all the latest news in Greece and the rest of the world, Zougla offers visitors a wide variety of services ranging from news and weather to online TV and Radio. They even run their own marketplace.

Being tech savvy and happy to work on new ideas they gladly accepted to work on a new experience in Windows 8. The result is the just the released application http://apps.microsoft.com/webpdp/app/zougla/ffda30c7-357e-4207-a437-be60871dfc9b

The application features Live Tiles, Roaming Settings, Share Contracts, Settings Contract, Video On Demand, Live Smooth Streaming  and more are planed for the next version. Lastly it’s built using XAML and C# and the MVVM pattern as well.

Download and install them. I’d love to hear what you think. Hope you like them.


Theme update

Categories: MVP, Web
Comments: 1

Back in August when I migrated my blog to Windows Azure Websites and WordPress, I mentioned that I was also looking to change my theme. I wanted something fresh, and responsive so that anyone could navigate through it using any device and screen resolution, while adopting the Metro design principles at the same time. Unfortunately I couldn’t find anything I liked that would also fit all my requirements so I kind of stopped looking till today when I found the ideal theme.

Some of the new theme’s options are:

  • Responsive layout (1440px – 320px; on/ off via options)
  • Regular or Magazine homepage layouts available
  • Attractive slider (automatically resize images, auto-slide feature, supports video)
  • Tune background, panels’s opacity and 22 theme’s colors via Styling menu. Save your own color scheme or use 25 hand made skins
  • Your own logo (image) can be added
  • Google.Font support (500+)
  • 6 custom widgets (Blog, Portfolio, Twitter, Flickr, Facebook Like Box, Video)
  • Basic contact form builded-in (sends form data to email)
  • Facebook comments integrated (on/off via options)
  • Shortcodes generator, integrated to visual editor (Galleries, Pricing tables, Testimonials, Logos, Aligned Content, Buttons, Lists, Icons, Videos, Infopanes, Tabs, Pricing Tables, Dropcaps and etc.)
  • Galleries manager (possibility to create galleries in the separate section and insert to any post/ page with shortcodes)
  • Multiple portfolio pages
  • 380+ built-in icons + country flags set available via shortcodes
  • Breadcrumbs builded-in (on/ off via options)
  • Rich theme options
  • Full localization support (contains .po/.mo files)
  • Supports WPML (The WordPress Multilingual Plugin)
  • 2 layouts for Blog (Full, Lite)
  • 2 layouts for Portfolio (3 column, Masonry)
  • Additional page templates (Full-width)
  • Recent posts shortcode
  • Recent portfolios shortcode
  • Custom sidebar for every page/post available
  • Custom sidebar position (right/left side)
  • Sliding sidebar
  • Custom login logo
  • Demo  XML  file is included
  • Contact Form 7 WP plugin optimized
  • Nested comments for posts
  • SEO  friendly and fast Loading
  • Professional author’s support

I hope you like the new theme as much as I do. Drop me a line and let me know what you think.