A sneak peak at ASP.Net vNext

ASP.Net vNext is now available as a preview. I wanted to give everyone a heads up on what to expect in this next release. I recorded a quick video on what I consider to be the important things to be aware of.

  1. Project format is changing to a single JSON file
  2. ASP.NET MVC and Web API have been unified into a single programming model
  3. Project Roslyn allows for a “no-compile” developer experience while making updates
  4. Migration to a OWIN hosting model allows for flexibility in production web hosts (IIS or running on Linux via Mono)

http://tv.ssw.com/5366/asp-net-vnext-everything-you-need-to-know-in-4-minutes

More details and access to the latest previews can be found at these links:

Get some developer superpowers!

Earlier this year I started touring Australia giving free 1 day training on how to get started with Windows Azure Websites, ASP.Net MVC5, etc.  http://davidburela.wordpress.com/2014/06/14/community-report-windows-azure-web-camps/

I had a lot of attendees say that the content was great, and is there any way that their workmates could access the information? As I already had a lot of content prepared and I wanted to extend the reach of my training, I repurposed the content and helped create the Developer Superpowers series http://www.devsuperpowers.com/

Each month we will do a webinar teach developers about one specific topic.

In May I kicked it off with a webinar introducing Microsoft Azure Websites, ASP.Net MVC5, SQL Azure, etc. http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-ASP-NET-MVC.aspx

In June I did a webinar on how to unleash your application’s data with Web API http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-web-API.aspx 

In July I will do a presentation on enabling real time communications between the client & server. http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-signalr.aspx

 

We have a whole bunch of great technologies queued up for the upcoming months. Go take a look and sign up today! http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers.aspx

3 things to know about Xamarin 3

With the release of Xamarin 3, I wanted to create a quick video to tell everyone about the hot new features in this version.

  1. Shared projects
  2. Xamarion.IOS designer for Visual studio
  3. Xamarin.Forms

Check out the video for more details http://tv.ssw.com/5359/top-3-features-xamarin-3

More information on this new release can be found at:
http://blog.xamarin.com/announcing-xamarin-3/
http://arstechnica.com/information-technology/2014/05/xamarin-3-review-making-cross-platform-mobile-development-painless

Community report: Windows Azure web camps

Recently I teamed up with the local Microsoft Australia DPE team to run 1 day training events around Australia. It taught the attendees how to get started with Windows Azure website and deploy their own ASP.Net MVC app that takes advantage of SQL Azure and a suite of other technologies.

I initially did 3 training events around Australia:

  • Brisbane – 15th March 2014
  • Melbourne – 22nd March 2014
  • Sydney – 3rd May 2014

http://blogs.msdn.com/b/bizspark_au/archive/2014/03/08/free-windows-azure-web-camps-brisbane-melbourne-and-sydney.aspx

The events all completely booked out and were a great success, which prompted Microsoft to schedule another tour immediately after:

  • Melbourne – 24th May 2014
  • Sydney – 31st May 2014
  • Brisbane – 14th June 2014

http://blogs.msdn.com/b/bizspark_au/archive/2014/04/23/new-dates-announced-microsoft-azure-web-camp-in-melbourne-sydney-and-brisbane.aspx

 

I decided to run these events differently to how they are usually done. Traditionally these events are run as “Hands on Labs” days. But I think this format is of limited value. A presenter stands up front and briefly talks about a topic for 20 minutes, and then attendees do the exercise themselves independently. But I always see some attendees breeze through the labs and sit there bored. Meanwhile other people struggle to make any progress, and feel frustrated as they are always rushed along.

Instead I thought there was more value in seeing how another developer works. As a consultant I an constantly exposed to the work habits of other developers, and pick up many new techniques just watching other people work. Many of the attendees are either very new to the Microsoft stack, or they have been working with the same people for an extended period.
For these reasons I instead ran the day as an 8 hour non-stop deep dive in how to create your own website and have it published to Windows Azure.

  • How to sign up for Windows Azure
  • How to create a new website with ASP.Net MVC5
  • Using EF6 and SQL Azure to store data
  • Scaling with Azure Websites
  • Adding Web API to your site to unlock your data to other apps
  • Bootstrap
  • jQuery basics
  • Signalr

After showing everyone how easy it is to get a complete custom built deployed out to Azure Websites for free, I talked about the power the gives every developer. Next week they could go home on a Friday afternoon, start creating a site, and by Sunday night they can deploy and show it to a few people.

Community report: Melbourne Microsoft //publish event

There was a Microsoft Windows //publish event hosted in Melbourne on the 17th May. So naturally I put my hand up to help out at the event.

The Windows //Publish event https://publishwindows.com/ was a chance for people that are building apps to get together, and work on polishing their apps and getting them deployed. The event saw a lot of enthusiastic people attend.

The best part for me, was walking around and having people ask me for advice about their app. Being able to provide assistance to make their apps just that little bit better is a great feeling. But it was also great to look around and see everyone help each other out with advice.

IMG_2422 (1280x853)IMG_2426 (1280x853)IMG_2427 (1280x853)IMG_2429 (1280x853)

The catering at the event was lovely. Sushi and fresh fruit!

IMG_2431 (1280x853)

After lunch, people gave short presentations to showcase their apps.

IMG_2434 (1280x853)

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.

Follow

Get every new post delivered to your Inbox.