Mail.app tips

Mail.app is not many people’s preferred e-mail client. Indeed, it is missing some key editing features - like the ability to insert tables in an email message - which can be a deal breaker for a lot of us. I use it because it is fast and lightweight, and unlike some of the other email clients I’ve tried (Outlook and Thunderbird), it is a first-class Mac citizen.

Here some tips for working with text in Mail.app.

a.) If you select a block of text while reading an email, and hit Command+R to reply to it, Mail.app will automatically “quote” just the selected text in your reply.

b.) You can paste selected text from a web site or another document into your email in 3 ways:

1. By using Command + V - which will paste the selected text with its original formatting

2. By using Command + Shift + V - which will quote the selected text in your message

3. By using Command + Alt + Shift + V - which will strip off all formatting from the selected text and paste it using your message’s formatting (this is like pasting plain text into your message).

Ways to paste text in Mail.app

Google Maps road directions now available in India

Good news for people who lose their way easily in India ;)

Google Maps now supportsĀ  “Get Directions” on its map application both on the web and the iPhone. I have tested a few routes and they are fairly accurate bar a few shortcuts I know of. Please test it in your cities and leave us a feedback if it works for you.

It works well for showing car routes but could not list any known public transport routes.

Google maps on iPhone (driving across multiple cities)

Google maps on iPhone (driving across multiple cities)

Google maps on iPhone

Google maps on iPhone

Google Maps Directions in India

Google Maps Directions in India

Hope you won’t have to ask for too many directions in new places now!

iLife’09 Review

Apple’s iLife keeps becoming more and more compelling with each iteration. Here is what iLife’09 manages to pack in:

iPhoto ‘09 - With face recognition coming to Picassa and Windows Live Photo Gallery, it was only a matter of time before iPhoto got it too. While iPhoto had no problems recognizing photos of my wife, it keeps having trouble recognizing my face. Fortunately, iPhoto ‘09 learns as you tag a person. Each time I tag a new photo of mine, it recognizes me in a few more.

Another welcome feature is integration with FaceBook. You go to a collection of photos, click the FaceBook button at the bottom right side of the window and a new album will be created under your FaceBook account and all the pictures in the given collection published there.

iPhoto’09 now has an ability to organize photos by location. While it needs latitude longitude information to be present as part of the picture’s meta data (which will be the case if you have an iPhone 3G or one of the new GPS enabled cameras), you can still manually mark a photo’s location in case the information is missing for your pictures.

Tagging location in iPhoto

I’d certainly like to see some of these features ported to Aperture as well!

GarageBand’09 too sees a bevy of new features. The most prominent of them is Learn to Play. Out of the box, GarageBand comes with basic lessons for the Piano and the Guitar. Although it helps if you have a MIDI keyboard or an electric guitar hooked up to your Mac, you can follow the lessons even if you don’t. You can download 16 more basic lessons free of cost from within Garageband itself (the download experience reminded me a bit of the App Store Experience on the iPhone).

Downloading basic music lessons from GarageBand

One disappointment for me was that the Artist Lesson feature - where you can learn to play a popular song from the Artist who performed/composed it - was not available in India. I guess the same royalty/revenue arrangements that keep iTunes music store from coming to India also keep the artist lessons out:

Downloading basic music lessons from GarageBand

“Artist Lessons are not currently available for your region. Please check back later.”

GarageBand has had the ability to create iPhone ringtones for a while and it’s is good to see the feature given the prominence it deserves.

GarageBand iPhone Ringtones

iWeb is finally becoming more ‘web-like’. There is an option to update your Facebook Profile when you publish the site - either to Mobile Me or to an FTP Server of your own. Then there is a handy Google Adsense widget which you can drag and drop onto your site and have the ads appear. You can even customize the ad-sizes and colors from within iWeb itself.

Google Adsense is now integrated into iWeb

And finally there are widgets to allow you to easily embed RSS feeds and Google Maps into your web pages.

