Computer science needs to be theoreticl. It also needs to be practical. Programs should focus on the theoretical stuff (data structures,algorithms, etc) in the first few years as a base, then give the students an option to follow a more specific area such as software engineering, GUI design, AI, etc. To break into the field, you need a specific set of practical skills such as SQL, Struts, Crystal, etc etc. The CS programs are not providing practical skills like these.
Computer science needs to be theoreticl. It also needs to be practical. Programs should focus on the theoretical stuff (data structures,algorithms, etc) in the first few years as a base, then give the students an option to follow a more specific area such as software engineering, GUI design, AI, etc. To break into the field, you need a specific set of practical skills such as SQL, Struts, Crystal, etc etc. The CS programs are not providing practical skills like these.