Posts Tagged: google


29
Jun 10

CSS3 Makes DOM Unnecessary?

Google to use HTML5 in Gmail (emphasis added):

Google’s current goal is to get Gmail to load in under a second. “Speed is a feature,” he said.

Early tests have proved promising. For instance, Gmail looks for those browsers that can work with version 3 of the Cascading Style Sheets (CSS), a standard closely related to HTML5. If the browser supports CSS3, Gmail will render the pages using these specifications, rather than its traditional approach of using the Document Object Model (DOM). The company has found that using CSS3 can speed the rendering time by 12 percent.

Glad to be finally get rid of that DOM.


19
Apr 10

Nexus One Days 5-7: Goodbye Android

So, this weekend I was offline, or at least off-computer. Met with old friends and family. My brother couldn’t wait to try out my Nexus One because his Nokia is switching itself off every few minutes at this point so he’s dying to get a new phone. He doesn’t like that everybody has an iPhone and feels it’s “old”. He was considering buying the HTC Desire, which is essentially the same thing as the Nexus One.

He likes it. He played with it this weekend quite a bit and he was quite enthusiastic. He’s not a real gadget guy, or really that much into computers, so it’s interesting to see what he thinks. He says he’s going to buy one, so we’ll see how he likes it. He did find a number of bugs of pinch to zoom to stop working. He was also very surprised that even a workhorse like this phone with a 1Ghz processor can’t actually scroll a menu at the pace of you swiping your finger across the screen. But he likes the idea of openness, that you can do with it whatever you want. And I have to agree that that’s definitely a good thing.

Then my wife wanted to look up a few things on the internet and check her e-mail. She uses my iPhone from time to time and feels quite comfortable using it. After a few minutes she handed it back to me saying “I can’t use this.” She encountered similar problems as I did in the browser: if you have a few links close to another and you’re zoomed out and try to tap the middle one, nine times out of ten it will pick the wrong one. This is something that works remarkably well on the iPhone. Sometimes it feels like the iPhone knows which link I tried to tap. No such luck on Android, which means you have to zoom it quite far to be able to do a precise link tap.

Alright. So what have I learned the past week. I think there are two ways to look at it.

The first is to look at purely from a user’s perspective. Considering only the hardware and quality of the software. Leaving out the politics and the geeky desire to be able to pop open the lid and make changes under the hood. From this perspective I conclude that the Nexus One is a very nice phone, and if there would not be an iPhone, it would have been the best phone I ever used. But the iPhone does exist and I like the iPhone hardware more. Even though the iPhone is heavier and thicker. My brother and wife both like the look of the Nexus one more, but personally I don’t. I like fewer buttons. I like the iPhone’s simplicity.

The iPhone software is simply more polished. The attention to detail is simply perfect. The Nexus One is a phone designed by engineers. Technically it’s very impressive. It has a great processor. The software can do a lot, there’s a lot to tweak and configure. But you also have to tweak and configure to make it work the way you want it to. But when it comes to design and sense of style, the iPhone, in my humble opinion, blows Android out of the water, still. There are a few things that the Nexus has that iPhone doesn’t, such as speech input, but this is only available in English, so not very useful to me at this point. There is also multi-tasking which is very convenient, but the iPhone will have that as well by this summer. Main Nexus One drawbacks: on-screen keyboard is not great, the registration of taps on the screen is not very precise, and the screen is almost unreadable in board daylight.

It is true that everybody has an iPhone these days, but there’s a great advantage to that: everybody is developing for the iPhone too. There’s a huge amount of development and innovation happening by third parties on the iPhone, which I find very exciting. In addition, if you own an almost 3 year-old iPhone you can still upgrade its software to the latest release. This summer the first iPhone version comes out that no longer support this 3-year old phone. Compare that to the first Google phone, the G1, which hasn’t received any software updates beyond 1.6 (we’re at 2.1 now). The G1 came out end of 2008.

