I'm assuming you just want to exchange short ascii emails with friends and family and to stay in touch with work--say a dozen messages a day, each no longer than about 50 lines. Of course, a Blackberry can do this (now--they didn't exist when I was first writing this); the challenge is to be able to do this inexpensively, from almost anywhere in the world. If you are in an environment where communication of a 6-point agenda requires a 2 MB Powerpoint file (and I have experienced exactly this), then these notes will not help you much. I also include some asides on printing documents and making phone calls while traveling.
To cut to the chase, my currently preferred methods for staying in touch worldwide are to use my Axim 30 Pocket PC with WiFi, if that's available for free, or the Axim (via Bluetooth) or my Palm Zire 31 (via IrDA) with my cellphone on T-Mobile's t-zones (GPRS) service wherever that works (basically, anywhere apart from Japan and Korea, and really remote regions elsewhere).
Most of the really small laptops are not exported to the west (apparently there's no market for them) so you either have to buy them in Japan or get them from a specialized service such as conics.net or dynamism. A plausible American product is the 10 inch series from Averatec.
I've used Toshiba Libretto laptops for many years. These are about the tiniest functional laptops. I started with a model 20, then a 70, and now have an L5, which I bought in Tokyo for under $1,000. It comes with Japanese Windows, which is an educational experience, but I use it mostly with RedHat 7.3 Linux. Toshiba is no longer doing much in this market. The coolest small machine is currently the Panasonic R5.
It's also feasible to accomplish quite a lot with just a palmtop. I've uses a Palm IIIxe and, more recently, a Zire 31. The IIIxe runs on AAA batteries, so you can use it when you are away from reliable power for long periods, or traveling very light. I also have a Dell Axim 30 Pocket PC with built-in WiFi and Bluetooth. I find the Palm is better as a PDA, but the Axim is a better laptop replacement (it can display PDF, Word, and Powerpoint files, and it runs Skype); a higher-end Palm might be the best of both worlds (though it cannot do Skype).
The descriptions below are specialized to the devices I use (and in particular to Linux and Palm) but should apply to similar setups; I've no experience with Windows or Macs, though I have recently acquired a Pocket PC (a Dell Axim 30 with builtin WiFi and Bluetooth) which is an interesting contrast to the Palm.
The power supplies for palmtops, cellphones, MP3 players and the like are often bigger and heavier than the devices themselves. However, most devices can be charged through a USB port: either on your own computer, or somebody else's, or on one of these USB power adapters. Both the Zire 31 and Axim 30 can be charged through their USB hotsync cables, and you can get cables to charge most cellphones the same way. The iPod Shuffle MP3 player is tiny and cheap, has excellent sound quality and battery life, and it plugs directly into a USB port for charging. I use the USB method to charge all these devices and leave their power bricks at home. While we're talking about MP3 players, you should throw away the headphones that came with your device and get a decent pair of IEMs (in-ear monitors, also known as canalphones); these go deep inside your ear and provide complete sound isolation and excellent sound quality. Check out the IEMs from Etymotic, Shure, Ultimate Ears, or Westone (I use Westone UM1s). No other consumer purchase will give you so much satisfaction as a pair of IEMs; a good comparison is here. Don't even think about sound-canceling headphones such as Bose: these are inferior to IEMs in every way--expensive, physically huge, you cannot sleep on your side with them on, inferior sound, inferior sound isolation, and they need batteries.
For cameras, mini-speakers, GPS receivers, flashlights, and other travel necessities that require regular batteries, there is no better charger than the fast and tiny Lighning Pack 400n and the high-capacity NiMH cells available from Ripvan100.
It's usually best to belong to more than one of these services, since some are better in some areas than others, and things sometimes go wrong. I use IBMnet (it's now run by ATT under the name ATTGlobal), and Roam International (which has recently ceased operation--the link leads to a replacement service that looks OK but expensive, although I have no personal experience of it).
IBMnet has vastly different deals in different countries. Typically, it's n hours of use for $m a month, with additional charges for additional hours, for 800-number access, and for "roaming" outside your "home" region (they divide the world into 5 regions: N America, S. America, Europe+Middle East+Africa, Asia-Pacific, China). I have a grandfathered USA account where n=3 and m=5, and the roaming fee is a rather expensive 15c a minute anywhere outside North America. If I were starting today, I'd investigate an account in a European country (this would provide free roaming throughout Europe).
Roam is a simple pay-per-use prepay system: when you register, they hit your credit card for some sum (typically $50). Each call has a per-minute rate (typically under 4c a minute in the US, under 10c a minute elsewhere). When you've used up the prepaid amount, they hit your credit card again. There are no monthly charges or expiry dates. Whereas IBMnet provides you with an email address and storage, Roam just provides net access. Also, Roam does not normally supply detailed accounts of your calls, though these seem to be available on request. Roam uses the IPASS system, among others, and has really massive coverage. As noted earlier, Roam has ceased operations; I'm still looking for a replacement, but MaGlobe looks promising.
Some countries have free ISPs (they make their money by getting the phone company to give them some of the revenue from the phone call, so the business model doesn't work in countries that have unmetered local calls). These can be very useful if you are around for a week or so as you avoid the 10 to 15c a minute you'd pay to Roam or IBMnet over and above the cost of phone call. For example, in the UK, the "no ties" service of Freeserve works very well. Usually, you have to enroll in these services, but there's a very useful one in Northern China that has open access: just dial 16900 (from a hotel you may need to prefix this with 0 to get an outside line), then use login name 169 and password 169. This service is provided by China Netcom and the price of around 5.4 RMB/hour is added to the cost of the call. A similar service is provided nationwide by China Telecom on 16300, but I've not tried it.
With the Palm, I used to use the old Palm clip-on modem with the IIIxe, but there's no similar device for the Zire: instead you need a device that will connect via the IrDA (infrared) port. Most higher-end cellphones can do this (either for GPRS or CSD), but for a landline modem the choices are limited to the Pegasus III and Psion IR travel modems: there's a comparison (in PDF) here. The Psion modems are no longer in production, but they are readily available on Ebay (mostly on the UK site) for about $15-$30.
I use the Psion modem, which is about the size of a pack of cigarettes and, without the batteries (it uses 2 AAs), very light. It works fine with the Zire. However, the easyswitch software that is used to configure the Psion for different countries crashes the Zire, so you need to do this directly by the modem command AT*MCxx where xx is a country code that, infuriatingly, is not the same as the phone code. Here are the codes I'm aware of.
Country Psion Code Country Psion Code Australia 24 Italy 28 Austria 21 Japan 35 Belgium 22 Norway 27 Denmark 32 Portugal 36 Finland 29 Spain 26 France 33 South Africa 18 Germany 19 Sweden 30 Greece 37 Switzerland 20 Holland 25 United Kingdom 17 Ireland 34 United States 23
In some places it can be impossible to find a phone jack of any kind, so then I resort to the handset jack (via the DPI connection of the Ositech modem) or, if that's infeasible, to a screwdriver (to open up the wall socket), sewing pins (to stick into the conductors in the wire if there's no wall box), and an RJ11 socket connected to a pair of crocodile clips (I got this in Radio Shack). Be careful--some systems send 50 volts or more over the phone line and you could hurt yourself or take the whole hotel off the air. There are some other tips here. Note that the digital line connector discussed there is subsumed by the built-in capability of the Ositech modem, and that the Modem Saver International (see below) deals with the tax impulses.
It's prudent to check the line for polarity and overvoltage (which
usually indicates a digital line): I use a
Modem Saver International.
This device has the extremely useful
additional properties that it can be used as a surge suppressor, and
also filters out the tax impulses that break connections in
Germany and a few other places. I have found a few lines overseas
that worked only with the ModemSaver in the circuit, and a few
that worked only with it out of the circuit: you often have to
experiment. This device also comes with useful adapters for swapping
the inner and outer pairs of wires, and for swapping polarity.
It's often necessary to dial with the phone rather than the modem (e.g., if there's a special "external line" key, or if you are using a calling card or dialaround service) so make sure you know how to make your modem pick up a manually-dialed call (basically, have it blind-dial a null number). If dialing by modem, you should check (by pressing a few buttons) whether the phone is tone or pulse dial and adjust the modem dialing string accordingly. Most are tone these days, but I've met pulse dial in Italy and a few other places. The mark-space ratio for pulse dialing is different in different countries, but I've not found the the default setting on a US modem to cause problems.
With Linux, you need to find the actual phone numbers. You can look up numbers on the IBMnet and Roam web sites or in their Windows or Palm dialers, and you can get the complete lists from the following links for IBMnet and Roam International respectively. Note that downloading from the Roam site can only be done from Windows! Incidentally, if your laptop is running Japanese Windows (as mine is), then the Roam Windows dialer will come up in Japanese. If you hit ctrl-l with the cursor in the dialer, it will flip into English and stay that way.
With a bit of luck, you'll be able to make a local call to one of these services and get a working PPP connection. I use kppp to do the dialing in Linux and the IBMnet dialer or the built-in applications (preferences->connection and preferences->network) on the Palm. For debugging, or probing modem registers, I use minicom on Linux and Pilot VT100 for the Palm. I've not been defeated (except by the total absence of a phone) anywhere that I've been in the USA, Canada, Japan, Australia, New Zealand, China, Hong Kong, Thailand, India, UK, Ireland, France, Portugal, Spain, Germany, Austria, Italy, Belgium, Denmark, Sweden, Hungary, the Netherlands, and Switzerland during the last few years (I forgot to take my modem to Israel).
From within the USA, there are dialaround services like onesuite.com that provide reliable long distance and international calling for trival sums via local or 800 numbers (2.9c/minute domestic and 4c to Germany, for example); beware, however, of minimum-use charges.
Outside the USA, the US phone companies all have services for calling back to the USA via the local equivalent of an 800 number, but they aren't so good for calling, say, Australia from Germany. For this, I use Cognicall, which is a postpay service (they bill your credit card each month for the calls you made in that month). The Germany to Australia example is 12.3c a minute with Cognicall and Germany to the USA is 11.6c; their rates for calls from the USA aren't as good a OneSuite's (6.9c/minute domestic and 5.4c to Germany) but they are low enough (and have no minimums) that you might want to opt for simplicity and use them as your sole long-distance and international supplier. A prepay equivalent is nobelcom.com. Callback services such as telcan.net are another option: you call their number in the USA and hang up on the first ring; they call you back and then you dial your number into their system. This is good in circumstances where incoming calls are free (though beware that Telcan has a $4/month minimum).
If you happen to have a broadband connection, then VOIP using your
laptop or Pocket PC as a phone is very effective: Skype is the leader; calls to other
Skype users and to POTS phones in the USA and Canada are free; calls
to POTS phones worldwide cost a few cents a minute. The Skype client
for the Pocket PC works very well (particularly if you use headphones
to eliminate feedback). If you've replaced your home phone by a VOIP
service such as Vonage, then you can
plug their box into a broadband connection anywhere in the world and
it'll be like you are calling (and receiving) from home.
Broadband Access
Hotels in the USA and Asia (and now even in Old Europe) are starting to
provide fast Internet access in the rooms via standard ethernet
connections. This is usually provided by a service such as
LodgeNet. Some hotels charge
(typically $9.95 a day), others (e.g., many of the mid-tier Hilton,
Marriott, Intercontinental, and Starwood brands, and all Wingate Inns)
provide it free.
To use these services from Linux, you need an ethernet adapter with an RJ14 connector. Plug in, and use dhcp to get an IP address. If you put something like this
DEVICE=eth0 ONBOOT=no BOOTPROTO=dhcp TYPE='Ethernet' USERCTL='yes' PEERDNS=yesin /etc/sysconfig/network-scripts/ifcfg-eth0 then ifup eth0 should start things up. Usually, the ISP intercepts your first click in a web browser and substitutes their own home page. After signing up to the fee (if any), they get out of the way and things work normally. Depending on your version of the Linux dhcp, you may need to set the DNS entries (in /etc/resolv.conf) by hand (and you'll almost certainly have to restore them by hand afterwards), and you'll have to change the SMTP server. Some of these services block certain ports, so you may be unable to make ssh or vpn connections (see here for workarounds), but email and web browsing should always work.
Increasingly, however, you can find free WiFi connections provided as a public service by individuals or institutions (e.g., the Menlo Park public library adjacent to SRI provides free access) or as an inducement by businesses. There are web sites that list these, such as the WiFi FreeSpot Directory, but if you want to know whether there's a signal right where you are, you need a sniffer program such as Kismet.
The important file for tinkering with WiFi access is /etc/sysconfig/network-scripts/ifcfg-eth1, which needs to contain something like the following.
DEVICE=eth1 BOOTPROTO=dhcp ONBOOT=yes ESSID="" MODE="Managed" KEY="off"For those services that require a specific SSID, put it in the quotes in the ESSID field. If WEP (encryption) is enabled and you have the key as an ascii string, then put it in the KEY field as follows; note the crucial s: at the beginning.
KEY="s:asciistring"Incidentally, if you are setting WiFi up at home with Linksys equipment, you'll need to enter the key into the base station in hex (the ascii method provided by Linksys is specific to Windows). The following
echo "asciistring" | od -A n -tx1 | tr -d " "turns the string into hex--it'll yield something like 6d7931336368617274726b65790a and that (less the final 0a) is what goes in the Linksys WEP key field.
To use these facilities, you want a high-end cellphone that has a modem (for CSD), GPRS, IrDA, Bluetooth, and built-in email clients and a web browser. Ideally, it should be unlocked (i.e., not restricted to a particular service provider who subsidized the price you paid for it) so that you can use different providers when traveling. You can buy unlocked phones, or you can sometimes get the service provider to unlock it for you (usually after you've used their service for some time), or you can break the lock. There's a useful FAQ on unlocking here.
Most of the world uses the cellphone system called GSM on frequencies of 900 MhZ and 1800 MHz. The main exceptions are Japan (which uses something completely unique, though it is now moving to 3G) and the USA (and several other countries in North and South America), which use several systems, among which GSM is a minor player on the less common frequency of 1900 MHz (recently they've started using 850 MHz as well). The US service suppliers that use GSM are T-Mobile and Cingular (which recently bought ATT's network); these provide adequate coverage in major cities. A GSM tri-band (900, 1800, and 1900 MHZ) phone is the most useful for travel; quad-band (which adds 850 MhZ) would be even better, but these are rare at the moment. (Note that some US tri-band phones are for 850, 1800, and 1900 MHZ, and these are less useful overseas because they lack the 900 band). There's a useful table of which countries use which frequencies toward the bottom of this page. 3G (next-generation GSM, aka W-CDMA or UMTS) services are available in some countries; reportedly an unlocked 3G phone will work with a standard GSM SIM if the provider whose SIM you are using has a roaming agreement with the 3G service concerned. Short of renting a local phone, this is about the only way to get service in Japan (e.g., put a US T-Mobile SIM in an unlocked 3G phone). Here is a good FAQ on cell phones in Japan.
I use an Ericsson R520m, which is a GSM tri-band phone from a few years ago that can be had for under $100 unlocked (also look for them on Ebay). It is first-rate as a phone, with excellent RF, built-in speakerphone and other useful features, and it has all the connectivity capabilities mentioned above. As befits an older phone, its ringtones are monophonic, and its screen is fairly small and monochrome; it's a bit tall compared with the latest models, but it is thin and light. The cheap unlocked R520m's often come without a user manual; you can download one from the Ericsson website. To avoid having to take the charger and its adapters with you when traveling, you can get a cable that will charge it from the USB port of your laptop.
Search on Google or Ebay for something called a Terminator Dongle and the DIV 8.4 or DIV 3.1 USB software that usually comes with it. It'll cost under $50. This allows you to reflash the software in the phone (as well as perform other functions of uncertain propriety, such as unlock a locked phone). There's an overview here. Then get hold of a small file called T65_Volume00_fix.gdf (it will probably be included with the DIV software), and upload it to the phone using the Write GDFS function of the DIV software. Problem solved.
Making or receiving calls while roaming internationally invariably triggers fairly high per-minute charges, but if you have a decent plan it can be a reasonable option for occasional use (99c a minute is typical). However, there are several traps for the unwary. Incoming calls will trigger the per-minute international roaming charges, so you may decide to reject non-urgent calls, or leave them unanswered. Rejecting calls is safe: you will not be charged; but leaving them unanswered will cause them to go to your voicemail and will trigger the per-minute international roaming charges twice over (once to get to your phone, and a second time to get back to your voicemail). Even if the caller hangs up immediately on hearing your voicemail announcement, you'll still trigger a minute of (double) international roaming. Incidentally, this will still happen if you turn the phone off: the system will send the call to the last place your phone was detected, then back to voicemail. These double charges are a property of the (GSM) system, not any particular supplier. A partial solution is to set the no-answer timeout to 30 seconds: most callers will hang up before it rolls over to voicemail. You can do this by dialing *61*[dest]*11*30# where dest is the number to divert to.
A more drastic solution is to set your phone to unconditionally forward to voicemail. Of course, this means you'll no longer receive any calls at all, even the ones you might have wanted to answer. Another problem is that many foreign networks automatically turn off unconditional forwarding when you show up on their network. Some will even send you an SMS message (for which you'll be charged) telling you that they have done this. You can reset unconditional forwarding when this happens, and it will stick until another network picks you up. A more subtle pitfall with unconditional forwarding is that, on many plans, calls that divert in this way are charged against your regular minutes, whereas conditionally forwarded calls come out of another (more generous) bucket.
A different solution is to turn off all conditional forwarding: there are three of these (forward when busy, when unanswered, when unreachable) and they usually go to your voicemail. There will be menu entries on the phone to do this, but you can always just dial ##002#. If you turn conditional forwarding off, callers won't get voicemail when you don't answer, but you won't get charged either. Unfortunately, however, many providers (e.g., T-Mobile USA, Orange UK) automatically turn conditional forwarding back on whenever you turn it off (this is called default conditional forwarding--DCF).
A more aggressive solution is to forward all calls (either conditionally or unconditionally) to a permanently busy number. The telcos have several of these (presumably for testing purposes), such as 212-628-9970. The rationale is that you are not charged for calls to busy numbers. If you do it conditionally, you have the option of answering the call or letting it roll over to the busy number. If you do it unconditionally, then not only will you be unable to receive any calls, but those who call you may be bewildered. But it can be viable if you use your phone only for data and for outgoing calls.
If all these costs and pitfalls seem too much, then another alternative is to acquire service from a local carrier. This is perfectly feasible in most of the world, where prepaid services are ubiquitous.
There are companies that specialize in providing prepaid SIMs from other countries; for example, Cellularabroad and Telestial. However, if you speak the local language, it's easy and cheaper to get one when you arrive (see the comprehensive information at prepaidgsm.net). For example, in the UK, you can buy a VirginMobile SIM for 10 pounds, which includes 5 pounds of calls. Their calling rates are quite reasonable: most domestic calls are 15p a minute for the first 5 minutes of use in a day, then 5p a minute; 0845 numbers (most ISPs have these) are 10p a minute, and international calls are also reasonably inexpensive (e.g., the USA is 20p a minute). Voicemail is free. You can top up by buying scratch cards, or using a swipe card they send once you register your SIM, in thousands of shops. However, unless you have a UK credit card, you cannot order the SIM over the web nor by phone, nor can you top it up by those means (instead, you'll have to go to a store in person). Unfortunately, because of growing security concerns, many countries now require a local address and some proof residence to get a prepaid SIM or phone; at the very least, you may need to provide a Xerox of your passport (usually the picture page and the visa, if any) and sometimes a passport picture as well.
A service that looks attractive is United Mobile. This a prepaid service that works in over 100 countries; it has very reasonable calling rates (using a callback that is transparent to the user) and incoming calls are free in 60 of those countries. There are more of these services popping up all the time: there's a comparison here, and a new service that's not in that chart called Oneroam (in the UK). Note that threatened EU regulation will force Cellphone service providers to reduce their roaming fees in Europe; this is already having an effect, so it is becoming fairly inexpensive to call, say, Germany from France with a UK SIM, and in-country calls (e.g., from France to France with a UK SIM) are becoming quite reasonable.
If you want actual voice calls to reach you without triggering international roaming on your cellphone, then the simplest solution is to give people a fixed phone number that you can program remotely to forward anywhere in the world. You used to be able to do this with T-Mobile, but they no longer allow international forwarding. You can do this with SkypeIn and, reportedly, with 800 numbers from telcan.net.
However, GSM cellphone service providers now have something called GPRS (General Packet Radio Service). Although much slower than Ricochet's service, this has the benefit that it is ubiquitous worldwide. It is usually charged by the amount of data you transfer.
In the USA, the GSM provider T-Mobile offers something called t-zones as a $4.99 add on to any voice plan. This allows unlimited GPRS access to email and to WAP sites, but not to other services (ports other than 25, 110, 143, 993 and 995 are blocked, although this does seem to vary by where you are). More expensive T-Mobile plans give access to all ports (so that the web, ftp, telnet, ssh, and vpn etc. become available) and others include the 802.11 Hotspot service. Although t-zones does not provide access to regular web sites, it does allow web browsing via T-Mobile's proxy server at 216.155.165.50 on port 8080.
Outside the USA, T-Mobile has GPRS roaming agreements with service providers worldwide at a fixed rate of 1.5 cents a KB. Thus, using t-zones you can do email and modest web browsing for free anywhere in the USA that has T-Mobile service, and can do quick email checks worldwide for a few cents a day. I've used it successfully in the UK, France, Germany, the Netherlands, Portugal, Spain, Italy, Australia, New Zealand, India, Thailand, Japan, Hong Kong, and China. You don't need to change any settings to use GPRS from a T-mobile phone overseas (though you do need to have International calling enabled on your account), but you do sometimes need to manually override the choice of roaming network to get a GPRS signal.
For CSD, under preferences->networks, create a "CSD" service entry that uses "cellphone" as the connection, plus whatever user name, password, and phone number you need to reach your ISP. For GPRS, create a "GPRS" entry that also uses the cellphone connection, a space as the username and password, and *99# as the phone number. In both cases, just hit the "connect" button to connect; the IP and DNS addresses can be left automatic.
Assuming you've aliased the Bluetooth connection to the phone as
/dev/modem, you can then use kppp to do the dialing. For
CSD, it's just as if you were using a dialup connection; for GPRS,
create a data account in the phone with the correct APN as described
above, then use *99# as the phone number and blank as the PAP
username and password. Using T-Mobile in California, I get about 4
kb/sec from GPRS over Bluetooth in Linux.
When you next have a connection, you can upload these messages to an
SMTP (Simple Mail Transfer Protocol) server for delivery. I use
sendmail to do this on Linux and GNU Got Mail (you should
also grab the Palm Mail program found there if you have something like
a Zire 31, that lacks it) or Proximail
(this seems to be no longer available) on the Palm.
The Palm programs are easy to set up; for Linux sendmail you need to
configure the sendmail.cf file, which is a black art.
Basically, you need to set it up so that it uses the SMTP server as a
"smart host" (this is specified via the DS entry), and makes outgoing
mail "masquerade" (via the DM entry) as if it came from your usual
address (so that replies will go there).
To prevent spamming, most SMTP servers can only be accessed from their
"home networks"; thus you need to know the SMTP server for the
connection you are currently using. For T-Mobile GPRS, this is
myemail.t-mobile.com (a recent change requires
authentication to use this--see below),
and for IBMnet it's specific to your
account details. When you switch SMTP servers in sendmail, you need
to restart it with killall -HUP sendmail.
On the Palm, Proximail has an advantage over GnuGotMail in that it
supports multiple "profiles" which can each use different SMTP servers
and network connections; on the other hand, GnuGotMail has the
advantage that it can do SMTP authentication (see below).
Roam International uses many different networks and provides an SMTP
server that uses authentication so it can be used out-of-ISP.
To access it,
you must set up your sendmail to do authentication.
On the Palm, GnuGotMail can do authentication (use the login variety).
For linux, you need to tinker with sendmail:
these instructions work for Sendmail 8.11. In /etc/sendmail.cf
find the line that looks like
Using T-Mobile's SMTP server is a bit complex to set up: it uses
what's called POP-before-SMTP authentication: essentially, you
authenticate yourself to a POP3 server, and the SMTP server then trusts
you. However, because T-Mobile doesn't provide a POP3 server of its
own, you have to tell it about some other one that you have access to.
To do this, go to t-zones My
E-Mail and follow the instructions.
Then, to authenticate yourself, you first make a POP3 access to
myemail.t-mobile.com with username AAABBBCCCC:1 (where
AAABBBCCCC is your 10-digit T-Mobile cellphone number) and
the password of the real POP3 server that you linked to t-zones.
Actually, that method no longer seems to work. What does work
currently is to use
myemail.t-mobile.com as the SMTP server using what's called
"login" authentication with username AAABBBCCCC:1 and the
password of the the POP3 server that's linked to t-zones; GnuGotMail
can do this, as can the mail client of the Pocket PC.
In cases where there's no accessible SMTP server, you can use ssh or
vpn to connect to your home machine and use its mail system (this
won't work for services such as t-zones that don't allow access to
these ports), or you can use Yahoo mail over the web (this also won't
work over services such as t-zones that block https access).
Once the mail is on a POP3 server, you can download it to your own
machine. Note that unlike SMTP, you can access the POP3 servers of
ISPs other than the one you are using to connect to the Internet.
I've found that fetchmail sometimes just hangs. This is because fetchmail
uses sendmail to deliver the mail and sendmail does a DNS lookup to
canonify the origin address. For spam, this is often faked or
nonexistent so DNS lookups take a long while, and eventually fail.
You are burning up expensive connect time while this is
happening--just to get spam! The way to fix it is to configure
sendmail not to do DNS lookups, not to canonify, and to accept
unresolvable domains. How you do this depends on your sendmail
version: Google for instructions.
An annoying possible side-effect of these changes is that
people who use Microsoft software may no longer be able to reply to
mail that you send. This is because, although you have set sendmail
so that mail sent from your laptop masquerades as from your normal
email address in the header, Microsoft ignores this and replies to the
address it finds in the envelope! This used to be masked by the
canonicalization, but now that you have turned that off to cope with
spammers, you also need to cope with Microsoft's inability to comply
with standards. The fix is to turn on the
masquerade_envelope feature in the sendmail configuration.
Pocket PCs such as the Axim come with Pocket Interent Explorer (PIE),
which is OK. An excellent extension is ftxPBrowser, which adds tabs.
For older Palms, a free and functional web browser is available from Eudora.
This does not work on newer Palms that use OS5. For these, you need
Web Pro
which is included with devices such as the Zire 72, or you can buy an
older version from PalmOne.
In the days before full web browsing was viable on Palms, there were
lightweight "clipping" (aka. pqa) applications that were much more
functional for getting information quickly while traveling (e.g.,
finding out if your flight was delayed). These applications and their
supporting services seem to be falling into disrepair, but excellent
instructions for using them are available here.
There used to be hundreds of clipping applications, but the dedicated
Web Clipping Apps page now just
points to general wireless stuff.
On an older phone such as the R520m, you are limited to WAP pages. As
noted in the previous section, entrian wapmail is an excellent way to
check mail via WAP. The only other WAP site I find really useful is
the BBC at www.bbc.com/mobile;
Google's WAP site is www.google.com/wml and it has the
useful additional attribute of operating as a proxy that translates
ordinary html sites into wml.
MetrO
provides excellent directions for most of the subways in the world.
If you make notes on an older Palm while traveling and worry about
backing them up (and you should worry--security at airports in India,
for example, often confiscates all batteries), you might want to consider
Backup
Pro from Handera ($9.95). This lets you save stuff in the 500kb
of unused flash on the Palm IIIxe. Or you could upload files by ftp;
see lftp (see later), or the smartdoc doc file editor
($19.95), which can upload doc files by ftp (Smartdoc seems to have
become Quickword and
to have lost the ftp capability). With a newer Palm such as the Zire
31, you can simply copy files to an MMC flash card plugged into the
extension socket. The built in software can do this, but FileZ
provides a full file manager.
Under Palm OS5, "Desk Accessories" (DAs) replace the "hacks" that
provided
useful additional functionality in the older systems. You need
DA
Launcher to get started
(direct download). Useful DAs include
DTMF
DA (lets you dial a phone number using DTMF tones), and
LClip
DA (gives you 10 large clipboards).
To install Palm software and to do backups with a Linux machine, you
need Pilot-Link. Devices like
the Zire 31 that have the Palm photo viewer installed will crash the
backup. You need to create an "exclude" file with the entries
ImgFile-Foto and Jpeg-Foto and to specify this in
the backup command. If your Zire crashes and you need to do a
restore, you recreate these by installing the files
called imgfile_stream.pdb and jpeg_stream.pdb from
the CDROM that comes with the Zire.
You cannot directly install mp3 and jpg files using pilot-link. Use
ZBoxZ to package and
unpackage them.
If all else fails you may need to make a connection to your home
machine to fix things or to up/download files.
Services such as telnet and ftp are unsecure so most corporate systems
disable
them, or block them at their firewalls. You'll need to use comparable
methods that provide strong encryption. If your home system uses VPN,
you'll need to use that. An equally secure option is ssh, which also
lets you do some additional things via port forwarding and a "socks"
proxy. The ssh server usually listens on port 22, but this is
sometimes blocked by the network your laptop is connected to, so it's
useful to have it also listen on less commonly blocked ports like 995
(which is intended for POP3 over SSL) or 993 (IMAP over SSL). These
examples use port 995, so
For a socks proxy, do the following.
For the Pocket PC, a good ssh client is PockeTTY from DejaVu software. The free
version allows nonstandard ports, but only a 5-minute connection. The
paid version removes this restriction and adds port forwarding.
For the Palm, there's an excellent ssh client called
pssh. It can handle
nonstandard ports, but does not provide the port forwarding capabilities
of a full Unix client.
A few other free programs that are useful once you have your
Palm connected to the Internet are sntp (an sntp client
to set the time accurately, there's also a Web Server(!) available at
the same site), lftp
(an ftp client, there's also lget, a wget-like universal downloader
available at the same site), and ping.
Internet Cafes
These are pretty simple, but invariably run Windows so you need to
have some basic familiarity with that system. I fire up Explorer and
use the free version of Yahoo Mail
to send messages; there's an option somewhere that'll set the
Reply-to field to your usual address. Yahoo mail can also
download incoming messages from a POP3 server--look for the "check other
mail" option. Gmail from Google
lacks the ability to download mail from other POP3 servers.
Sending and Reading Email
The key to being able to read and send email inexpensively on the road
is to do it using POP3 and SMTP services: these download and upload
mail to/from your laptop or Palm so you can deal with it offline.
Sending Email: SMTP
You can compose messages, and reply to any mail that warrants it,
offline using whatever on Linux (I use M-x mail in Emacs) and
the built-in mail application on the Palm (note: there's a bug in the
Palm mail program that omits the comma between the concatented "from"
and "to" lists when doing "reply to all"--you have to insert it by
hand).
O AuthMechanisms=LOGIN PLAIN GSSAPI KERBEROS_V4 DIGEST-MD5 CRAM-MD5
and make sure that LOGIN is among the options mentioned there.
Also make sure you have lines like the following
# default authentication information for outgoing connections
O DefaultAuthInfo=/etc/mail/default-auth-info
# SMTP AUTH flags
O AuthOptions=A
# "Smart" relay host (may be null)
DSroamingsmtp.com
The file /etc/mail/default-auth-info must be readonly to root
and needs to contain the following four lines
your roam id
anything
your roam password
anything
Although authentication should allow you to use this SMTP server from
anywhere, I've found that some networks seem to block authentication;
for example, on T-Mobile GPRS in certain parts of the country, it
appears to work, but nothing sent to the Roam server ever gets
delivered, while freeserve.co.uk (whose own smtp servers can take 12
hours to deliver a message) blocks it outright. The Roam server
listens on ports 25001 and 25002 in addition to the standard port 25,
so that may be one way around these annoyances (though I haven't tried it).
Reading Email: POP3
If your email account is provided by an ISP, your mail is probably
delivered to a POP3 (Post Office Protocol) server automatically.
However, if, like me, your email comes in to a corporate machine
that's behind a firewall, you'll need to do something extra. Since
our machines run Unix, I simply use a procmail script to forward a
copy of some of my mail to a private mailbox with an ISP that provides POP3
access. A suitable procmail script is the
following.
:0 c:
| formail -k -X From: -X Cc: -X Subject: -X Date: -X To: -X Reply-to:
-s bin/sed -f $HOME/mailtrim.sed | $SENDMAIL myotheraddress@myotherisp
I don't want to deal with massive enclosures when I'm
traveling (can't decode them on the Palm anyway) so, as an added
refinement, I forward only the first 80 ascii lines of each message
and eliminate any mime enclosures. This is accomplished in
mailtrim.sed, which is the following sed script.
Linux
On Linux, I use fetchmail to retrieve messages from POP3 servers and
then read the messages in Emacs (M-x rmail). You need a
.fetchmailrc that looks something like this (the second part
all has to be on one line and you have to provide suitable values for
the uppercase fields). If you omit the password entry, it will prompt
you; fetchmail -v lets you see what's going on.
set postmaster "MYLINUXLOGIN"
poll POP3SERVER with proto pop3 user "POP3LOGIN" there is MYUNIXLOGIN here
password POP3PASSWORD smtphost localhost options fetchall # limit 5000
The commented limit entry causes it to download only messages
shorter than 5,000 characters; another useful option is keep,
which leaves all messages on the server after downloading (usually,
they are deleted).
Aside: Downloading web-based email
You generally have to pay for services that provide POP3 email. A
free alternative is web-based email such as Yahoo mail. Although you
cannot access Yahoo mail by POP3 (unless you pay), there are other ways to
download Web-based email. Check out mrpostman and yahoopops.
Gmail does allow POP3 downloading for free
but it doesn't support 'leave on server' configurations, nor
downloading just the the first few lines of a message only.
Palm
On the Palm, I use GnuGotMail or Proximail: these download
mail into the built-in Palm mail application; both can be set to leave
the messages on the server for later retrieval into Linux. GnuGotMail
has the advantage that you can download just the most recent messages
if there's a lot of stuff in your mailbox, and also just the first few
lines of each message. There are also full-blown standalone mail
systems for the Palm such as Eudora.
If you download a lot of email to your Palm and aren't diligent about
filing or deleting it, you'll find the Palm Mail
Cleaner useful (GnuGotMail can also do this).
Phone
The R520m cellphone has built in clients for pop3 and smtp, but I find
it tedious to "type" messages on phone keys, and not very functional
to read them there. Much more useful is a WAP service called entrian wapmail that retrieves
your mail from a POP3 server and gives you very brief summaries via
the phone's WAP browser. (WAP is a limited browsing capability that
is built in to many phones; it uses a restricted markup language
called wml. If you want to explore WAP services from your Linux
machine, there's this experimental WMLbrowser extension for
Mozilla Firefox.)
I find this very useful for quickly checking
if anything significant has arrived (in which case I'll retrieve the
full message by some other means). Because the summaries are so
brief, the GPRS costs are minimal when roaming overseas. Wapmail's
code is open source, so you can modify it to suit your own needs and
put it on your own server.
Yahoo mail also has a phone
client that works quite well; you can use it to empty your
POP3 account into Yahoo Mail if you've let it get too full for
Wapmail.
Web Browsing
Web browsing on Linux is pretty standard. I find Firefox to be
excellent, and particularly appreciate its ability to block popups and
(though its
adblock extension) advertising images. You may find that although
your connection allows ordinary http connections, it blocks https. A
way around this is to use port forwarding and a socks proxy on your home
server, as described in the next section.
Aside: Other Useful Palm Travel Stuff
Most of the airlines have timetables for the Palm; these are
extremely useful for researching options if your flight is delayed or
misconnects. You can download these from the airlines' own sites, but
nearly all of them are provided by a company called Goldenware
and you can get any of them from that one site.
Accessing Your Home System
You need to practice this stuff before leaving home. It's usually
worth an international call to check out any foreign dialin numbers
you plan to use.
ssh -C -p 995 your.ssh.host
gives you a connection into your home system, compressed (-C option)
for speed. If things are set up right, you can also do secure ftp.
sftp -oPort=995 -C your.ssh.host
If your home system doesn't have sftp set up, you can sometimes
transfer files by using ssh to get into your home sytem, then ftp back
to your laptop (type ifconfig to a shell to find its current
IP address). This won't work if your laptop is connected to a network
that's using NAT translation. In that case, you may still be able to
download (but not upload) files by using the ssh connection to copy
them temporarily to somewhere on your home system that's visible to
the web, then using your web browser (or the wget program) to
download the files. If web browsing is blocked, you'll need to tunnel
that over the ssh connection using socks.
ssh -N -C -p 995 -D 1080 your.ssh.host
then tell you your web browser to use a socks 4 proxy on
127.0.0.1 and port 1080 (this will be under the browser's
proxy settings).
This is also useful when you need to access a secure site but https is
blocked by the network you are on.