Exploring the xmerl module that is built into Erlang, and interoperating with it.
Layering type information over your functions to aid users and static analysis tools, and to catch errors.
Letting the computer (rather than logs or users) tell you when you've written crap code.
Modeling a Bank Account with a Process: Deposit; Withdraw; Balance Inquiry; Command-Query Responsibility Segregation; Event Sourcing
What is OTP?; Implementing GenServer Behaviour; Where to go from here