New Free eBook C# 6.0: What’s New Quick Start
The first chapters of my new free eBook have just been published.The book will cover the new features added in C# 6.0 and provide a quick start to those new to version 6 or as a handy reference to...
View ArticleThe Joys of Silence
I recently took possession of new desktop PC. As a Pluralsight author one of the unique considerations when choosing a new machine was generated noise. After some research I settled on sourcing the...
View ArticleNew Pluralsight Course: Business Readable Automated Tests with SpecFlow 2.0
My newest Pluralsight course was just published. Business Readable Automated Tests with SpecFlow 2.0 teaches how to create tests that the business can read, understand, and contribute to. These...
View ArticleSpecFlow 2 Cheat Sheet
Below is a revised version of my original SpecFlow cheat sheet updated for v2. Just right click, save-as to get your copy.
View ArticleHook Execution Order in SpecFlow 2
SpecFlow hooks allow additional code to be executed before and after various stages of the test execution lifecycle, for example running additional setup code before each scenario executes.If there are...
View ArticleFree eBook C# 6.0: What’s New Quick Start Complete
My new free eBook “C# 6.0: What’s New Quick Start” is now complete and available for download.The book covers the following:Using Static Type DirectiveString InterpolationThe Null-Conditional...
View ArticleYour First Xbox One UWP App
There’s been a number of almost-goosebump-inspiring moments during my .NET dev experience such as the first time I saw my code running on a Windows Phone 7. Another one of these moments was seeing my...
View ArticleNew Pluralsight Course: Automated Business Readable Web Tests with Selenium...
SpecFlow is a tool that can translate natural language scenarios (e.g. writing in English or other spoken languages) into test code. This can allow business people, users, or other stakeholders to...
View ArticleNew FeatureToggle Release: v3.4 With Fluent Syntax
FeatureToggle is an open source feature toggling / feature switching library for .NET.Version 3.4 Introduces an new additional way to get the value of whether a toggle is enabled or not.In versions to...
View ArticleUsing the C# 6.0 nameof Operator in ASP.NET MVC Razor Views
Traditionally to reference an action and/or a controller in a Razor view the action/controller name is represented as a string as shown in the following code:<ul class="nav...
View ArticleWriting Implicit and Explicit C# Conversion Operators
When writing custom classes we can provide behaviour to allow for both explicit and implicit conversions to other types.Implicit conversion operators are those that don’t require an explicit...
View ArticleNew Pluralsight Course: Dynamic C# Fundamentals
My Pluralsight course “Dynamic C# Fundamentals” is now available.The course is split into 4 modules:Module 1 introduces the dynamic features of C# and how it is enabled by the Dynamic Language Runtime...
View ArticleCreating Your Own Custom Dynamic C# Classes
C# provides pre-supplied dynamic types such as the ExpandoObject. It is also possible to create new dynamic types or add dynamic capabilities to existing custom classes.One of the core interfaces that...
View ArticlePlaying and Processing Audio in UWP Apps with Audio Graphs
UWP apps can take advantage of the Audio Graph API. This allows the creation of audio nodes into an audio signal processing pipeline/graph.Audio flows from one node to the next with each node...
View ArticlePersistent Actors in Akka.NET
By default, actors in Akka.NET lose their internal state when they are restarted, for example due to an internal actor error or a system crash.Akka.Persistence adds additional functionality to enable...
View ArticleDatabinding Conversions Using Functions in UWP XAML Apps
When using compiled data bindings using the x:Bind syntax in UWP apps, as an alternative to using an IValueConverter, a function can instead be defined. This means that whenever a value needs...
View ArticleUsing Python Expressions from C# Code
Utilizing the dynamic features of C# and the Dynamic Language Runtime (DLR), among other things, allows C# programs to interoperate with other dynamic languages built on top of the DLR.For example,...
View ArticleRefactoring Production Code With Experiments and Scientist.NET
When refactoring a part of an application we can use the existing tests to give a level of confidence that the refactored code still produces the same result, i.e. the existing tests still pass with...
View ArticleNew Pluralsight Course: Working with Nulls in C#
My latest Pluralsight course is now available for viewing. It covers the fundamental aspects of working with nulls in C# code.From the course description: “Unexpected null values and...
View ArticleNew Pluralsight Course: Testing C# Code in Production with Scientist.NET
My latest Pluralsight course is now available for viewing. It demonstrates how to use the Scientist.NET library to execute candidate code in production alongside the existing production code. This...
View Article