On Sun, Dec 20, 2009 at 3:45 PM, Andy Judkis <span dir="ltr">&lt;<a href="mailto:ajudkis@verizon.net">ajudkis@verizon.net</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2) Talk about the history.  Show them some really old computers.  Talk about<br>
the Analytical Engine. Make sure they know what Moore&#39;s Law is.<br>
    <br>
</blockquote>
<br>
Yes, and make sure you include Ada and Grace Hopper.  Computer science<br>
is about women, and men.<br>
  <br>
</blockquote></div>
I definitely stress Ada&#39;s contributions -- I talk about her when we go over the analytical engine, and then come back to her when we do programming.  Hopper, not so much -- obviously she was a very important contributor but I think a lot of girls would find her off-putting -- she kind of confirms some of the stereotypes that we&#39;re trying to get past. I&#39;m not confident about this, it&#39;s just my gut feel, and I&#39;d love to hear some other opinions.<br>

<br></blockquote><div><br>Sure, different teachers, different lore, different stories.<br><br>What I encourage though, is telling stories.  Sounds like you do as well.<br><br>A diet of just technical information is too devoid of context and is what the neighboring math tracks most suffer from i.e. there&#39;s often almost no historical dimension, little sense of a time line.<br>
<br>When I gave a workshop at Pycon this year, with Steve Holden, I had this slide showing the two axes:  technical, and lore.  You have this curve, representing whatever finite bandwidth, and a kind of trade off.  <br><br>
As teachers (and as communicators more generally) we slide around on this curve.  Sometimes just being straight ahead technical is not the best approach.<br><br>Regarding Ada, I once wrote a spirited defense of her keeping the title of &quot;first computer programmer&quot;.  A cover story in the New Yorker magazine, with a spoofy caricature of her, proposed to take that away.<br>
<br>Regarding Hopper, I saw a video clip of her once, explaning a nanosecond as how long it took light to travel the length of her forearm.  <br><br>She had a very reassuring and commanding presence I thought, probably goes with being a Rear Admiral or some such.  <br>
<br>From what I&#39;ve learned so far, I have nothing but admiration for her contributions and acheivements, but don&#39;t consider myself an expert.  I&#39;d like to learn more.  <br><br>More lore!<br><br> <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

