How to learn and improve programming skills ?

The key to success : practice and learn, more and more.

Like other skills, if you want to learn programming, you have to dedicate some of your serious time to it.

Think Logically : Create logic first, then go for coding.

When you have a program to code, first of all, think what you have to perform to get the desired output or functionality.
For example, if you want to code a program to find the circumference of the circle, then you have to go through these steps :

1) Take the value of radius (say 'r') from the user if it is not given.
2) Calculate the circumference (say 'c') as c=2*3.14*r
3) Display the output (value of 'c') to the user.

Sharpen the basicsClear your basics and programming concepts.

Read about what makes things work in the language and how things work behind the scenes.

Keep coding : Practice makes perfect.

Spend more time on building and writing the code. Start with basic examples and then try out some advance problems or enhance basic programs. Try to implement each and every concept you learn.