Nodevember 2016

I just got done with Nodevember 2016, where I saw some great talks, caught up with some old friends, and made some new ones. I also had a fun time hanging out in person with some of my LeanKit co-workers who work remotely, and I work with the greatest people…

Underwater

Here is an old blog post of mine from March 4, 2011. Some of the references are quite dated now, but the feeling is still the same, so here it is again. Remember on Fear Factor when they used have people go underwater and pick a lock or solve a…

F-Words Slides

Thanks to everyone who came to my "F-Words" talk on functional programming terms at CoderFaire Tennessee. Here are the slides. https://docs.google.com/presentation/d/1CP8I2rr4ZuQ1l7iJz7MTbJXTXdFoVHug7QRw7Mdzpgc/edit?usp=sharing…

Partial Application vs. Currying

Is the entire world of aspiring functional programmers generally confused about partial function application and currying, or is it just me? I like to feel well-informed when I think to myself that these two are not the same thing, but I still couldn't tell you what the difference is. To…

Magic Not in the Monad

I am recently coming to grips with a foundational misconception I have been entertaining about monads, possibly since I first heard the term. I am not a category theorist, and I first encountered monads in the context of functional programming. For me the monad has always been shrouded in mystery…

Rebuilding Haskell in C#: Functors

Look out; I've been digging into Haskell again. I enjoy learning about Haskell, but more than that, I enjoy learning to think in a functional way. Haskell is a particularly good language to facilitate that, as it is arguably the most functional of functional languages. It boasts "pure" functionality, and…