I have a unit where I give each kid some computer-oriented person to learn about and report on to the class, and I try hard to find hip and/or unique personalities, or fascinating life stories. I&#39;ve got about 20 that seem to fit the bill pretty well (Lynn Conway is probably the ultimate in fascinating biographies -- but I also give them John Perry Barlow, Jared Lanier, Alan Kay, Jack Tramiel, Nolan Bushnell, John Von Neumann. . . ), but would love suggestions for others, especially more women.<br>
</blockquote><div><br>You know a lot of cool stuff, probably explains why you get to teach these cool classes.<br><br>Twas my privilege to meet and hang out with Alan Kay over the course of a 2-3 day marathon meeting.  People from many walks of life were huddled to think of a good way forward for South African educators -- we had some government representatives and full time teachers from that country among us as well (this was a meeting in London).<br>
<br>Alan is an impressive character, not someone I&#39;d easily forget.  The late Arthur Siegel and I used to trade views about him in this archive (Arthur being someone else who makes a lasting impression).  Alan seemed clearly admiring of Python, also of Javascript.  <br>
<br>Alan had something of an &#39;Idiocracy&#39; perspective (know the movie I mean?) in that he saw too much backsliding and devolution.  This made him uncomfortable.  I can&#39;t say I&#39;m not empathetic, but then maybe I&#39;m one of the devolved.  <br>
<br>I got to speak at London Knowledge Lab on my way to this meeting:<br><a href="http://bfi.org/bfi_community/pythonic_mathematics_talk_by_kirby_urner">http://bfi.org/bfi_community/pythonic_mathematics_talk_by_kirby_urner</a><br>
<br>Of course Alan connects to his Dynabook idea and more recently to One Laptop Per Child (the XO is like a Dynabook on some ways).  Python and OLPC continue to have this close connection thanks to Sugar.  I&#39;m sure you know all this, just wanting to graph the scene.  <br>
<br>Say, I&#39;m amazed how OLPC didn&#39;t spread across the USA&#39;s back-of-the-cereal-box culture, or maybe it did and I missed it?  Did anyone here ever see an XO on the back of a Cheerios box?  <br><br>Industry talks to children through TV and cereal boxes (among other ways).  Some cereal company needs to develop a geekier brand of breakfast cereal and sponsor a matching TV show.  Marketing avatars could use this opportunity to show off how they&#39;re able to keep technical content girl-friendly, not make it all Johnny Neutron and boy-centric.  <br>
<br>Hey, cereal companies!  Want some help?<br><br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I think the history of computers needs to come through AdaBabbage,<div class="im"><br>
then Turing and Bletchley Park.  You need to explain about Enigma and<br>
all that, why there was suddenly such an impetus to make digital<br>
computers real, not just talk about them.<br>
</div></blockquote>
The best friendly treatment of all this that I&#39;ve found is The Cartoon Guide to the Computer by Larry Gonick.  Boy, would I like to see that updated and re-released.<div class="im"><br></div></blockquote><div><br>Encouraging students to draw their own cartoon guides would be another option, with examples to draw from.<br>
<br>The lore we choose might be themed to motivate specific technical studies.<br><br>For example, I tell the story of Hollerith machines, tabulators, keeping tabs, as a build-up to SQL in what I call Supermarket Math (you need SQL to run a contemporary supermarket).  <br>
<br>However, this topic of collecting data about people, anonymous or not, gets us into that realm of worrying about what information is collected, fears and trepedations (which we don&#39;t dismiss or pooh pooh).  When explaining &quot;how things work&quot;, one needs to be prepared to delve into these issues of privacy, monitoring, Big Brother.<br>
<br>True story from the Python.org diversity list, which is all peace and quiet these days:  we were talking about those check boxes Americans use to enquire about ethnicity and/or race.  Should these be added to Pycon registration web forms, as a way to help measure diversity?  <br>
<br>At least one of our European subscribers was very clear that such boxes would come across as offensive, even illegal in a European context.  Asking about ethnicity, keeping tabs in that way, was a precursor to the holocaust, and that&#39;s never far below the surface in these kinds of discussions.<br>
<br>Yes, I&#39;m getting into mature topics (sobering) and maybe we&#39;re not talking about middle school any more.  My talk was actually more about &quot;andragogy&quot; than &quot;pedagogy&quot; i.e. teaching adults.  As adults, we should consider the lore we teach to ourselves and one another.<br>
<br>Another story I tell is about the rise of Unicode based on the model of ASCII.  The 7-bit map with a parity check, the extra 128 slots once you use all 8 bits.  IBM code pages.  And then Unicode.  <br><br>Lots of stuff to show and tell about including showing examples of non-Latin-1 Python source code. The story both gives perspective, and it motivates a technical discussion about powers of two, about how each additional bit doubles the number of code points.<br>
<br>This is a happy story about people around the world agreeing to support all these human languages and bringing them forward in a digital age.  After the workshop though, some attenders were keen to give me a more nuanced version.  Each one of these stories goes to many levels and the classroom versions will necessarily be abbreviated.<br>
<br>A final example of a good story is what we already talked about:  following the cryptography thread through that interesting chapter when public key first came out.  Zimmermann&#39;s PGP, government efforts to squelch its export etc.  <br>
<br><a href="http://www.philzimmermann.com/EN/background/index.html">http://www.philzimmermann.com/EN/background/index.html</a><br><br>Students enjoy visiting that page showing giant RSA composites still needing to be cracked, with big money prizes for those that crack them (this contest has been discontinued I notice).  <br>
<br>Examples of already cracked numbers provide more grist for the mill.<br><br><a href="http://www.rsa.com/rsalabs/node.asp?id=2092">http://www.rsa.com/rsalabs/node.asp?id=2092</a> (RSA numbers)<br><a href="http://www.rsa.com/press_release.aspx?id=462">http://www.rsa.com/press_release.aspx?id=462</a> (cracking DES)<br>

<br>WIth this story as background, it&#39;s easier to motivate technical sessions working the giant (long) integers.<br><br>What story might motivate using the Decimal type to a large number of significant digits?  <br><br>
I can think of one or two, but I&#39;m curious what you or others might offer.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">

<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

3) Show them some things about operating systems (the task manager, a DOS<br>
command window) and talk about viruses, worms, zombies, botnets, cyberwar. .<br>
. stuff like that<br>
    <br>
</blockquote>
<br>
Yes, offer practical advice about how to stay safe and play safe.<br>
Encourage high ethics.<br>
  <br>
</blockquote></div>
Not just that, but it helps them understand stuff that&#39;s in the news.  They start to notice more of what&#39;s going on.<div class="im"><br></div></blockquote><div><br>Exactly right!<br><br>Where&#39;s the TV show that does this on Saturday Morning?<br>
<br> <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

6) Have them do some simple web pages by writing HTML tags with a text<br>
editor.<br>
    <br>
