I have degrees in EE and Comp Sci from a long time ago :) There are definitely good things that you are forced to learn in a computer degree program, but it's not everything. There are concrete things that you don't learn (various java packages, using Studio to debug, source control systems, patterns used in specific frameworks). But there are things you do learn that are good foundational knowledge, even though you may not realize it at the time (algorithms, etc. as people have posted).
I also co-oped (required in U.Cincinnati's Engineering college) which was a great experience. That caused me to realize that there are practical uses to some of the seemingly abstract things you learn in class, so I was more motivated in school than I might have otherwise been.
While I consider a degree as usually indicating a certain level of foundational background skill, as well as diligent effort, I look for more when interviewing. And I've known a few great developers that didn't have degrees, so it's not always needed. Also, colleges don't usually cover stuff like the social aspects of engineering, or working on very large systems, and such that can be very key in many job situations.
Having been away for a long time, I realize that it's easy to forget the stuff I did learn in school or on the job. Our industry keeps changing, so I think reading in the field is important. And I think reading more broadly than just technically-detailed stuff is important. That's why I like joelonsoftware. I recently came across his site and the books he's edited/written while looking for ways to learn more about software development.
So I would recommend everyone, degreed or not, read books and articles about software development. One of my grad classes in software engineering did have us read stuff like The Mythical Man Month, which is great. I also like books on software construction, such as McConnell's Code Complete. Joel has a good list of recommendations on his site:
http://www.joelonsoftware.com/navLinks/fog0000000262.html