Collection and Expansion: Collecting resources and expanding your empire when possible are two of the primary goals you'll be faced with. Determining when your units should do what is the true challenge.
External Development: If you find that you don't like developing your code in-game, don't worry! You can develop your code in your favorite IDE so you can program in the most comfortable way for you.
Offline Progression: The programming you've given your units will carry over to when you aren't actively playing. Make sure you keep that in mind when figuring out what automatic orders they need to carry out.