Having experience as both a student and a teacher both in Liberal Arts and in university environments, I think the greatest thing that can be said for a Liberal Arts education is that it allows you to develop some of your interests fully without closing off the rest.
My undergraduate education was, after a good deal of wandering around, at Goddard College, an experimental institution even smaller than Earlham where essentially everyone designed their own majorall degrees were in Liberal Artsand many, in my case most, courses were independent studies. My area of concentration was in visual arts, initially photography and video but eventually progressing into video-, electronics- and computer-based installations.
I graduated expecting to starve nobly, in the best artistic tradition. But the electronics and computer experience interfered; I got a job almost immediately. I spent a few years doing field service for ancient (discrete transistors, magnetic core memory) computer systems and teaching electronics at a technical school before finding a plum position designing and building computerized instrumentation for a chemical research center.
Over the course of ten years in that job I gradually migrated to building hardware and writing drivers for what were then called super-minicomputers (32 bits!) that were at the core of the research center's lab automation system. (One of my first projects in that area was to replace the magnetic core memory on one of these systems with a semiconductor memory subsystem, extending it from 1.5MB to 2MB at the same time.) As time went on, it became harder to justify doing in-house hardware development and the systems programming part of the job came to dominate. At some point in there, I took over system administration for the lab system which pretty much consumed whatever time I had left.
I loved doing all of that stuff, but when I realized that I was in line to replace someone who had been doing similar stuff for 30 years, I started wondering if it was really what I wanted to do for the rest of my life. Thinking over the range of jobs that I had done (starting with working in a junk yard tearing apart old cars) I realized that the job that I had enjoyed the most was teaching. I figured there was no way I could survive teaching K-12, so there was no other option but to go to grad school.
In grad school another of my longstanding interests took over and I ended up working in Cognitive Science (in particular, Computational Linguistics). Cognitive Science is related, in a sense, to Artificial Intelligence but its goal is understanding cognition rather than simulating it. To get a sense of where this led, take a look at my research page (or ask one of the students in my research group). Once again, I followed where the interesting stuff seemed to be leading and got very involved in research. This led to a post-doc at the Institute for Research in Cognitive Science (U. Penn.) and, eventually, a faculty position at the University of Central Florida. Once I started teaching at UCF, I remembered how much I enjoyed it, that it was actually the reason I had gone to grad school to begin with.
The teaching load at a research university is wonderfully light, but it is also frightfully narrow. In my four years at UCF I taught Theory of Comp. and a course on the formal foundations of computational linguistics and I mentored grad students. Over and over again. It was light duty and gave plenty of opportunity for pursuing research, but it was starving all of that other stuff I was interested in. So, I started looking for a position in which I could better balance research and teaching and, even more importantly, where I could engage a broader range of my interests. That's when I remembered what I had enjoyed so much about studying at Goddard; that's when I realized that Liberal Arts offers many of the same opportunities for faculty that it offers to students. And so here I am.
There are a lot of great things about studying Computer Science and there are a lot of great things about studying Computer Science in a Liberal Arts environment. But what's really great is the way in which those things coincide.
To begin with the discipline of CS as it is typically taught in Liberal Arts institutions differs from the discipline as it is taught in universities in some important ways. CS can be viewed as being primarily a science, in the same vein as other mathematical sciences, or it can be viewed as being primarily an engineering discipline. Of course it is never purely either one of these and both approaches have advantages. And both have clear historical roots in the development of the discipline.
The biggest difference between the two approaches is the relative emphasis they give to technique. Engineering, by definition, is application orientedthe primary goal is to graduate practioners who have mastered a large suite of tools with which to solve problems. Treating CS as a mathematical science, on the other hand, emphasizes the principles behind those tools. Neither approach is sufficient in itself. No one can master a tool without understanding the principles it works on and there is little point in understanding those principles unless you have also mastered tools for applying them. In both cases, the actual goal is to learn how to learn how to use tools. The engineering strategy tends to emphasize doing that by generalizing from learning how to use a large variety of tools; the science approach tends to emphasize learning the principles and then applying them to learning the tools. One of the main reasons that Liberal Arts programs tend to take the later approach is that they occupy a smaller portion of students' coursework. There is a limit to how many programming languages and development methodologies that can be covered, and so the emphasis has to be on graduating students who are able to learn different languages and methodologies on their own.