14 Sep 2011
I was super jazzed when I got this email from our President, Barack Obama today. He invited me to dinner! I do have some problems with some of the stuff he’s done over the past few years, so I felt compelled to write him a quick note back. Hopefully, he’ll respond soon. That would be the friendly thing to do, right?
Anyway, here’s our exchange. I can’t wait for dinner.
Friend –
I’m writing to invite you to dinner.
If that sounds familiar, it’s because we’ve done this before. I’ve asked the campaign to organize small, five-
person dinners with supporters like you as a regular thing.
These dinners are important to me. Not just because they help me stay connected to supporters like you who are
doing the hard work of building this campaign, but because they set us apart.
No matter what our opponents do over the next 14 months, we have chosen to put people at the heart of our
campaign – and we’re focused on building it one grassroots donation at a time.
I’m asking you to make one today.
Will you donate $5 or more today to be automatically entered for a chance to join me for dinner?
I read a few letters every day from the many that come to the White House. Those personal connections with the
people who put me here drive me and remind me why I set out to do this job in the first place.
Our focus on everyday Americans and their stories has always made our organization more than just a political
campaign.
From the very beginning, we’ve set out to practice a different kind of politics – proving that we don’t need
checks from Washington lobbyists or unlimited special-interest money to win an election.
That’s why I’m asking you to step up and donate today. When you do, you’ll be automatically entered to win a
place at dinner:
http://my.democrats.org/Dinner
Maybe I’ll get to thank you in person.
Barack
Barack,
Appreciate the email. Odd generic email address you use, but I guess that’s to keep the crazies at bay, right? I know how that is!
So, I’d love to have dinner. And honestly, I’d love to give you much more than $5. I’ve been a big supporter of yours since your first DNC address (and when it turned out that my old boss and fantasy baseball opponent played basketball with you in law school! Small world!)
The only thing is that I feel entirely let down by you and the Democratic party over the past 2.5 years. As a lifelong Democrat, I feel like we’ve been caving on things that are both the core of our party, and the things that separate us from the people who just don’t care about our fellow Americans (and our fellow world citizens).
So, let’s make a deal. You get your jobs deal through. Maybe you even get your team to start talking more about investing in America (you know, to get us out of these economic doldrums we’re in). You start talking and acting like a progressive, tough, bad-ass Democrat again, and I’ll give you some money and join you at dinner. Until then, I’ll hold this carrot out there for you, to remind you of how you got elected. You got elected by being f’ing awesome, not being someone who backs down from John Boehner. Seriously, John Boehner scares you? I just don’t get it. You must have some sort of Sixth Sense-like twist coming. Is he a ghost? Or maybe he’s really got some sort of vampire thing going, and that’s why he’s that color (trying to fit in).
In any event, when you start being bad-ass again, and making me proud of my party like I was in November of 2008, I’ll start helping you out. Tit-for-tat and all that.
Sound good? Awesome. Look forward to hearing from the old Barack soon.
Your pal,
Ryan
11 Sep 2011
I’ve got a 2 year old MacBook Pro (15-inch) that I use as my work and home machine. It’s got my canonical iTunes music collection, my photo collection, all of my archived mail, files, whatever.
It is the one machine to rule them all.
I try to do a lot of smart stuff to keep my machine and data safe, since pretty much everything I care about is on it. I have a Time Machine backup that I keep up-to-date religiously. I sync a collection of documents to Dropbox as an off-site backup. The music and photos get sync’d to another machine on my home network.
Nothing groundbreaking, but I try to do what I can to keep this machine happy and healthy.
Over the past few months, as often happens, software upgrades and new applications put a little extra stress on the hard drive and CPU, so things started to get just a bit slower. Things might stutter a bit as I scroll down a web page, or flip between applications. Just enough to annoy me while I worked and make me look longingly at Katie’s MacBook Air with its nice solid-state drive and near instance application loading and boot up.
So, I tried to do the best thing I could do, short of buying a new machine and having to go through all of the work to make that new machine the machine. I SSD-ified it.
Well, first, actually, I found out that I could upgrade the RAM to 8GB. $45 later, I had my shiny 8GB RAM kit, took the 10 minutes to install it, and in the couple of weeks since I installed it, my machine has gone into swap a grand total of 500 times (or so). In the couple of weeks before that, it’d gone into swap millions of times. Score one for memory.
The final step was the actual SSD-ification. I found a reasonably good deal on 256GB SSD (at MicroCenter, and grabbed a USB enclosure for the disk I’d be removing at the same time for $8). When I got home from my excusion, I loaded up Carbon Copy Cloner, and cloned my existing data onto the SSD. About 2.5 hours later, I had this nice SSD with all of my data on it.
Again, another 15 minute surgery to the laptop, and I had removed the old drive, placed in the new SSD, and closed things back up.
This machine now flies. iTunes starts in seconds. Excel opens up in seconds rather than minutes. It boots up and loads up my settings in less than a minute.
It’s a giant MacBook Air.
And, at the same time, I’ve now gained a nice backup drive (remember that USB enclosure). Every week or so, I can clone off my entire drive and have a 3rd backup of my data.
All in, the upgrades cost me about $450, which is less than half the cost of buying a brand-new low end MacBook Air, and about a quarter of what a new MacBook Pro will cost. I’m guessing I’ve added at least another year or two to the life of this machine.
It’s probably one of the easiest and most productive upgrades you can perform on your aging laptop.
06 Sep 2011
A little navel gazing here, mostly so that I can find this post again someday if I run into this problem.
I was trying to move to using Markdown as the syntax for my WordPress posts, basically just to make my life a bit easier. Markdown is basically just a way of writing HTML more quickly, easily, and readably than actually writing HTML. There's a nifty WordPress plugin called Markdown on Save that lets you use Markdown with Wordpress.
MarsEdit, the awesome app I already use to make my life a bit easier, supports rendering Markdown as a Preview, so you can make sure it's all coming together the way you'd like it to. And MarsEdit supports WordPress' custom fields, so, in theory, I could tie the little field that Markdown on Save uses into MarsEdit, and then write my posts here in Markdown, and razzle-dazzle, life would be grand, lollypop-eating puppies would be raining from the sky full of rainbows, etc., etc.
Except it doesn't work. Looks like in WordPress 3.1.3, the WP devs introduced the concept of a protected field (prefixed with an underscore) that can't be edited from outside the app. Of course, Markdown on Save uses one of those protected fields, so MarsEdit wouldn't work out of the box.
A bit of google-fu found this post, but hacking the corresponding code in for Markdown on Save didn't seem to work. Nor did hacking the Markdown on Save source itself to make its field not prefixed with an underscore. That worked for ticking the checkbox of the Markdown plugin, but seemed to make WordPress eat the content of the post.
I'm guessing if I spend a bit more time on it, I could probably figure out how to make it work. But that would defeat the purpose of having something that makes my life easier.
Update: So, after 30 minutes more of google-fu, of course I stumbled on a much beter solution. Install Markdown (or MultiMarkdown), setup a service, and then type up Markdown in MarsEdit, transform it with the service, and then publish as normal HTML.
In other words, don't bother with Markdown on Save.
28 Aug 2011
Monday: Arrive in Edinburgh. Forget that the city is built on bridges. Spend 45 minutes walking around (actually, over) our hotel until I realize I'm a moron. Also, didn't realize ahead of time that the reason it was so expensive to stay in the city is that there's a massive festival going on.
Tuesday: Go off to explore the city. Check Twitter at the hotel and realize that the East Coast got hit with an earthquake. Wonder if anything fell down at our place? (Nope.) Taste a bunch of different scotch whiskys. Awesome. I'm particular to the Islays and Speysides.

