Our old IBM Thinkpad running Windows XP has finally given up the ghost

(or at least lost some of the boot-up files.) I am wondering what people are using and happy with for a FIRST Java programming environment. Is Ubuntu/Eclipse a good way to go? What about dual-boot or VMs? If we go Ubuntu or Linux, what do we lose? I am guessing there are some programming tools that only will work with a Microsoft OS.
Thanks.