"I hypothesize the performance problem is in X. I predict if I add instrumentation Y and Z, it will show X is wasting several milliseconds per frame. My testing..."
"I hypothesize a blue background will be liked more by our users. I predict using a blue background will increase our retention rate. My testing..."
"I hypothesize the following invariants will hold about the code I've just written. I predict if I write these unit tests..."
"I hypothesize game mechanic X will be lots of fun. I predict if we build this prototype, ..."
For being "pure math", we're sure using the scientific method a lot. And measuring the real world. And decision-making based on empirical evidence. If your argument is there isn't enough science in computer science education, I might agree.
But then there are questions like "what's the impact on static vs dynamic typing on bug rates and productivity?" - in our current state, this is not computer math. It's not even on the mathy side of computer science right now - it is closer to being computer philosophy. We lack the experiments (can't control the other variables for A/B testing programming languages without perhaps actually writing bespoke programming languages for that very purpose!), and we've had a relatively short time to build our models of the computing universe... we're perhaps still building out the math necessary to create all those models...
Science uses the scientific method to model the universe. The experiments serve the purpose of clarifying that model and uncovering new information.
I feel programming is more like building a bridge. An engineer uses his knowledge of physics and (much more importantly) a wealth of field knowledge and best practices to design the bridge. As a programmer, I have tasks much like building bridges, only they are apps. I don't discover new algorithms through experimentation. I implement algorithms that are already well understood. If there is a problem in my code and I run performance tests, the tests do not clarify hitherto unknown phenomena regarding the nature of computers. They simply highlight human errors or bottlenecks caused by well understood characteristics of the underlying computer system.
If this is considered science, then basically anything that involves trial and error, be it snowboarding or checkers, is science.
Of course I admit it may depend on what you do (programming is a broad field). There are those, for example, that invent algorithms and such, though it seems to me those computer scientists are more mathematicians than scientists.
The one area of my work I have felt was scientific was AB testing, which is a kind of consumer science.
I feel their job is very different than most CS researchers that seem to me more like mathematicians, or industry programmers which are more like engineers.
Not disputing your statements about proof methods and use of empirical evidence, just pointing out that the term "science" can and indeed commonly is applied to mathematical disciplines in the academy.
(though on a related note, many a science student should pay much more attention to philosophy than they do)
My main point stands, even if my appeal to Computer Scientists was wrong.
Computer science is science.
The essence of science is the scientific method - using experiments to zone in on the truth.
http://www.iep.utm.edu/pop-sci/
"Partially in response to worries such as these, the logical empiricists’ later work abandons the verifiability criterion of meaning and instead emphasizes the importance of the empirical confirmation of scientific theories. Popper, however, argues that verification and confirmation played no role in formulating a satisfactory criterion of demarcation. Instead, Popper proposes that scientific theories are characterized by being bold in two related ways. First, scientific theories regularly disagree with accepted views of the world based on common sense or previous theoretical commitments. To an uneducated observer, for example, it may seem obvious that Earth is stationary, while the sun moves rapidly around it. However, Copernicus posited that Earth in fact revolved around the sun. In a similar way, it does not seem as though a tree and a human share a common ancestor, but this is what Darwin’s theory of evolution by natural selection claims. As Popper notes, however, this sort of boldness is not unique to scientific theories, since most mythological and metaphysical theories also make bold, counterintuitive claims about the nature of reality. For example, the accounts of world creation provided by various religions would count as bold in this sense, but this does not mean that they thereby count as scientific theories.
With this in mind, he goes on argue that scientific theories are distinguished from non-scientific theories by a second sort of boldness: they make testable claims that future observations might reveal to be false. This boldness thus amounts to a willingness to take a risk of being wrong. On Popper’s view, scientists investigating a theory make repeated, honest attempts to falsify the theory, whereas adherents of pseudoscientific or metaphysical theories routinely take measures to make the observed reality fit the predictions of the theory. Popper describes his proposal as follows:@
Thus my proposal was, and is, that it is this second boldness, together with the readiness to look for tests and refutations, which distinguished “empirical” science from non-science, and especially from pre-scientific myths and metaphysics. (1974, pp. 980-981)
In other places, Popper calls attention to the fact that scientific theories are characterized by possessing potential falsifiers—that is, that they make claims about the world that might be discovered to be false. If these claims are, in fact, found to be false, then the theory as a whole is said to be falsified. Non-scientific theories, by contrast, do not have any such potential falsifiers—there is literally no possible observation that could serve to falsify these theories."
From this perspective you are confusing "scientific" with "empirical".
Although I don't quite understand what your objection is. It seems to me that the main difference is between "empirical" science and non-science, so "empirical" is kind-of superfluous (as there is no science that isn't empirical).
Still, I'd argue that science is more than just empirical, as it needs to be sound/coherent as well, not just based on empirical evidence but actively trying to analyse an ddisprove that evidence - e.g. we can hardly say that traditional medicine (or even alternative medicine) isn't empirical, but it's hardly scientific (in fact, the same could be said for much of actual medicine as proper experiments are rarely performed and replicated even more rarely).
There isn't yet a concensus as to whether mathematics is a science or not.
You may not think so, but it is currently a point of contention.
The arrogance dripping from this statement is hard to not consider insulting, when such "confused" individuals include those such as Stephen Hawking, and Godel struggled with it for some time.
> what they really have is a disagreement about what "science" is.
No, the difficulty lies in defining the philosophy of mathematics. It's a tool underpinning nature, so despite its abstraction, does it explain the natural world? Proofs are most certainly empirical in nature.
The upshot is, better people than you or I say there is not yet an answer.