</blockquote>
Yes, excellent, and talk about CSS too.  I love that web site we all<br>
know about probably, where you just reload the same HTML with skin<br>
after skin (defined separately in the CSS).<br>
  <br>
</blockquote></div>
I guess you mean <a href="http://www.csszengarden.com" target="_blank">www.csszengarden.com</a>?  I show that after introducing style sheets, and it blows their minds.<div class="im"><br></div></blockquote><div><br>Thank you!  That&#39;s the one!<br>
 <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
The How Things Work component is what&#39;s really important a lot of the<br>
time, and it&#39;s not just the personal computer on your desk that&#39;s<br>
important to comprehend.  We need to explain about larger systems,<br>
institutions, in which computers play a role.  This includes<br>
explaining about social networking software, not making kids simply<br>
guess or imagine what&#39;s going on behind the scenes.<br>
  <br>
</blockquote></div>
Agreed.  I think that familiarity with this stuff at some basic level is important for all citizens, not just future tech geeks.<br>
<br></blockquote><div><br>More Geek TV!<br> <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Which kind of brings it back to Roberto&#39;s original post -- what should you teach in a middle school CS class?  I wouldn&#39;t focus on formal programming at all -- at that age, I suspect that very few kids will find it compelling.  I&#39;d point to <a href="http://csta.acm.org/Curriculum/sub/ACMK12CSModel.html" target="_blank">http://csta.acm.org/Curriculum/sub/ACMK12CSModel.html</a> and also <a href="http://csunplugged.org/" target="_blank">http://csunplugged.org/</a> for more ideas.<br>

<br>
Thanks,<br><font color="#888888">
Andy<br>
</font></blockquote></div><br>Right.  Not so much formal programming.  More creative play, dabbling, using Python as a calculator, interactively in the shell (as way smarter calculator in so many ways, especially when you add 3D plotting, turtle graphics, the ability to read and write files...).<br>
<br>Having students scan already tested source code (scaffolding) with a kindly tour guide teacher, is a very different exercise from sitting in front of a blank canvas and feeling under pressure to produce.<br><br>It&#39;s the difference between recognition (recog) and recollection (recall).  The former is much easier and will usually precede writing code by oneself.  <br>
<br>Likewise an infant spends a lot of time absorbing language in an immersive environment, listening to fluent speakers, before having to say a whole lot on her own.<br><br>CS Unplugged got favorable mention at our planning meeting on Aug 7 (which I&#39;m sure I posted about, perhaps to excess on this list).<br>
<br>Here in Oregon, there&#39;re moves afoot to get some computery stuff to count towards fulfilling the minimum three year math requirement, meaning the course would not have that &quot;elective&quot; flavor.  You&#39;d take it to satisfy a 3rd year requirement for a hight school diploma, and heres a &quot;digital math&quot; class that will do that for ya.  <br>
<br>Some schools are already doing pilots along these lines (we met at one that was doing it).  There doesn&#39;t seem to be much push back.  Seems more like a done deal (that&#39;s must my personal perspective -- don&#39;t know what I don&#39;t know).<br>
<br>Computer science teachers like the idea because now some of them get to teach a required course.  <br><br>Math teachers like it because now they get to use cooler more motivating tools without losing &quot;required track&quot; status.<br>
<br>The students like it because working with computers is more fun than not.  <br><br>The parents like it because the skills look very career relevant.  <br><br>Industry likes it because the skills are indeed career relevant.<br>
<br>There&#39;s lots of agreement Python will play a starring role in all this (the Litvins text got waved around as exemplary -- not by me as my only copy was PDF), though at the level of standards, I don&#39;t know that a specific language actually needs to be specified.**<br>
<br>We&#39;re *not* talking about an AP (Advanced Placement) course here, where the course designers have a national test in mind, and so have to be specific as to language (traditionally Java these days, used to be C++ I&#39;m pretty sure).<br>
<br>Anyway, a lot of us on edu-sig, such as Gregor in Vienna, are blissfully exempt from needing to care about AP, ETS and all that.<br><br>Kirby<br><br>-- <br>&gt;&gt;&gt; from mars import math<br><a href="http://www.wikieducator.org/Digital_Math">http://www.wikieducator.org/Digital_Math</a><br>
<br>** <a href="http://mathforum.org/kb/message.jspa?messageID=6933198&amp;tstart=0">http://mathforum.org/kb/message.jspa?messageID=6933198&amp;tstart=0</a>  (re standards and how &quot;meaty&quot; we might want them to be -- a somewhat contentious list, a front lines for &quot;math wars&quot; on some days).<br>
<br>