Internships are a great first step. It is good to get out there and see how the world really works. Not sure what kind of school you are in, but one thing that preserved my sanity was that I did work in a lab while I was an undergrad. I found a prof who was doing interesting stuff, and did some work for him. I learned more from doing that than I actually did im my classes, and it gave me the chance to explore a problem space that I would not have had the ability to explore on my own. It was a bit like having a friend to go to the gym with you. By making a commitment to the prof, I avoided the temptation to go home and read the web instead of actually doing something.