A new centralised location for Microsoft training events, camps & conferences

TL;DR I have created a new Meetup.com group to curate and aggregate the important Microsoft events happening in Australia. Join it to keep up to date on what is happening in your area. http://www.meetup.com/Microsoft-events-in-Australia

The situation

I have been involved in the Australian developer community for 10+ years now. While there is a lot of talent and passion in the community, there has always been the issue of event discoverability. While there is an issue on a per user group level (I will tackle this in a future blog post), no where has this fragmentation been worse than with Microsoft.

I like to think of myself as a very informed dev community member, and I try to keep up with what major events are going on but too often there are big events that slip by without being aware it was even on. I am a Microsoft MVP, I was a Technical Evangelist for Infragistics which required that I keep abreast of events that are happening, I am signed up to countless newsletters, websites, groups, I am frequently asked to speak at some of these events and I am still missing things.

To give an idea of just the Microsoft news sources I subscribe to in Australia:

Long story short there are so many silos of event information, I’m subscribed to as many as I can and I still miss out on events and can’t find information on events that *I* am speaking at so I know the events exist.

Stop complaining, do something about it

I have brought this up multiple times without any resolution. So I decided to step up and create a curated list of Microsoft training events, web camps, conferences and any other big events (like DDD Melbourne/Sydney/Brisbane).

http://www.meetup.com/Microsoft-events-in-Australia

While there may be other ways to solve this, I decided to go with Meetup.com as it is the single best thing that has happened to user groups. Newsletters and blog posts can be tricky to send out and maintain, and on the consumer side they can take time to parse and get the information out. Meetup quickly lists out each event and the date. Simple at a glance summary of events.

So go, sign up. Spread the word to your twitter followers, coworkers, etc. The more involvement we can get in these events, the more frequent and larger the events can be!

Connecting Team City to Visual Studio Online using Git source control

I was on a client project that was using Team City for their builds. I migrated their source control from SVN to using Visual Studio Online (as they had less than 5 users it was free). But I had issues trying to find any documentation on how to successfully connect Team City to Visual Studio when you are using Git for the source control. Hopefully these steps will help someone else in the future.

Where I was going wrong was trying to treat it like it was a TFS project, instead I should have been treating it like a standard Git repository.

For this blog post I am using the TFS team project I created during a live demo I gave for the Windows Azure web camp.

Step 1: Enable alternate authentication credentials

You will need to tell Visual Studio Online to enable other tools (such as command line Git tools & Team City) to be able to log in using a username & password.

  • Load your team portal, then in the top right click “My Profile”.
  • Go to the credentials tab and click “Enable alternate credentials”

image

image

Step 2: Obtain the URL for your Git repository

The easiest way I’ve found to get the URL for your git repository is to open a Git command prompt and list the remote origin

  • In Visual Studio go to the changes section in the Team Explorer tab.
  • Click “Actions” and select “Open Command Prompt”
  • In the command prompt type
    git remote show origin

image

image

 

Step 3: Enter details into Team City