The second perspective is a philosophical one. Do you like the way Apple locked down the system. The way they control basically everything that happens on “their” phone. A lot of people don’t feel comfortable with that and it just depends how important that stuff is to you. I dare to say that the iPhone software is better designed and thought-out than Android, but the difference isn’t huge. I can imagine that for philosophical reasons alone you decide to buy an Android device anyway.

But I just switched the Nexus One off, popped the SIM card out.

It’s back in my iPhone, where it belongs.


16
Apr 10

Nexus One Day 4: Applications

It often is said that even if Android would be best operating system in the world, that wouldn’t matter much if nobody is developing applications for it. If I remember correctly iPhone’s application count is around 160,000 and Android’s is around 40,000 (although I wasn’t able to find the source on this). But of course, it’s not about quantity, it’s about quality.

After only a few days of using the Nexus One, I cannot really draw any definite conclusions whether Android applications are better or worse than iPhone applications, but these are my impressions after trying a few of them out.

The first thing I noticed is that it’s painfully clear that there are no Android user interface guidelines, or if there are, that developers are ignoring them. Note that Apple has rejected applications because they do not behave like iPhone applications ought to, which is a bit extreme, but it does result in a roughly uniform set of applications on the platform. Android is more like Windows in this sense, every application looks different. Some use super colorful interfaces. Others are all black and white (like many of the applications that come with Android by default). Even Google does not stick to one UI style. The messaging, Gmail and calendar applications are simple, black and white apps that look kind of boring. But its application menu, clock and photo gallery applications are super fancy looking.

Compare and contrast:

GMail:

Camera and gallery:

It is also clear that different Android devices have different screen resolutions. I downloaded a few applications where buttons were stretched and awkward looking. Rather ugly.

But looks aside — if you care about style and looks, Android at this point is not the platform for you — most applications are pretty functional. Especially the set of applications that does stuff you will never be able to do on the iPhone.

  • Handsent SMS is an acceptable replacement for the rather sparse SMS texting application that comes with Android. Yes, on Android you can build an alternative SMS application, that is in fact a first-class citizen.
  • CallTrack is an application that can automatically put all your incoming, missed and outgoing calls on a (Google) calendar. Useful if you want to keep track of who you called when.
  • Shapewriter is a keyboard replacement that allows you to write text by sliding your fingers over the keyboard, rather than tapping. It works quite well. There’s also a ShapeWriter iPhone application, the difference is that ShapeWriter for Android can function as an input device in any application. Even if you don’t like the shape writer app itself, it’s cool that it’s possible. Right? Here’s a demo:

There’s also some applications that I use often that are very specific to the Netherlands. It turns out they almost all have Android equivalents, like an application to plan train trips (“OV: Trein”), a Dutch TV guide (“TV Gids.tv”), checking rainfall (“buienradar”), Dutch news (“Nu.nl”). I was surprised to find these applications in the Android Market.

As far as games go Android is far, far behind. Games like Robo Defense are fun, but hardly impressive. Maybe it’s because of the choice to develop applications in Java?

Either way, if you’re not a die-hard gamer. Android has quite a few nice applications. But the extreme niche applications you won’t find there for a while.


15
Apr 10

Nexus One Day 3: Web Apps

Google. Have you heard of them? They became big with search and have always been pushing the web as the application deployment platform of the future. When Apple came out with the original iPhone they initially continued Google’s ideal, by pushing web applications as the way to develop applications for the platform. Apple changed course by allowing native application, but still continues to improve iPhone as a platform where web applications can be made to look and behave like native applications. It supports adding websites as applications, offline web applications, and running them full-screen, without any of the usual browser chrome.

So it came as a surprise when Google launched Android as a platform where applications were developed using Java. Why, Google? Why did you not push for the web as the main application development on Android? It seemed such an obvious choice. Heck, Palm beat Google to it. Their WebOS is completely based on web technologies. Palm!

