Something to seriously ask yourself is: Are you interested in computer science, or are you interested in the web? The difference is that most of the web-related jobs are very commercial, even if they involve some computer related skills.
Computer Science, depending on the topics you go into, is reasonably mathematical compared with just programming. There's lots of theory. There's also lots about computers, including networks and protocols and different methods of programming and formal proofs and so on. You'll get into the low level theory about how they work instead of simply how to call an api or someone else's code. You might end up writing your own low-level drivers for no useful reason but to learn.
There's not much web design, though. I'm currently in my 5th year and haven't yet had the option within my degree of taking anything like a web design course. The irony however, is that even if I hadn't put my own time into learning about web design and building websites, I'd be able to pick it up really quickly - and do much better than a lot of web designers already out there - on technical grounds, anyway.
The reason is that I've had lots of training in the theory behind information markup and spotting the types of patterns that are important in web design types of things. What I'm definitely not good at is sacrificing good theory for commercially practical and ugly kludges. (For example, using font tags instead of style sheets to be backwardly compatible to netscape 3.)
Computer Science can be summarised as a bunch of academic people saying:
"Let's test the limits to see what we can to, and what cool ideas we can come up with."
The ecommerce (note: it's the word "commerce" with an 'e' in front of it) and IT people are more along the lines of:
"Let's see how we can take the cool ideas they came up with and make lots of money out of them."
The frustrating thing about electronic commerce for me, as a programmer, is that making money usually means tearing all the cool and beautiful theory apart to create a big ugly monster that makes money in the short term. It means ignoring all the fun and interesting and long-term useful things for the sake of a commercial deadline, or dropping functionality so that customers can understand it, or (most annoyingly for me) having to avoid writing theoretically "good" code so that other less-qualified programmers can understand what I'm doing.
I don't really care if businesses choose to do that, I just don't like being a part of it.
So if you only want to get into something like commercial web design, (ie. if you want money from electronic commerce), take a marketing, management or information systems degree instead. Then learn the computer things you need to know on the side if you don't have them already.
If, on the other hand, you want to get into real computer science, then don't take any notice of all the people in commerce-related jobs. Getting a good computer science degree is much less common than getting a commerce degree. Computer Science is a completely different area of the job market from web-based commerce.
jesterzog Fight the light