There’s no place like ::1

First Thoughts on Android Dev Phone 1

| Comments

It finally has arrived! My Android Dev Phone 1 is here!

Android Dev Phone 1 unpacking

Let’s make this first review quick cause I’m too tired of spending countless hours trying (and hacking!) the device :P

Pros

  • The SO. Maybe I’m biased (cause it runs Linux), but this is the fastest mobile SO I ever touched. It never flicked once and I always get immediate responsiveness from the buttons I press.
  • The integration with Google. After the initial setup wizard where I introduced my Google account credentials, a little “sync” icon appeared on the top bar. Thirty seconds later, and all my Google contacts, GMail mails and Google Calendar were synched with the phone (over my 3G connection). W00t? Tried to edit a contact on the desktop’s browser and saw that it immediately replicated the changes on the device. W00t?
  • It runs a more up-to-date Linux version than most of my Debian machines (2.6.25)
  • Very fast GPS. It is definitely the fastest GPS device I’ve tried, getting a fix mere seconds after an application asks for the precise location
  • Good camera. It even does auto-focus (Hugo: it’s real auto focus :P), and applications can register themselves on the process of sharing a photo you just taken.
  • App Market: instantly browsed through dozens of free applications. Discovered an eBay app that allows me to capture a bar code from an object, and find it immediately on eBay. Got shocked when I pointed the camera to the first bar code in front of me, and it actually worked. W00t?

Cons

  • Bulky device. It’s clearly a bulky one. I can almost bet it is twice or three times as thick as an iPhone 3G. And since it has moving parts (the sliding display/keyboard), you constantly feel that is isn’t as solid as other devices.
  • Poor battery. What can I say? I really didn’t expect a high end device like this, with 3G, WiFi and bluetooth on to last as long as my Sony-Ericsson does. After this initial heavy-experiment usage, I predict that the phone will last a full day without recharging.
  • Poor bluetooth capabilities. I was kinda shocked when I realized I couldn’t send a picture through bluetooth. There isn’t any kind of OBEX push or pull on this device. Maybe a future firmware version? On the other hand, with just 2 clicks I shared the photo over GMail and 3G.
  • No video. The camera does not support video shooting. At least not with the default camera application.
  • No tasks? Maybe I’m just blind, but I didn’t find any way to create or sync tasks. Guess I’ll have to stick with the Calendar…
  • Not multi-touch enabled nor 3.5mm stereo jack. Sometimes I just hate you Apple…

Hacking

Being a totally unlocked phone, it was very easy to start hacking it. I installed the latest JF firmware (stable Google code + extra hacker tools) and gain a terminal application with easy root access.

After doing some reading it was time to Debianize it! :-) Installed the debian image on the SD card, and after a few commands on the terminal, I was running a Debian Lenny system with perl, vim, openssh, wget, aircrack-ng (!!!!) and the full GCC stack! It made me happy :-)

After playing around with Eclipse and the Google plugin, I realized that it’s very easy to debug the phone, because all Java processes appear on the IDE and can be inspected with 1 or 2 clicks, including threads and the heap! I guess that makes on-device debugging a piece of cake with Android.

Final thoughts

Overall I’m very impressed with the device. I’m hoping to have a little more time to explore the development capabilities of the platform, including the APIs and the community. In the mean time, kudos for Google for the Android’s effort.

( and without disclosing your name, thank you for helping me getting the device to Portugal :) )

Android Dev Phone 1

| Comments

…just ordered my device :-)

The Android Dev Phone 1 is a SIM-unlocked and hardware-unlocked device that is designed for advanced developers. The device ships with a system image that is fully compatible with Android 1.0, so you can rely on it when developing your applications. You can use any SIM in the device and can flash custom Android builds that will work with the unlocked bootloader. Unlike the bootloader on retail devices, the bootloader on the Android Dev Phone 1 does not enforce signed system images. The Android Dev Phone 1 should also appeal to developers who live outside of T-Mobile geographies.

oh, and it runs debian too

Why I Can’t Live Without last.fm

| Comments

I really dig last.fm. Starting at 2003 as a computer science project the original idea of Audioscrobbler evolved to, IMHO, one of the best social experiences of the web.

I consider myself a good user of last.fm. My profile lists 22k+ scrobbled audio tracks since 2006, and I have signed the monthly subscription several times — not that I consider the subscription advantages worthy, but I should support the projects I love.

Somewhere during the last week I realized I follow a semi-regular pattern when using last.fm. Here’s a diagram that explains it (I don’t needed to do this, but it was a good oportunity to test OminGrafle 5 :P)

my last.fm workflow

I first start with my own pool of music and listen to it over and over again. When I get tired or want to try something new, I pick the best artist/album from my local storage and go to last.fm searching for “related artists”. I usually spent one week or so on this state, bookmarking all the new songs I loved. I then analyze the list, selecting the new albums, expanding my local storage, and then I go back to the first stage to enjoy the music.

As the time goes by, I’m constantly expanding my music taste and variety (yeah, we can argue about that). So thank you last.fm for all the good things you brought to my musical life :)

Don’t forget to check out their API if you want to build your own producer, or build smart consumers that mine your musical data to build mind blowing graphs. Also, they have a beautiful open source client here I learned a lot about Qt4.

Codebits RFID API (With History)

| Comments

I know it’s old, I know that other people have it already, but still I decided to publish it.

SAPO Codebits RFID API endpoints

I only got the parser online yesterday at 19:00, so there are no results before that.

Have fun, and don’t abuse the server: the apps are written in Rails and everybody knows that Rails can’t scale