Einstein probably did not say, "Everything should be made as simple as
possible, but _no simpler_." However, somebody did, and somebody was
right. One of the biggest problems in teaching programming is the
constant pretense that we are not doing complicated mathematics, and
the resulting attempt to hide the math.

There is a lovely little book called Mathematics Made Difficult, whose
premise is that refusing to tackle topics of modest complexity makes
understanding far more difficult. With examples, of course.

I have a similar complaint about freshman college physics courses that
attempt to get by with no calculus.

One of my favorite matth examples is how the use of elementary
differential equations and Taylor series simplifies the definition of
trigonometry. Define the exponential function by the equation

y' = y

which says that the growth rate of the function is proportional to its
current value. Bring in examples from compound interest, biological
growth, inflationary cosmology,... The function we are looking for is

exp(x) = sum_0^\infty (x^n)/n!

or any multiple of it. If you know that d(x^n)/dx is nx^(n-1), then
you can see that the derivative of the power series for exp is itself.

Now solve

y' = -y (negative of exp)
y'' = y (hyperbolic sinh and cosh functions)
y'' = -y (sin and cos functions)

in the same way, and look at the relations among their power series.

Now derive e^(i\pi)+1=0 from e^(i\theta) = cos \theta + i sin \theta,
which follows directly from the power series above, and then switch to
linear algebra to get the sum, difference, and other formulae, and
geometry to get the solutions of triangles.

If anybody has difficulty with any of this I can point you to
textbooks using these methods.

If you would like a bit more of a challenge, we can do this all over
again in elliptic and hyperbolic geometry, where we don't have similar
triangles. ^_^

On Wed, Mar 30, 2011 at 13:50, Kirby Urner <kur...@oreillyschool.com> wrote:
>
> What is a Python module? #==========================
> Common answer is "a file containing Python source code?",
> but I'm questioning whether that's sufficient definition.
> How about an importable .pyc or .pyd, with no .py in the
> picture.  That's a module too, no?
> ** Import Star #====================================
> When is
> import *
> a good idea?
> There's all this righteous moralistic hoopla that gets built up
> against specific idioms, to where eval( ) appears to be fighting
> for its very existence...  Mary wants to keep her little lambda.
> So I'd rather phrase these in the positive, as in when IS it
> a good idea... e.g. to use semi-colons between statements.
> ** Another student question:  #=========================
> Why does all([]) return True by default?  Is this a case
> of half full versus half empty?
> ** Correcting a misconception  #========================
> No, docstrings do NOT have to be triple quoted.
> Kirby
>
> _______________________________________________
> Edu-sig mailing list
> Edu-sig@python.org
> http://mail.python.org/mailman/listinfo/edu-sig
>
>



-- 
Edward Mokurai (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) Cherlin
Silent Thunder is my name, and Children are my nation.
The Cosmos is my dwelling place, the Truth my destination.
http://www.earthtreasury.org/
_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig

Reply via email to