The Life of a Programmer

Divorcing a value from its name

Understanding “values” is perhaps the most critical part of understanding programming. We are inundated with a variety of terms like “by value”, “by reference”, “member

How to handle an error

Error handling should be simple. It can become mired in complexity, but I don’t believe it has to be that way. If we stay focused

What is a closure?

Closures have been around a long time yet have experienced a resurgence in the last decade. They were first implemented in the functional language Scheme

A trail through custom languages

How often does one need to write a custom language? Many projects often shun them, but I think domain specific languages are important. They offer

The syntax of a conditional

Conditionals are a key construct in programming: from the simple if statement, to loops and switches, and even to dynamic mapping. The essence of program

Complexity of simple data types

Sometimes the simplest of things have complex answers. In programming we like to think of simple data types, but in reality there aren’t any. While

Can a language be safe?

Some languages hand us sharp knives and encourage us to play with them. Other languages put us in padded rooms and discourage us from doing