Is a computer science or computer engineering degree worth it?
makecheck: At least a BSc. is a very good idea (I have computer engineering), but I would definitely back it up with experience, too.  For example, try to make some open-source thing in your spare time, or write a web site, or tinker with electronics in your garage, while you go to school.  Definitely do internships, every summer at someplace new.  Do not mow lawns, talk to companies and get a 4-month commitment to do something cool.  Failing that, talk to professors and see if you can help with their projects over the summer.Engineering degrees open you up to jobs across the spectrum: software architecture, CAD tools, embedded systems, circuit design, logic design, power, and so forth.  What's more, even if these better jobs aren't available in a bad economy, you are also qualified to do jobs that are "just" programming, which is a nice safety net.Sometimes, "any" engineering degree is enough, it shows you have discipline and can handle responsibility.  For instance, I've seen civil, mechanical and chemical engineers in places I wouldn't expect.  So pursue what most interests you.The degree programs cover topics that are favorites for interview questions.  For example, many people ask about algorithms, and while you could buy a book on them or examine existing software projects, the computer science courses will really teach them to you well.