Wednesday: Climb Arthur's Seat, wearing neither the right shoes nor the proper clothing. Still pretty awesome. Eat a very very good lamb burger.

Thursday: More random city exploring, including a visit to the very cool Camera Obscura and the National Museum of Scotland.

Friday: We grab a tour across Scotland to Stirling Castle and Loch Katrine. It rains (first time on the whole trip it really rained). When we get home, we realize that Hurricane Irene is going to make our lives miserable (i.e. our flight was already canceled). Make a billion dollar phone call to Delta and get our flights switched to Saturday, rather than Sunday.

Saturday: Get to the airport very very early. Which turns out to be a blessing, as they can't find our reservation. An hour or so of phone calls and computer wizardry gets us on our flight to Paris, but rather than a 1 hour layover, we've now got a 7 hour layover. And what is probably the last flight to Boston.
Sunday: Slept in my own bed. Turns out Hurricane Irene is all bluster. Some leaves down, some rain, but a pretty quiet day of photo uploading, laundry, and detox. And this blather.
25 Aug 2011

17 Aug 2011
Over the past few months, as I've been playing with different web technologies, I've dabbled with Redis. I really like the idea behind it: a super fast, all-in-memory, key-value store (disk basked so that you don't lose everything in a crash, can replicate, get backups, etc).
I think what I like most about it is that it is does one thing very very well. It doesn't try to replace your relational database. It just focuses on being a super fast way to store little buckets of data. Now, granted, you can do really creative things with those little buckets of data, but, by and large, Redis is just unbelievably fast.
Today I had a chance to play with Redis using some pseudo-real data. I wanted to benchmark/simulate how it would perform at holding keywords, and then the references (ids) to logs that contain those keywords. I'm imagining using this to keep track of support logs (hey, ftp has been mentioned in support contacts 15x today) or maybe to track server performance (tracking loads of servers or which services are running, etc). Tons of systems can do this. What Redis does really well is doing it fast (have I mentioned that?) and doing really awesome set geometry (intersections, unions).
For instance, imagine you wanted to keep track of support contacts. You look for keywords coming in via email messages (ftp, mail, outage, whatever). That's easy. But now what if you wanted to get the overlap where ftp was mentioned in the same email as cancel? That's harder. In MySQL, you might have to do some smart sub-selects, or joins to a bunch of mapping tables. It works fine when you've got a small number of rows, but the performance gets progressively worse. You probably also end up writing some ridiculous queries to make it happen in a way that doesn't end up going off to disk and killing your performance entirely.
With Redis, it's dead simple. I mean seriously simple.
First, you install Redis. It's about the easiest thing I've done. Untar, make, run. I didn't even bother to make any config changes.
Next, either via script or via the command line, you start adding data. For the support keyword example, you might do something like:
sadd ftp id_1
sadd ftp id_2
sadd ftp id_3
sadd ftp id_4
sadd cancel id_2
sadd cancel id_4
Basically, messages 1-4 mentioned FTP. Messages 2 and 4 also mentioned the word cancel.
To get that intersection, you follow that up with:
sinter ftp cancel
And that's it, it'll tell you id_2 and id_4 contain both words. Done and done.
Of course, that's a pretty simple example. I threw together a test script that generated 80 random keywords and 50000 random message ids for each keyword. The random ids were all in the same range (1 - 999999), so there's a good chance of some overlap, but not a ton. This seemed like a pretty good test of Redis.
It took, on average, about 4.5 seconds to insert 50k bits of data. So for the total of 4 million entries, it took about 6 minutes. That's pretty darn fast.
But what's so much more impressive is the intersection work. To get the intersection between two sets of data (which was usually between 1500-2500 entries) it took …
.05 seconds
Seriously.
And that, right there, is why Redis is f'ing awesome.
05 Aug 2011
"CANTOR: And what airlines have done is have stepped in and said, well, if we’re not going to pay that money to the federal government, we’re going to keep it towards our own bottom line. And I guess that’s what business does."
Oddly, Cantor seems to be unintentionally making the progressive argument about corporate taxes here. While conservatives generally argue that cutting business tax rates will lead to companies passing on savings to consumers and hiring more employees, progressives argue that corporations will just pocket much of these savings. The FAA shutdown offered an ideal test case for this question, and it seems that even Cantor agrees that pocketing tax savings is “what business does.”
(Via ThinkProgress.)
ThinkProgress pretty much nails it. Time and time again, the "market" has had the opportunity to police itself, to do all of the good things it says it does when unfettered.
And now we're all financing a huge bailout, a housing market that is gutted by a bunch of assholes betting on defaults, and a Congress that just passed a debt ceiling package on the backs of the handful of entitlement packages that have actually made a massive difference in the quality of life in the United States over the past 75 years.
The good news, though, is people are starting to get it:
A couple of weeks ago, congressional scholar Norm Ornstein dubbed this 112th Congress as the “Worst. Congress. Ever.” And after the combative and exhaustive debt debate, it appears the American public agrees with him. Per a brand-new New York Times/CBS poll, 82% now disapprove of Congress’ job, which is a record high in that poll. A CNN poll also had Congress’ disapproval at an all-time high of 84%.
Thank you, America, for showing some brains for the first time since 2008.
It gets better.
the Tea Party’s fav/unfav is now 20%-40%, compared with 26%-29% back in April; and by a margin of greater than 2-to-1, respondents said creating jobs should be a higher priority than spending cuts
Sanity.
Now, the bad news: President Obama will take this as a sign that he and his fellow Democrats need to show some more bipartisanship. So expect that, in the coming weeks, they'll compromise on a "jobs" bill that will not create any new jobs, but will reduce taxes on people making a lot of money and voting GOP. Because, you know, Compromise is better for American than Jobs.
29 Jul 2011
"According to Nielsen, the midnight-to-1 a.m. combo of All That and Kenan and Kel drew roughly 600,000 viewers (of all ages) Monday, compared to the 374,000 viewers who caught Lopez Tonight on TBS in the same hour. It also bettered the 559,000 viewers who caught an Awkward rerun on MTV at midnight, as well as the roughly 500,000 people who checked out reruns of The New Adventures of Old Christine and HIMYM on Lifetime"
(Via Vulture.)
This is in no way shocking. In fact, it's only shocking that it hadn't been done before this. As a child of the 80s (and a teen in the 90s), I was there when cable tv exploded. During that time, the smaller UHF network and cable networks flooded their time slots with reruns of 70s and 80s tv shows (and, later, 90s shows).
I seriously believe I've seen every episode of Happy Days ever created. A show that aired a majority of its episodes before I was 3. (Same with Laverne and Shirley, The Jeffersons, etc).
Nick at Night, the good old channels 56 and 38 (in Boston), old school USA Network. They aired every single semi-popular show from the 70s and 80s ad-naseum. Today, with reruns on related cable networks, Netflix and Hulu, DVD, it's much much easier for someone to keep up with their favorite tv shows.
So, as someone pretty much sitting in the every advertisers target demographic, I've seen every show from the 70s and 80s, and pretty much every modern show. And I can catch them whenever I want online or on-demand.
What's missing from this picture? The other shows that aired during the 80s and 90s. The shows that padded out networks like Nickelodeon and USA. The shows that have been incredibly hard to find and that would cause almost any 25-35 year old to stop what they were doing and sing along to the theme song.
When I heard TeenNick was airing these shows, I set my DVR to start recording Clarissa Explains it All and Doug. I still knew the theme songs. I remembered character names.
Apparently everyone else did, too.
Just wait until Hey Dude and Salute Your Shorts are on. Ratings gold.
24 Jul 2011
I've been playing with Spotify for the better part of a week and I think I've decided that, at least for me, it's not an iTunes replacement. The music that I really like, I will still buy it via iTunes or Amazon. For one thing, it's really cheap (Amazon runs those $5 album deals all the time), and two, it means that I'll always have music available when I'm out of range of any signal (without paying $10/month). I also don't want my music tied to a company that could go out of business, or lose rights to certain artists, or whatever horrible licensing catastrophe the RIAA can come up with (c.f Netflix Streaming, it's lack of new titles, and ever rotating collection of long tail titles).
What Spotify (and, presumably, all of the other streaming music services) is really good at is listening to the music you don't like enough (i.e. you're too embarrassed) to keep in your iTunes library. When you're playing foosball and someone references Michael McDonald, you can go back and listen to "I Keep Forgettin'". When you hear some 90s R&B on the radio, you can play yourself some Jodeci and Joe Public. You can binge on Dan Folgelberg and the Little River Band.
Spotify fills in the gaps in your library with the music you would never really buy. Because you're too ashamed of it.
Which is awesome.
And also, likely, its downfall.
If Spotify (or Rhapsody or any of the other streaming services) really take off, why wouldn't Apple (or Amazon) get the same streaming licenses that Spotify has? If iTunes let you stream any music off of the music store (and create playlists, tag songs, etc), wouldn't that be about the best complement to buying music? Sure, there are some folks who will buy less music (trading it for whatever monthly fee Apple charges), but a whole bunch of people will stream a bunch of music, then buy more (when they realize they've listened to Hall & Oates 10 times in a row).
This seems like the logical next step for iTunes/iCloud (as well as for Amazon's MP3 Store/Cloud Player, and probably for Google Music, too). And a likely death (or, in a best case, acquisition) for the streaming music services. One of them will probably survive, just as an alternative to the Apple/Amazon cartel.
So enjoy it while it lasts. In a couple of years, it'll be part of iTunes (like everything else).
20 Jul 2011

First real vacation in a couple of years.