IntegrateMe said:
What are the difference and similarities between computer engineerings and computer scientists?
Computer Engineering is a mix of computer science with an architecture bent (meaning operating systems, assembly, and the CPU/other hardware on the motherboard) and EE with a digital circuits bent. You get all the fundamental courses of each major (algorithms, data structures, circuits, communications, etc.) but instead of getting a broader picture or specializing (which is what upper level courses are supposed to be for), you're already locked into your specialty.
CS is all the CS basics in CompE, expanded further, with a heavy dose of theory (things like language paradigms and the underlying ideas of databases and AI) and lots of practical CS applications (software engineering, more databasis, Unix, etc.)
The fields have about the same financial outlook, though traditionally embedded systems/systems programming have been some of the best CS jobs, and those are positions good CompE's are well suited for. Happens to be, lots of companies will higher someone with a compE degree for a good many CS jobs because many CS jobs don't require much CS knowledge above the basics, but it depends on the company/field.
I'm getting a degree in computer engineering, but I like CS far more. Computer engineering is more difficult simply because it's a mix of EE and CS and they're two very different modes of thinking. Almost everyone I know in compE leans towards one discipline or another, even the guys getting 3.9s.
Fun is a relative term: I like solving logic puzzles and figuring out state machines, and that's far more a part of CS and then of EE. But I also play with robots a lot, and that's where having the EE knowledge can come in handy. It's all a matter of what you're most interested in.