Rabbit holes are only a problem if you desperately have to get something finished and get stuck doing other things that seem more interesting. Otherwise, you can learn interesting things that widen your world view. Or maybe even find something that is a better use of your time than what you were doing in the first place. There is more to life than being productive.
I agree, but for me, its really hard to figure out what that is, so i just keep drifting along just picking up information as it piques my interest.
any suggestions? i like CS/engineering but i feel like these days people are looking for the next app or the next crappy product, and i can't be bother to want to spend time making one. i want to do something helpful for the world using my technical/computing expertise. college is a joke, mainly party and bullshit.
If you find college to just be a joke, it probably means you're either at the wrong college, approaching it the wrong way, or both.
My suggestion is to pick a general field you're interested in (e.g. CS), get a good survey of different specialities in it (like AI, machine learning, databases, compilers...etc) and choose the one you like best. You'll probably find it much easier to focus your curiosity on one speciality within CS, and it will probably be easier to do something interesting and non-trivial within some speciality like this.
Coincidentally, this is exactly where college is great--it gives you a nice structured overview of a bunch of different fields within your chosen subject and also lets you dive more deeply into whatever interests you most. College also gives you the general background needed to learn about the more specialized material--you're forced to learn more about subjects like math and EE than you would learn by yourself, which will help you in doing something non-trivial.
Little apps are the least common denominator of startups. Just about anyone has the technical capability to get one started quickly, so for people who are interested in the kind of social and business creativity that has driven many of the biggest startups in the last decade, they form a common ground where everyone can meet and talk about their startup aspirations. Hanging around HN will give you the impression that scaling successful web apps is the major technical challenge in the industry today, and that's partly correct, but a lot of computing centers around entirely different topics, so if building the next successful iPhone app or social web site isn't your cup of tea, don't worry.
You're on the right track asking questions of people who are already working. Keep doing that, and ask your professors, too. My personal story is that I majored in mathematics, programmed as a hobby, and became a professional programmer almost by accident. My math background has been a major plus in getting jobs where I work with scientists and mathematicians, not because they need me to do math (it actually doesn't come up much) but because math is a common language that lets them communicate with me easier than they could communicate with the average programmer. Skills in applied math, computer science, and practical software development will get you in the door in a lot of interesting jobs. My last three jobs could be roughly summed up as scientific computing, mildly distributed systems programming, and finance.
I would suggest you pick a field you're interested in that requires a lot of computing power and find out if there is a career for someone with CS expertise in that field. Possibly pick up another major -- applied math would be an excellent idea if you have no particular field in mind. But even if you stick with CS, it's an excellent field for someone who hasn't figured out what kind of work you want to do in the long term. If you were getting a law degree and had doubts about being a lawyer, you'd be in a much worse situation :-)
On the other hand, everyone's definition of "boring" is different, and we should each be true to our own, regardless of anyone else's opinion.