Hackathon means getting together in an informal setting to play around with technology and learn new skills.
At one hackathon, I wrote isprime. Pass an integer into the URL to see if it's prime.
A group of enthusiastic students of programming and web design shared these links with me: A College Student's Online Guide to Web Design and A Beginner's Guide to Programming Languages. Keep up the good work! Sharing is a great part of learning.
Algorithm Tutorials from topcoder
CodeCodex – a wiki for finding and improving code
<Coding Ground> is a place you can explore programming languages online
Daily Programmer on reddit has challenges that can help you learn or improve your programming skills
Ideone.com – Online Compiler and IDE
Instructables Contests – some really cool projects and awesome prizes
Linux Commands - a practical reference is a great page that briefly describes quite a few useful Linux commands
Linux Shell Scripting Tutorial (LSST) v2.0 has many helpful pages
Marquette's Student Resources page has brief intros to Unix commands, SSHing, and vi
OverAPI.com has "cheat sheets" for many different programming languages
Project Euler has a long list of programming challenges that you can try to learn or expand your programming and problem solving knowledge.
MATLAB Cody is similar
Rosetta Code has quite a few programs that are in a variety of different languages. Example: 99 Bottles of Beer
SS64 Command line reference
Visualgo and Data Structure Visualization on usfca.edu are two great places to learn about algorithms and data structures
Which Programming Language Should I Learn First? [Infographic] – I have mixed thoughts, but definitely this is a great resource