If you want to see what genius looks like...
Been a fan of Sakamoto's for about 15 years now, and stumbled on this video only tonight. Just awe inspiring...
How you know you've won
When you're on the receiving end of a headline like this (page B1 of today's Wall Street Journal):
Big Record Labels, MySpace Challenge Apple iTunes Store
Could anyone have predicted such decimation of the music market by Apple, even just a few years ago?
Time Capsule and Noise
I bought a 1 terrabyte Time Capsule last night- with over 14,000 digital photos, it's nice to know that the pictorial history of my kids' childhoods (so far) is safer than it used to be.
Before I bought it, I googled far and wide to find some comment about how loud Time Capsule was. That's especially important to me since, first, I have an amazing (and amazingly infuriating) ability to pick out white noise from appliances in otherwise silent situations, and, second, the Time Capsule was to be located just a few feet from my bed. Despite my attempts, I wasn't able to locate anything except anecdotal reports like "it's very silent", or "I can barely hear it"- I wasn't able to find an opinion from anyone who said they were as sensitive to that type of white noise as I am.
I decided to take a chance and bought it anyway, thinking I could relocate it (or return it) if the noise proved to be a problem. When I got it home and powered it up, disappointment hit almost immediately because I could clearly make out the noise from the Time Capsule, even when my G5 was powered up right next to it. When I put the G5 to sleep, it sounded like a model plane was idling in my bedroom.
Oh well, I thought, I'll let the first backup run overnight (I'll get to sleep somehow, I thought), then I'd think about where I could relocate the Time Capsule.
This morning, when I awoke, I immediately noticed that there was no white noise. Apparently, the Time Capsule engineers had the good sense to spin down the hard drive after some period of inactivity. So I don't think the noise will be a problem for my sleeping, because all the Time Capsule client machines will be sleeping at night too, so the Time Capsule should be silent.
Just thought I'd write about it here in case there are other noise freaks like me thinking of buying a Time Capsule. :-)
At Etech
Real time
Heard on NPR this morning-
"Scientists have developed a new atomic clock which is accurate to within one second every 200 million years. This is in contrast to the current official atomic clock which is only accurate to within one second every 80 million years."
Those people need to get real.
The OpenID Tipping Point?
This morning, a cadre of industry gorillas joined the OpenID Foundation. I had previously thought that 2007 would be the year when OpenID "went wide", but it looks like I was a year too early.
Congratulations to David, Dick, Johannes, et. al., who have devoted so much time to pushing this technology when most people didn't (and probably still don't) understand the need for it.
That's really what this announcement is about, IMO- these giants bring tens of millions of user identities to the OpenID universe, but, more than that, they bring the marketing expertise and resources to explain the need for, and benefits of, OpenID, to The Average Joe.
We really really love you...
"Please don't leave after we close this deal, or my payout gets reduced"
I heart Ruby and Rails
Tonight I needed to find out if there were any rooms on Lingr that hadn't had a room image created for them. This should never happen, but some exception emails that were being generated indicated that it was happening.
In about 10 seconds, I whipped this up in the console:
Room.find(:all, :select => :id).collect(&:id).inject([]) {|r, i|
r << i if !Image.find_by_imageable_type_and_imageable_id('Room', i)
r
}
Awesome
The Dance
No, I'm not talking about the Fleetwood Mac album- I'm talking about Microsoft offering to buy Yahoo.
Let's say the deal goes through- Yahoo dies (too much culture clash), Microsoft looses a lot of dough (they can survive it, though, easily), and much of Yahoo's top talent takes a short drive and gets hired by Google.
On the other hand, let's say the deal doesn't go through- Yahoo's shareholders are pissed, their employee morale is completely destroyed (think of all the people there who were underwater on their options, then woke up Friday morning to suddenly find they were in the money), and much of Yahoo's top talent takes a short drive and gets hired by Google.
I can't see any winners here except Google.
Time.to_s and the 19 million row scan
Lately we've been noticing slowness on Lingr's database. Some queries were taking a ridiculously long time to complete, even some COMMITs were taking half a minute or more. The slowdown seemed to be across the board, rather than isolated into a particular table or a particular query.
After much investigation, MySQL upgrades, etc, Kenn finally noticed something weird in the slow query logs.
We had many queries in there that referenced time ranges, like this:
SELECT * from events WHERE created_at >= '2008-01-21 00:00:00' ...
but occasionally, one would show up that looked just a little bit different, like this:
SELECT * from events WHERE created_at >= '2008-01-21 00:00:00 PST' ...With the help of MySQL's EXPLAIN statement, Kenn quickly discovered that while the first type of query would use indexes, and scan only, say, 100,000 rows, the second type would scan all 20,000,000+ rows. Further examination of the output of EXPLAIN revealed that the second query issued 4 warnings. SHOW WARNINGS revealed the following:
Incorrect datetime value: '2008-01-21 00:00:00 PST' for column 'created_at' at row 1
YIKES! We misformatted a timestamp in a query, and as a result, MySQL was scanning the entire 20M+ row table every time.
I tracked this query down in our code to something like this:
UserMessage.find_all_by_room_id @room.id, :conditions => "created_at >= '#{@time.to_s}'..."
As it turns out, time.to_s renders the timezone by default. Rails has added a nice format specifier, so you can say time.to_s(:db), and we were doing this everywhere else, but had forgotten the (:db) in this one place.
MySQL was barfing on the timezone specifier, and silently falling back to scanning the entire table. To add insult to injury, this query occurred in the rendering of an RSS feed, so it was used not infrequently.
Lesson learned- be very careful in how you format queries involving datetime fields. Forget to use the :db format specifier, and you could suffer terrible consequences.
For the extra curious, I did manage to find a MySQL ticket that seemed somewhat related.
The Sun/MySQL Debacle
Got news this morning that Sun is acquring MySQL AB- what an unsettling way to start the day.
To me, this move by Sun signals their total desperation. Their hardware business has been decimated by the commoditization of high-performance computing, as well as by virtualization technology. Their software business has been decimated by their own mismanagement of some real innovations, as well as the rise by Linux to almost complete domination of the non-Fortune 500 datacenter market (that is, while Fortune 500 companies might buy Sun's overpriced machines, the Fortune Other 50000 use mostly commodity servers running Linux). So now, Sun is desperate for some traction into those other 50000 companies.
Given Sun's history of how they manage products, leaving innovation to wither and die while they chase the million-dollar service contracts at the Fortune 50, I'd say things may not bode well for MySQL.
Replacement iPhone impressions
Now that I've lived with my replacement iPhone for half a day, I've got a few impressions of note:
First, the finish on the aluminum case (on the back of the phone) seems more tactile than on my previous phone. This could be just a new-versus-worn issue, but I don't recall the original one having quite the tack that this one has.
Second, this new one is much louder than the old one. This applies to both the speaker on the bottom of the phone (used for UI clicks, speakerphone, etc.), and the speaker at the top of the phone (the one that you listen to when you're on a phone call). I recall that a previous software update was supposed to increase the volume, which it did, but I'd say it's pretty clear that they've made some hardware changes to that same end.
The Apple Service Experience
A few days ago I noticed some spots on my iPhone's display. I tried wiping them off, but upon closer examination I could see that they were actually underneath the glass.
Today I went to Apple's website and made an appointment to visit the Genius Bar at the Apple Store that is five minutes from my house. My appointment was for 7:30pm.
I showed up around 7:25, and promptly at 7:30, they called my name. I showed the guy my phone and he confirmed that he could see the bubbles too. He took it in the back for a few minutes, then came out and said "I'm just going to replace the phone". At 7:45, I walked out with a new iPhone.
I came home, put the iPhone into the dock, and iTunes asked me if I wanted to restore the latest backup, or initialize this as a new phone. I chose to restore from backup. iTunes did its thing, and ten minutes later, I had all my data back inside the new iPhone. Bookmarks, contacts, calendar, everything. Even some new bookmarks that I had added to the Home screen (a feature only made available a few hours earlier by a software update) got restored correctly.
Now imagine what this experience might have been like if I had instead owned a Motorola phone, or a Nokia phone. Any other phone, really. Purchased from any other store.
Does anyone still not understand the reasoning behind this?
Those silly French...
there is some truth to the rant about the french. They were arrogant and unsympathetic colonialists. Napolean was a sociopathic maniac. Their history is marked by a love for bloodshed. They were certainly pathetic in WWII. But as long as they make such good pastry I will forgive them
