Computer Science Competitions
- American Computer Science League (ACSL). ACSL organizes computer science contests and computer programming contests for junior and senior high school students.
- Google Code Jam. You can use any programming language for this competition. 
- Sphere Online Judge (SPOJ). Supports over 40 programming languages, though no Python 3. This thing keeps returning an NZEC error on me. Fixed: Don't use input(), only use raw_input().
- Waterloo Programming Contests. Supports Scheme, Java, C, C++, and Pascal.
- A random list of problems sets from Algorithmist. Need to filter through these at some point.
- Waterloo Programming Contests