Issues Synching Amazon Kindle Notes and Highlights to iPhone

The Issue

I don’t mind reading Amazon Kindle books on my iPhone, but sometimes a bigger screen is nice. Thankfully Amazon has Kindle apps for PC, Mac, iOS, Android, etc. The issue I’m having is that my notes and highlights don’t usually sync correctly from Kindle for Mac to Kindle for iOS.

I tried manually synching, but that just seems to push the furthest read page rather than notes and bookmarks. I tried all the combinations you can imagine in terms of the order in which I open the app on the two devices. No success.

The Fix

What I ended up having to do is archive the item on my iPhone and then re-download it to get the correct set of notes and highlights. My guess is that it’s a bug in the iOS app.

Anyone else having this issue and figured out a different work-around?

Share

How to backup your website

Hard Drive in Flames

Everyone knows (or should by now) that cheap web hosts (Bluehost, Dreamhost, MediaTemple, etc.) don’t backup your data for you. So you’d better do it yourself. If you’re on any respectable host, you should have ssh access to the box.

Connect to your box via ssh and run the following commands to create a backup of your site.


cd ~
mkdir Backup
nohup zip -r Backup/YYYY-MM-DD-HHMM.zip www/ > backup_log.txt &

(Replace YYYY with the 4-digit year, MM with the 2-digit month, HH with the 24-hour format of the hour, and MM with the 2-digit minute)

cd ~ navigates to your home folder

mkdir Backup creates the backup directory in which the backups will be stored

nohup is short for no hangup and allows processes started by users at the terminal to continue running even after the user logs out

zip is a program which combines many files into one and compresses them to make the end result even more portable

-r tells zip to burrow into all subdirectories in order to grab all of the files

Backup/YYYY-MM-DD-HHMM.zip is the path to the backup file

www/ is the directory to backup (it may be html, htdocs, httpdocs, etc. on your box)

> backup_log.txt redirects all output from zip to the backup_log.txt file so you can review the file later

& tells linux to run the zip program in the background so that you can logout or perform other tasks without killing the process

Now all you need to do is download that zipped file. Use your favorite SFTP client to login to your box and snag it. I recommend FileZilla Client for all platforms. If you’re looking for an FTP server, FileZilla Server is perfect.

Share

Speed Up That Cheap Website with Cheap Amazon S3


Do you have an economy-grade website host? Me too. BlueHost is great for only $6.95 per month but its response times and transfer rates are terrible. Fear not — Amazon S3 to the rescue. For pennies a day you can supplement your cheap website host using Amazon’s Simple Storage Service (S3).

Amazon S3 is storage for the Internet. It is designed to make web-scale computing easier for developers.

Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. The service aims to maximize benefits of scale and to pass those benefits on to developers.

It is simple. So simple.

  • Sign up for an account.
  • Download and install the awesome S3 Firefox Organizer (S3Fox) Firefox add-on.
  • Upload the files you want to be served up like hotcakes.
  • Update the links in your HTML files to point to the new location.
    Example: http://s3.amazonaws.com/jeremy/blog/images/large_bandwidth_sucking_header.jpg
    Note that the example is intended to show the format of the URL and does not point to a valid resource.

Too good to be true? Nope. The S3 files are served up lickety split and best of all it takes the load off of your cheap host which allows it to function much more efficiently. So far I have moved my site’s header and the LightBox JS file. Why didn’t I move the other JS files and images? Because Google hosts all of the popular JavaScript libraries for free.

How much does it cost?
Very little, unless your site becomes wildly popular. 1 million requests costs one dollar plus 17 cents per GB transfered. That’s right. 1,000,000 GET requests = $1.00 + $0.17/GB.

Let’s assume the average size of the elements being served from your Amazon S3 bucket is 10KB.
10KB = 0.01MB = 0.00001GB
1,000,000 requests x 0.00001GB = 10GB
10GB x $0.17/GB = $1.70
1,000,000 requests x $0.01/10,000 requests = $1.00
Total Download Cost: $2.70

Your cheap site can now support 1,000,000 requests per month for a whopping $9.65 ($6.95 for BlueHost and $2.70 for Amazon S3). And if your site gets Dugg or on the front page of Reddit, Amazon S3 will scale without sweating a drop.

Share

DD-WRT for the win!

DD-WRT Logo

Today I was faced with a difficult wireless networking scenario: looooong house, many thick walls.

 

The topography is as follows:
Comp A <--- 200 ft., 4 walls ---> Router <--- 150 ft., 3 walls ---> Comp B

The house is older so the walls are very, very solid and RF-absorbing. The old setup involved a Linksys WRT54GX (802.11 b/g) as the router in the middle, a Belkin Wireless-N PCMCIA card on computer A, and a Belkin Wireless-N PCI card on computer B. After many attempts to reposition the wireless adapter’s antennas on computer B with no success I suggested hooking up a WRT54G in client bridging mode (using DD-WRT) to act as the wireless adapter on computer B. Worked like a champ. The signal is now strong and the connection hasn’t dropped one single time.

The kicker is that the WRT54G I used is version 8.2 which has very little RAM and doesn’t support the standard method of upgrading the firmware to DD-WRT.

The Solution

  1. Download TFTP.
  2. Download the VX Work Killer firmware for the WRT54G v8.2
  3. Download the dd-wrt.v24_micro_wrt54gv8.bin firmware for the WRT54G v8.2
  4. Upload the vxworkskillerGv8-v3.bin firmware to the router.
  5. Wait for the router to reboot.
  6. Try to ping the router (192.168.1.1 by default).
  7. When you can ping the router continue to the next step.
  8. Open a command prompt and enter
    tftp -i 192.168.1.1 put dd-wrt.v24_micro_wrt54gv8.bin
  9. If all went well, when the router reboots it will have DD-WRT on it and be accessible via 192.168.1.1.
  10. Username: “root”
  11. Password: “admin”

Source

The connection on computer A is also weak so I’ll be adding a WRT54G to the mix to fix it.

Thank you DD-WRT!

Share