Erik E. Fair says:
With regard to programming languages at UCB in 1980
...
I'd done something of a survey of colleges, and in my mind at the
time, there were two approaches to a CS degree: mostly or entirely
theoretical (those CS departments that had grown out of Mathematics
tended to have this focus), or more practical
tools/techniques/operational theory (those CS departments that had
grown out of Engineering tended to be this way).
Quoting my 2019 message to the cctech mailing list:
----
Adam Thornton <athornton(a)gmail.com> says:
The genealogy of Computer Science departments (and
their curricula)
(at least in the US) is also weird and historically-contingent.
Basically it seems to have been a tossup at any given school whether
it came out of the Electr[ical|onic] Engineering department, in
which case it was memories and logic gates and a bottom-up,
hardware-focused curriculum, or out of the Mathematics department,
in which case it was algorithms and complexity analysis and a
software-focused curriculum.
Yes, I've noticed the same thing. Example: Harvard's CS department is
originally from the math side, while MIT's is from EE (thus today's
EECS).
Berkeley = EE
Brown = Math
BYU = Math
Caltech = EE
Columbia = EE
Cornell = Operations research, math
Dartmouth = Math
Illinois = Math
NYU = Both (because Polytechnic developed its own CS program long
before NYU acquired it to regain an engineering school)
Penn = EE
UCLA = OR (probably because of the RAND heritage)
Caltech until very recently did not formally offer CS degrees;
students received degrees in Engineering and Applied Science, with a
focus on CS (or aeronautics, or civil, or ME).
Illinois is an example of a track we might call "other" or even
"defense". With government funding the university built its own
computers (including ILLIAC and PLATO), and the group that did so
became the CS department, but the undergraduate CS program began
within the math department. Harvard's and Penn's programs might also
qualify.
Undergraduate CS degrees are BA (Example: Harvard), BS (Example:
Penn), or both (Example: Columbia). At Penn one must be an engineering
student to major in CS. At Columbia one can major in CS in either the
liberal arts or engineering schools, but with different
curriculums. At Yale there is one undergraduate school, within which
one can receive a BA or BS in CS, with different curriculums. Cornell,
Northwestern, and Berkeley offer CS in their separate liberal arts and
engineering schools; undergraduates receive BA or BS degrees with
identical CS curriculums, with only other requirements differing.
I've read that medical schools are good at teaching either
pharmacology (drugs), or pathology (diseases); perhaps this is also
because of the expertise/specialty of their early faculty members.
----
Two paths to a computer science degree: A.B. CS from
L&S, or
B.S. EECS from the College of Engineering (which you had to be
explicitly admitted to before you got there).
Still true today. As I mention above, Berkeley's CS curriculum is identical
regardless of the degree (or was the last time I checked), something not always true at
other universities that offer multiple CS undergraduate degree options.
--
geo:37.783333,-122.416667