Use the wikipedia for all information on linedef arguments and stuff like that. I recommend teaching yourself the program, and figuring out how to use it through trial and error. That's how I did it and I became able to make fairly advanced levels with linedef executors, polyobjects, and setpieces.