XHTML-MP: Using Tables For Layout
Posted by Rich on Friday March 30th 2007, 9:24 am
Filed under: Mobile

Ready.mobi and some other mobile style guides discourage the use of tables for layout – as well as for pretty much anything on mobile devices. I’m ok with this for devices with narrow screens, but for the wide-screened ones like the blackjack, etc. a single column layout with no accurate horizontal placement looks bad.

Recently I decided to use the logic:

c :when test="${capabilities.wall_markup != 'wml' && capabilities.resolution_width > 300}"

for my WALL-enabled JSP to determine if I should use tables. This means that any device that’s not a crappy WML device (meaning it supports the TABLE tag) and that has a resolution of greater than 300, gets a pretty conservative table layout. This makes it look so much better, and it passes the .mobi ready test too. .mobi’s tester sends in user-agents for narrow phones, so they never get the tables.

Anyone else pulling tricks like this? Am I going to find a phone that chokes on it? Will .mobi extend their tests and give me the wag of their finger? Is the table rule starting to become moot altogether? I’d like to hear your opinions.

Update: And what the heck? You can’t use the copyright symbol escape code in a mobile document according to .mobi? Using it brings my page score down to a 4 from a 5. Is this really a big deal?

Update 2:It wasn’t copy. It was having any content at all outside of my main div tag and before my closing body tag. WTF? This is just nitpicky. I wanted to be a good mobile developer and score a 5. But if it will make things this much more complicated for questionable change in phone support, I’m not going to bother. (That said, I still kinda want to score a 5.)



What I learned at AJAXWorld
Posted by Rich on Thursday March 22nd 2007, 4:49 am
Filed under: Mobile

Last Monday I ran into Manhattan for a day to attend a little bit ofAJAXWorld. I just bought a day pass so I could go to Ajit Jaokar’s talk, “Deploying Web-Based Applications to Mobile Devices Using AJAX Techniques“, but I also got to run around to some booths.

Things I learned:

  • Laszlo is working with Sun to be able to compile Laszlo AJAX apps to run as J2ME.
  • Adobe Apollo is going mobile… at some point. When I pressed about how they see Apollo and Flash Lite competing, I couldn’t get a straight answer.

Ajit’s talk was great – a nice primer of why, when and a little bit of how to use mobile AJAX. Of course Soonr was used as the golden child of mobile AJAX, but it just emphasized the big mobile browser fragmentation problem. All the cool AJAXy stuff doesn’t work on my Windows Mobile device, but yet Pocket IE claims to have limited AJAX support.

What it basically comes down to is browsers claiming “AJAX!” when they really just support XMLHttpRequest, but don’t have the depth of Javascript support or DOM manipulation to back it up.

So the big question of “Will the mobile web be a unifying element on phones?” in my opinion is still not answered – even though Ajit thinks that browsers will evolve and standardize to make it so. Right now, to play the mobile AJAX game, you’re limited to Opera (not mini), Nokia’s S60 and up browsers, and… um.. Yeah that’s it.

Then there’s the iPhone. Disruptive? Oh yes, but in what way we don’t know yet. If they really just throw full-blown Safari on a mobile, you are really limited by CPU horsepower and battery drain. Try running GMail and Google Maps on a battery-driven device for a while an all that asynchronous network updating will suck it dry. So there is still a need to create a nice mobile AJAX standard to optimize for these types of devices.

Will WICD’s mobile profile become that standard? It’s still super early, but I’ll let you decide. Check out this primer by Daniel Appelquist. What about AHAH? Sure it limits what you can do on the device, but simplifying asynchronous updates to just blocks of XHTML certainly addresses power consumption. Forget about your cool real-time image zooming in the browser though.

So what would I pick right now if I don’t want to become a porting house? Straight XHTML. If you can figure out a streamlined, simple UI for your service that can get your logic completely serverside – do it.



My Kind of Twitter
Posted by Rich on Tuesday March 13th 2007, 11:53 am
Filed under: Mobile, Web2.0

