The Nokia N900 smartphone is currently the mobile programmer's paradise. Underneath its Maemo OS veneer is a fairly standard Linux. A terminal is part of the standard install, and there's no jailbreaking needed to install whatever you want.<p>There are packages for Python, Perl, GCC... And of course you can run pretty much anything by building it from source. The ARM A8 Cortex CPU is fast enough that it actually makes sense to do this.<p>If you want a more desktop-like programming environment, it's even possible to install Debian on the N900.