You will need the following (free) software:
Programs in Python and Java can be run on command-line and written in any text-editor (just save them as text files). Some editors exist to make programming easier. We recommend either Emacs (editor) or Eclipse (integrated development environment).
But most importantly, your time. Even with all the help in the world, you will not learn to program unless you do a fair amount of programming yourself. Or more to the point, you cannot pass this course by being passive. Compare it with a top football player or a dancer, they can never be good unless they keep on practising. Another way to describe it, you cannot learn how to ride a car by only studying the theory.