Dreaming Of Beetles

A Misanthropic Anthropoid With Something to Say

Mobile Safari Benchmarks

Posted by Chris Latko On June - 18 - 20091 COMMENT

Update: Ran the benchmark on an iPhone 3GS 32Gb and saw yet another three-fold increase in speed.

Schiller was tossin’ around some pretty impressive benchmarks on the new version of Mobile Safari in iPhone OS 3. I’ve been using the OS 3 betas from the second they were available and definitely noticed speed improvements right off the bat.

These SunSpider tests were done on the same 2nd-gen 16Gb 2G iPhone on the same network. I’ve been saving these numbers for a bit, dang NDA, but now here they are:

mobile_safari

Mobile Safari SunSpider Benchmarks


Popularity: unranked [?]

Twitter, We Have A Problem

Posted by Chris Latko On June - 17 - 2009ADD COMMENTS

spitterSpatter, Speet, Spitter, Spam!

Looks like the reCAPTCHA got jacked (or more likely the Mechanical Turk got involved) and the floodgates have opened for the spitters (or whatever you wanna call them). The account shown on the right gained several hundred followers in the time I watched it. Page after page after page of these useless, non-profile-imaged, non-bio’d, non-locationed, never-status-updated freaks.

Back to watching Scotty Got An Office Job or earning another banjo on Hunch. No wait, I’m extremely busy with a crazy deadline. Scratch that.

Off topic: I updated the Intel-Optimized Firefox build. It seems there is an official RC2 that slipped out after the announcement of the RC availability. I’ve built the RC2 version and you can download on the download page.

Popularity: unranked [?]

Browser Battle Round Three, Fight!

Posted by Chris Latko On June - 9 - 200924 COMMENTS
Gort!

Gort!

Update: It seems that I’ve over-optimized a bit on the latest build. I’ve toned it down and made it Tiger-compatible. The new build is on the downloads page.

With a few new browsers released this past week, I thought I’d redo the SunSpider JavaScript Benchmark on a couple (sorry Opera), and report the results. As usual, I disabled all add-ons, extensions, InputManagers, etc. The benchmarks were run on the same machine as the previous tests.

I also created another Intel Optimized Build of Firefox 3.5 RC preview (Shiretoko) using an updated .mozconfig file based on several reader contributions (including Mozilla employees). This new config is heavily optimized (that’s your warning). You can download both of those files on the downloads page.

Safari and Shiretoko did better than their previous incarnations, while Chrome OS X suffered in it’s jump from Chromium. The breakdown looks something like this:

  • Safari: 20.9% faster
  • Shiretoko: 13.6% faster
  • Chrome: 16.7% slower

And the neat graph looks like this:

SunSpider JavaScript Benchmark Results

SunSpider JavaScript Benchmark Results

Oh, and to find out what Gort is all about, go to about:robots in Firefox.

Gort! Klaatu barada nikto!

Popularity: unranked [?]

Why The iPhone 3GS Compass Is Important

Posted by Chris Latko On June - 8 - 200912 COMMENTS

compassUpdate 2: And people thought I was nuts when I said the compass is important. Apple also seems to have not realized as they are just now working on more video hooks in the current 3.1 betas. Also, check out this video from AcrossAir. Mind blowing…

Update: Here is a much more in-depth posting on the importance of the compass:

The New iPhone Is a Pointing Device For The Real World: The Ground Will Speak.

One of the sleeper hits of the WWDC was the announcement of a magnetometer in the iPhone 3GS. I’m not sure this is getting the attention it deserves as I believe it is truly groundbreaking and will open an entirely new paradigm in mobile computing.

Well, I guess one guy understood the importance (from Gizmodo):

There’s also a built-in digital compass. One guy goes crazy. “A cool compass fan out there,” says Phil.

So what’s so special about a compass? Two hints:

  1. Sky Map for Android (I guess they changed the name from Star Map after Searchology)
  2. Wikitude AR Travel Guide (Top-50 finalist in Google’s Android Developer Challenge)

What I’m getting at is Augmented Reality. This has been a dream of mine for the past 10 years or so, first envisioning the idea as a set of glasses you could wear to annotate and read info on various locations. Later I dreamt of wackier and wackier ideas, but always knew I would never be able to pull it off – the technologies weren’t ready or weren’t cheap enough to go mainstream. Until now.

I’m not going to say much more on this issue… something’s brewing in the lab!

Popularity: unranked [?]

Evil Is As Evil Does

Posted by Chris Latko On June - 4 - 20091 COMMENT

Don’t Be Evil

