iOS Passes Linux to Become Third-Most Popular Internet Browsing Platform 

It’s something to take note of when a mobile operating system passes something that’s been around forever,” said Vince Vizzaccaro, a Net Applications vice president, talking about iOS overtaking Linux. “Mobile’s growth curve is strong, and mobile is becoming quite a phenomenon on the Internet.

Yup, the future is mobile.

Is Bada dying a slow death? 

It seems that Samsung may not be so sure about their own Bada platform:

And while Samsung also expects to leverage its own software, called bada, in future devices as well, it’s putting the majority of its eggs in the Android basket, as Android’s popularity continues to snowball with other device makers like Motorola and HTC hitching their device wagons to Google Android.

If I was a Bada developer I’d be wondering why Samsung is wandering around in the Android garden.

Swype appears on the Samsung Galaxy Tab 

I’ve tried swypeing before and it just feels odd to not lift your finger. It’s probably just one of those things you have to get used to, like typing on a touchscreen.

Node.js is part of webOS 2.0 

The popular Node.js runtime environment is built into webOS 2.0, which means that you can now develop not just webOS apps but also services in JavaScript. The active Node ecosystem is on hand to provide community support and a rapidly growing library of modules that you can use in your webOS services.

Besides powering the new Synergy APIs, JavaScript services strengthen webOS’s support for background processing and add new capabilities—like low-level networking, file system access, and binary data processing—to the web technology stack.

Personally I haven’t done much with Node but this look pretty good.

Responsive Design Framework 

A nice little Responsive Web Design framework for cross-device layouts (including mobile). Try resizing the window.

BlackBerry WebKit Review 

It’s looks like RIM has finally got heir game together with a decent WebKit browser for Blackberry. Too bad it’s only for the Torch.

Extending HTML5 

Speaking of HTML5:

While HTML5 has a bunch of semantic elements, including new ones like <article> and <nav>, sometimes there just isn’t an element with the right meaning. What we want are ways to extend what we’ve got, to add extra semantics that are machine-readable—data that a browser, script, or robot can use.

Html5Doctor

I think i’ll be incorporating some of these soon.

The future will be fun

There’s going to be a few changes around here starting right now.

First, under the hood, I’m working on a new WordPress theme based on the awesome HTML5 boilerplate project. The source of the theme is filled with HTML5 goodness with all sorts of under the hood enhancements. Go ahead, viewsource and chek it out. You’ll see a whole bunch of new friends including <article> and <section>. It’s still a work-in-progress so once I’m done, I’ll release it on github for everyone to enjoy.

Second, along with the theme will be a couple new post types. Some of my favourite blog writers tend to share a mix of information from full articles to quick links. Personally, I really enjoy the format, so I decided to give it a try too. I’m adding a media and link post type along with my regular posts. My decision to do this was mainly out of a desire to share more. I have a number of half written posts that usually wither away before I can find time to properly finish them. With a few more types, I can quickly comment on smaller topics while saving larger topics for full posts.

Lastly, I’m going to stick to topics related to the evolving mobile web. This will include, among other things, design and development tips for different mobile platforms, anecdotes, interesting news and whatever else I think people may find interesting. I’ve always believed the future is going to be mobile and I’m excited that I’m here to have fun with it.

Apple’s at it again 

Sit back and watch Steve in action

  • 120 million iOS devices shipped
  • 230 thousand new activations per/day
  • 6.5 billion app downloads
  • 200 apps downloaded every second
  • iOS 4.1
    • HRD images
    • Game Centre
  • iOS 4.2 (for iPad, finally in November)
    • wireless printing
    • multitasking
    • folders
    • air play
  • iPods
    • 275 Million sold
    • All new models (tons of changes for shuffle, nano and touch)
  • New Ads
  • iTunes 10 (With new icon!)
    • Ping (yet another social network like Facebook & Twitter but for music)
  • Apple TV (One more hobby)
    • 1/4 size of old one.
    • HDMI
    • WiFi
    • Rental: $4.99 Movies, $0.99 TV Shows (hrm.. maybe time to cancel my cable?)
    • Streaming
    • Netflix, YouTube, Flickr, MobileMe

