So you want to start programming?
The first question is if u are ready to program?
Math
A lot of people think u need to be good at Math. And it's kinda true. If u are good at Math it will help u while programming but it's not needed. There are a lot of IDE's (integrated development environment) which will do the most things for u like UI (user interface) design.
Motivation
U really need to be motivated. If u aren't and the problems get harder and harder u will at some point stop and lose your interest. But u can increase your motivation by doing easy jobs.
Creativity
U don't need it. Well if u just thought hey let's go programming and then u are probably creative enough.
But which language?
I would recommend u start with HTML and CSS. These two languages are used to design Web sites (those 2 are not programming languages since u can't write an algorithm with them. They are just to design). It's nice to start with these cause u see very fast a lot of results. It will boost your creativity and motivation up to the moon. If u need a little bit of functionality u can add javascript and PHP. Just type in "Hello World" and there it will be drawn. Not like Java System.out.println("Hello world"); or Assembler (I won't give an example for that).
But if u want to go right in I would also recommend Java or Visual Basic cause it is so simple. Visual Basic is even better for starters since the IDE from Microsoft is very easy to use.
If u are into game u could also look at Garrys Mod. There u can create Mods with Lua or use Wiremod and program devices in an Assembler like language Zasm or Expression 2. But I have to warn u about Zasm, the documentation is old and it's hard to find out how things work.
To summarize.
Start with HTML, CSS, Javascript in this order or just skip in Visual Basic for an easy and satisfying start into programming.
Games that help u get better at Programming
Opus Magnum
Human Resource Machine