Tag: Programming

Musicians, Mechanics, and Mathematicians
Thank you all for your comments on my previous post, I appreciate the time you all took in sharing your perspectives very much. Many of you have brought up great analogies to demonstrate how you feel and in reading these responses I realized I must not have been very clear. There are some musical geniuses who…

Why do most programmers work so hard at pretending that they’re not doing math?
In the early days programming was considered a subdiscipline of mathematics. In fact, the very first person to write an algorithm was renowned as a mathematical genius. However, somewhere along the way we forgot. We began to think of ourselves as something different, a profession not beholden to rigor or deep understanding of the models we create. It’s easy to see…

2011 In Retrospect: A Year of Writing F# Professionally
For the past year I’ve been working almost entirely in F# and have found the experience to be everything I hoped it to be and better. In just six months I was able to bring a research project to fruition which has since made our company millions of dollars. F#’s terseness made algorithms a joy…

Advice for Getting Started with F#
I had a great time at NYC Code Camp this last weekend. About half the people in my talk already knew F# and were there to talk about Type Providers, the other half just came to see what this F# thing was all about. This post is to help those in the second half begin their F#…

Record Linkage Algorithms in F# – Extensions to JaroWinkler Distance (Part 3)
While writing the previous article on tokenized matching I realized I left out some important background information on JaroWinkler distance. First, there’s something important to know about the JaroWinkler distance: it’s not a metric distance and so does not obey the triangle inequality. That is, if you found the JW distance between strings A and B, and then…

Imperative Pseudocode to Pure Functional Algorithm with GaleShapely and F#
Continuing from last time, let’s look at how one goes from imperative pseudocode to pure functional using GaleShapely as an example. Overall, to convert an algorithm from imperative to functional is a fairly simple process once you understand how to convert from a while loop to recursion with accumulators. This post is just a more advanced…

Record Linkage in F# – Token Matching, Stable Marriages and the GaleShapley algorithm
This post was originally published September 13th, 2011. Initially, one of the biggest problems I found when trying to marry records was the god awful quality of much of data I often have to work with. It’s mostly old mainframe and database data with truncated fields, limited character sets and fields with nonsensical contents. Even…