Using a PDA for programming?

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Hey all,

I'll be going on a round the world trip soon, and I need some kind of
portable computing device to ease the boredom at the airport and to use
during any downtime.

The main reason I want it is so I can do some programming, and I've
found it very difficult to get any decent advice about which device/OS
etc would be most suitable. There's plenty of stuff about developing FOR
the various platforms, but not a great deal about developing ON them.
Despite the dearth of info, I refuse to believe I'm the only one, so I'm
hoping there might be someone here who has some experience of
programming on his or her PDA and can give me some help.

What I've found so far (feel free to skip this bit!)

Palm OS:

Has an open source C compiler available
( ),
and various dialects of BASIC. Neither of these is ideal - I've never
been overly keen on BASIC, and whilst I do like C, the idea of grappling
with pointer bugs while I'm supposed to be on holiday doesn't exactly
thrill me. Also, as I understand it, Palm OS doesn't have any concept of
files, and stores everything in a kind of database, which sounds like it
would be a bit weird to get to grips with in C (especially compared to
the UNIX "everything is a file" philosophy).

There was a port of Python some time ago, but it seems to have died.
Apparently there's also a JVM available, but I don't really know how
Java works so I'm not sure what the implications of this are.

Windows CE:

Has Python(CE), which is great because it's a fantastic language and
would definitely be my first choice. However, I've read a lot of the
mailing list archives, and I still can't work out a) whether it's
reliable enough to just use without constant tweaking (which I won't be
able to do when I'm on the road), and b) how much of the language is
actually supported. I realize that this particular question would be
better off somewhere else, but has anyone here used it? Impressions?

Apart from this, I can't see that there's a great deal else available
(unless I'm missing something _really_ obvious!). I found various people
talking about ports of Perl, GCC and a few other things, but nothing
concrete seems to have arisen. It seems as though the general consensus
among the manufacturers is to do any development on a proper computer,
and just copy the binaries over.


The most obvious would be to get either a Psion Series 5mx and install
Linux ( /), or get an HP Jornada and install
NetBSD ( /). These seem like pretty good
solutions to me - any number of languages to choose from and proper
keyboards. However, again I'm slightly concerned about the reliability
of the software. The mailing lists are FULL of hacks and tweaks that are
necessary to get the things up and running - could they survive for long
periods with minimal maintenance?

What I'm looking for

 >> Preferably a high level language, so I don't have to worry about the
hardware. I'm not looking to do serious software engineering, really
just want something flexible and general purpose (and fun!) so I can
easily experiment with any ideas I might have. I'm willing to be
open-minded though - perfectly happy to learn a new language if there's
something particularly convenient that I haven't discovered.

 >> A clamshell design with a proper keyboard would be a huge bonus, but
I don't think there are many available beyond the ones I've mentioned
(they seem to be going out of fashion). A huge addon keyboard like those
you get for IPAQs and the like would be awkward, but I'm sure I could
make do. Loads of text input using the stylus would be horrible.

 >> Battery life is REALLY important. Must be 8 hours minimum, and if it
runs on normal batteries rather than proprietary rechargeables, so much
the better (this is where the Psion really shines).

 >> Cheap is good - I'll probably be scouring ebay. A few people have
recommended a Sharp Zaurus, but they're too expensive to be stuck in a
backpack (can't get them over here anyway). They are cool though.

 >> Beyond having a decent programming environment, I don't really care
about other features. A proper command shell would be awesome (but, I
think, unlikely). Really though, the PDAs I've seen all do more or less
the same things (although, everything else being equal, I'd go for
something non-Microsoft. Like I say though, it's not a major concern).

So, if you've managed to get this far, have you any thoughts? Anything
I've missed? Maybe there's some device I haven't even heard of which
will do everything I want... ;-) Thanks very much for any advice.

Re: Using a PDA for programming?



Quoted text here. Click to load it

Have you considered the HP 200LX? Out of production for many years but
is a true DOS computer with real keyboard. Lots of programs have been
developed ONLY on the 100Lx or the 200LX. Runs for far more than 8
hours on 2 AA lithium batteries. Can also use NiMH. Used units are
available on eBay or from a dealer who upgrades and repairs the
systems. See

Vic Roberts
Replace xxx with vdr in e-mail address.

Re: Using a PDA for programming?

On Thu, 09 Jun 2005 00:14:50 +0000, Ken wrote:
Quoted text here. Click to load it

Probably the best is the Zaurus SL series (SL-C7xx or SL-3xxx).  It's
sort of like a mini laptop that runs Linux.

I currently have a full version of Perl 5.6 on mine.

Re: Using a PDA for programming?

Quoted text here. Click to load it

Palm also has a Pascal compiler available, Pocket Pascal.  OnBoardC lets
you compile on the Palm.  You can use files just like on any other
platform if you use an SD card to store the files, and you will want to
do that anyway, for safety.  There are several editors available, and I
like SiEd, which is freeware and works pretty well.  You'll also want a
keyboard, obviously, because it's a PITA to write code using Grafitti.

I have only owned PalmOS PDAs, so I can't really help you with the other
platforms, but from my experience, Palm is the way to go, especially if
battery life is a big issue.  No modern PDA has great battery life,
though, so you'll want a charge cable.  They are available to connect to
both AC and auto cigarette lighter jacks.  I use a USB cable, and
separate AC and DC plugs, with USB ports on the back.  These are cheap
and readily available, and let you use any USB cable you may have.



"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety."  B. Franklin

Re: Using a PDA for programming?

Quoted text here. Click to load it

 Other languages to consider are LispME (Scheme, a dialect of Lisp), and
Forth (Quartus Forth, Dragon Forth). Both are rather different from C,
but can really stretch your mind about what's possible. What better time
to learn a new language than on vacation?

Quoted text here. Click to load it

 Yup, backing up to a memory card is very important. It's almost inevitable
that the unit will crash at some point if you're programming for it. You
can also carry around programmer documentation and tutorials on the card...

Quoted text here. Click to load it

 Hear, hear!

Quoted text here. Click to load it

 Or get an older PDA that runs on AAA batteries. They can run up to
~20 hours continuous. Either a couple sets of rechargeables and a
charger, or else just buying regular ones as needed.

 Cheaper, too.


 Ray Ingles                                       (313) 227-2317

   Microsoft Windows - It could be worse, but it'll take time.

Re: Using a PDA for programming?

Here is just what you want. /

And a user group


Re: Using a PDA for programming?


Quoted text here. Click to load it


For a while, Microsoft has provided free C/C++ compilers that work a
lot like Visual C++. But they are reverting to using Visual Studio
itself, which is not free.

Here are two lists:
I've been happy with the tools from Microsoft, and haven't tried any
others. So I can't comment on any of them.


Quoted text here. Click to load it

I think you and earlier responses have covered the issues well. I
might have recommended one of the ultra-compact notebooks. But battery
life is probably too low and price too high for your purposes. Also,
I've had close encounters with two (Libretto 110c and VAIO
PictureBook) and can say that the engineering involved in cramming so
much into such small spaces makes maintenance an issue. For example,
replacing a hard drive is _not_ trivial.

To reply to me, remove the underscores (_) from my email address (and please
indicate which newsgroup and message).

Robert E. Zaret, eMVP
PenFact, Inc.
500 Harrison Ave., Suite 3R
Boston, MA 02118

Re: Using a PDA for programming?

Ken wrote:
Quoted text here. Click to load it
( ),
Quoted text here. Click to load it
I have read the other responses up to this point, and they certainly
seem worth your consideration, however, I would throw in a couple more
possibilities:  NEC MobilePro 780, and the IBM Workpad Z50 with NetBSD.
    Both are more powerful than the HP Jornada 680/690 (last ones with
SH3 cpu's AFAIK), have more memory (32MB for MP and up to 48MB for the
Z50 with addon module IIRC), and have much more usable keyboards and
screens, although correspondingly bigger.

The Z50 is more like a mini-laptop with its 640x480 VGA screen (and USB
host support I believe?  check the specs).  The NEC MP such as I have is
a bit more compact at 9+ x 6+ inches with its 640x240 half-VGA (8-inch
diagonal) screen, and looks very much like an oversized Jornada 6x0/72x
unit.  At 9+ inches wide, the keyboard is a dream for longterm typing
compared to the Jornadas (which I also have gadget junkie that I am ;-).
  I used mine in a 5-day all-day Oracle class for note-taking.  Although
I was using it in "native" WinCE mode, the form factor was ideal no
matter what was running on it.  I had it set up next to the lab PC
keyboard with room to spare. I carried it in one of those zip covers
usually meant for Bibles or other similar sized books.

I have used NetBSD for hpcsh (1.6.2) on it, with good results altho
graphical web browsing was disappointing since the ported browsers,
Dillo, and another 1 or 2 of the lower-end open source ports - don't
remember exactly which now - were not really up to handling javascript,
java, SSL, CSS, and other such features of modern websites, and were not
well scaled to the HVGA screen - widgets for one took up about the top
third of the screen (thinking it was Mosaic, the original base for IE as
I understand it).  I found the text-mode "links" browser more workable
for basic browsing.  However the NetBSD hpcsh mailing list has had
recent discussion of what seems to be a fairly successful port of
Firefox called "minimo" - check the recent archives if interested.

Anyway, re your original question about programming, I would suggest you
check into the ports collection for programming languages of interest to
you for NetBSD hpcsh.  There should be a good variety, altho I have not
looked myself since sh and ksh script programming suffice for any such
simple programming I might want to do, and they are readily available
with sh or csh (forget which) builtin to the base NetBSD installation.
I added the ksh ports package in short order, and was quite happy with

NetBSD hpcsh is a very complete BSD unix implementation (allowing for
the hardware limitations of the MP or Z50 of course).  The TCP/IP and
hardware network support is great - I could even run a Netgear MA701 CF
Wifi card "out of the box" with the base network installation (altho in
a PCMCIA adapter so I could use the MP's CF slot for a 512MB CF card to
install NetBSD onto - don't consider anything smaller if you want the X
windows environment despite what the docs say about sizing; they were
out of date about that when I installed  1.6.2, and now 2.0 probably
needs even more space).  The MP's CF slot can take a MicroDrive, so it
may be possible to use the 2 or 4 GB drives now available, but you will
need to check on that - I just have a 340 MB model that I use with the
WinCE configuration for storage.

Your power requirements may be a problem since NetBSD does not have
hooks to the power management code in the ROM that seems to require
WinCE to manage.  I have seen several posters to the listserv mention
somewhere around 18 hours as tops for the "standby" mode the MP can be
placed in with NetBSD.  Runtimes of course will vary considerably with
your usage - 4-8 hours should be feasible.  I would think you could use
one of the small auto/airline adapters available (usually for laptops,
but there should be a tip that would provide the size and voltage needed
for the MP).  Also, there is an extended battery available which should
about double the runtime.  You would need to watch eBay for such
offerings.  The standard AC adapter is about the size of one of the
small folded up clamshell cellphones - very easy to fit in that bible
book cover along with the MP ;-}

BTW, I suggest the 780 since it is the same hardware as the slightly
more expensive 790 on the basis that you would not be in need of the
somewhat more advanced version of Windows CE, HPC 2000, that
distinguishes the 790 from the 780 if you override that with a NetBSD
installation.  The 780's typically run around USD 100-125 on Ebay.


Re: Using a PDA for programming?

spamroc wrote:
Quoted text here. Click to load it
Quoted text here. Click to load it

Rats! Wherever I typed "hpcsh", I meant "hpcmips" for the NetBSD
architecture that applies to the NEC MobilePro and IBM Z50.  Kinda late
when I typed that...


Re: Using a PDA for programming?

Hi Ken,

You might find this page a helpful source of information:

He lists a very large number of different languages in which
development on the Palm is supported.

As much as I love the Palm Pilot, I would also like to second Victor's
suggestion to look into the HP 95/100/200 LX series Palmtops.  I used
one for many years and there are a very large number of DOS programming
environments available.

Good luck with whatever choice you make!

--Sam Lipoff

Re: Using a PDA for programming?

Thanks for the help everyone, got some really useful info here.

python -c "print

Site Timeline