I don’t get it. Word on the street is that Google does see web applications on the mobile phone as the future. However, they do not seem willing to promote that route yet, although they develop an increasing amount of applications as web apps these days (Gmail, Buzz, Google Voice). Although it is partly to work around Apple’s rejection of their native iPhone applications.

So, how’s Android’s support for web applications at this point? Android uses Webkit for its browser. It supports all the technologies required to build native-feeling web apps: multi-touch gestures, local SQL databases, access to location information. It is also possible to add a bookmark as an icon on the desktop, although the icon picture is not configurable. There’s also no easy way to hide the browser location bar (there’s some tricks, but it’s kind of tedious). Overall it’s not bad, but it appears that iPhone’s support for web apps is still better, which is surprising, isn’t it?


14
Apr 10

Nexus One Day 2: Discoverability and Text Input

Today was a busy day at work, lots of writing to do, so I did not use my Nexus One a whole lot. However, this does give a more realistic idea of what the battery life of the phone is like and I must say, it seems not bad at all. I charged it during the night and it appears to be at about 50% right now (it’s about 10 p.m. as I write this). Pretty good!

Yesterday I talked about multi tasking wondering why there wasn’t a built-in way to easily switch between applications. Well, it turns out there is, simply by holding the home key for a second. Great. Exactly what I wanted. I have some colleagues also trying out the Nexus One and as we were talking about it, we came to the conclusion that Android may have issues with the discoverability of features.

How important is it that features are easily discoverable? When I buy a piece of electronics I hardly ever read the manual. I just use it. I did the same with the Nexus One, it didn’t even come with a manual (although there is an online manual). Could I have guess that holding the home key would bring up a task switcher? I don’t think so. Maybe eventually I would have pushed and held every button, just to see what would happen. But it’s not just the task switching.

On Android there’s a couple of these not-so-obvious interaction patterns that are kind of important to know. In an application you typically have a bunch of controls on the screen, which you can tap. That’s pretty intuitive. However, for some items tapping and holding does something different. After a while a pop-up menu will appear with further options related to that item. The semi-physical menu button at the bottom of the screen pops up a context menu related to the currently active screen. In some applications I spent some time looking for a search feature only to remember that there is a dedicated semi-physical button for that. In the very beginning I had the same issue with trying to go back to the previous screen (there is a dedicated back button).

Are those dedicated buttons really necessary? When I use an application on the phone, after a while everything that does not change fades away. I no longer notice the notification bar, or the physical buttons below, I only see the application. I no longer realize these are still there, even though at some point I will need them. I suppose this takes some getting used to.

Of course I’m used to the iPhone, which only has one button: the home button. The rest is access by taps and swipes on the screen. Are the iPhone gestures always obvious? I suppose not, but somehow the amount of video footage I saw of people using iPod touches and iPhones taught me how to use it already before actually having one in my hands myself, so I never had this problem.

Text input
I type a fair bit on phones: twitter, short e-mails, text messages. So the quality of the (virtual) keyboard matters a lot. I’m in the “special” situation (like many non-US citizens) that I write in different languages at different times. In fact I switch between two, sometimes three languages (English, Dutch and Polish). Both Android and iPhone have auto correction built-in. This feature will correct you when you are mistyping a word. A useful feature, but it only works if the keyboard is set to the correct language. On Android there does not appear to be an easy way to switch between languages, but even if there would be one, it supports neither of my other two languages. Typing Dutch on a keyboard that is auto correcting for English is not a pleasurable experience, I can assure you. Luckily today I found out you can switch auto correction off, which makes it bearable. Still, even in English I do not seem to get the same results as on the iPhone. Sometimes the space bar doesn’t seem to register my taps, and more than a few times I accidentally pushed the home or menu button while trying to tap the space bar. Navigating within text requires the use of the trackball. I find the trackball a bit of an odd thing, it does not respond that well and feels a bit strange to use, like you flipped an old-fashioned mouse, trying to move it that way. Switching between navigating within text and typing characters means switching between screen and physical buttons. Not the best experience. I prefer the iPhone keyboard and text navigation.

