June 2010 Archives

There’s a problem with the iPhone 4 antennas which limits their effectiveness. Many people point to this article by Spencer Webb who seems to be (and I know nothing different) to be an antenna expert to explain why there’s a problem, but he’s a bit off base.

The problem with the antennas, as he points out pretty clearly in his article, is that two of the iPhone 4’s metal frame pieces are pretty-well shorted out when you smoosh your palm over the slot between them. To quote:

If you short these slots, or cover them with your hand, the antenna performance will suffer…

I think, judging by the remainder of his discussion, that he somehow thinks the slot is responsible for the miraculous improvement in antenna performance vs. the 3G or 3GS. Either that, or he is just drawing the wrong conclusion from the videos and his own experiments, because he spends the rest of the article discussing the antenna location, the FCC, radiation into the body, attenuation by body parts, and other good (and true) stuff. But he seems to forget the whole “antenna is shorted out” problem.

So here’s what I think, and why. Let’s start with what we know:

It is my contention that the degradation of antenna performance is simply the direct result of shorting the antenna to its reference ground plane.

The problem here is that both Spencer and everybody else on the web seem to be blaming the fact that sticking your hand in the way of the antenna is somehow responsible for the performance degradation. Though there certainly may be something to that assertion, it is most likely a minor cause of performance degradation.

Here’s what I did to confirm my conclusion. Holding the phone using the prescribed iPhone 4 Vulcan Grip, I noted that I had three bars in the basement of my house. When I licked my pinky and moved it upward to cover the slot so it was touching both metal frame components on the left of the phone, the bars went away, slowly, but surely. I didn’t introduce any large portion of my body (yeah, I’m 6’6” tall and have big hands, but not that big!) into the radiation pattern of the phone, and yet the signal all but went away.

So I’ll make you a bet (nothing’s riding on the bet, sorry): if you cover the left portion of the metal frame or the bottom portion of the metal frame with electrical tape, the problem will go entirely away. I’m not totally sure about the involvement of the right portion of the metal frame, because I don’t know if it’s electrically isolated from ground or if it’s another band’s antenna. Maybe you’ll have to cover that one, too.

In any case, I simply can’t believe all of the hype and misinformation here. There is a problem, that’s certain. Using a Bluetooth headset and keeping your phone in your pocket will help it, but for the wrong reasons. Becoming a “righty” might help it just as much. Anyway, at some point in the future, I’ll call Apple and complain a bit about the phone’s reception and see if I can get mine replaced with one that may have some protective coating applied wherever it should have been. But in the meantime, I’ll just use the iPhone 4 Vulcan Grip and will still be just as pleased with the amazing piece of technology resting between my fingers.

I’m an electrical engineer by trade, but not an antenna expert. The knowledge I’m relying on here, though, is sophomore physics class-type stuff, and is not rocket science.

According to the shipping box my iPhone 4 just arrived in, it is “9x13x19 CM” and “0.6 KGS”.

Not all that impressive, really, unless you’re comparing this one unit to a mobile phone of the past.

But multiply that by 600,000… now you’re talkin’!

600,000 * 0.6kg = 360,000kg, or about 800,000lbs.

That’s 400 tons of iPhones and packaging.

9x13x19cm * 600,000 = …a lot of cubic centimeters!

It’s about 1,700 cubic yards of iPhones and packaging.

If you put them into containers, according to this page, that’s 23 40’ containers. Imagine 23 semi’s full of iPhones and you have a good idea of what that’s like.

But, obviously these didn’t come via truck or ship. No, these came by air. Hmmm…

Since FedEx shipped them and they operate 777’s, and I like 777’s, we’ll go with that.

Each 777F has a capacity of 226,000lbs, so it would take four completely full 777F’s to handle Apple’s iPod shipments… if it could hold 171,000 iPhones per 777F. Turns out, each 777F can only hold 75,000 iPhones, with perfect packing. (Only!) Now we’re up to 8 full 777F’s…

…plus all the regular cargo from China to the US.

Yeah, that’s a lot. But I can’t really visualize a lot. How about in terms we all understand (in the US, anyway): football fields and racetracks.

If you put all those boxes into an endzone of your favorite football field, they would make a stack 10 feet tall. Lay them all out flat on the field, and the whole field would be covered… plus another field and 3/4’s of still yet another one—including endzones! Or they’d cover one field in a pile three boxes deep. Wow.

Got a dumptruck, you know, the kind with two axles on the back, plus some extra wheels for really heavy loads? It’ll take you anywhere from 120 to 170 of them to haul your loot to the football fields.

Stack the boxes big face to big face (for a stable stack, of course) and you’d get a stack 33 miles tall. Wow. End to end, they’d reach 71 miles. That’s around the track at Indy or Daytona 28 times. And the width of the boxes would make a regulation lane of 12 feet in width, so you could drive your car around Indy or Daytona on top of all those boxes. (Judging by this box’s strength, they’d probably survive a fairly wide-tired vehicle, too.)

That’s a lot of iPhones moving around the world. I would love to get a peek at the logistics associated with those shipments… Anybody?

While the Internet has, by and large, replaced the Yellow Pages, it has not replaced the White Pages.

I find it very handy to be able to find somebody’s phone number based on knowing about where they live (i.e., the town), and a vague idea of how their name is spelled. And because wildcards can only go so far, having a compact, readily-accessed list to scan works significantly better than trying to figure out what to tell the search to get an equivalent list.

Until somebody has a phonebook app or website that can deal with phonetic spellings, the dead-tree phonebook wins hands down, every time.

Others have many thoughts regarding the installation of Adobe Flash Player on Mac OS X. Others have opinions on why Flash is an anathema to the web. I have an opinion on the webpage for it, which brings to mind the image of a barge. Maybe the SS Adobarge.

