Prehistory
The science of computing emerged long before the invention of digital computers. It was a branch of mathematics, and such study still exists. Numerical Analysis, a math course at Tandon, is described as where "one explores how mathematical problems can be analyzed and solved with a computer." However, the problems and methods discussed in the course were very back in the time, when there was no machine that aided computation and mathematicians had to do the work by themselves. The purpose of such "numerical methods" were to get an approximation in a reasonable time, to an otherwise unsolvable problem. From this perspective, computers served as an accelerator to solve computational problems, rather than something to replace the underlying principles. Therefore, the programming details are rarely discussed in a Numerical Analysis class.
If we compare numerical methods and algorithms, which are taught in different classes which then belongs to different majors and departments, we can find astonishing similarities. For example, the searching problem in computer science is basically a discrete version of the root finding problem. Furthermore, the binary search method in finding an element has the same principle as the bisection method in finding a root. This is not coincidence as both mathematicians and computer scientists were attempting to make conceptual problems discrete thus solvable, whenever an approximation to the solution was enough. The computer itself is a good demonstration of this principle ---- it consists of finite binary units, it can only store data in certain precisions, it runs in clock cycles, and its screen is made up of pixels, yet it gives users an illusion of continuity and accuracy.
We can refer to Alan Turing's thesis on computability to see how math theories were embedded in the design of digital computers. Turing described a machine with storage units that could run any valid program (Copeland, 2020, p.58). This concept became the prototype of modern computers where the memory is the realization of the long tape in a Turing machine. However, programmable computers appeared in 1948 (Computer History Museum, 1948 section), 11 years after Bell Lab's invention of relay-based computer (Computer History Museum, 1937 section).
Looking back through time, even before the term "computer science" was coined (Shallit, 1995, 1960s section), the subject of modern-day computer science seems to have originated from math and electrical engineering if we think about continuity during the evolution. More precisely, it was a subdivision of mathematics until 1937 when the first computer model using Boolean logic was invented (Computer History Museum, 1937 section). Interestingly, the EE component has already gone from Tandon's CS curriculum today as shown in the course catalog. This may evoke a series of questions: were there technology breakthroughs that allowed the separation of hardware and software? Was this related to the emergence of computer engineering? Had math and electrical engineering been fully integrated into one curriculum in the first place? We will dive into the history of CS in Poly in the following chapters.