Saturday, August 9, 2008

List of useful Mac OS X applications

Adium [freeware]
This is a multi-protocol instant messaging client, very well integrated to OSX. Check the website for the supported IM protocols, but most likely it has the ones you need (including AIM, MSN, Jabber/GTalk and Yahoo).

Adobe Photoshop Elements 6 [commercial - €90]
Good photo editing software for amateurs and enthusiasts.

Adobe Reader [freeware]
To open PDF files.

aMule [freeware]
emule (edonkey) clone for Mac OS.

Azureus [freeware]
Java-based bittorrent client.

FacebookSync [freeware]
Import Facebook contact details to the Mac OS address book. Alternative download link here.

Filezilla [freeware]
FTP client.

Firefox [freeware]
No need to introduce the leading multi-platform and open-source web browser.

Flickr Uploader [freeware]
Easily upload your pictures to Flickr to share them online.

Flip4Mac WMV plug-in [freeware]
Play Windows Media video files in Quicktime and all Quicktime-based applications (including Frontrow).

Fluid [freeware]
Webkit-based (Safari) site specific browser. It will let you turn web applications (like gmail or gtalk) into a native Mac OS application with it's own icon, window ... and supports scripting to make the application interact with the system (example: display new e-mail notification in growl or in the dock).

Growl

Perrian

Photomatix [commercial - $99]
Generate High Dynamic Range (HDR) pictures from multiple shots with different exposure compensation.