But it’s not all bad, as you type, the keyboard shows multiple corrections and completions for the word you are typing, which is nicer than the single one the iPhone shows.

One fantastic alternative text input feature is speech input. Given that you’re a (near) native speaker of English, you can push the microphone button and speak your text instead of typing it. You can do this in any context where text input is required. Very nice, provided that you are in a situation where speaking out loud does not disturb others (in my case it often does). I tried it a few times and it transcribed my speech almost perfectly. Great feature.

Impressions after two days of use
I have been using the Nexus one for two days as my regular phone now. I must say that I like more than I dislike. My major complaint right now is the virtual keyboard, which for me does not seem to work as well as the iPhone’s. This is a big deal to me. Also, the keyboard does not always appear when it should. In the messaging (SMS) application, I often have to tap many, many times on the text input field in order to let the keyboard appear. I noticed similar problems in other applications from time to time.

On the phone, I have been using the Gmail (e-mail), Listen (podcast listening/downloading), Seesmic (twitter client) and Messaging (SMS) applications the most. Google Listen is a very nice podcast downloader and player. After you figure out the right workflow, it works well. Definitely a better experience than listening to podcasts on the iPhone. It’s a nice feeling that you do not really have to plug-in the phone to a computer at all, there’s no need to sync, it can download everything by itself. When I wake up in the morning, my Nexus One already downloaded the latest podcasts and I can get on my bike and listen to them while I cycle to work. (I know, I’m sooooo Dutch.) Of course in between I shower and have breakfast too. The Gmail application is good too. Yesterday I mentioned that e-mail notifications arrive late and got some push-back for that. Indeed, I was wrong. Notifications from Gmail are instantaneous. On my iPhone I use the Gmail web app, which is very good, but after getting an e-mail notification, I do still have to go to the Safari app and reload to actually read the e-mail. On Android I simply tap the notification to read the mail.

Do I still prefer an iPhone over the Nexus One? At this point, yes.


13
Apr 10

Nexus One Day 1: Multi Tasking and Notifications

Today I found out that my colleagues see mee as a Apple fanboy. One asked “so, would you get a Nexus One instead of the iPhone?” When I said that so far I still prefer the iPhone, another said: “he’s not the one to ask, he loves everything Apple.” And that may be the case, but it’s a love/hate relationship. I love Apple products because they’re so well thought out, stable, good looking and generally simply beautiful. I hate Apple because it’s abusing its increasingly dominant market position and thinks it has to tell me what I shouldn’t be able to do with my phone.

So, well, I may not be the one to ask for phone buying advice, but I’ll give you some thoughts anyway.

Today was my first day of full-time (as far as phones go anyway) use of the Nexus One, and it wasn’t half bad. There are a few things I noticed, but for today I’ll focus on multi tasking and notifications which are important, distinguishing features of Android.

Multi Tasking
In my view, on a phone multitasking has two main purposes:

1. Quick task switching. I’m talking about me being able to switch tasks quickly. In a browser I got some text, I want to copy it, switch to my mail application, paste it and switch back. If applications can run concurrently, clearly, this is easy to do — one would think. But Android, by default, doesn’t do it very well. On vanilla Android the way you’d do this is you’d copy the text, push the home button, find the e-mail application, tap it, paste the text in the e-mail, push the home button again, find the browser application again and tap it. Very similar to the iPhone, except that on Android the state of the application is not reset every time you switch. There are Android applications that fix this, providing the familiar Alt-Tab-type feature we know from desktop OSes, but why do I need a third party application for this?

Update: Tim Bray tells me in the comments that you can quickly switch between apps by holding the home key, which works great. Nevermind what I said.

