It's too late for this summer, but if you are still a student next year, then Google's Summer of Code is a great option. Mentoring organizations are usually announced by mid-March (see timeline for this year here http://socghop.appspot.com/document/show/program/google/gsoc...). For almost any interest, there is probably a mentoring organization that is doing something you would be interested in (and if not, google also allows applications for independent projects through their open-source programs office). I've definitely learned as much, if not more, working on a project through SoC as I did at an internship I had at a small software development shop a couple of years ago. The pay is better too. The only downside is that you might spend a lot of time alone, only contacting people through a mailing list and/or irc channel.
I've had this daydream lately of doing SoC or something like it while also spending the summer travelling. (Not hardcore, always-on-the-move travelling, just living around in a few interesting cities (or even other countries) for a week or two at a time). I haven't looked very hard into whether this would be possible. As someone who has done SoC, does it strike you as unrealistic? (Issues of budget and potential distractions aside)
GSoC is awesome. My SoC application didn't get through, but the mentoring organization I applied to (Haiku) organized their own event, the Haiku Code Drive, and I managed to get in.
I had little experience when I applied for SoC. Thanks to the HCD, I have learned more in these 2 months than I have learned in all those years of hacking alone.