iWeb has always been great for quickly cobbling together a personal website. These features ensure that you are up and running with little or no fiddling around with HTML and such.

iMovie sees addition of some useful features too - like video stabalization and animated travel maps but in my opinion it remains the weakest of the lot. I was not a big fan of the new iMovie UI that Apple had introduced in iMovie’08 and that part hasn’t changed all the much in iMovie’09. I think Apple is still looking to strike a balance here between their consumer and prosumer (think Final Cut Express) products here. They seem to have pulled it off with Aperture and iPhoto and I hope they’d figure it out with their video line-up too.

iDVD has not seen addition of new features. I wonder if this is because a move to Blue Ray might be in the offing.

iLife’09 is now available in India for Rs. 4,320.

iPod shuffle in India: pricing and availability

iPod shuffle

The new iPod shuffles announced by Apple will be available in India in 4-6 weeks. They are going to retail for around Rs. 4,900. The older 2 GB shuffle sells today for around Rs. 3,200 so one way to look at it is (known as ‘the glass is half full’ approach) that you are getting double the storage for Rs. 1,700 more. The other way is to look at the US price of $ 79, do some maths (79 x 51.8 = 4,098) and wonder (also conventionally known as ‘the glass is half empty’ approach) why we are paying a Rs. 800 premium!?

CouchDB on Mac OS 10.5 via MacPorts

CouchDBFirstly, this post assumes you know what CouchDB is. If you haven’t heard of CouchDB before, hop over to couchdb.apache.org to find out more about it.

There are 2 easy ways to get CouchDB running on Mac OS (excluding compiling from source):

CouchDBX

Download and run CouchDBX from Jan Lehnard’s blog. This includes everything you need to need to run CouchDB in one neat bundle - including the erlang runtime. At the moment it is Intel Leopard only.

MacPorts

MacPorts features both the CouchDB 0.8.1 stable release and the CouchDB 0.9.0a development release. Here is how you get it running:

$ sudo port
[Users/deepak] > install couchdb

At this stage port will download and install a bunch of tools and dependencies required to build and run CouchDB. Once port finishes installing, exit to shell prompt again.

Now if things went well, you should be able to start CouchDB as:

$ sudo couchdb

Unfortunately, things didn’t quite work out for me. CouchDB logged the following output to the terminal but didn’t start:

Apache CouchDB 0.8.1-incubating (LogLevel=info)
Apache CouchDB is starting.

Config Info /opt/local/etc/couchdb/couch.ini:
	CurrentWorkingDir=/opt/local/var
	DbRootDir=/opt/local/var/lib/couchdb
	BindAddress="127.0.0.1"
	Port="5984"
	DocumentRoot=/opt/local/share/couchdb/www
	LogFile=/opt/local/var/log/couchdb/couch.log
	UtilDriverDir=/opt/local/lib/couchdb/erlang/lib/
couch-0.8.1-incubating/priv/lib
	DbUpdateNotificationProcesses=
	FullTextSearchQueryServer=
	javascript=/opt/local/bin/couchjs /opt/local/share/couchdb/server/
main.js

I finally tracked the problem down to the missing log folder which CouchDB was trying to access. So doing this:

$ cd /opt/local/var
$ sudo mkdir log
$ cd log
$ sudo mkdir couchdb

Followed by attempting to start CouchDB again, did the trick:

$ sudo couchdb
Apache CouchDB 0.8.1-incubating (LogLevel=info)
Apache CouchDB is starting.

Apache CouchDB has started. Time to relax.

You can check that all is well by issuing:

$ curl http://127.0.0.1:5984/

Which should return with the following output (or something similar to it):

{"couchdb":"Welcome","version":"0.8.1-incubating"}

You can also have control CouchDB with lauchctl (via):

sudo launchctl load /opt/local/Library/LaunchDaemons/org.apache.couchdb.plist
sudo launchctl start org.apache.couchdb