There are a number of references that you should look into. Below is a short list to start with.
- Books
	- 
The 
Psychology of Computer Programming - Silver Anniversary Editioni
 Author: Gerald M. Weinberg
 Publisher: Dorset House
 ISBN: 0-932633-42-0
 Description: This book was first written over 25 years ago - and it is possibly more correct now than when it was written. Even though some of the examples seem a little dated, if you plan to make a living in the computer field, you should read this book. The Silver Anniversary Edition includes chapter-by-chapter updates by the original author.
- Introduction to Algorithms (Amazon)
 Authors: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
 Publisher: McGraw Hill
 ISBN: 0-07-013151-1
 Description: This is the book to get and study. If you know the material in this book (and can understand the book), you are ready to go out and design/implement software. This should be your bible (at least a good starting place).
- Programmers At Work
 Author: Lammers Susan
 Description: Interview with some of the people who shaped the computer industry. Out of Print. Dr. Dobbs Journal offers a CD including the full text of the book and other interviews for $25.
- Programming Challenges by Steven S. Skiena and Miguel Revilla
- Competitve Programming
 Authors: Steven and Felix Halim
 Description: A primer of competitive programming integrated closely with UVA Online Judge. (First edition is available as a free download).
- Competitive Programmer's Handbook
 Author: Antti Laaksonen
 This is available as a free PDF or in a more comprehensive manner as Springer Book. It looks real good.
- Art of Programming Contest (pdf)
 Author: Ahmed Shamsul Arefin
 A good first book or Competitive Programming and is a free PDF download.
- Principles of Algorithmic Problem Solving (pdf) (local copy)
- The Algorithm Design Manual
- Computational Geometry: Algorithms and Applications
 Authors: Mark de Berg, Otfried Cheong, Marc van Kreveld, Mark Overmars
 Description: Throrough coverage of Computational Geometry algorithms
- The Hitchhiker’s Guide to the Programming Contests (pdf)
 Author: Nite Nimajneb
 Another first read for competitive programming available as a free PDF downlaod.
- Problems on Algorithms by Ian Parberry
- Competitive Programming by Steven Halim, Felix Halim
- Algorithms (Local copy (pdf)) Jeff Erickson, University of Illinois, Urbana-Champaign, class notes, exercises, tests (950+ pages)
- CIS 680: DATA STRUCTURES (Data Structures, Algorithms, and Applications in C++)
 
- 
The 
Psychology of Computer Programming - Silver Anniversary Editioni
- Web Articles about Programming Contests
- Other Programming Contest Classes
    - Stanford CS 971
- CMU
- Stony Brook University CS 392 - Steven Skiena who wrote Programming Challenges
- Washington University CSE 392
- Loyola University Chicago
- Unoversity of Utah CS 4960
- New York University
- Montana State University
- Montana Tech CS 164
- Kent State CS 33011 (pdf)
- Duke CS 309
- University of Wisconsin Oshkosh CS 314
- Algorithmic Problem Solving and Programming in a Competitve Environment
- Steven Halim (Competitive Programming author) CS3233 Competitive Programming
        - Week 1 (pdf)
- Week 2 (pdf)
- Week 3 (pdf)
- Week 4 (pdf)
- Week 5 (pdf)
- Week 6 (pdf)
- Week 8 (pdf) (no week 7)
- Week 9 (pdf)
- Week 10 (pdf) (no week 11)
- Week 12 (pdf)
 
 
- Useful Web Sites
    - UVa Online Judge
- ACM Solver
- Intro to a number of approaches
- UVA Toolkit (you provide input file, it gives correct output file)
- uDebug (it will produce correct output given input, sometimes it provides random input and/or critical input)
- UVA Problem Classification
- The Algorithmist
- Data Structures and Algorithms Tutorial
- Collection of links to Competitive Programming Resources
- Competitive Programming Algorithms
 
- Contest Stratedgy, Hints
    - Common Mistakes in Online and Real-time Contests
- Training ICPC Teams: A Technical Guide (pdf)
- Programming Competition Coaches Workshop (pdf) - contains "Teamwork in Programming Contests: 3 * 1 = 4" (cached copy)
- HOW TO DO BETTER IN 24 HOURS ONLINE JUDGES
- Tips for Beginners to do well in contest
- Syllabus from a Programming Camp (pdf) (borrowed from the internet)
 
- Random Items of Interest
    - Test your typing speed (I got 35 wpm)
 
- Referenced Slashdot articles:
- Ted Talks
    - A performance of "Mathemagic"
- Math is the hidden secret to understanding the world
- The magic of Fibonacci numbers
- Math class needs a makeover
- Do schools kill creativity?
- How great leaders inspire action
- How to speak so that people want to listen
- Why dieting doesn't usually work
- Teach teachers how to create magic
- Playing "Pink Noise" on guitar
- The art of puzzles
- Teach statistics before calculus!
- Two nerdy obsessions meet — and it's magic
- The astounding athletic power of quadcopters
- Cheap, effective shelter for disaster relief
- Teachers need real feedback
- The surprising habits of original thinkers
 
- Other Videos
- Cheat Sheets
    - Cheat Sheet indicies
- C/C++ sheets
        - C++ (pdf) (1 sheet bifold)
 
- Perl
        - Perl Cheat Sheet
- Perl Quick Reference Card (pdf) (double sided sheet trifold)
- Perl predefined variables (pdf)
 
- PHP
        - PHP (1 page)
 
- Python
        - Python Cheat Sheet (one page)
- Python 2.7 (pdf) (45 pages)
- Python 2.6 (pdf) (50 pages)
 
- Regular Expressions
- Unix/Linux
- Vi/Vim
- Linux/Bash
- Regular Expressions
- Github master lists of PC resources
- LSU HPC Training Sessions