Free Nexus One Google Phone!

So check this out! Google just sent me an email saying they will ship out a free Nexus One or Verizon Droid for being a developer and reaching the 5,000 download mark on one of my apps.

Subject: Device Seeding Program for Top Android Market Developers

Due to your contribution to the success of Android Market, we would like to present you with a brand new Android device as part of our developer device seeding program. You are receiving this message because you’re one of the top developers in Android Market with one or more of your applications having a 3.5 star or higher rating and more than 5,000 unique downloads.

In order to receive this device, you must click through to this site, read the terms and conditions of the offer and fill out the registration form to give us your current mailing address so that we can ship your device.

You will receive either a Verizon Droid by Motorola or a Nexus One. Developers with mailing addresses in the US will receive either a Droid or Nexus one, based on random distribution. Developers from Canada, EU, and the EEA states (Norway, Lichtenstein), Switzerland, Hong Kong, Taiwan, and Singapore will receive a Nexus One. Developers with mailing addresses in countries not listed above will not receive a phone since these phones are not certified to be used in other countries.

We hope that you will enjoy your new device and continue to build more insanely popular apps for Android!

Eric Chu
Android Mobile Platform

I got my confirmation letter from the Android Market Device Seeding Program. Check it out!

Getting root on your new Nexus One Android Google Phone

The Nexus one was rooted before it even got released. Paul at modaco forums showed us how to perform this hack. I’ll try to simplify the method here.

1. First unlock your bootloader if you have a T-mobile Nexus One (this voids the warranty) or get an unlocked version from Google for like $550:

a. download fastboot
b. open terminal or command line and type
– Windows fastboot-windows oem unlock
– Mac ./fastboot-mac oem unlock
– Linux ./fastboot-linux oem unlock

2. Rewrite the Bootloader to obtain root privileges:

a. Download either SuperBoot or InsecureBoot and extract. (The difference is that with the insecure boot you won’t make any changes to the system and you would have to launch su manually)
b. Put the device in bootloader mode:
– Turn off the phone and restart holding the trackball.
c. Flash the bootloader:
– Windows = double click the windows bat file
– Mac = open terminal and cd to the directory containing the file. type
chmod +x

– Linux = open terminal and cd to the directory containing the file. type
chmod +x

Now you should have root!

Rooted Nexus One Google Phone
Pic courtesy of Stericson.

Sony Vaio T – series T350P disassembly

Wanted to switch out the hard drive in my Vaio T350P, but realized its a 1.8″. Disappointed. Also the ram is microdimm (more expensive).

Remove the screws on the back

Push back the clip behind the F5 and Num lock to remove the keyboard.

Carefully remove the ribbon for the keyboard.

power button comes right off.

slide off the other side.

remove screw

you can access the RAM here. pull off ribbon in the center.

and 3 ribbons near the fan and take off the top cover.

remove this ribbon to access HD

here’s your HD

full view

Automatic website backup without SSH enabled over FTP

Last time I backed up my website with rsync and ssh, but on my new host they disabled SSH. Rsync does not work over ftp. I do not want to do incremental backups with delta files like is done with rdiff-backup or duplicity. I need to have an exact mirror of my site. But remember that your sql databases won’t be backed up.

Curlftpfs is the key! In this tutorial I will show you how to backup from one server to a backup location which can be your hard drive, another web host, dropbox folder, via webdav, etc.

Download curlftpfs, rsync and ncftp:
sudo apt-get install curlftpfs ncftp rsync

make directories to mount your ftp server:
sudo mkdir /media/hydtechblog
sudo mkdir /media/hydtechbackupserver

edit fstab to mount the ftp servers using curlftpfs:
sudo gedit /etc/fstab

add the lines and modify them according to your server: /media/hydtechblog fuse rw,allow_other,uid=root 0 0
curlftpfs#username:password@hydtechbackupserver /media/hydtechbackupserver fuse rw,allow_other,uid=root 0 0

One thing to remember is that these two will not mount automatically because when the computer restarts, the fstab is done while you are not connected to the network. To fix this we can just add the mount commands in our crontab.

Edit crontab:
sudo crontab -e
enter the following lines and modify accordingly:
00 09 * * * mount /media/hydtechblog
00 09 * * * mount /media/hydtechbackup
01 09 * * * rsync -avz –rsync-path=/usr/bin/rsync /media/hydtechblog/public_html /media/hydtechbackup/public_html

ctrl + o to write and ctrl + x to save

This will tell cron to mount the folders at 9:00 am and start rsync at 9:01 am. You can replace the backup location to another folder on your hard drive or your dropbox or ubuntu one folder. You can also mount with webdav and use this method.

For encrypted incremental backups checkout duplicity, it also works with webdav and ftp.

