An eclectic blog with topics including (but not limited to): Software Engineering, Music, Recipes, as well as random bits of prose and poetry.

How to Polarize Yourself Through Social Media

Consistency. Public consistency. These are the polarizing agents of the Facebook world that are keeping people so deeply divided. There was once a time when political beliefs were held in private. Perhaps some discussion with friends, family, neighbors would disclose elements of one’s beliefs. For the most part, however, very few people publicly broadcast these beliefs to extended family, colleagues, acquaintances, of mere “friends of friends”. Sharing with such a broad audience becomes dangerous because our desire to appear consistent, especially within the context of others’ perception of us, drives us further down the path that appears to fulfill this consistency. Sometimes at a great cost.

In the Korean war, American POWs were made to write pro-communist, or at least conciliatory essays. The act of writing something down, especially something that could later be referenced as evidence of a tendency toward a belief, was key to changing the POWs minds. Not only their attitudes, but their perceptions of themselves. These essays were posted around camp and broadcast on the camp radio, which created a public perception as well. Acquiescence to peer pressure is well known, and this can be applied to appearing consistent with public perceptions about oneself as well.

Facebook and Twitter are platforms where people are constantly sharing, commenting upon, and “liking” articles and other media that can be aligned with a certain set of beliefs. So all at once, with minimal effort, we have a persistent public record indicating our tendency toward a belief. There is no room to change your mind. There is no private discourse where an evolution of ideas and beliefs can occur. There is only a funnel of actions where you swirl further and further down into a position that may be much more extreme and inflexible than would ordinarily be possible for most people.

The Solution? “Think twice, click once.” :)


Object-Oriented... Perl

So I had to write a script to parse logfiles from named for statistical purposes on a DNS-based experiment we’re running at work. I’ve been using Perl a lot lately because one of our larger clients has much of their legacy code written in it. One of the original engineers in their organization was pretty good with it (I never got to meet him, though), and I’ve learned some neat tricks from maintaining and extending it. The string parsing and manipulation is just too good to pass up, so I decided to employ it for this project.

There was just one problem with all the perl code I’d seen so far. It was all procedural. There were functions, but no encapsulation, and lotsa side effects. I wanted to write mine a bit more cleanly than that.

First off, there are a few interesting aspects of OOP in Perl. Basically everything is still treated like a script, so at the end of every class file, you’ve got to return something:

Return Something… Or Else!!


Get With Git

So we’ve been transitioning away from CVS and appending ‘.old’ to files as our two forms of version control. I’ve been leading the charge to use git whenever possible. I love it, and have been using it on my own stuff ever since going through Michael Hartl’s Rails Tutorial.

I wrote this for the guys at work and have been circulating it as a training doc.
There’s a few sections left to do, but it’s pretty good, and I’ve gotten good feedback from it.

This will be a quick intro to using Git for your projects @ R&B. This includes implementing Git on a new project, setting up a remote repo for the project, and setting up a new instance on your local dev environment. We’ll also explore committing and pushing to the repo, as well as simple branching and merging techniques. If you want to skim, hit the section titles and monospaced parts to get the juiciest bits. If you just need a cheat sheet, skip to the last page. ;)

Git your project going