Ok, newbies - it's been said a thousand times...
The only person that can make you a better programmer is you.
Inclination, aptitude, patience and desire are inside you. if they're not there in buckets, then go outside and mow the lawn.
There are better guides, but i'm not trying to be your friend.
BEFORE STARTING
a) Learn to read and consider what you read before farting through you mouth.
b) Read and try out the stickies at the top of the forum
c) Ask a friend or child how to use Google
EDIT: Reality check- Walk before you try to run.
START HERE - working in order will be easier.
- Upload a program - what is happening!
- Blink a led - with delay()
- What are ; semicolons for?
- Using parentheses to {group things together}
- Using Serial monitor - print() to see things
- Detect a switch/contact change of state
- Blink a LED without delay()
- for( ; ; )
- if( ) else
- Understanding the 'Scope' of variables
- Variable types (String is not a variable type!)
- Meaningful 'variable names' are free!
- Operators + - / * | & % ~ ! && || and so on...
- Functions() are your best friend to make code readable
- Working with Serial input methods
- Switch(), do((, while(), loop until(), break, continue...
- Arrays[] of variables
EDIT:These are not links. Try finding the answers!
Read and try out the stickies at the top of the forum...!
Get these sorted, then come back for pointers, structure, classes and more!