Avatar
I'm Drew Breunig and I obsess about technology, media, language, and culture. I live in New York, studied anthropology, and work in advertising technology.

These are reactions to things I feel are important.

Follow me on Twitter.

Programming Linguistics

I’m learning Ruby, and it’s very passive aggressive. “Conventions” in Ruby really should be called “rules.”

Certain coding styles are strongly suggested, like styles for naming variables, but then figure strongly into existing toolkits that are built into the language. I wouldn’t have such a gripe with this if they just came out and told me it’s a rule.

When studying linguistics in my anthropology days, it was a given that language defined and delineated the structures of cultures. I’m surprised it took me this long to learn that the same rules apply to programming languages.

For instance, Objective-C is easy to read. It’s the perfect language for Steve Jobs: neat and clean, direct and balanced. APIs are meted out just enough for a powerful language, but not so much that they restrict understanding to anyone with the barest understanding of the code.

Apple’s drive for design extends to their code, and no one should have been surprised.

Ruby on the other hand, perfectly expresses many of the quirks of hacker culture. There’s a laundry list of built in functions, more than most will even encounter. It dedicates itself to openness, so the only strong decisions it makes are passive. For example, if you fail to heed naming “conventions” within instances, short-cuts won’t work. (But at the same time, you might never have found the short-cut among the sea of any Ruby glossary)

There’s six ways to do everything when there only needs to be one. It’s the perfect language for Valley hackers.

What’s funny is how these quirks in code manifest themselves in the workings of companies, products, and ultimately us (the users). If I were back in school I’d be applying Sapir Whorf to python, Ruby, and C++. There’s meaning to be found in these languages that quietly structure most of our lives.