will progs have to developed to work in 64 bit systems?
That's a complicated question.
There will be some benefit to using 32 bit applications on a 64 bit operating system, as the memory limits (2GB, 3GB, 4GB) disappear. So if you're struggling to fit multiple applications into a 4GB machine that problem will go away.
Individual applications that need to use large amounts of memory will need some degree of rewriting to handle this, where "some degree" is from almost none, if the application does its data thrashing using memory mapped files and already knows that you need 64 bits to address large files, through to a substantial rework.
Some applications will derive performance benefits from being reworked for 64 bits, but others might not. So just because a particular application is "still running in only 32 bits" in ten years' time won't necessarily mean that there's anything wrong with it.
And there is a potential downside: at present there is a tendency to write horrendously unnecessarily greedy Java/Swing applications, that need gigabytes to do what a sane implementation in another language could do in tens of kilobytes. If the Java/Swing weenies have a 64 bit address space available to them they'll have no need to actually learn any software engineering, and this particular madness will be able to grow without limit!