Lots of fun if know you like programming already.. honestly. To me, my assignments are like giant puzzles that I have to solve, and it's pretty casual in that you can relax at home and work on them. Cons: Can get pretty difficult and frustrating at times. Debugging your code can often result in more stress and anger than it's worth. Just remain calm, and you'll do fine.
You get a well-rounded degree that can be used in almost any field, almost all companies employ developers in on form or another. Doesn't necessarily need to work for an Independent software Vendor. Cons: Often hard work, tight deadlines and a competitive field.