Skip to main content

I got 99 Problems but Visual Studio ain't one


Stuff from Microsoft TechED Australia 2013

So this is my first post from this year's Microsoft TechED. This being my first time to an event such as this, I've been super pumped and excited all along. The excitement and energy at the event is almost palpable.

The sessions I have attended thus far have been crazy fun. I must admit, when they previewed new features in Visual Studio 2013 I almost felt week in the knees!

Visual Studio 2013 comes with a swanky new CSS and HTML Editor with amazing type-specific intellisense. They've really taken intellisense to the next level with intellisense support for your JS Object model.

And added crazy new features, features like "Browser Link" can be described best as black magic. It leverage's SignalR and allows you to EDIT ACTUAL SOURCE CODE FROM WITHIN THE BROWSER! Say what!!!

Most of the older zen-coding features still remain, but even better, the "Format Selection" feature is so much more intuitive (I know it seems trivial but I really struggle with badly formatted code).

By the by, Visual Studio 2013 RC has been released and is available at [http://www.microsoft.com/visualstudio/eng/2013-preview#story-2013preview]. Don't forget to check out the Channel 9: Visual Studio 2013 RC video. You also might want to have a look at Scott's post about browser link (http://www.hanselman.com/blog/VisualStudio2013RCForWebDevelopersOneASPNETBrowserLinkAndOurDirection.aspx)

Loved Colin's sessions on WebAPI. Got some great pointers that I'll share in a subsequent post. Here's a sneak preview ..



Brendan's "Real Time web applications" demo of what one can achieve with SignalR was pretty impressive too. The source for his demo is at  http://t.co/EFCcrlqkoo. Brendan mentioned some interesting libraries like DurandalJS, PostalJS, Toastr, RequireJS (tutorials coming soon)

Just attended Scott Guthrie's "Building Real World Cloud Apps with Azure". Boy, does he have a presence! So much cooler to see/hear him in person instead of streaming him! Links to the source code from his presentation coming soon!

Finally a shout out to Tony Gooderham. Without your tweet I wouldn't have this title!

The sessions I plan to attend/have attended this week are as follows:

Tuesday, September 03 2013

3:15 pm - 4:30 pm
Developer Kick-Off Session: Stuff We Love Andrew Coates, Mads Kristensen, Brady Gaster, Ed Blankenship, Patrick Klug Arena 1A options

4:30 pm - 6:00 pm
Keynote: Blink and you’ll miss it Adam Pisoni Arena 2 options

6:00 pm - 9:00 pm
Welcome Reception

Wednesday, September 04 2013

8:15 am - 9:30 am
What’s New for ALM in Visual Studio 2013 and Team Foundation Server 2013 Adam Cogan, Damian Brady Central A

9:45 am - 11:00 am
What’s New in Visual Studio for Web Developers Mads Kristensen Arena 1A

11:30 am - 12:45 pm
Designing API-Enabled Applications Colin Bowern Meeting Rooms 5&6

11:30 am - 12:45 pm
Cross-Device Notification Services with C#, Xamarin and Windows Azure Mobile Services Simon Waight Arena 1A

1:45 pm - 3:00 pm
Developing Connected Apps with Windows Azure Mobile Service: Overview Nick Harris Central C

3:30 pm - 4:45 pm
Real-Time Web Applications with SignalR Brendan Kowitz Central C

5:00 pm - 6:15 pm
So, You Want to be a Professional Windows Phone Developer? Nick Randolph Central C

6:30 pm - 7:45 pm
Continuous Delivery - The Agile End to End Story for Developers & IT Pros! Morgan Webb Arena 2

Thursday, September 05 2013

8:15 am - 9:30 am
Building Cross-Platform Mobile Apps David Burela Central A

9:45 am - 11:00 am
Becoming a C# Time Lord Joseph Albahari Central A

9:45 am - 11:00 am
Cross Platform Mobile Web Development Brendan Kowitz Meeting Rooms 5&6

11:30 am - 12:45 pm
Climbing the Agile Testing Ladder featuring Visual Studio 2013, TFS 2013, Microsoft Test Manager 2013, and Lab Management 2013 Adam Cogan, Damian Brady Meeting Room 7

1:45 pm - 3:00 pm
Building Real World Cloud Apps with Windows Azure Part 1 Scott Guthrie Arena 2

3:30 pm - 4:45 pm
Unit Testing, Code Coverage, and Code Clone Analysis with Microsoft Visual Studio 2012 Richard Angus TLC - Theatre 1

5:00 pm - 6:15 pm
Load Testing with Team Foundation Service Anthony Borton Meeting Room 8

6:30 pm - 10:30 pm
Networking Event Thursday Networking Event Movie World

Friday, September 06 2013

8:15 am - 9:30 am
Using AngularJS in an ASP.Net Application Paul Glavich Meeting Room 6

9:45 am - 11:00 am
Hack-Ed: Wheedling and Cajoling your way to Success Kirk Jackson, Andy Prow Meeting Room 7

11:30 am - 12:45 pm
Hack-Ed: Develop your Security Spidey Sense Kirk Jackson, Andy Prow Meeting Room 7

1:45 pm - 3:00 pm
Azure Mobile Services Deep Dive into Node.js Scripting Glenn Block Meeting Room 6

3:00 pm - 4:00 pm
Closing Presentation: Cloud Computing: Own Tomorrow Scott Guthrie, John Azariah, James Miles Arena 2

Comments

Popular posts from this blog

Internet Information Services(IIS) reveals its real or internal IP Address

In the ever changing world of global data communications, inexpensive Internet connections, and fast-paced software development, security is becoming more and more of an issue. Security is now a basic requirement because global computing is inherently insecure.

Keeping that in mind, we recently ran our flagship product through a security audit. It was such a helpful exercise in tying-off any remaining lose ends in our application in terms of application security. 
Based on the security audit report, there was a relatively minor issue that appeared when accessing the /images directory of our application. Turns out that the Location response header of the 301 request returns an Internal IP address. The issue is detailed below.

Issue reportedInternet Information Services (IIS) may reveal its real or internal IP address in the Location header via a request to the /images directory. The value returned whilst pen testing is https://10.0.0.10/images.

The riskInformation regarding internal IP add…

IIS Request Filtering to block HTTP Verbs (For example Trace)

The issueRequest Filtering is a built-in security feature that was introduced in Internet Information Services (IIS) 7.0. This can be used to block specific verbs like "Trace".

When request filtering blocks an HTTP request, IIS 7 will return an HTTP 404 error to the client and log the HTTP status with a unique substatus that identifies the reason that the request was denied. Verb Denied.

HTTP SubstatusDescription404.5URL Sequence Denied404.6Verb Denied404.7File Extension Denied404.8Hidden Namespace404.1Request Header Too Long404.11URL Double Escaped404.12URL Has High Bit Chars404.13Content Length Too Large

Unit Testing HttpContext.Current.Session in MVC3 .NET

We recently changed some functionality where during the "CREATE" process, we go through a wizard to save application data. This data is saved only to the session in the final step when the user clicks the final submit.

This was easy enough to implement but when I started writing unit tests for my static methods that Add, Update, Delete or Modify the contents of our application data in the session, I got the following error:
System.NullReferenceException: Object reference not set to an instance of an object.

Turns out I had forgotten to setup the HttpContext.
The following "TestInitialise" method fixed my problem :)

[TestInitialize]
public void TestSetup()
{
// We need to setup the Current HTTP Context as follows:

// Step 1: Setup the HTTP Request
var httpRequest = new HttpRequest("", "http://localhost/", "");

// Step 2: Setup the HTTP Response
var httpResponce = new HttpResponse(new StringWriter());

// Step 3: Se…