Safari AdBlock [freeware]
Remove ads (pictures, flash0 from webpages in Safari, based on an online URL list.

Spanning Sync [commercial - $25/year]
(enter the coupon code 3TFDVT at registration for a $5 discount)
Synchronize Mac OS' address book and ICal (and by therefore your iPhone) with GMail contacts and Google Calendar.

XiaoCidian [freeware]
This is a Chinese language add-on for the Apple dictionary application. It can be used to display instant translation by typing ctrl+cmd+d from some applications including Safari (first, select a word or put the mouse pointer on it).


Friday, July 25, 2008

IPhone 2.0 synchronization - MDCrashReportTool closed unexpectedly

I was getting the following message when synchronizing my iPhone with firmware 2.0 to iTunes: "MDCrashReportTool closed unexpectedly". This is cause by a bug in Apple's crash reporting tool which make it crash when retrieving bug reports from the iPhone (pretty ironic ;-)). 

To avoid the issue, you can open a Mac OS terminal widow, and type the following command (one line):

sudo chmod a-x /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/Resources/AppleMobileDeviceHelper.app/Contents/Resources/MDCrashReportTool

This simply prevents the tool from running. Note this is a workaround and not a fix, and it will completely disables the bug reporting functionality (but it was crashing anyway ...).

Sunday, July 20, 2008

List of usefull iPhone applications

Here are the applications I have installed on my iPhone.

- weDict is a dictionary application, with translation dictionaries available from/to English for several languages.

- iChinese is a program that teaches you how to write Chinese characters by drawing them in the screen 

- Terminal lets you type command lines

- SSH installs an SSH server to remotely access your iPhone

- BossPref is a second Settings application that lets you configure new things (including enabling/disabling SSH).

Thursday, May 22, 2008

View your work calendar (Outlook) in Google Calendar and vice versa

I like Google Calendar because it is available from anywhere as long as you have Internet access (including on an iPhone ...) and there is no synchronization problem if you use it with several devices: all of them are using the same datastore. One thing I was missing though is that I didn't have my work meetings in it. And doing things the other way around would have been neat: having my personal stuff displayed in my Outlook calendar is usefull when you are planing meetings late in the evening or business trips.

My goal was not to synchronize the calendars (I wouldn't risk to mess-up my Outlook calendar with the synchronization process) but rather to have each calendar displayed within the other one in read-only mode.

Here is how I did it:

1. Setup the Outlook -> Google Calendar export process and schedule it every 15 minutes

The most simple, automated and reliable way of displaying my work calendar in Google Calendar that I found is to export it using SyncMyCal. This is not free ($25), but not too expensive either and it works very well. Also it will work fine behind a company proxy server which requires authentication.

To set this up, install SyncMyCal and go to Settings / Sync operations. Click "add" to create a new operation and apply similar settings to the ones in the following screenshot. Beforehand, create a new calendar in Google Calendar which will host your Outlook Calender - in this example it is called Outlook *hidden* (the hidden part in my company's name).

Then, if you need to setup a proxy server you can do so in Settings/Advanced Settings/Connection.

At this stage you can run a manual sync and it should populate you new Google Calendar with your Outlook appointments.

The last thing is to go to Settings/Advanced Settings/Auto Sync, make sure Auto Sync is enabled and set how often you want it to run (in my case every 15 minutes).

That's it, now as long as your work computer is on it will feed Google Calendar with any change in your Calendar every 15 minutes.

The result in Google Calendar looks like this (the blue events were created in Google Calendar, and the green ones came from Outlook):


2. Setup Outlook (2007) to display Google Calendar
appointments

This second step is much simpler as Outlook 2007 can display remote iCal calendars, which is supported by Google Calendar.

To set this up, first go to you Google Calendar settings, on the calendars tab, and click on the name of your main calendar. Under the private address section, click in iCal and copy the URL of the calendar:Then in Outlook 2007, go to Tools/Account Settings, and open the Internet Calendars tab.
Click on New, and enter your Calendar's URL.

If you go to the Calendar view, your Google Calendar should now appear under My Calendars.
To see the meetings from both calendars on one view, thick both of them under My Calendars. If they are displayed side by side, go to the View menu and select View in Overlay Mode.

The result in Outlook 2007:

Saturday, May 17, 2008

How to make a non-compatible HP printer work with an Apple Airport Express? (Mac OS X)

I own an HP 3745 printer (same as 3740), which I was able to use remotely with my Airport Express quite easily on my laptop running Windows and Linux (in both cases, create an IP printing port and use the normal driver).

However when I switched to an Apple laptop running Mac OS X it stopped working as the Mac drivers provided by HP don't seem to support network printing too well ... pretty ironic that only the Windows drivers work seamlessly with Apple's Airport Express!

I found a solution with open-source hpijs drivers. Here is how I made it work (follow the different steps in order):
  1. Browse http://www.linux-foundation.org/en/OpenPrinting/MacOSX/hpijs
  2. Download and install Ghostscript (find the appropriate version for you OS/system)
  3. Download and install Foomatic RIP (find the appropriate version for you OS/system)
  4. Download and install HPIJS (find the appropriate version for you OS/system)
  5. Go to Print & Fax in the system preferences
  6. Add your printer as a Bonjour printer, the computer should automatically select the corresponding Foomatic/HPJIS driver
  7. You are done :-)

I assume the same will work with an Airport Extreme or a Time Capsule which are based on the same technology, and it applies to most HP printers (you can find a list of printers supported by the hpijs driver here).

Finally, to date I found only one drawback: the driver lets you select if you want to use the color or the black cartridge, but it is not possible to use both at the same time. This means that if you print color documents the blacks will be printed using a combination of color inks, and therefore they will be more dark grey than black and it will cost you more money.

Sunday, April 6, 2008

Activate all the international keyboards/dictionaries on an iPhone version 1.1.4

As opposed to the iPod Touch which comes with a wide-enough selection of on-screen keyboards and dictionaries, the iPhone (1.1.4) is limited to the ones for the countries in which the phone was officially available at the time of the firmware's release (English/UK, English/US, French/France, German/Germany). So thanks to Apple, if you want to input text in another language, you will have to jailbreak your iPhone and tweak it a bit.

Here is how to do it:

A. Activate the international keyboards

To activate all the international keyboards, follow these steps:
  1. Download the UIKit.zip file from here.
  2. Drop the UIKit file found inside UIKit.zip into /System/Library/Frameworks/UIKit.framework on your iPhone (you can use SCP or SFTP - i.e. your iPhone must be jailbroken with the SSH server installed and running). Maybe it is a good idea to backup the old file beforehand.
  3. Set the right permissions for hte file (chmod 755) if your SCP/SFTP client doesn't do it automatically.
  4. Restart the iPhone.

B. Copy dictionaries to have spell check with the newly activated keyboards

Then, you can copy dictionaries if needed. For example, I want to use the French-Canadian keyboard to have a qwerty layout instead of the French azerty one. I am able to do that once step A is completed, however as it is hidden by default Apple didn't include the dictionary files for it, as a consequence there is no spell check when you use it. To solve this, I copied the French dictionary for the French-France keyboard to the French-Canadian keyboard. To do that, you can connect to the iPhone via ssh and type:

# cd /System/Library/KeyboardDictionaries
# cp ./fr_CA-one-letter-words.dat ./fr_CA-one-letter-words.dat.bak

# cp ./fr_CA-two-letter-words.dat ./fr_CA-two-letter-words.dat.bak
# cp ./fr_FR-one-letter-words.dat ./fr_CA-one-letter-words.dat
# cp ./fr_FR-two-letter-words.dat ./fr_CA-two-letter-words.dat
# cp ./fr_FR-stems.dat ./fr_CA-stems.dat
# cp ./fr_FR-unigrams.idx ./fr_CA-unigrams.idx
# cp ./fr_FR-unigrams.dat ./fr_CA-unigrams.dat

References

http://www.hackint0sh.org/forum/showthread.php?t=31937&highlight=keyboard+1.1.4