Thursday, December 17, 2009

Wardriving Kuwait: Listing Access Points

"Wardriving is the act of searching for Wi-Fi wireless networks by a person in a moving vehicle, using a portable computer or PDA." -- Wikipedia

Ever since I got my new mobile (HTC Hero) which has both GPS and WiFi, I've been wardriving; simply run a program and it does all the dirty work of scanning for wireless networks and attaching the geographical location of these access points (APs).

The program I use is wardrive. It's written by Raffaele Ragni and is freely available in Android's market.

A quick link to reach the full map is: http://sites.mbhbox.net. If you would like a list of only the open APs, visit the program's website: http://wardrivedb.appspot.com

The purpose of this project is to collect statistics and show a map of open and secured access points along with other things.

Don't be shy. Leave a comment. Anonymous comments are enabled.

If you'd like to contribute to this project, email me: mbhkewl TheAtSign gmail Dot com.

Monday, December 14, 2009

Facebook Privacy: Friend Lists Are Public

After Facebook's new fiasco about its new "enhanced" and "simple" privacy settings, which resulted in setting most, if not all, pictures and information to be public!

What I found today is that even if you set your friend list to be private, it's still available to the public eyes, through a swift link.

To demonstrate, I'll show an example on Mark Zuckerberg, Facebook's founder.

Here's Mark's profile. As you can see, there's no friend list available to the public. but that's OK, going to this link will show the friend list! Tada!

In case they fix this problem before you can look at it, here're pictures:




The trick applies even to numeric IDs of users.

Saturday, December 5, 2009

HTC Hero Review


Introduction


I have received my new phone: HTC Hero. The phone's operating system is Android. My previous phones were all Nokia Communicators (9110i, 9250, 9500), so I expect my phone to provide me with control and easy methods of text input for messaging and communication.

While people typically look for a cute interface, I look for functionality. Lots of it. The Hero has amazed me by having both. During this post, I'll go through about my findings, but I won't be able to provide pictures of the interface itself. There're however tons of video reviews out there and screenshots for the eye-candy hungry.

Below are my findings and notes regarding my experience thus far (4 days).

Note: You can view a clean/plain version of this post here.

Table of Contents


Specification

Hardware

HTC's page lists most of the things but not all.
  • Processor: Qualcomm® MSM7200A™ @ 528 MHz
  • Operating System ROM: 512 MB
  • RAM: 288 MB
  • Display: 3.2-inch TFT-LCD touch-sensitive screen with 320x480 HVGA resolution
  • Quad band with HSDPA support up to 7.2 Mbps
  • Connectivity: Bluetooth, Wifi (b/g), mini-USB, standard 3.5mm audio jack.
  • Camera: 5 MP with auto-focus
  • Audio formats: MP3, AAC(AAC, AAC+, AAC-LC), AMR-NB, WAV, MIDI and Windows Media® Audio 9
  • Video formats: MPEG-4, H.263, H.264 and Windows Media® Video 9
  • Battery capacity: 1350 mAh
  • Expansion slot: micro-SD (2.0 compatible)
  • Extras:
    • GPS with internal antenna
    • G-sensor
    • Digital compass
  • Other:
    • Internal phone capacity: 160 MB
    • No flash for camera

Operating System

  • Firmware version: 1.5
  • Baseband version: 63.18.55.06EU_6.35.06.18
  • Kernel version: 2.6.27-8dd6deee
  • Build number: 2.73.421.5
  • Software version: 1.0.0.A6288

Package Contents

The packaging of the phone is great and delicate, as if they're delivering an ancient wine bottle to you!
  • Phone: covered with a temporary protective sheet. The battery is also covered & must be uncovered to use the phone.
  • Earphones with soft cover cloths. Left & right earphone cables are equal in length & have Play/Pause, Back & Next controls.
  • Earphone cable holder (tiny) that snaps on the cable and holds to clothes.
  • 2GB Micro-SD card.
  • USB data cable: Standard to mini-USB.

  • AC adapter: 100-240 volts universal adpater. Has 2 circular pins and provides USB port to plug cable into then to the phone. The adapter is modular so you can remove the 2-pin head and plug a different head (only 2-pin is included).

  • Warranty, Accessory and Quick Startup guides included. Make sure you read the quick startup guide!
