Archive for January, 2009

Chromeless Web Apps on iPhone

Wednesday, January 14th, 2009

One thing I was really looking forward to in iPhone OS 2.0 was the advent of chromeless web apps. The promise was, as a web developer, you’d be able to add a line of code to your site, and it would unlock a fancy new feature: in addition to just adding an icon to your home screen, you could now make it a standalone “app.” No URL bar, no navigation chrome, all screen real estate. Here’s the code, situated in the head tag:

<meta name="apple-mobile-web-app-capable" content="yes" />

And the result is a nice, clean, chromeless browsing experience:

Hahlo Chromeless — Landscape

 

The problem is, it’s not perfect, so a lot of web app developers haven’t been using it. Take Hahlo, for example. It would be a spectacular standalone Twitter client. However, the site’s developer, Dean Robinson, found very quickly that external links simply don’t work properly from within this chromeless wrapper. You tap on a link, and, if it’s supposed to spawn a new window, it simply doesn’t work. Or, if it’s a normal “go there right within this current window” type of link, it’ll pop you out to MobileSafari. No good.

Also, as Craig Hockenberry has pointed out, all chromeless web apps must load a fresh new WebKit instance every single time you load the app. Compare that with Safari.app, which is almost always running in the background, ready for action. It’s not a huge wait time when you launch the “app,” but it’s enough to be a little annoying.

So, in answer to these flaws, developers like Dean, Shaun Inman of Mint fame, and the Flickr Mobile team have all decided not to include that one magical line of code. No chromeless web apps for you!

iPhone shortcuts with fancy iconsThankfully, there’s a way around it. It’s roughly the same method we used to use for assigning our own preferred apple-touch-icons for WebClips, back when they were the hot new item. Anyway, it’s pretty simple to just make your own “bounce page” with all your favorite web apps, and enable them as chrome-less web apps without the developer’s consent. Now, of course, you’re not really messing with their code…but do keep in mind, you’re messing with their intended user experience. If you use this method, and you get all bummed out about your links not working, don’t blame Dean or Shaun or Flickr. It’s not their fault, they’ve all written some amazing code. You’re circumventing their delivery decisions, so you have to kinda own that. If you’re cool with that, have fun.

If you want to leech off my shortcut page, I guess, go right ahead. I’m not likely to add any suggested items to it, unless they blow my mind. And my Mint bookmark ain’t gonna do you much good, but it’s a good example of how to get it done for your own installation. View source, and go to town.

You’re doing a disservice to your people, man.

Wednesday, January 7th, 2009

I was “mugged” yesterday.

I put it in quotes because I wasn’t hurt, nobody hit me, and they didn’t get anything from me, even though there were three of them. I didn’t do what you’re “supposed to do.”

Let’s take a step back for a moment.

When a white man or woman walks down the street and clutches their belongings to themselves if a black man walks by, that’s a fucking tragedy. When I walk down the streets of Oakland, I make eye contact with the people I see, and if I happen to be holding my iPhone, I don’t shove it in my pocket when I see someone whose face doesn’t look friendly. White, asian, black, hispanic, whatever…I’m a trusting guy, at least to some extent. Now, there are places I don’t like to brandish my iPhone, and there are times I’d prefer not to take it out of my pocket…I’m not entirely stupid.

Yesterday, I was walking through Chinatown, on my way back to the office, reading an article on my iPhone. All of the following happens in the span of one half-block. I saw a couple highschool-aged black kids jaywalking across the street toward me. One tall pudgy kid with a backpack, one shorter and skinnier with a burgeoning mustache, and one tall and skinny with huge baggy black/white/silver Raiders hoodie and hat. The latter two were behind me after they crossed the street, and the big pudgy kid looked like he just got ahead of them. He doubled back around me, I assumed to just go back and stay walkin’ with his buddies. I kept walking at my pace, and I kept my iPhone out, now half-reading, half paying attention to my surroundings.

