Simple concepts first, string variables, integer variables, floating-point variables, initialising and assigning.
Naming conventions
Documenting code
Working with numeric variables, addition, subtraction, multiplication.
String variables, assigning, parsing, extracting.
Simple and complex arrays - constructing, initialising, working with, voiding.
Constructs - loops and exits, conditional exits,
Subroutines
etc etc.
Start by writing a very simple program;
assign a string variable and get input (What is your name) and print result
Now make it more selective, reject non-alphanumeric characters with a meaningful error message.
Make it more selective, reject integers in the string with errormessage
Now force it to lowercase
Now capitalise the initial letter
Now set up arrays of common boys and girls first names and compare the input to these - if found, say "Hi John, that is a boys name, I'm guessing that you are a boy?" Y/N
Set up the Y/N question - accept either Y or y or N or n
Get birthday, reject garbage, reject ages >100 or <5 (say) - date manipulation and parsing.
and so on and and on
Deallocate all variables when you're done
Writing a simple (actually not so simple) input module like this will teach you all about the basic constructs of programming which are pretty much the same whatever language you use and how to sanitize and validate input.
One of the dialects of BASIC is the easiest way to start (though you could use Smalltalk or Prolog or Pascal or Python (my favourite) or anything (I wouldn't start with C/C++).
It'll take you a couple of weeks before you have an elegant, minimal, fast, well-written, procedural, well-commented and fully debugged little module.
THAT (not trying to produce a Web-page)
is the way to start.
Mac