What’s the Difference Between Computer Science and Electrical & Computer Engineering?
By John A. Board
Associate Professor of Electrical and Computer Engineering, and
Associate Professor of Computer Science
Students considering a career centered on computers and computing often ask for clarification about the difference between computer engineering (CompE) and computer science (CompSci), and how Duke’s undergraduate curriculum reflects this relationship.
There are philosophical as well as practical answers to these questions.
CompE and CompSci study the use of the digital computer as a tool that makes much of modern technology possible, and the overlap between the two fields is significant.
Both disciplines study the inner workings of computers and both study hardware, as well as software aspects of computer systems. Today, CompSci, CompE, and Electrical & Computer Engineering students all study programming and basic computer operation.
Duke: Uniquely Interdisciplinary
Our faculty has appointments in Computer Engineering and Computer Science.
The Case of Theory v. Practice
Computer Science is concerned with the theoretical underpinnings of computation.
Thus, one typically finds courses in programming, algorithms, numerical analysis (how do you guarantee a number produced by a computer program is accurate), and theory of computation (what can and cannot in principle be computed) in CompSci departments.
Many CompSci departments at American universities began as offshoots from mathematics departments. The emphasis on providing a rigorous mathematical foundation for the computing disciplines is still evident in many CompSci curricula.
Computer Engineering focuses on the practical aspects of computers.
So, courses in digital logic design and processor interfacing which build on an engineering student’s knowledge of electronics and circuits are typically found in CompE programs. CompE programs also often have strong ties to solid state physics and devices programs where the details of actually manufacturing integrated circuits are studied.
Computer engineering programs were largely developed in engineering departments strong in electrical engineering.
At the intersection between CompE and CompSci are courses in computer architecture (the basic construction and low-level programming of computers) and operating systems. Both types of courses are likely to be found in either or both programs.
Duke’s Innovative Approach
At Duke’s Pratt School of Engineering, we offer a major in the hybrid discipline of Electrical & Computer Engineering. (Duke students can also choose to study the traditional electrical engineering major.)
By offering a major in Electrical & Computer Engineering rather than a Computer Engineering major, we emphasize increasingly important traditional electrical engineering subjects such as electromagnetics and signal processing to anyone with a deep interest in computer systems.
Duke Students: Better Prepared
The secret—Duke’s hybrid discipline of Electrical & Computer Engineering
We find that the hybrid discipline of Electrical & Computer Engineering (ECE) produces students who are better prepared to integrate modern computing systems into devices and products and can better the world.
(At Duke, Computer Science is a department of the Trinity College of Arts & Sciences, which has a curriculum separate from engineering.)
Many Duke faculty members, like myself, have appointments in both the ECE and Computer Science departments.
In the Pratt School of Engineering, many of our Electrical & Computer Engineering majors take a second major in Computer Science. The two departments have cooperated to create a second major program that fits well into our four-year program.
The Best of All Worlds
Duke gives students the best of all worlds—a firm grounding in theoretical underpinnings, deep practical knowledge of actual computer hardware, and traditional and yet still highly relevant electrical engineering subjects that better prepare them for careers designing future technology.