2. Do stuff in the background. E-mail and twitter applications can ping a server once every few minutes to see if there’s anything new. A music application can keep playing its music. Great. But the risk is battery drainage. According to my (third party) task switcher, I usually have between 4-11 application running at the same time. A twitter app, Gmail, Google Listen (great podcasting application). They all use the network from time to time and well, today I hardly got through the day on a single charge. I’ll have to see for the next few days if that’s a pattern, or if it’s just this first day that’s tough on the phone — but the iPhone’s battery seems to lasts longer; about a day or two, depending on how intensively I use it.

Notifications
Android’s notification system is a clear winner. Rather than in-your-face pop-ups like on the iPhone, they appear quietly along the top of the screen as they happen, and when you drag down the status bar you can see a list of the latest ones and tap one to go to the application that produced it. The otherwise rather useless trackball pulses a light when there are new notifications. Perfect.

My only slight criticism is that notifications often arrive late. When I receive a new reply on twitter, or a new e-mail, it may take 5-10 minutes for the Nexus One to notify me. The reason for this has nothing to do with Android’s notification system. It has to do with the fact that the notifications are produced locally — to save battery, applications only check for updates every 10-20 minutes — but still it’s a bit of a shame. When somebody tells me they’ll send an e-mail, on the iPhone I get a push notification within seconds. It’s not all that important, but I still appreciate it. Of course, this is possible because iPhone notifications are pushed from the Apple server which receives it from various parties that can check for new mail ever second if they like, they don’t have power issues.

Alright, let’s see what tomorrow will be like.


12
Apr 10

Nexus One, Day 0

I have been a happy iPhone 3GS user for the past half year. Recently Google sent us a few Nexus One phones and I decided to give one a serious try. I just switched off my iPhone, switched SIMs and will use the Nexus One as my main phone for a week. I will update you on my impressions as the week passes.

Initial impressions:

  • The form factor is nice. Much better than the Google G1 that I had previously played with. It’s lighter and slightly thinner than my iPhone.
  • The screen has very nice colors. Definitely looks better than the iPhone.
  • For avid Google users (like myself), this phone has a great setup process. Enter your Google credentials and you get your Gmail, Calendar and contacts synced immediately. The Facebook application also integrates into the contact list, so you have your Facebook contacts synced as well. Useful!
  • I really have to get used to having more semi-physical buttons on this device. There’s the volume controls (like iPhone), a trackball thingy (that I haven’t used of yet), and a set of flat button across the bottom of the screen. There’s a back, menu, home and search button. You don’t actually push these buttons, you tap them and the phone gives you haptic feedback, which is a nice idea but it doesn’t seem to respond that well to my touches. Often I have to use my thumb to push it to actually respond. This is annoying because you really need this buttons to navigate around the OS.
  • Google went a little over the top by installing it with a animated background, which kind of drove me crazy. First setting I changed.

8
Mar 10

Pubsubhub-frickin’-bub

pubsubhubbub — I’m not kidding — is an actual existing thing. Yeah, I too would have killed to be a fly on the wall when they decided to call it that, but there you go. So let’s dissect this piece of art of a name:

  • pubsub, i.e. pub/sub, i.e. publish/subscribe, which is a common pattern in, well, the world, where multiple parties subscribe to one or more publishers, to receive notifications on updates.
  • hub, is a center of communication, often used for efficiency purposes, like an ethernet hub.
  • bub, you tell me. I haven’t a clue.

So what is it, really? It’s a protocol to enable near real-time update notifications among pubsubhubbub-supporting parties. Whereas RSS and Atom feeds required polling to receive updates, pubsubhubbub pushes information to parties. Currently various Google properties are have pubsubhubbub-support, such as Google Reader and Google Buzz. So, when you install a pubsubhubbub plug-in for a wordpress blog, like I have and I push the publish button on a post, it will almost instantaneously appear in all of your Google Readers and your Google Buzz, whereas before, it may have taken a few minutes or hours to appear.

Want to learn more about the details? Check out these slides, or the website:


10
Feb 10

Who needs native phone apps anyway?

 

 


20
Nov 09

The New Chrome OS Explained

It’s the browser as the operating system, as expected.