Twitter Is Not Evil, It's Just a Business

Today, Twitter announced version 1.1 of its API. The announcement included some interesting changes:

  1. All API requests must now be authenticated. Twitter doesn’t talk to strangers anymore. You have to at least introduce yourself before it’ll talk to you.
  2. API hits are now counted per-endpoint. Some APIs have more hits hourly and some fewer, purportedly based on endpoint popularity.
  3. Display Guidelines are now required to be observed. If you display tweets off of Twitter, they must be consistent with Twitter’s visual style or else.
  4. Pre-installed client applications must be certified by Twitter. Applications that come installed on things like mobile devices must be Twitter tested, Twitter approved.
  5. Twitter app growth is limited to 100,000 users. Apps are only allowed to have 100,000 user tokens before they’re forced to ask Twitter “please, sir, I want some more?”

Twitter developers in 6 months

In short, Twitter started acting like a business. And the world was shocked and apalled.

Should I Use ORM Or Not? Sure.

There are a whole lot of strong opinions about ORM floating around the internet and elsewhere. When you see so many passionate, conflicting opinions in so many different threads, it’s a pretty clear sign you’re looking at a religious argument rather than a rational debate. And, as in any good religious argument — big endian or little endian, butter side up or butter side down, vi or emacs, Team Jacob or Team Edward — this one has two sides, too.

Still a better love story than Twilight.

Complication is What Happens When You Try to Solve a Problem You Don't Understand

Code should be simple. Code should be butt simple. Code should be so simple that there’s no way it can be misunderstood. Good code has no nooks. Good code has no crannies. Good code is a round room with no corners for bugs to hide in.

We all know this. So why does most code suck?

Because it’s written by people who don’t understand the problem they’re trying to solve.

Oooooooooh!

Enabling "Personal Sites" with PHP on Lion

After switching over to Lion, I had to re-enable personal sites to continue working on a side project. Fortunately, it’s just as easy in Lion as it was in Snow Leopard. I’ll walk through the setup process in this article. Note that you’ll need administrator access for a few steps in the process, so you’ll need the admin password.

In Snow Leopard, the quickest and easiest way to get sites set up was to use the “Web Sharing” feature of the OS, and it looks like Lion works the same way.

Stupid Coding Tricks: Slugifying in SQL

Last night I was working on a project codenamed Jugatinus, and I needed to slugify some author names. Rather than write a Java program (ugh, work) or define a custom PostgreSQL function to do it (booooring), I stubbornly cowboyed it up and just used a regular old SQL update. It ended up looking like this:

    UPDATE
        author
    SET
        slug=regexp_replace(trim(regexp_replace(lower(name), '[^0-9a-z]+', ' ', 'g')), '[ ]+', '-', 'g');

Learning How to Program

Eventually, every programmer blogs about how to become a better programmer. It seems to be the price of admission to the industry. Programmers are a vain lot, and every one of us likes to think he has a unique viewpoint to contribute with insightful advice and meaningful guidance. The reality is that the “learn how to program” post is cliché. There are so many that each new one is nothing more than an echo of some old, vaguely-remembered, proto-learn-how-to-program-post. No one should write another. There’s no point.

So obviously I’m going to write another.

Programming is exactly like this.

The Evolution of an Analytics Team

WCG recently turned 10 years old, and it’s gone through incredible changes over that time. And even though I’ve only been with WCG since August 2010, in those 18 months I’ve seen my little part of the business, the Analytics team, turn completely upside down. It’s moved 3 times, seen both clients and colleagues come and go, seen weddings, and welcomed children into the world. And I’ve got to say, we’ve got some pretty great digs now:

Go Ahead, Pardner.

As it’s grown from a small handful of incredibly talented people to a team of almost 40, the work has changed, too. Looking back, we’ve come through two, and we’re just starting a third.

Internet Geekery of the Day -- Incredibox

I ran into Incredibox a few years ago and thought it was cool then, and I just ran into it again on Reddit this morning. It’s gotten a huge upgrade, and now it’s officially awesome.

This is what a French rapper looks like.

Migrated from Snow Leopard to Lion -- Nice!

Today I migrated to a new work laptop. Always exciting, especially when you’re also upgrading to a new OS version. In this case, I moved from Snow Leopard to Lion.

Yes, I actually was excited.

Shut up.

In addition to being excited, I was also prepared for a royally painful migration, since every migration I’ve ever done was royally painful. However, I’m happy to report that in this case, it was (almost) dead simple. As simple as it should always have been.

Holy Crap, Austin is a Musical for a Day

My friend Sabrina forwarded me a ridiculously awesome sneak-peek video of a dance she and the Broadway class she’s in will be performing at the Broadway in May show Ballet Austin’s putting on May 1 and 2.

The dance was performed flash-mob style at the Art City Austin festival that was happening downtown last weekend. The whole class showed up dressed casually, congregated in front of City Hall, and when the music for the number came on, they just started dancing. The effect was perfect: