Secure software development

Security best-practices MUST be followed at all times. There are a myriad of ways malicious users and bots on the internet can exploit weaknesses in web applications and computer systems. Common methods include SQL injection, cross-site scripting, cross-site request forgery, path traversal, and brute force attacks, just to name a few. A good software developer is familiar with common methods "crackers" use to attack computer systems, as well as ways to effectively counter those attacks. Here follow some useful resources.
header image credit: xkcd