Blog

OO Design Patterns to FP Functions

11/15/2016
> Design patterns are a way to describe how abstractions are passed around in code In an object oriented language the abstractions are Interfaces, Abstract classes, Virtual Methods, etc.. For inst Continue Reading

OO to Functional Challenge

08/02/2016
I'm often asked at conferences and on twitter how to get into Functional Programming from an Object Oriented or Imperative mindset. This series of posts aims to provide a bridge between the two parad Continue Reading

Elm architecture for F# console apps

07/01/2016
At the most recent [@FunctionalKnox](http://twitter.com/functionalknox) meetup a question came up about the Elm architecture and how that might be implemented to develop a console application in F#. Continue Reading

Map, Bind, and Apply from examples

06/05/2016
Many blog posts have covered this topic by explaining the function signatures of each of these functions. While I think that is valuable, that's not the way I think about them when I'm writing code. Continue Reading

F# Card Game Part 2 - Dealing Cards

05/20/2016
In part one of this series we walked through [modeling the domain of our card game](/blog/f-card-game-part-1-modeling-the-domain/). In this post we'll use that domain as a guide to help us create a d Continue Reading

An FSharp monad TIL experience

05/20/2016
I'm going about my business dealing with option types thinking I finally have a good handle on monad usage within F# when suddenly I receive the following error. This expression was expected to have Continue Reading

Foreach and Command Query Separation

05/18/2016
In my previous post on [getting into higher order functions](/blog/getting-into-higher-order-functions/) I wrote about how I've been using higher order functions instead of foreach loops. All of the Continue Reading

Getting into Higher Order Functions

05/18/2016
Recently I've developed a love for F# and functional programming principals in general. Something about the way I code in those languages makes the code just seem to work the first time. After a sh Continue Reading