Sorry this is taking so long. Something might have gone wrong. Please try reloading.

Creation of a Alexa Skill using an internal HR API
by Joe Harvey

Creation of a Alexa Skill using an internal HR API

With the automation of HR management here at Rock Solid Knowledge we wanted to create a new way to remember who was meant to be in the office. So with a recent office purchase of an Amazon Echo, I decided to take on the development of an interactive program that could be invoked via Alexa. The program would tell anyone who asks Alexa who is currently, or is going to be, out of the the office in the coming weeks.…

Keep Reading

Unit Testing Decorator Base Classes
by Richard Blewett

When using the decorator pattern it is a common practice to create a base class implementation of the abstraction that simply forwards all calls to the decorated class. This means that in the actual functional decorators, once you derive from this base class, you only need to implement the behavior for the specific methods of interest rather than every method. The caveat though is that, because C# methods are not virtual by default you must remember to mark all methods as virtual…

Keep Reading

Something about Nothing
by Andy Clymer

I must admit when I first saw the list of new language features for C# 6 like many I wasn’t that impressed, especially off the back of async/await. This last month I have at last started my first new real C# 6 project and I must say while the features have not been earth shattering they are actually a joy to use, and certainly do help to clean up a fair amount of boiler plate code…

Keep Reading

Working with CancellationToken and Dispose
by Richard Blewett

CancellationToken, and its owner CancellationTokenSource (CTS), were introduced in .NET 4.0 as a general purpose cancellation framework. It is often associated with Task as that was the first API to it. However, it is, in fact, independent of Task and should be used wherever you are supporting the concept of cancellation as async APIs you may call with be designed with it in mind…

Keep Reading