How Does Git Know What Functions Look Like?

While recently skimming the man page for git-log, I came across a neat looking feature for the -L option:

Read More…
Posted on 2016-08-03

Thoughts on Static Typing and Smalltalk

I'm a huge fan of static typing - I have fond memories of playing with ML and Haskell in college, struck by the shear elegance of the programs I read, and how when I wrote programs, they seemed to “just work”. Even though most of my professional life has been spent writing code in dynamically-typed languages, playing with Elm over the last year or so has rekindled my love for static types.

Read More…
Posted on 2016-07-12

Implementing Minesweeper in Pharo

My first “real” computer ran Windows 95, and like many developers, my interests in programming were rooted in gaming. Along with Hover and Mindmaze, one of the games I loved to play growing up - a game I still love to play - was Minesweeper. I've never implemented Minesweeper, but it's a pretty simple game, and since Pharo comes with an easy-to-use UI library called Morphic, it seemed like a perfect fit for my Smalltalk project!

Read More…
Posted on 2016-06-26

Talking Small

For the May language of the month, I got to play with a language that I've been looking forward to sinking my teeth into for a long time: Smalltalk. I've had a fascination with Smalltalk since I learned of it in college, but I didn't “get” it at the time due to lack of learning materials.

Read More…
Posted on 2016-06-18

Winning at Salt Cartography Using Algorithms and Statistics

I spend way too much of my free time playing Salt - a game where you sail around a procedurally generated ocean, fending off pirates and hunting for treasure. A fairly recent addition to the game was cartography; you can add islands and features upon them to a map to stay oriented in the world. In the world, there exists a cartographer named Hachure, who will evaluate what you've mapped so far and reward you depending on how many islands you've mapped and how accurate your mappings are. So imagine my dismay when I had him evaluate my map for the first time and saw this:

Read More…
Posted on 2016-06-16