Posted December 23, 2010
![avatar](/upload/avatars/2010/11/07f3fc8b914eb79c8197022f6d72ef164e252052_t.jpg)
I think Unity uses Mono under the hood, so anything that compiles into .NET bytecode is probably workable. C# is your best choice for this. I see they have some large demos on the Unity website that are coded in C#.
You might enjoy this page: http://en.wikipedia.org/wiki/List_of_game_engines
![avatar](/upload/avatars/2008/09/1221231343556_t.jpg)
But best way to find out is to check the website, obviously.
I just suggest Unity because it has many features of the more powerful engines out there and it doesn't have a negative stigma (like GameMaker and RPG Maker). But most importantly for any starter, it lets you test anything at any time. So if you want to see how something works, just run it. Debugging gets a lot easier too.
I also like Alice to teach non-programmers about programming. It comes with a lot of free lesson plans (which you can follow yourself at home) and it visually executes your "program" by moving the sprites around that you put in there. By the end of several lessons most people will have a pretty good idea of just what might be the building blocks of a typical program. alice.org for that one.