The skinny shorter kid walked a little faster, and was soon walking on my left. I looked over and made eye contact, since he was closer than I’d expect. “How you doin’,” he said with a smile. I said “how you doin’?”

We had just stepped off the curb where the old asian lady usually collects cardboard boxes, just near the 880 overpass (it’s dark and secluded under the bridge, but we weren’t quite there yet). She was there, we had walked past her. There were one or two other asian people walking close by.

“Gimme everything you got.” And I was surrounded. The tall kid in the black hoodie had his hand in his baggy pocket, aiming it at me.

And I did exactly what you’re not supposed to do.

I said “Man, I got nothin’,” and I held onto my phone with a death-grip, and kept my other hand in my jacket pocket with my wallet. I didn’t utter another syllable. “I’ma shoot this nigga right here,” said the black-hoodie kid. I looked at his bulging pocket, and immediately turned my head to look at the asian lady across the street. She was still there, but I wasn’t sure if she saw what was going on. The other two people were still in the vicinity, but again, I don’t think they saw me.

I turned and started struggling through them to walk away. “I’ma shoot this nigga right here,” he said again, no louder than before, while his buddies were trying to grab my arms and get me under the overpass. I squirmed out of their grip, yanked my arms every which way to get free.

Maybe they knew they couldn’t do anything within view of other people. Maybe they were just fuckin’ around with the dorky-lookin’ white dude to see if he’d just hand over all his shit at the slightest threat. I don’t know. I got free quickly, I didn’t get shot, still had my phone in my hand, and it quickly went in my hip pocket as I walked back into Chinatown, looking as if nothing had just happened.

I turned a corner a few blocks in, and went another way back to work. Along the way, I saw a patrol car stopped at a traffic light, but he was in the middle lane of a high-traffic five-lane one-way street…not safe to walk out and flag him down. I made eye contact with the cop, but I decided against it, and he drove away when the light turned green. The only thing I could think as I walked back to work was this: I’m glad I’m not in Baltimore. My shit would be gone, and I’d probably be shot anyway.


On the one hand, I’m proud and surprised with myself for not just caving in and surrendering. I walked away with all my shit, and I didn’t get hurt. I didn’t challenge the dude to prove he had a gun. I didn’t say anything pithy to provoke them. Sure, it’s a bit strange to hear a guy say “dude, I got nothin’” while he’s holding a $500 phone…but it’s not anywhere near challenging, like “that’s a gun?” Anyway, I think I did the right thing by saying almost nothing. It’s probably what kept me from getting (at the very least) beat up.

And on the other hand, I’m a fucking idiot. I’ve got Liz and my family to think about. What if I’d gotten shot? What the fuck was I thinking? Liz, Buddy, Kathy, Gary et al: I’m sorry. Next time, I hand over my shit.

Hidden Treasure

Saturday, January 3rd, 2009

When my dad passed away in December 2005, a close family friend took up a position as pallbearer for his funeral, just as he did when my mom passed away in 1992. Outside the church, he said “I think I got the heavy corner…the one where his heart is.” I still get choked up just thinking about it. It’s probably the sweetest and most poignant thing anyone said.

A few days before Christmas this year, a camera body arrived in the mail, a gift from my sweetie to me. I’ve already got a bunch of lenses to use with the body, and I’ve been keeping them in an aluminum hard-case, all of which I “inherited” from my dad. When I first opened this case, while cleaning up his house in that fateful December, I remember bursting out crying to see a couple of combs and a little bottle of cologne. You see, this was the camera case that he had recently been taking with him while shooting weddings for my brother’s photography business.

It’s a little sad to say, but at the time, my brother and I were both a little concerned about having Dad shoot weddings. It was becoming clear that, with age, Dad’s eyes weren’t doing him any favors. Most of his candid photos were completely out of focus, and his “artsy” shots often didn’t seem to have any rhyme or reason to them. This, compared to the tack-sharpness of his photos throughout our younger lives, and the creativity he had always exhibited.

