Avatar

Alan P. Barber

Software Developer, Computer Scientist, Scrum Master, & Crohn’s Disease Fighter

Barber Investment Group

Improving

Biography

Software Architect, Application Developer, Web Developer, & Database Developer. I specialize in Software Development with a focus on Architecture and Design. I have worked with both hardware and software throughout my career. I mainly develop for the Microsoft .Net stack.

Continue Reading

Interests

  • Artificial Intelligence
  • Crypto-Currency
  • Distributed Computing
  • Software Architecture

Education

  • Exam 70-480 - Programming in HTML5 with JavaScript and CSS3, 2014

    Microsoft

  • Professional Scrum Master I, 2012

    Scrum.Org

  • BS in Computer Science, 2004

    Bowling Green State University

Experience

My professional work history.
View my LinkedIn profile

 
 
 
 
 

Principal Consultant

Improving

Mar 2012 – Present Columbus, Ohio
A consultant providing development services with specialization in ReactJS, AngularJS, KnockoutJS, ASP.NET, C#, Microsoft SQL Server, and Microsoft Azure based technologies.
 
 
 
 
 

Consultant

Quick Solutions (now Fusion Alliance)

Jan 2011 – Mar 2012 Columbus, Ohio
A consultant providing development services with specialization in ASP.NET, C# and Microsoft SQL Server based technologies.
 
 
 
 
 

Senior Programmer

Corporate Research International

Nov 2005 – Jan 2011 Findlay, Ohio
Web Developer, Database Administrator, Phone Systems. I may have been a programmer by title but I was the manager of all things IT. I dealt with both software development as well as hardware issues.

Recent Posts

Read my blog!
View more posts »

Dependency Injection and Inversion of Control for C# Developers

A practical guide to Dependency Injection and Inversion of Control in C#. Covers constructor injection, composition roots, lifetimes, containers, testing, and when DI is overkill.

ResultR v1.0.2 Released: Functional Pattern Matching with Match()

ResultR v1.0.2 introduces the Match() method for functional-style pattern matching on results, making it easier to handle success and failure cases in a clean, expressive way.

Introducing ResultR

A Modern Take on Request/Response Dispatching for .NET Hello World! I’ve been working on a side project that I wanted to share with you all. After MediatR went to a paid model, I’m sure you heard all about that?

Introduction To The Results Pattern

A short introduction to the Result pattern in .NET: what a Result object is, why it helps, a basic implementation, and a look at FluentResults.

Enforcing .NET Architecture with NetArchTest

Architecture tests let you enforce layering and conventions automatically. Here’s how to use NetArchTest.Rules to keep your .NET architecture honest.

Talks

Talks available for user groups, code camps, and conferences.

A Quick Look at the Result Pattern

A Quick Look at the Result Pattern - Making exceptions more exceptional!

Blazor - Taking .Net to the Spa

Blazor lets you build interactive web UIs using C# instead of JavaScript.

CQRS + MediatR

Introduction to the CQRS pattern with MediatR

Microsoft Orleans

Building Highly Scalable Systems With Virtual Actors

NetArchTest

A fluent API for .Net that can enforce architectural rules in unit tests.

Passwords Don't Work! Using Two Factor Authentication To Secure Users

The Internet is a dangerous place and user passwords aren’t safe. Enter Two Factor Authentication (2FA) to the rescue!

Polly - The .NET Resilience Framework

Polly is a .NET resilience and transient-fault-handling library.

The MediatR Migration

The MediatR Migration:Navigating a Library Licensing Change

Projects

Open source projects I work on!
View my GitHub profile

ResultR

ResultR is a lightweight request/response dispatcher for .NET applications. It routes requests to handlers and wraps all responses in a Result type for consistent success/failure handling.

BitCheck

BitCheck is a fast, cross-platform CLI tool that detects file corruption by tracking file hashes over time. Perfect for monitoring important documents, photos, backups, and archives for gradual data degradation.

log4net.Appender.Splunk

A log4net appender for Splunk Http Event Collector (HEC) Sender

NLog.Targets.Splunk

A NLog target for Splunk Http Event Collector (HEC) Sender

CodeKatas

.Net Code Katas - A prebuild Kata project that already includes tests and base classes.

TwoFactorNet

A library that provides support for the creation of One Time Passwords.

Contact

Let’s get connected!