Ten Steps to Learn Anything Quickly Review

30 January 2016 General

10 Step to Learn Anything Quickly

10 Steps to Learn Anything Quickly is an online course created by John Sonmez, the man behind Simple Programmer and Soft Skills: The software developer's life manual. The author is famous for being a prolific pluralsight author, having released over 50 courses across multiple disparate technologies. The learning techniques used for creating these courses were alluded to in Soft Skills, however it is only in this video course that they have been fully documented with supporting examples.


The course consists of:

Read more

Identity Server 3 using WS-Federation

30 January 2016 Identity Server

Identity Server 3 is by design an OpenID Connect Provider, however many developers do not have the luxury of using the latest and greatest authentication protocols or have to integrate with existing Identity Providers incompatible with OpenID Connect. To solve this the Identity Server team have enabled the use of various features to enable developers to use the WS-Federation protocol.

OpenID Connect vs WS-Federation

The best way to compare OpenID Connect and WS-Federation is to look at the reason they exist (ie the problem they solved) and the technologies they typically use.

Read more

Python Email Verification Script

24 November 2015 Email Verification

Please note that as of March 2016 I no longer work for Email Hippo Ltd.

Email verification is no secret. All it requires is a little knowledge of the SMTP protocol and your programming language of choice. To prove just how easy it is, I'm going to walk you through the basics using a simple python script. I'm providing this information as-is and completely for free.

Why am I offering this for free?

You may have noticed that I work for Email Hippo, a company whose main product is email verification. At Email Hippo, we are very open about the email verification process; as I said, it is no secret. What separates Email Hippo from a free service or this script, or in fact many of our competitors, is that we can do this with accuracy and in scale (hence the big old hippo).

Warnings and Disclaimers

Read more

Creating OWIN Middleware using Microsoft Katana

30 August 2015 Katana

If you’ve newed up an ASP.NET project template you’re most probably using the OWIN pipeline and are familiar with middleware such as Use, Map, Run or UseCookieAuthentication. These are all extension methods for IAppBuilder, found in your OWIN Startup class, calling logic that will manipulate the current OWIN context or environment.

Using the OwinMiddleware abstract class found in Microsoft.Owin we can start to create our own OWIN Middleware components that we can then integrate with our existing pipeline or distribute as a package.


The abstract OwinMiddleware class looks like this:

Read more

Identity Server 3 using ASP.NET Identity

16 August 2015 Identity Server

Identity Server 3 comes with out of the box support for ASP.NET Identity in the form of an existing implementation of the Identity Server IUserService interface. This implementation provides the normal Identity Server behaviour using your average ASP.NET Identity implementation as its user store.

This implementation came out of beta for the v2.0.0 release and whilst it's a little rough around the edges, it provides a solid, extensible user service for getting you started.

In this post I’ll cover how to set up the ASP.NET Identity user service, its default behaviour and also how to implement some common extensibility scenarios.

Example Implementation

To keep things simple we’ll use some of the in-memory implementations from my Identity Server implementation guide, but instead of using the hard-coded InMemoryUsers, we'll be using the AspNetIdentityUserService...

Read more