mardi 11 décembre 2018

Emmanuel Schanzer: Why is algebra so hard?

// __ TEDxTalks (13:52): Why is algebra so hard? | Emmanuel Schanzer | TEDxBeaconStreet

https://www.youtube.com/watch?v=FbqnaoU-3VI

TEDx Talks: Published on Dec 13, 2016
Emmanual Schanzer thought that the way algebra was taught made no sense, and decided to do something about it. He turned a discipline that frustrates many students into a skill they could immediately apply. Watch his talk to learn how.
Dr. Emmanuel Schanzer is a CS-expat, having spent several years as a program manager and developer before becoming a high school teacher and middle school academic coach. He is the founder and creator of Bootstrap, which he first designed as a curriculum for his own students in Boston. He has long been involved in connecting educators and technology, connecting parties at the Computer Science Teachers Association, Google, Microsoft, Facebook and at universities across the country. He holds degrees in computer science and curriculum development, and is a Doctor of Education with a research focus on using programming to teach algebra.
This talk was given at a TEDx event using the TED conference format but independently organized by a local community. Learn more at http://ted.com/tedx
~
Schanzer is trying to be too funny and advertising his thing as the latest, greatest instead of discussing a polemic issue complicated by too much politics and too many illusions:

* there is absolutely nothing "abstract" about functions: All you do in your life from cooking following a recipe or just fixing a sandwich, to making and saving money and changing a diaper, are functions:

a) based on well-known primitive operations;
b) to be performed as step-by-step procedures;
c) in a certain order;
d) all of them;
e) from a start to a sought end (in which their syntactic machinery gives we to the semantic aspects of communication).

Think of actions you do and how all those steps are followed and how and the kind of problems that could arise if they aren't. Even animals know and do "functions":

// __ Smartest Bird (the intelligent raven solves the puzzle)

https://www.youtube.com/watch?v=WYBATyILJD8
~
That corvid, quite functionally, indeed!, followed all the steps to get its food.

In Mathematics, functions are much easier:

a) as well-known primitive operations we used the 6 basic operations (the ER|MD|AS in "PERMDAS");
b) to be performed as step-by-step procedures (which §a operations resulting in partial results);
c) in a certain order: going one way (say LTR) and from the inner most parenthesis out (the P in "PERMDAS");
d) all of them;
e) from a well-defined start (a given "independent" value) to the sought end (the dependent one, given the functional relationship: y=f(x)).

What makes algebraic functions immensely powerful is that using just those basic operations and following basic procedures they can be used as modeling devices for anything that can be and happen. Anything visually, graphically expressed (from your mom's face to your doctor's signature or the microscopic picture of an amoeba) can be algebraically represented through functions. Cars, buildings and airplanes are first modeled and -tested- using functions before they are physically produced and this is 100% safe as long as the model is a faithful representation of reality. Functions are used to effectively represent and simulate from Beyonce's booty dance to the "landing" of a rover on another planet:

// __ The Great Math Mystery - NOVA Documentary on Mathematics - Math Language of the Universe

https://www.youtube.com/watch?v=7iyIyoZbAfY
~
When you code, say, in the Java language (as well as in C and C++), §e are the starting main(...) method the run-time environment looks after in order to start your program and the last one is the last contextually closing curly bracket of the operation you are performing. In order to achieve §b, that is, to demarcate the steps, a semicolon: (;), is used at the end of each statement. Compilers check that §a is right by making sure that only well-known primitive operations are used in syntactically proper ways and any other defined operations are defined as functions in your own code or imported libraries.
~
* functions are not objects but describe relationships among two sets of "objects": they are kind of like Arithmetic ratios and proportions, like the price tags you see on the stands of street vendors. They are not equations because there is not "right" or "wrong" values. Depending on how much money you give you get a number of bananas, there is no "right" or "wrong" amount of money to get a fixed number of bananas. While coding, functions have a number of typed input parameters, a signature specifying the type and scope of the output and the output itself.
~
* in java as in any programming language (since computer hardware internally uses the binary system for numeric representation) you definitely and exactly can divide by any power of 2. All other Arithmetic operations in computers are approximations, but this is not a problem at all, because, since computers are first and foremost modeling devices, you can easily model an exact Arithmetic based on prime factorizations, repeating sequences, ... I have taught that to primary school students when they ask me why dividing 4 by 33, gives the repeating sequence 0.(12).
~
* I think he makes a good point when he uses the x = x + 2 example, I have always though that programming languages should use something like: "x := x + 2" to mean "add 2 to whatever value you have in x and use (the same) variable x to store the result". However, if you code and understand Math well, at some point that kind of "equal sign overloading" gets totally contextualized, so you don't get confused about it at all.
~
* It may politically "make sense" to him (that is, he may make some money out of it) but IMO that "Bootstrap" thing is nonsense. As with anything, there is a reason for both Math and "CS" to be what they are and, as with anything, there are cultural aspects to computer programming.

rlopez2


via International Skeptics Forum https://ift.tt/2QrY8D6

Aucun commentaire:

Enregistrer un commentaire