C++ and Python would be the two most common languages used for n900 development, Qt is the GUI framework and Nokia offer a Qt SDK as a free download (a little like Visual Studio) and is targeted at c++ programming, however Python bindings exist (the PyQt project) to do the same thing for those who would prefer to use Python. Have a look around the development wiki for more in-depth advice on that.