- Computer Science 4 High School - Find lessons, tutorials, and activities for K-12 computer science education
- Python.org - The official Python website
- Codecademy.com - An excellent, interactive, introduction for beginners.
- Google's Python Class - Come on. It's Google!
- How to Think Like a Computer Scientist - Elkner J., Downey, A.B., and Meyers, C. 2009. A free online textbook.
- Learn Python the Hard Way - Shaw, Zed A. Really nice introduction to the language, with lots of good, line-by-line examples.
- Dive Into Python - Pilgrim, M. Excellent introduction to Python, especially for experienced programmers
- Software Carpentry - An intensive introduction to basic software development practices for scientists and engineers, using Python
- Computer Programming for Everybody, an essay by the creator of Python, Guido van Rossum
- Audio/Video Instructional Materials for Python
- A Byte of Python, by Swaroop C H. Online text/tutorial.
- Wikibooks: Python, an open-content textbook, online and available for PDF download.
- Idiomatic Python - Think you know everything about Python? Pick up a few new tricks here!
- Six Free E-books on Python - Good stuff here, in a great price range
Python Game Design
- Pygame.org - Not a bad little module if you want to experiment with programming games
- A Tutorial on Pygame - Learning to write a graphics-based Rogue game using Pygame
Programming as a Profession
Diversity in CompSci
Odds and ends. Explore.
- Additional Projects - Got time? Got money? Dig around in here for fun stuff to do!
- Which computer should I buy? - Words of wisdom, from me!
- Machine Learning - A great, hands-on, introduction
- Learn to Program - A great collection of resources from Women Who Code
- Bebras Challenge - Computational Thinking activities to get you thinking.
- The Indie Web - Don't settle for a templated self. Get a domain name and take it from there...
- Privacy and Security - You're not paranoid if they're really out to get you. Practical advice.
- Make a Pirate Box! - Local fire-sharing using a wifi router and a Raspberry Pi
- John Park's Projects - Build cool stuff with Arduinos, etc. Great collection of ideas from a world-class Maker.
- Learn Programming in Ten Years - It's that easy! ;) Words of wisdom from Google's Peter Norvig.
- OS X Disaster Recovery - What to do when your Macbook Air / Macbook Pro won't boot.
- Best Programming Fonts - if you spend any time working in a text editor—which is pretty much what we do all day, right?!—it's in your interest to be working with a font you like. Check out these options, download a few, and see if they don't make your life better. (My personal favorites: Monaco, Ubuntu Mono, and Consolas
- Writing Assembly programs on a Raspberry Pi - a great little tutorial
- EFF: Passwords
- Passwords - from Red Hat
- How Companies Learn Your Secrets - A fascinating story on Big Data, courtesy of the New York Times
- The Manga Guide to Databases - One of the best introductions to Relational Databases that you'll find. Seriously!
- ProjectEuler.net - Programming challenges with a range of difficulties. Fun!
- Proton Radio - Music to code by...!
- How I'd Hack Your Weak Passwords - This is not a tutorial! It's an explanation of why strong passwords are important.
- The Anatomy of the Twitter Attack - Get your passwords in order.
- Stuxnet - a whitepaper from Symantec with fascinating details. Cyberwarfare has arrived.
- vi for Smarties, by Jerry Wang. vim it the coder's text editor, unless you prefer emacs. They're both awesome, and totally different. This is a good introduction to vi, which comes pre-installed on Linux and OS X machines. (Windows, you can get it via Cygwin).
- Rybka disqualified and banned from World Computer Chess Championships. Cheating in computer programming. Interesting story, with documentation and some information on how to go about coding chess position analyses.
- Best Linux Downloads, via Lifehacker
- Women & Computer Science, courtesy Google
- Fantastic story on using machine learning to crack a 250-year-old secret society code - Short article from Wired, with link to this 3-minute video explaining the process
- The Modem Dial-Up Sound, from The Atlantic. You're probably too young to recognize these sounds, but back in the day, the were the sound of you, connecting to the world.
Programming is no fun without something to run your programs on!