As far as possible, we should allow students to learn more and help guide them to the sciences. But scientists are in the end a small minority of the population and some things are important to teach to everyone. I don’t think calculus passes that test, and neither does classic geometry and analytic geometry, which received a lot of time in my school.
Instead I would teach statistics, basic probability theory, programming (if you can sell it as applied math), basic set and number theory (e.g. countable and uncountable infinities, rational and real numbers), basic computer science with some important cryptography results given without proof (e.g. public-key encryption). At least one of these should demonstrate the concept of mathematical proofs and logic (set theory is a good candidate).
Interesting question. I’m a programmer who works in EDA software, including using transistor-level simulations, and I use surprisingly little math. Knowing the idea of a derivative (and how noisy numerical approximations to them can be!) is important—but it is really rare for me to actually compute one. It is reasonably common to run into a piece of code that reverses the transformation done by another pieces of code, but that is about it. The core algorithms of the simulators involves sophisticated math—but that is stable and encapsulated, so it is mostly a black box. As a citizen, statistics are potentially useful, but mostly just at the level of: This article quotes an X% change in something with N patients, does it look like N was large enough that this could possibly be statistically significant? But usually the problem with such studies in the the systematic errors, which are essentially impossible for a casual examination to find.
I see computer science as a branch of applied math which is important enough to be treated as a top-level ‘science’ of its own. Another way of putting it is that algorithms and programming are the ‘engineering’ counterpart to the ‘science’ of (the rest of) CS and math.
Programming very often involves math that is unrelated to the problem domain. For instance, using static typing relies on results from type theory. Cryptography (which includes hash functions, which are ubiquitous in software) is math. Functional languages in particular often embody complex mathematical structures that serve as design paradigms. Many data structures and algorithms rely on mathematical proofs. Etc.
But usually the problem with such studies in the the systematic errors, which are essentially impossible for a casual examination to find.
That is also a fact that ought to be taught in school :-)
As far as possible, we should allow students to learn more and help guide them to the sciences. But scientists are in the end a small minority of the population and some things are important to teach to everyone. I don’t think calculus passes that test, and neither does classic geometry and analytic geometry, which received a lot of time in my school.
Instead I would teach statistics, basic probability theory, programming (if you can sell it as applied math), basic set and number theory (e.g. countable and uncountable infinities, rational and real numbers), basic computer science with some important cryptography results given without proof (e.g. public-key encryption). At least one of these should demonstrate the concept of mathematical proofs and logic (set theory is a good candidate).
Interesting question. I’m a programmer who works in EDA software, including using transistor-level simulations, and I use surprisingly little math. Knowing the idea of a derivative (and how noisy numerical approximations to them can be!) is important—but it is really rare for me to actually compute one. It is reasonably common to run into a piece of code that reverses the transformation done by another pieces of code, but that is about it. The core algorithms of the simulators involves sophisticated math—but that is stable and encapsulated, so it is mostly a black box. As a citizen, statistics are potentially useful, but mostly just at the level of: This article quotes an X% change in something with N patients, does it look like N was large enough that this could possibly be statistically significant? But usually the problem with such studies in the the systematic errors, which are essentially impossible for a casual examination to find.
I see computer science as a branch of applied math which is important enough to be treated as a top-level ‘science’ of its own. Another way of putting it is that algorithms and programming are the ‘engineering’ counterpart to the ‘science’ of (the rest of) CS and math.
Programming very often involves math that is unrelated to the problem domain. For instance, using static typing relies on results from type theory. Cryptography (which includes hash functions, which are ubiquitous in software) is math. Functional languages in particular often embody complex mathematical structures that serve as design paradigms. Many data structures and algorithms rely on mathematical proofs. Etc.
That is also a fact that ought to be taught in school :-)