Palm Previews WebOS 2.0 Details 

A really nice upgrade to the WebOS platform. I’m going to have to get my hands on a pre.

“How I feel about buying apps” 

The Oatmeal has it bang on. It’s one of the most annoying things I face as a developer.

Connecting to Amazon EC2 using Transmit

I’ve recently started using Amazon’s EC2 could based web servers which has been great but it requires a PEM (privacy enhanced email) certificate in order to login and access the server. This is fine for Terminal access using sftp or ssh but it took a bit of trial and error to get it working for GUI apps such as Panic’s awesome Transmit client. If you’re trying to do the same here’s the quick how-to (at least for Mac OS X 10.6 / Snow Leopard).

First, copy your Amazon EC2 .pem file to your local ssh directory in /Users/your_user_name/.ssh. You can open this directory easily by entering the following command in the Terminal app:

 $ open ~/.ssh

Assuming the file is called server.ssh you can test it using the Terminal command:

$ ssh -i ~/.ssh/server.pem root@your_amazon_server

If that worked then your certificate is good.

Next, you need to add an ssh configuration option to let your apps know about the PEM. Open (or create) ~/.ssh/config and add the following line (again, assuming your file is called server.pem):

IdentityFile "~/.ssh/server.pem"

Save the config changes and then use the Terminal to alter the permissions of your PEM file to 700 (otherwise ssh may not allow you to use the file):

$ chmod 700 ~/.ssh/server.pem

Lastly, you need to restart the SSH dameon. Either restart your entire computer (slow and lame) or just quickly drop into the Terminal again and use the launchctl command (you’ll need to be root):

# launchctl
launchd% stop com.openssh.sshd
launchd% start com.openssh.sshd
launchd% quit

Now all you have to do is use Transmit to connect to your Amazon EC2 server via SFTP, using the root user and leave the password field blank.

UPDATED

You may also find it useful to add a HOST block around the config changes. I found the above configuration started to conflict with my GIT repos so I modified the config to:

Host amazonaws.com
    IdentityFile "~/.ssh/server.pem"

that way it only applies to the amazonaws.com servers.

Exporting Mail.app XML Feeds to Google Reader

RSS feeds are awesome for keeping up-to-date on the latest news and posts from your favourite sites. Up until now I’ve been using Mail.app as my primary RSS reader—and I really like it—but with an iPad and an iPhone always nearby, I’ve been meaning to set up Reeder instead.

Reeder uses Google Reader as a backend but there wasn’t an easy way to export my Mail.app RSS feeds into Google Reader—until I wrote the little script below to do it for me.

This PHP script reads the Mail.app settings and generates a MailAppToGoogleReader.opml file suitable for importing directly into Google Reader’s settings pane. All you have to do is copy the script to a file such as MailToGoogleReader.php and run the Terminal command:

$ php -e MailToGoogleReader.php

Now I can sit back and relax with Reeder on the iPad.

<?php

$opml = '<?xml version="1.0" encoding="ISO-8859-1"?>
<opml version="1.0">
<head>
<dateCreated>'.date('d-M-Y').'</dateCreated>
</head>
<body>
';

foreach (glob("/Users/jsambells/Library/Mail/RSS/*/Info.plist") as $plist) {
    $xml = new SimpleXmlElement(file_get_contents($plist));
    $results = $xml->xpath('//plist/dict[1]/key[.="RSSFeedURLString"]/following-sibling::*[1]/text()');
    $url = (string)$results[0][0];

    $opml .= '<outline type="rss" xmlUrl="' . $url . '"/>' . "\n";
}

$opml .= '
</body>
</head>
';

file_put_contents( "MailAppToGoogleReader.opml", $opml );

echo "done!";
`open .`;

Progress on Windows Phone 7

Microsoft showed off their progress on Windows Phone 7 last night in New York and Into Mobile were able to capture some demo video with the new OS. You can see it running on pre-production hardware with the interesting UI. It looks pretty but I’m not sure how intuitive it will be for a novice user.

Check it out