Except for weirdos (and there are a few here), typing is much slower on the N900 than on a real keyboard. On the other hand, some (notably Lcuk) have reported sitting in airports writing and testing code for the N900, ON the N900. So it can be done. There is even a C++ compiler out there, and of course other languages too, such as Python and (less common here) Ruby.