MisfitsThe famous motto attributed to Paul Buchheit for a company that seems to no longer have any choice in the matter. Once you go public, you serve new masters, no matter what you write in the prospectus. Google is not above the market. Nobody is.

Over this past week or so, we’ve seen plenty of evil. Enough to really start to scare me. Here are some examples:

1) Wolfram|Alpha
Sergey Brin interned for Wolfram Research and as a friend of Stephen, was able to see the “computational knowledge engine” months before it was released. Soon after Alpha’s launch, we see Google Squared. This looks a little “cobbled-together-over-two-months” to me, no?

2) Microsoft Bing
Bing has a neato feature that allows you to explore your search in more depth with a dynamic left-hand sidebar. This mostly works with the four verticals they are attacking out the gate – Travel, Shopping, Health, Local. Google preempted this with their own left-hand sidebar allowing you to narrow down by media, time, etc. Again, a bit of a hack-job if you ask me – these features pretty much already existed. Microsoft slams this Google feature in their Bing promo video (along with some other zingers).

Strike two against Bing is Google Wave. Announced almost simultaneously. Who got more press?

3) Google Wave
This is a slam against FriendFeed which was created by none other than Paul Buchheit. Actually, it’s a slam against Twitter, Tumblr, Facebook, and a host of others, but I see it most resembling Friendfeed. Why is this evil? Well, it isn’t really…. competition is good and all… but CHROME IS OPTIMIZED FOR WAVE. That is evil.

4) Yahoo Announcements
These were a bit abstract and lame so I don’t blame the press for ignoring them, but let’s see about Google. Google’s “Searchology” happened the day after Yahoo with similar announcements: user intent, microformats, and mobile search. Check out coverage of Google’s event and Yahoo’s event for the fine details.


Popularity: unranked [?]

The #fixreplies Kerfuffle

Posted by Chris Latko On May - 23 - 20091 COMMENT

TwitterUpdate: After almost a week of testing out this “| ” @ reply concept, I heard from a large group of my followers that this is NOT what they want. The consensus seems to be that individual users want to be able to make their own choice as to if they see these replies or not. Makes sense.

Apologies for being slow on the draw, but this is insane. I didn’t really realize what was going on because I was always on the inside looking in – I was in the “power user” 3%, but following some 40k or so people meant that I always saw some @replies flying around. I thought people were taking this update a little too seriously and kind of brushed it off.

Also, going in, I thought the “show all @ replies” meant that I would see BOTH sides of the conversation (which was incorrect). This further clouded my vision on what was going on, plus there were a few blogs that told the wrong story – I guess I was confused. ReadWriteWeb, like always, has a great analysis of this which I did read, but I should have paid more attention.

I thought, well Twitter should just flip the switch to make the default “show all @ replies” for everyone – take the 3% route instead of the 97% route. This would show everyone BOTH sides of the conversation (which is not correct) and everyone would be happy. But if everyone saw both sides of the conversation, people could inject spam into the million follower club and all hell would break loose! (This is when I realized the BOTH sides thing was totally incorrect, which lead me to shoot up in bed and come down here to write this post).

I logged into my test account and looked at my regular account stream, only to find that it was BORING AS HELL! I have a ton of conversation using my regular account and that is what puts context around my tweets. I tweet some lame stuff sometimes and people ask me about it so I do my best to follow up with those users, not realizing no one else is seeing these tweets.

Twitter waffled on the decision a bit and made a totally lame argument for why this was being done (lame technical and lame UX arguments), made a lame attempt to remedy the situation in the short term, and made a lame promise for the future:

Second, we’ve started designing a new feature which will give folks far more control over what they see from the accounts they follow. This will be a per-user setting and it will take a bit longer to put together but not too long and we’re already working on it.

This future “per-user setting” invalidates their previous technical argument (and the UX argument). What is going on?

From here on out, please prepend all @ replies with a pipe “| ” so we aren’t forced to live in Twitter’s fantasy land. This doesn’t seem to work on all platforms, just make sure your post is not “in reply to”.

Popularity: unranked [?]

Miscellaneous Junk

Posted by Chris Latko On May - 22 - 20091 COMMENT

A couple posts wrapped into one:

Gmail IMAP Slow on Mail.app
Mail.appWith over 110,000 messages in my gmail account, Mail.app started choking bad. The problem got out of hand two days ago so I did something about it. This isn’t for the weak of heart. First quit Mail.app, then fire up terminal:

# cd ~/Library/Mail/IMAP-xxx@xxx.com@imap.gmail.com/\[Gmail\]/
# rm -rf All\ Mail.imapmbox
# ln -s /dev/null All\ Mail.imapmbox
# rm ~/Library/Mail/Envelope\ Index

