Rants & Raves

April 1, 2010

Android nexus one experience

Filed under: Javascript — admin @ 11:51 pm

After losing my HTC Hero *snif* I bought myself a brand new Google Nexus one. As you might know the Nexus One can currently only be ordered if you are in the U.S. or the U.K. I currently live in Argentina so I had to get help from a friend in the U.S. to get ordered and delivered at another friend in the U.K. who forwarded it to Holland so a colleague could take it with him to Argentina!

So, yes, I wanted it badly :-)

On first sight the Nexus One looks great, and let’s be honest, it’s a technological masterpiece.

The amoled display is the most beautiful display I have ever laid eyes on.
The camera is quite good unlike the useless excuse for a camera my HTC Hero used to have.
And the speed of the CPU makes everything look smoother and feel better.

Unfortunately my enthusiasm didn’t last long.

When HTC delivers an Android phone of themselves, like the Hero, it has a user interface (UI) they call “Sense“. Essentially this is a collection of Widgets and extensions that really make a difference to the way you experience the platform.
When buying the Nexus One I had to trust Google on it’s reputation because the website is partially inaccessible from Argentina. I was a bit worried on beforehand because I’ve seen that both Motorola and Samsung were not able to deliver anything remotely cool as the HTC Hero.

Here’s a list of things the Hero does better than Nexus One. They are mostly UI related so don’t expect a hardware breakdown.

Dialpad
The first thing I noticed was that there was not such an obvious button to the dial pad on the home screen, but rather a common sized icon.
The dial pad itself looks fine, but doesn’t allow you to type the name of the desired contact dtp style. HTC’s Sense does this really smart. You just type either a unlisted number, t9 style a contact’s name, or the number of a contact and you will be presented with helpful suggestions.

Google doesn’t do this. Here you have to either type a number or explicitly go to the contacts tab, scroll to the contact you’re looking for or even explicitly hit the search button to make an input box pop up.
Altogether a lot less intuitive than what Sense does.

Clock
The clock that comes with Sense is by default present on the home screen and looks great. You can actually choose from a variety of clocks that are all equally beautyful or remove it from the home screen.
Tapping the clock brings you to a screen where you can choose from a timer, alarms, clock settings etc. which is very handy and I used a lot for weekly stand up meetings where eveyone has a fixed amount of time to talk.

Google doesn’t seem to agree with this. If you want more than the little clock in the status bar (the top right of the screen), you’ll have to place a shortcut to the clock on your home screen and tap that to actually see it, set alarms and see weather information. Altogether a bit cumbersome and it doesn’t get near the user experience of Sense.

Numerical input
Another minor, yet slightly dissappointing difference is that Sense has the one-armed-bandit style of choosing numerical values. For example, when you want to a timer you scroll through the numbers as if they were printed on a roll of toilet paper. The advantage of this is that you can skip a bunch of numbers in a single swipe, rather than clicking many times on a + or – symbol.

Equalizer
An issue that I found to be equally dumbfounding in both the Hero as well as the Nexus One is the lack of an equalizer / bass-booster in the audio players that come with the device.
Even my Nokia N73 and later N95 both had that!

November 30, 2009

Mod_rewrite trouble: RewriteEngine Off seemingly not working for subdirectories under a rewritten directory

Filed under: General — admin @ 2:00 am

It took me hours and hours of swearing at the screen before I finally found the solution for a problem I was facing with mod_rewrite. The situation was the following:

I was applying pretty urls to the website of a customer of mine using mod_rewrite. The rewrite rules were identical to the Zend htaccess file, which looks like this:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(js|ico|gif|jpg|png|css)$ /index.php

This ruleset basically says: Internally redirect every request to a URL that is

  • not an existing file and
  • not an existing directory and
  • not a typical html asset

to index.php in the root of the website.
This htaccess file approach is also automatically in effect inside existing subdirectories but that’s usually easilly overcome by having a htaccess file in there that says:

RewriteEngine Off

But THAT is where things went wrong this time. When I requested a file in both the root directory as well as this subdirectory, I could not ever trigger a 404. Also not when requesting a non-existent .jpg file which, as you can see in the RewriteRule, should not trigger mod_rewrite.

After a lot of searching I found 1 website that mentioned the cause of my trouble. The server the website was hosted on was a DirectAdmin powered webserver that has custom error documents enabled which I deleted from the filesystem somewhere in the past.

What I needed to do is add the following line to the top of the htaccess file in the root of the website:

ErrorDocument 404 "The thing you are looking for does not exist on this planet... Go away."

This solved the whole problem. Of course the message can be whatever you deem fit for your visitors.

I figured out that I had similar trouble as mentioned on that other website by having the redirect target be some other url, followed by %{REQUEST_FILENAME} like so:

RewriteRule .* http://www.google.com/%{REQUEST_FILENAME} [NE,L]

Hope this helps.

Menno

Powered by WordPress