But, all the same, it was clear that my dad really perked up when he had a gig to do for my brother. I’m not sure he’d have been able to put it into words, but it made him feel needed, important, special. And he was really all about other people, so he was just the perfect person to interact with a family on their wedding day. It was all about them, and he knew it, and he made it clear he knew it.

So, my camera arrives. It’s a good bit smaller than the older film camera I was using, and I’ve got to do a little shuffling of lenses to make sure they’re all protected in the case. I began customizing the foam in the main (bottom) portion of the case, and I noticed that the foam in the top of the case was kinda bulging a bit. I pulled it down, and out pops a big ZipLoc bag containing a manila folder full of papers…

Now, a little explanation for why this would make my heart skip a beat:

My dad didn’t leave a will, or at least we never found one. The assumption was, if he had one, he likely hid it from my stepmonster. He didn’t like her. Anyway, when a hidden folder of papers falls out of your dead father’s camera case, you sit up and take notice.

I opened the folder, and out popped one paper program after another, from every wedding he ever shot for my brother. Little snippets of happy days from people he probably only ever met once or twice. Commemorative napkins. Invitations with directions and maps on the back. Hand-written notes from a bride or groom, thanking him for being so kind, or maybe just directions on what photos they’d like him to take. These things, these days, these events, and these people…meant enough to him that he wanted to collect some mementos that he could maybe look back upon with a smile someday.

And the heavy corner was indeed where his heart was.

Programs

You get to drink from…

Friday, January 2nd, 2009

So, I’ve got this parking ticket. Bastards. And I went to pay it today.
And they were closed.

Bastards.

Anyway, I took this photo of a fire hose fitting on the side of the building. In case you hadn’t noticed, I’m a “little details” kinda guy. I like taking pictures of things that just give me a little joy every time I look at them.

You get to drink from...

View on Flickr

On days like today, when I don’t have my camera on me, I’ll be attempting to take artistic shots with my iPhone. The camera on this thing, while far better than just about every other camera phone I’ve seen, it’s rather well-known to be absolute shit. Enter CameraBag (iTunes Store link). A fine way to make your shitty iPhone photos resemble those from a Lomo or a Holga, among others.

Full disclosure: I know the ticket is my fault, and I know they’re not bastards for being closed.

Photo of the Day

Thursday, January 1st, 2009

Or, “Jesus, That’s Quite the Commitment”

So of course, it seems like everyone’s doing it, but that doesn’t diminish my drive to do it too: one photo every day.

I just received a Nikon D80 as a combined Christmas/birthday gift, and I couldn’t be happier with it. I’ve been an amateur photographer for many years, and it’s the one major thing my dad actually passed down to me directly. I kinda got my interest in tinkering with cars from him, but photography is something he actually showed me how to do, and taught me the lessons that stick with me in every photo I compose.

I’m hoping to actually take one photo per day, but I may wait a few days between posting them. On the other hand, when time is hard to come by, I may not be able to take a photo every day, but I’ll try to post something from a day when I got more than one good photo.

Rather than just fluffing up my Flickr feed, I’d also like to document what the hell’s going on, in case you’re interested, and fill in why I shot what I did. Tell a story, if there’s a story to tell. I guess we’ll see how the process settles in.

So, here’s my first entry to ring in the new year. Liz and I went hiking yesterday at Arastradero open-space preserve, and apparently we were on a kick, so we went to The Dish over near Stanford today. Walked about 4 miles today, with lots of ups and downs. It’s been really hazy and foggy around here lately, so landscapes haven’t been too easy to shoot. This photo was about the best I could come up with considering the conditions. I’m hoping the weather clears up a bit, but honestly, it’s just nice to have the moisture in the air for once. I don’t want to wish it away too soon.

The Dish

View on Flickr