Are there tips for writing Oracle DDL Triggers for auditing? Or should I just use AUDIT?
Why do you want to log DDL on your DB? just for auditing?
a trigger is highly not recommended because that if you have an error you can't even disable the trigger.
consider this scenario:


Trigger fails and cashes all DDL operation on the table
You try to disable the trigger
The trigger is invoked (back to step 1)


I suggest you'll take a look at Oracle DB vault and audit vault
http://docs.oracle.com/cd/E14472_01/doc.102/e14459/toc.htm

It got some really nice features for monitoring and controlling administration commands