Upgraded JesusFreke 1.5 cupcake to CyanogenMod 1.6 Donut

Once I knew what I was doing, everything was simple.
Here are the steps for the G1:

1. Update recovery image (Optional but recommended)

a. download the cyanogenmod recovery image and place it in your SDcard.

b. open up terminal and type
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /sdcard
flash_image recovery /sdcard/cm-recovery-1.4.img
cat cm-recovery-1.4.img > /system/recovery.img

2. Update cupcake to donut

a. download the 1.6 image here and place it in the sdcard

b. download the mod image here and place it in the sdcard

c. turn off phone

d. boot into recovery mode by pressing home + power

e. from the recovery menu you can select nandroid to backup for safety (optional)

f. alt+ w to wipe (optional)

g. alt + a to apply, first select the 1.6 image and let it complete

h. Do not restart!

i. alt + a to apply, select the cyanogemod image and let it complete

j. reboot

Revealing Opera wand passwords on Ubuntu Linux and OS X

There are several utilities in Windows which reveal the opera wand password and I haven’t used windows in forever. The Opera wiki has a Power button which can help capture your password while logging in to the site. Click this link in Opera and it will install a button which you can drag to any panel. While on a page which requires a password, you can click on this new wand instead of your original wand.


Backing up my wordpress blog and website using Ubuntu

I’ve been noticing that my webhost server keeps going down for a few hours every day and it scares me that I’ll lose all my data. So, I started looking for automatic backup solutions and this is the best way I could come up with.

Backing up the wordpress database:

I’ve tried the following plugins

This plugin backs up my data to their server automatically. only backs up the database though. must register for a free account at The backups occur once every few days.

2. Bei-fen
This plugin backs up my data including images and files to a location on my server

3. DBC Backup
Does a cron backup automatically at any location on my server at any time interval I set it for. Only backs up the database.

4. WP-DB-Backup
Can schedule the database to automatically backup to your server or automatically email them.

5. SMEStorage Backup
Based on WP-DB-Backup. Must register for a free account at and you can backup your data to a cloud storage service like Amazon S3 or You can even have the backups sent to your email.

Backing up my whole website from my webhost to my computer:

I use a tool call rsync in linux to automatically sync my public_html directory on my webserver to a backup folder on my Computer which is synced automatically with Dropbox. You can also use Ubuntu One. For this tutorial your web host must have ssh enabled. If you can’t get ssh, then backup your wordpress website over ftp with curlftpfs on Linux.

Follow these steps:

1. Sign up for an Ubuntu One account or a DropBox account and download/install the desktop client. You can get a 2GB account for free.

2. Download the necessary files
sudo apt-get rsync ssh

3. Set up autologin with ssh so you won’t have to enter your password each time.
sudo ssh-keygen -t dsa
press enter each time without changing anything. this will make a key in you .ssh folder.
copy the ssh key to your server using scp
scp /home/user/.ssh/
login to your server using ssh
enter password and append the key to authorized_keys
cat >> .ssh/authorized_keys
remove the key from the home directory on your server

4. Set up a cron job to sync the public_html folder to your dropbox folder
crontab -e (do not sudo)
open with editor like nano
enter something similar to the following line
* */5 * * * rsync -avz --rsync-path=/usr/bin/rsync -e ssh /media/sdawhatever/locationof/dropbox/backup/
(this is telling cron to sync every 5 hours, for more help with cron check wiki)
press ctrl+O to save file, enter to save, ctrl + X to exit.

thats it, your done!

Connect your android on Ubuntu in recovery mode, fastboot mode, or unactivated

To boot into recovery mode: Press and hold Home + Power
To boot into fastboot mode: Press and hold Camera + Power

Setup UDEV to recognize your HTC Android device:

Setting up UDEV to recognize HTC Device –
Open up terminal and type:
sudo gedit /etc/udev/rules.d/51-android.rules
Add the following:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
save and close.
sudo /etc/init.d/udev restart

Installing adb & fastboot:

Download the Android SDK here.
Extract it to the root or home directory.
Download fastboot and place it in the /AndroidSDK/tools directory.
Right click fastboot -> Properties -> Permissions -> Allow executing file as program.

Adding tools directory to bash:

sudo gedit /home/user/.bashrc
Add the location of you tools directory:
#AndroidDev PATH
export PATH=${PATH}:/AndroidSDK/tools

close and save.

I got most of this information from this post.

Advertise on

You can purchase 125×125 banners in the sidebar for a week or a month automatically by filling the form below. The ads will show on each post including the home page and there will only be 4 available. To purchase a different size banner please contact me by leaving a comment below. This blog has reached 10,000 unique visitors a month.