No pouch included.

AC adapter extra info: Input: 100-240 volts/0.2 Amps 50-60 Hz. Output: 5 volts/1 Amp.

According to the quick start guide, the phone charges fully within 3 hours. And it did!

Physical Look and Feel

  1. The phone is very tiny. It's smaller than the palm of my hand.

  2. The coating of the back-cover is neat and feels like rubber, not some cheap plastic.

  3. The touchscreen is not a fingerprint magnet. It looked better than an iPhone's screen. (Haven't seen an iPhone 3GS to compare against)

  4. Buttons: Top: Call, Home, Menu, Hangup/Power. Bottom: Search, Back.

  5. Trackball.

  6. The touchscreen looks great. I mean amazing! Even when there's sunlight.

  7. The earbuds are lite. I forgot that I had them on after half an hour and didn't even feel them.


Migrating Contacts

This is everyone's major hassle whenever moving to a new phone. I never had an issue since I moved from one Nokia Communicator to another, but since I got sick of their crappy software and each new generation gets a worse user interface than the previous, I jumped to Android.

I had taken a full backup of my phone using Nokia PC Suit and synced my contacts to Outlook Express. Both Nokia PC Suit and Outlook Express have the option to export your contacts, but both suck really bad because they export only ONE landline and ONE mobile phone number per contact.

Exporting to a Comma Separated Value (CSV) file, writes columns according to what Nokia or Microsoft wants, not according to what you have already defined inside the contacts. The fields are fixed by Nokia & Microsoft, so if you have extra fields, sorry, can't have them.