Hmm. There’s an interesting image for you, a company as a barge. But why a barge? Well, first of all, it’s slow and plodding to make progress. If it weren’t for a tug, it would drift aimlessly with the current. Granted, it can carry a lot along with it. I got this feeling this morning when I downloaded the Flash Installer for Mac OS X from the Adobe website and it told me it would take 7 minutes “@ 56K modem.” Huh?

Sorry, did you say, 56k modem? First, why a 56K modem? Why not, say, “donkey cart” or “FedEx” or “carrier pigeon” or “smoke signals?” Oh, I get it… it’s the “lowest common denominator” for download time estimates. Because everybody thinks about their download speed in terms of “times faster than a 56K modem,” don’t they?

Second, unless you’re actually using a 56K modem, you probably don’t give a rat’s ass about the download time at 56K, so why bother telling us in the first place? All modern browsers will tell you pretty well how long it will take to download the file if you simply start the process. If you see “29 minutes remaining” and you only have a few moments before your parents send you off to bed, you’re probably going to stop the download process and cover your tracks before going to bed and your parents see you’re downloading a porn video.

Really, you don’t care how long somebody else’s download is going to take; you only care how long your download is going to take.

“We do it for the non-broadband users.” Even if you are still dialing up, if you want Flash, you’re going to download it, no matter if Adobe tells you it will take 45 minutes or 45 seconds “@56K modem”. Besides, you’re going to be able to look at your browser and tell that it’s going to take “about 5 minutes” when you start it.

Sigh. As I said, slow to move forward.

And talk about momentum! There’s no change coming anytime soon, nosiree! Not when yesterday’s webpages would do: when you click the download button, you’re redirected to the “Thank you” page where you are told “If a dialog box appears with the option to run or save, click run.”

That never happens on a Mac OS X machine in Safari. Never has, never will. I’m not so sure about Chrome or Firefox or Opera, but I’d guess they don’t do it either since this is distinctly a Windows Internet Explorer behavior. Now, there’s nothing really wrong with this, exactly, but it’s just untidy. It’s like seeing bra straps showing on the red carpet. Untidy, and easily solved with a little bit of change.

Get with the times, Adobe. As much as you may think Flash is the greatest thing ever, its time has passed. Redirect your energies to making a great HTML5 content creation tool and sell it just as you have the Flash toolset. Well, not exactly. You could do a better job of that, too, but I’m just covering old territory on that.

Article here.

Note to all potential security watchdogs/hackers: in the real world, if you break and enter and then steal, it’s still illegal unless you were invited to do so, no matter how good your intentions might have been.

Think of it this way: nearly everything you can do in cyberspace has a real parallel in the physical world. If doing it in the real world would creep you out/give you the heebie-jeebies/scare the pants off you/get you arrested, likelihood is it will do the same in the cyber-world.

Oh, and in the real world, possession of drugs isn’t such a great idea, either. Keep it clean, kids.

Don’t tell my wife, but mine’s going to arrive on the 24th. Whew. Article here.

I just heard bits of Adele: 19 and I must say I am impressed. She has the chops, she has the talent—she’s got it.

As I said, Amy Winehouse’s voice, but none—none—of the drama.

Here’s what I posted a few moments ago on stackoverflow.com, a great site for getting clues regarding programming problems from the very esoteric to the very, ahem, basic:

OK, knowledgeable programmer-types, please be gentle…

I’m having trouble getting a very simple, one-view “Hello World” app to rotate automatically. I go through the usual “Hello World” steps:

  • Create a new View-based project.
  • Double-click on the .xib file for the ViewController.
  • Add a item from the Library. I’ve tried a Label as well as a Slider.
  • Change the Struts and Springs to just Springs to keep the item in the middle of the view.
  • Save and then edit the .m file for the ViewController so that it reads:
  • /*
    // Override to allow orientations other than the default portrait orientation.
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation) interfaceOrientation {
        // Return YES for supported orientations
        return YES;

    (Um… Duh. I just saw it. But I will continue with my story for your amusement.)

  • Save, build, run, rotate, and notice that nothing rotates when I rotate the iPhone simulator. And, no, I didn’t rotate my laptop… I used the keyboard shortcuts!

    Frustration set in after about an hour of Googling for the answer. Everywhere I looked, each source said the same thing: Just change the return value to “yes”. And yet…

    I even stuck debugger breakpoints in! None of them were hit! (Shock, surprise!) Figuring that I didn’t know how to use the debugger, I stuck a breakpoint in on “initWithNibName.” Guess what?! That didn’t get hit, either! What the… heck?!

    So I downloaded Apple’s WhichWayIsUp app to test my breakpoint l33t breakpoint skilz. Sure enough, it beeps away as I rotate the “iPhone” around. So what am I doing wrong?!

    Surely, I’m not that ignorant that I… no, wait, I take that back. If you saw my error, above, then you are certainly thinking, “Yes, he is that ignorant.” And you’re right.

    For those of you who stumbled across this question, are similarly frustrated, and didn’t see the problem yet, here’s the answer: the entire shouldAutorotateToInterfaceOrientation method is encapsulated by “/* */” comment tokens. It never got compiled, much less called.

    Now, that I know of, none of the sources that I found make it obvious that you have to ensure that the code block is uncommented. Several say, “All you have to do is change exactly one line of code.” And, except for those other two with the comment tokens on them, they’re exactly right.

    If I just helped some other n00b, then great. If I made you laugh at my fail, then that’s even better.

    Thanks, everybody, for your help!

  • xkcd: Worst-Case Scenario


    I recommend the Vitamin D scenario.

    Excellent cartoon here.