I think this is a quite wide topic to be answered at once. If you are very interested in it... then I would strong recommend you to make a new best friend:
www.google.com[
^] visit him oft and come back here everytime you get stuck with a concrete problem.