From 11 PM till 9:30 AM the next day, I was looking for a painless way to move all of my contacts, and I finally found it. Using a free program called NBU Explorer, I exported all the contacts from a full backup to vCard files: Each contact in its own vCard file. (vCard is also known as vcf). I then ran one command line in the shell which combined all these contacts in one file, then I uploaded that one vCard file to a GMail account to sync with the phone.
  • Linux: cat ./* > ../contacts_all.vcf
  • Windows: Start -> Run -> cmd -> cd C:\path\to\contacts\directory, then type:
    copy /B *.vcf contacts_all.vcf
When you first run your phone, it will ask you to sign in using a Google ID (or a Google App ID) and it will sync the contacts to your phone from that account. This is great because if I format the phone, or get a new phone, it will sync the contacts from my GMail account. I'm no longer dependent on a computer.

You could also sync the contacts to your computer in addition to your gmail account.

WARNING: HTC Sync tool only works on 32-bit Windows.

If you don't want to create a temporary Google ID (which you can't selectively delete -- it has to expire by itself after 9 months or so), I'm willing to create you a temporary ID to sync your contacts to, then to your phone, then to your computer. After you're done migrating, I'll delete your account from my domain. Email me if you'd like that.

First Run Problems

When you turn on the phone for the first time, you'll be asked to sign in to a Google ID, and if you don't have one, create one.

I did the mistake of signing in with my personal GMail account. It synced 605 email addresses, none of which had phone numbers, to the phone. I deleted the first 6, only to realize that they were also deleted from my GMail account!

Since I run Google Apps on my own domain name, I created a new username and imported the contacts to it. Then I had to factory-reset the phone to be able to use the new ID. There's no option to change the phone's main ID. A factory-reset is the only way out.

To change your Google ID on the phone, Go to Settings > Applications > Manage, then look for all Google's programs (Gmail, Google Apps, Maps, ...etc.), open each and clear the data. When you're done, open the gmail application from programs menu and it will take you to the sign-in wizard.

After you login to your Google account, go to Phone > People > Groups, then Menu and choose Sync Groups. You can specify which groups to synchronize to your phone.
You can also import all your contacts to a specific group using the web interface.

Boot up and Shutdown

Shutdowns in 2 seconds. Startup takes 1:04 minute.

I had to shutdown twice due to some programs that I downloaded and froze the phone. Watch out from incompatible programs!

Adapting to the Touchscreen

I never had a touchscreen before and feared that my typing would be hindered by it by not having a physical keyboard, but I was mistaken. Using the phone in portrait mode was easy enough, but using in landscape was freakin' amazing! I was typing quite fast on it, and you don't need to fear typing mistakes in either mode because auto-correction and word-suggestion are there for the rescue.

It took me about 2 hours only to fully adapt to the touchscreen. There's a calibration option in the phone, too.

WiFi and WEP Problems

I have an Access Point (AP) at home configured with WEP security, using a nonstandard Encryption Key Index. You have 4 index keys, and #1 is the default. I was using something else, and couldn't connect to the AP because of that. There was no option to select the key index manually.

I haven't tried 3rd party applications from the application market. I instead configured another AP with WPA-mixed and connected just fine. I'll be configuring that first AP to WPA anyway, so it's not a big deal.

I did search online about this problem and turns out I wasn't the only one suffering but didn't find a quick solution and it wasn't worth all that trouble anyway. WEP can be cracked in less than 15 minutes, so yet another reason to ditch it.

User Interface

The user interface (UI) is custom made by HTC, and provides many custom widgets which aren't available by default to Android. There are similar widgets, like the Clock Widget, but Sense UI offers a large collection of clocks to choose from.

Apart from looking good, it makes accessing functions quite easy and integrates various services into a single place. To sum it up: Sense UI improves the usability of the various options in the phone.

With all this glory, people have been complaining that it consumes a lot of memory from the phone. I wasn't able to find out how much exactly it was consuming, but the total free RAM available after a fresh boot is 100 MB, with all system services running (default apps).

With just 100 MB of free RAM, applications are still very fast to launch, and the whole system is quick to switch between tasks.

The features I'll go through in the UI in later sections may or may not be exclusive to Sense UI. I have no definite way to tell them apart.
  • One feature that seamed to wow the Apple crowd is the unlocking and password protection: You drag a bar to the bottom and then for a password, you draw a pattern on the screen. (My reaction was: Oh cute. Their reaction was: ZOMG! I LOVE IT!)
  • The weather & world clock default widgets were quite useful. World Clock allows you to add other countries/cities which is handy since I deal with companies in UAE & USA. The weather widget allows you to add other countries/cities too.
  • SMS messages are consolidated; messages between you and a person are stacked up together and are viewed as a single entry in the general view, rather than list each message separately (and having to scroll endlessly!)
  • When adding icons to a screen that is full, it asks you to drag the icon to another screen with free space, rather than just show an error. But if you'd like to switch the location of 2 icons (same screen or otherwise), there's no swap option; you'd have to delete one, move the other & re-add the first.
  • When typing an email, the keyboard includes a ".com" button to avoid the hassle of typing those common last 4 chars.
  • Links and numbers are auto detected in SMS messages. Clicking them would bring up the proper dialog to add/call/message/browse.
  • When inside some program and an SMS is received, it's displayed in the taskbar at the top. First it shows the sender's name, then shows lines of the message itself. Convenient since you know who & what was sent and if not important, you don't have to exit/switch from your program.
  • Character count while typing an SMS only shows when exceeding one message size (140 chars for Latin chars).
  • No confirmation is shown (and no option for it) when sending a multi part SMS. I like the challenge of squeezing whatever I need in the least amount possible ;)
  • When viewing contact groups you can send a group SMS or email with a click.

Multimedia

This section covers music, flash, youtube and pictures, each separately.

Music and Audio

I installed a file-manager application and used it to open an mp3 file. When I switched to another screen, audio stopped playing. When I launched the same audio file with the music player application, then switched to another screen, it continued to play and showed the status "playing" as an icon in the taskbar at the top.

You can create playlists and add your audio files to it. Even when the phone is locked, you can still play/control the playlist using the controls on the earphones' cable!

The phone's speaker is a mono speaker but it sounds really great! Multimedia files play just fine and the volume is good, but the ringer volume is a bit low even when you max it. You could work around this by increasing the volume with a sound editing program on your ring tone file. (Personally, I find the ringer's volume just fine. That was a friend's complaint).

Flash

I browsed youtube and other websites that have flash contents and was able to play videos and flash content without issues.

If you're browsing youtube, you're better off using the youtube application rather than the normal browser since the video quality in that application is far superior.

While playing videos using flash over a browser, the screen locked. An inconvenience if you watch flash-videos over the web, but can circumvented by disabling screen auto-lock & sleep.

Youtube

I played full high definition videos from youtube at 1080p of The Dark Knight and Transformers. Both played without stuttering (after pausing to let it buffer).

The video quality on the youtube application was amazing! Videos looked a bit fuzzy on the flash player of the web browser.

Videos play in HD format by default on HTC Hero. You have to press Menu button then select normal mode if you wish so.

Pictures

I went for one of my usual early morning walks on the beach and ceased the opportunity to try various features in the phone: The camera, GPS and media sharing.

I snapped this picture on sunrise and you can see the timestamp (optional) and on the right side a map showing the location of the image. The GPS takes some time to get the coordinates at first.

The camera application has simple zoom functionality and auto-focus on the area you want by tapping on the screen at the object you wish to be focused at.

When I got home, I connected to my wifi AP and opened the albums application, viewed the pictures, and then clicked the share button. It showed the option to share over these services:
  • Facebook
  • Flickr
  • GMail
  • HTC mail
  • Messages
  • Peep
  • Picasa: Whatever albums you have + DropBox.
  • Youtube
The lens isn't too great even though the resolution is high, but it's good enough.

* A common misconception is that the higher the MegaPixel rating, the better the picture. the pixel rate affects only the max resolution of the picture. The picture's clarity depends on the camera lens itself.

The albums app allows for sharing, cropping, rotating, and showing the pictures in a slideshow.

WARNING: The Media Uploader app doesn't work with non gmail.com IDs. If you're using your own domain name with Google Apps, you'll have to create a gmail.com ID.

Browsing

  • The browser is as fast as Firefox, or a bit faster. Almost all the sites that I visited had everything displayed properly; yay standards!
  • If you want to zoom, use 2 fingers (multi touch glory) and either drag them closer to each other to zoom out, or away from each other to zoom in.

  • After zooming in or out, text auto re-wraps to fit the screen. No more scrolling sideways! As far as I know, this is specific to Sense UI.

  • Google Docs opened without issues in the browser.

Contacts, Email and Calendaring

I grouped these together because whenever you add an account, you always have the option to synchronize all.
  • When creating a new contact from an unknown number or adding it to an existing contact, the contact's name appears immediately instead of "unknown" in the call history.
  • When creating a new contact, you can save the contact on your Google account, Phone, SIM card or Exchange account. All my contacts are on my Google account on my own domain (not my personal GMail account). See migration section for details. You can also link directly to Facebook and pull a profile picture for use.
  • You can choose how to display the contact's name: "First Last" name or "Last First" name.
  • Contacts can be linked (and auto detected) to Facebook and Flickr. It will also pull the profile picture and birth date from Facebook. I don't have a Flickr account to test it.
  • If the contact's birthday was near, it shows a notification in the Social Network section of contacts and tells you to tap on it to send a greeting: Call Mobile or Send message.
  • Calendar allows the first day of week to be either Sunday or Monday.
  • Calendar has multiple views: Month, Day & Agenda.
  • Agenda can be displayed Event Wise or Time Wise.
  • Multiple calendars can exist and be synced.
  • Adding a new calendar event is a click away. You choose which calendar to add the event to, what it is, duration of event, location, description, flexible reminders and whether it's a one time event or a repetitive one.
  • Reminders are fixed values. Custom values are not possible. It starts from: None, 5 minutes, 10, 15, 20, 25, 30, 45, 1 hour, 2h, 3h, 12h, 24h, 2 days and 1 week.
  • Event Repetitiveness: One-time event, Daily, Weekly (shows which day), Monthly (Every first {day}), Monthly (On day number) and Yearly (exact date).
  • The yearly event says: Every Saturday, December 5th 2009 (for example). This is a bit misleading, as next year Dec. 5th may not be a Saturday, and why was 2009 included anyway? It's redundant.
  • You can create one Exchange account only. By default it's setup to fetch every 15 minutes, but you can set it to use the Push feature where it fetches emails as soon as they arrive to the inbox. This works on Google Mail accounts as well (gmail and Google Apps).
  • You can create multiple IMAP/POP accounts.
  • You can send email and use gtalk with your device's Google ID using the built-in GMail and GTalk applications. They don't allow you to change the ID.

Battery

The battery charges in 3 hours, as stated in the quick start guide. I use the AC adapter rather than my computer's USB port, because the AC adapter outputs 1A current, while a USB 2.0 port supports a maximum of 0.5A. This means the AC adapter charges the phone faster.

Battery life becomes poor when enabling GPS and Wifi together (lasts less than a day). GPS is known to be power hungry.

I was able to extend the battery life to 2 days in a single charge by selecting an option to connect to 2G networks only, and mild use of wifi but no GPS.

For an extra mile of battery conservation, I also have a program to list other apps running in the background and kill them. This frees memory and since the processor isn't busy with background tasks, it consumes less power.

By default, wifi will disconnect when the screen is locked. You have 2 more options: Never disconnect when connected to power/computer and to Never Disconnect.

Enabling the Push feature on an Exchange account may affect battery life. Google suggests that you set it to pull every 30 minutes instead.

Essential Applications

I found some applications that I consider essentials and suggest that you install them as well.
  • Abduction! game. HIGHLY ADDICTIVE!
  • OI File Manager
  • SambaExplorer: Access Windows shares and download files
  • Shazam: Listens to music playing & identifies the track. It detected Mario Bros Overworld track! XD
  • TaskPanel: Lists and kills background apps. Can be configured to auto kill background apps
  • Ultra Notes: I take a lot of notes. This prog makes it easy to write them and later SMS/email them
  • DailyStrip: Follow your favorite comics! Dilbert, ftw!

Other

These are features that didn't belong elsewhere:
  • Phone vibrates once when a call is picked up. No need to keep holding to your ear waiting for an answer!
  • When the battery is low, the charging orange LED blinks once a second instead of flashing the screen. Nokia's communicator would flash the screen and make beep noises, draining even more precious power!!!
  • Trackball has white light. Light can be configured for notifications.
  • When an SMS is received, the phone rings and the trackball flashes smoothly in white. The screen stays turned off. (great power saver).
  • You can put a phone call on hold or mute it.
  • I recommend that you press the home button once a call is established to avoid ending the call by mistake by holding the phone close to your cheek.
  • Accessing the micro-SD card slot requires removing the cover only not the battery.

Conclusion

I love the phone, software and hardware. I find the fact that 180MB out of 288MB are gone annoying. I may switch to a vanilla (non-custom) Android interface just to see how much memory I'd save and whether I'd lose a lot of functionality or not.

I'm not happy that HTC's Syn program is restricted to 32-bit Windows only, but for whatever I'm synchronizing, it's already on a Google ID, so I'm not depending on a machine and fearing loss in case of a disk crash or a format.