If you have good programming skills and are looking for an interesting alternative to the usual summer internship, you might check out the Google Summer of Code program. It pays student developers $5000 stipends to write code for various open source projects over the summer. Over the past seven years, it's brought together over 6,000 students with over 300 open source projects to create millions of lines of code.
A set of open source projects (aka mentoring organizations) will be selected and announced in mid-March. Students apply to work on one of more of these and each mentoring organization ranks the students interested in working with them. Google facilitates the final selection and pairing. The mentoring organization works closely with the student to define tasks, check progress, help solve problems, etc. Typically the student works remotely, interacting with his or her mentor via email, chat, skype, etc.
Students can submit applications via the Google Summer of Code 2012 site from March 26 to April 6. Google says that that the best applications they receive are from students who took the time to interact with one of the participating mentoring organizations and discuss their ideas before submitting an application. About 1,100 students are expected to be funded this year.
You can get more information on the 2012 GSoC site, an associated Google+ page, or by subscribing to a mailing list.