Learning objectives can be classified into three domains: cognitive, affective, and psychomotor (Bloom Taxonomy). Affective domain refers to learning outcomes in areas such as emotions, moods, attitudes, and feelings, which has been shown to strongly influence cognitive outcomes. As an example, the production of adrenaline and dopamine during emotional experiences affects the transfer of information from short term to long term memory, as well as the level of motivation and cognitive engagement.
Computer Science education is heavy on the cognitive domain but not so for the affective or psychomotor domains. If according to Bloom that holistic education should include all three domains, then how can this be incorporated in CS education? Other disciplines of study have used fieldwork to promote development in these domains. Students go on fieldtrips and work in groups in their learning, as well as developing friendships during the off hours social functions and activities. Engineering students have their share of pranks and parties, and for computer science students, one of the most popular forms of team activity is online video gaming. But these may not be enough to attract the students to these programs or even promote these program to the extent we like to see especially for female students. Perhaps we need to revisit the "art" of computer programming as Knuth has proposed. There is the construction of a beautiful program which seems to be missing in our current CS education, where programming can give our students both intellectual and emotional satisfaction (Ershov, 1972).
Ershov, A. P. Aesthetics and the human factor in programming. Comm. ACM 15 (July 1972), 501-505.