Structuring Your ProjectCode StyleReading Great CodeDocumentationTesting Your CodeLoggingCommon GotchasChoosing a License