What's a good language to learn? I know C, java, C++ and some database languages,
and am currently studying computer science in college.

The thing is, I studied computer science because I'm very curious on how
people are able to create software like napster, GPS systems, mobile communication
applications, encryption software, and the like. The 'cool' stuff.

But so far, after learning the algorithms and some languages, I feel I can't
get to the next step. So I'm wondering what software did the guys use for
these, and what stuff do I need to look up to learn to do things like this.