This is the part that confused me, as I kept trying to connect with the TFS plugin. The secret is to just treat it as a Git repository.

  • In your team city project, click to add a “New VCS Root”
  • Type of VCS: Leave as <guess from repository URL>
  • Repository URL: Enter the Git repository URL obtained from the command prompt (in this example it would have been https://ausazurewebcamp.visualstudio.com/defaultcollection/_git/MelbourneSoftdrink
  • Username: Enter your Visual Studio Online username
  • Password: Enter the password you created when enabling Alternate Credentials.

 

Once it has connected you should be able to just click “Auto-Detect build steps” and have Team City download your source code, and automatically find your .sln file.

image

Build 2014 – Day 1 keynote

For the last couple years it has been a tradition that I capture a stream of consciousness as I watch the big Microsoft keynote announcements at Build, PDC, TechEd North America. I enjoy doing it so that my work colleagues are able to catch up on the news as soon as they wake up in Australia, and for anyone else that wants an overview of the keynote without needing to dedicate hours watching it.

As I am live blogging it, the post is a stream of text and screen captures as they happened in real time. I have added additional links and a summary below as the highlights:

Highlights

The entire conference & screenshots are continued below

Read the rest of this entry »

Is it time to open source Silverlight?

Call to action: Vote on User Voice for Silverlight to be open sourced http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/5042512-open-source-silverlight 

For all intents and purposes Microsoft now views Silverlight as “Done”. While it is no longer in active development it is still being “supported” through to 2021 (source).
In today’s age of the “modern public web” with a variety of devices, Silverlight’s purpose no longer stands.

However there is still a section of the .Net community that would like to see further development done on the Silverlight framework. It has a nice collection of portable technologies allows it a small niche in the desktop environment. A quick look at some common request lists brings up the following stats:

Rather than letting Silverlight decay in a locked up source control in the Microsoft vaults, I call on them to instead release it into the hands of the community to see what they can build with it. Microsoft may no longer have a long term vision for it, but the community itself may find ways to extend it in ways Microsoft didn’t envision.
Earlier this year Microsoft open sourced RIA Services on Outer Curve http://www.outercurve.org/Galleries/ASPNETOpenSourceGallery/OpenRIAServices, it would be great to see this extended to the entire Silverlight framework.

We’ve seen what can happen with amazing technologies when they are released into the wild. e.g ID software released the Quake 1 source code to the community, it has since been extended greatly and ported to a variety of platforms. A version was even created for Silverlight http://www.innoveware.com/ql3/QuakeLight.html. Which makes sense as XNA running on Silverlight was a popular technology for students.

I’ve used games as examples of ways to extend it as that is what hobbyists usually latch onto first. But there are equal reasons why people still using it on internal LoB applications would want to continue to extend the core framework, e.g:

Silverlight still has a nice portable core of useful technologies, now is the time to start asking the question if it is time to Open Source it rather than let it mothball. There may be uses in the community for it now, in another 2-3 years its usefulness in the community would be lost. This also may be a great point to release Silverlight to the community.
Microsoft, let the community know if there is a way we can assist in making this happen.

By David Burela

Windows Azure Website issue with Portable class library

I was developing a website that had common logic held in a portable class library. However when I used Git deployment, the compilation on the Azure servers would fail with:
The reference assemblies for framework ".NETPortable,Version=v4.5,Profile=Profile78" were not found.

After much debugging it seems the issue is that the Azure build servers don’t have all the PCL profiles. As a shot term fix, you can go into your PCL properties, and remove support for Windows Phone 8. I changed my project to only support Windows 4.5 & Windows store, and this resolved the issue.

By David Burela

Error when using HTTP Portable class library & compression

I was trying to use the new HTTP Portable class library with the new compression capabilities (as described in this MSDN post).

I created a portable class library that retrieved data, and then used that library in my app. However my app kept throwing this error:
Method not found: ‘Void System.Net.Http.HttpClientHandler.set_AutomaticDecompression(System.Net.DecompressionMethods)’.

After searching for hours, I discovered the issue is that you need to add the portable HTTP client to BOTH your portable class library AND any app that consumes that assembly. I resolved the issue simply by adding the portable HTTP client Nuget package to my app.

Windows Azure editorial for MSDN flash

I was asked to write an editorial for MSDN flash. It hasn’t been published yet, but here is the raw article I submitted.

 

At Build 2013, Microsoft covered a lot of the recent activity within the Windows Azure. It is an exciting time to develop on the Azure platform. Here were the most interesting announcements for me at the conference:

The general availability of Windows Azure Websites and Windows Azure Mobile services was announced. Azure websites is an enterprise grade way of hosting websites that can easily scale and allow for rapid deployment. Windows Azure Mobile Services helps support the backend of your mobile apps. You can rapidly create tables to hold data and immediately expose it via RESTful services. Microsoft also help bootstrap your app with templates for Windows 8, Windows Phone, iOS, Android & HTML5.

Azure Websites & Mobile Services have tiers ranging from free to enterprise level. With the recent announcement that you can create 20mb SQL Azure databases for free, it is now very cheap to start creating your own projects on the weekend. While still having the reassurance that you are able to scale it up to an enterprise level when needed.

Within the Azure portal you can now configure deployments to automatically scale themselves up and down based on load. You can set an ideal CPU utilisation range, beyond which Azure will automatically provision or de-provision instances. There is also the ability to scale based on the length of a Windows Azure Storage queue for worker roles that process messages. The auto scaling announcement combined with the recent updates to “Pay per minute” pricing, means your applications can rapidly respond to load while keeping your costs as low as possible.

On top of all of this there has been an updated release cadence with more frequent updates published to Azure than ever before. There have been over 100 major releases to the Azure services since Build 2012. This has seen the capabilities of azure rapidly expanding, and it will be exciting to see this pace continue throughout 2013.

By David Burela

Follow

Get every new post delivered to your Inbox.