DO NOT DO THIS WITH A POP ACCOUNT. Also, I advise you to back up these directories rather than deleting them, but I like to throw caution to the wind. Fire up Mail.app and it will reindex you mailboxes and you’re off the races. The dreaded “All Mail” directory will still be in your list of mailboxes, but don’t worry, you’ve neutered it.

Update: Check out this excellent article about achieving Mail.app nirvana.

Chromium Builds For OS X
ChromiumI’ve been providing builds of Chromium for OS X on my downloads page for a while. Recently, Google has opened up their BuildBot Snapshots to the public. At first I was a tad skeptical of this as I was a BuildBot Waterfall freak, waiting for the perfect level of green before grabbing a revision to build. I’ve been watching the Snapshots and can say with a bit of confidence now that they are legit builds and are only pushed if the OS X code base has been touched (If I’m wrong on this, please correct me). With that said, I’m no longer going to provide custom builds of Chromium.

Apple’s m-Commerce Strategy
A very interesting app hit the app store this morning (or last night) that made me scratch my head a bit. It’s the Burger King Now app that allows you to pre-pay for purchases. Pre-Pay? That made me think of TechCrunch’s m-Commerce article on Jack Dorsey’s new stealth startup code-named Squirrel. And there is this quote:

Squirrel is both a physical device add-on to the iPhone as well as an iPhone app. Ingeniously, the device derives enough power from the physical swiping of the credit card to then read the card, so it requires no external power from the iPhone or anywhere else. The physical device apparently looks something like an acorn, thus the code name Squirrel.

Swiping Cards? WTF? iPhone OS 3 will enable in-app payments that connects directly to your iTunes account and your credit card. Why is a physical device needed? Well the answer to that is to bypass the 30% Apple tax.

Apple could potentially enter this space, but would probably raise some flags at the DOJ. I think Jack is on the right track here and the potential of such a business boggles the mind.

Popularity: unranked [?]

Squirt: Why Nielson’s Twitter Numbers Suck

Posted by Chris Latko On May - 21 - 20093 COMMENTS

The recent kurfuffle over Twitter’s retention rate according to Nielson is a tad ridiculous. Comparing the 30-40% retention rate to those of MySpace and Facebook at the same stage in life is like comparing Sonics to Marios. The major blogs nailed why this comparison doesn’t make sense – Twitter aggressively shutting down spam accounts – but there is a bit more to the story.

Two things I want to add to the discussion:

  • 1,000 Following/Day Limit – Since Twitter limited ALL accounts to allow only 1,000 new friends a day, the number of spam accounts has skyrocketed.
  • Low Time Investment – Automated systems (which I won’t link to here) can create tons of throwaway spam accounts.

Anyone else want to add to the discussion? Leave a comment (or two).

Popularity: unranked [?]

Pulling Content Out Of OS X Cache.db Files

Posted by Chris Latko On May - 19 - 20096 COMMENTS

I’m not sure when, but most likely when Leopard was released, applications started storing their cache files as sqlite databases (usually named Cache.db). For example, Safari has its cache at:

~/Library/Caches/com.apple.Safari/Cache.db

Apps that haven’t caught up yet are still using the less-efficient .cache files. Though not as efficient, these files are easier to access, just toss it onto BBEdit and you can see the contents. Try doing this with a 100+MB .db file and prepare to wait.

There probably is a GUI app to extract data from .db cache files, but I’m too lazy for that. OS X has everything you need already built in so fire up Terminal.app (I’ve been playing with Visor lately) and dig into your cache:

# cd ~/Library/Caches/com.apple.Safari/
# sqlite3 Cache.db

You’ll be in the sqlite interactive mode:

sqlite> select * from cfurl_cache_response;
sqlite> select receiver_data from cfurl_cache_blob_data where entry_ID = [1234];

To output the data to a file use the following:

sqlite> .output test.html
sqlite> select receiver_data from cfurl_cache_blob_data where entry_ID = [1234];
sqlite> .exit

That should do it. Any questions? Leave a comment.

Popularity: unranked [?]

Firefox 3.5 beta 4 (Shiretoko) Intel Optimized Build

Posted by Chris Latko On April - 28 - 200910 COMMENTS

Is now on the downloads page. I noticed there is now default support for mozilla geode and gestures aimed at Win7. A couple people have advised me on how to make this build even faster. Once I’m out of my sickened stupor (hope it’s not swine flu), I’ll post an update.

Popularity: unranked [?]

About Me

Interested in all things tech. Apple, iPhone, OSX, Xcode, LAMP, Obj-C, Cappuccino, Atlas, Sproutcore, JavaScript, Ruby, Python, GNU/Linux.

Twitter

    Photos