Twitter – we all know it by now. If you’re not on the mobile social network train with the rest of us, go check out the site and come back when you’re done.

The concept is great – a push system to let you know what your friends are up to. It’s actually quite similar to how some of my friends use IM away messages. It’s just keeping track of your latest state. But Twitter takes it one step further and pushes the states to you when they change.

One problem for me is pushing these states through SMS. To me, friends’ states are not on the level of importance needed to make my phone go buzz and increment my message counter. Maybe this is because I’m not in my 20’s anymore and don’t put my social network at the top of my priority list. But just wait 20-somethings, you’ll get to this place too.

This issue is partially addressed by the new WAP app Twapper. Now you can check your friends’ Twitter states when you want to. But this still isn’t ideal.

What I want is a mobile widget – an always-on app that keeps these states fresh. So with one button (or just a glance if it’s on my home screen), I can see what’s going on in my circle. To me, this is the best blend of push and pull.

This isn’t an extremely novel idea. But let’s get to my second issue with Twitter – the fact that I have to set my state at all.

In the periodic thought cycles that go through my head during the day “check email, check RSS, work, rinse, repeat” and the interrupts that occur “IM, SMS, Voice”, I do not need to inject an “update my Twitter status” in there. No way. It’s just not that important.

What I want is automatic data gathering that I set access restrictions on.

  • If I give Twitter access to my calendar, it knows to update my status from meetings I have scheduled.
  • If I’m chatting on IM with someone, it can put that fact in my status.
  • If I give it access to LBS on my phone, it knows to update my location. Couple this with an online map where you can mark places of interest with personal comments that trigger based on your location, and you have a seriously personal location-update system.
  • If I take a picture with my mobile device, it will automatically push that out to my status.

Yes, this is kind of big-brotherish. But with the proper access control, it will automate much of these updates and give people a true representation of what you’re up to.

This feeds back into my initial problem of pushing SMSes for updates. It would never work with all this automated data gathering going on. But a widget would.

Imagine if you knew that every time you looked at this widget on your device, you would see your friends’ status, location, latest mobile picture, and what they’re up to (based on heir calendar and LBS commenting). Now you have a personal, non-annoying link to your social networks that’s accurate, rich with media and up to date. Couple this with IMS Presence, and you can integrate it into your phonebook.

So maybe a lot of this is a bit far-reaching. But technically it’s completely possible now. All I really want is more choice for status delivery methods, and some ways to get automation into updating my status. I think I’d actually use Twitter then.

Update: The Wall Stree Journal has an article on the whole Twitter [phenomenon / fad / addiction]. Great quote:

“Some haters have already come around, but to tell the truth, they do have a good point. Do you really need to know that I’m eating a tuna sandwich for lunch? Probably not, although I’ve had more than one person come over and join me for lunch because I told where I was hanging out.” As a concession, he has created a second Twitter account, called “SilentScoble,” where he limits his posts to five a day. A recent dispatch: “It’s hard to post less than five posts per day…”

… and one on the deluge of text message beeps the service drops on you:

“I probably started removing people the first week,” said Ryan Irelan, 31, a Web developer in Raleigh, N.C., who began using Twitter last year. “This constant dinging of updates,” he added, “it really just became totally overwhelming. I don’t see how anyone could get anything done.”

People are using this thing as a group chat application. All we need to do is change (or provide an option for) the presentation layer on mobile devices to something like I suggested above, and we can tone this thing down enough to have staying power for people with lives outside socializing.



T-Mobile Limiting 3rd Party App Data Access
Posted by Rich on Sunday March 04th 2007, 11:27 pm
Filed under: Mobile

One step forward, two steps back.

I’m a little late to the game here, but I caught this post in my RSS backlogs. If it’s true, and T-Mobile is blocking 3rd-party apps from data access, you lose Skype, Opera Mini, and all those cool apps that actually make mobile exciting.

It also makes the lives of mobile startups trying to get their apps deployed that much harder.

Someone please point me to an article that debunks this.