
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hélène Martin &#187; education</title>
	<atom:link href="http://www.helenemartin.com/tag/education/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.helenemartin.com</link>
	<description>Education, computer science, sewing...</description>
	<lastBuildDate>Wed, 01 Sep 2010 00:37:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>While loops gone wild</title>
		<link>http://www.helenemartin.com/2010-05-while-loops-gone-wild/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=while-loops-gone-wild</link>
		<comments>http://www.helenemartin.com/2010-05-while-loops-gone-wild/#comments</comments>
		<pubDate>Thu, 06 May 2010 05:06:44 +0000</pubDate>
		<dc:creator>Hélène Martin</dc:creator>
				<category><![CDATA[Teaching]]></category>
		<category><![CDATA[computer science]]></category>
		<category><![CDATA[cs1]]></category>
		<category><![CDATA[education]]></category>

		<guid isPermaLink="false">http://www.helenemartin.com/?p=297</guid>
		<description><![CDATA[I hope that my students know that I too feel programming is hard.  In fact, I hope some of them realize that programming is exciting and meaningful to me in large part because it&#8217;s such a challenge.  When students complain about difficulty, I like to remind them that they&#8217;re in school to stretch themselves but sadly that doesn&#8217;t tend [...]]]></description>
			<content:encoded><![CDATA[<p>I hope that my students know that I too feel programming is hard.  In fact, I hope some of them realize that programming is exciting and meaningful to me in large part because it&#8217;s such a challenge.  When students complain about difficulty, I like to remind them that they&#8217;re in school to stretch themselves but sadly that<br />
doesn&#8217;t tend to resonate much with them.  Go figure.</p>
<p>In <a href="http://www.garfieldcs.com/creative-computing/">Creative Computing</a>, we recently spent time working with indefinite loops.  I think most introductory programming instructors would be shocked and appalled at how long we&#8217;ve spent primarily focusing on one<br />
measly construct.  Indeed, while loops are a half-hour lecture in most college-level intro to programming courses.  But here&#8217;s the deal &#8211; while loops are hard.  What does it take to use a while loop properly?  I&#8217;ve tried to think of all the little things necessary to know how to interpret and create code using indefinite loops but I&#8217;m sure I&#8217;ve forgotten bits and pieces!  I poked around a little for formal articles with these sorts of breakdowns for various programming constructs but wasn&#8217;t very successful.  Pointers?</p>
<p>Understanding while loops requires&#8230;</p>
<ul>
<li>syntactic knowledge
<ul>
<li>start the statement with while, have some condition in parentheses, end the line with a colon then indent things that need to be repeated</li>
<li>valid boolean operators (assignment = vs. equality ==)</li>
<li>creating complex boolean expressions with and and or (for example, my students often write things like value == 2 or 3 which won&#8217;t work as expected in Python)</li>
<li>how to group statements into a block</li>
</ul>
</li>
<li>understanding of scope rules
<ul>
<li>if I use a variable in my test, it has to have been initialized</li>
<li>if I create a variable in my loop, it won&#8217;t be available later</li>
</ul>
</li>
<li>understanding of flow of control
<ul>
<li>if I make a method call in my loop body, that method is run then Python keeps executing statements after the call</li>
<li>if my condition stops being true somewhere in the loop body, that doesn&#8217;t make me magically jump out</li>
<li>the test is executed every time around the loop</li>
</ul>
</li>
<li>converting between stopping conditions and continuing conditions
<ul>
<li>DeMorgan&#8217;s Law is hard</li>
</ul>
</li>
</ul>
<p>I have a lot of sympathy for students who take more time to synthesize all of this and I think it&#8217;s too bad that we don&#8217;t have more best practices on breaking concepts down into digestible pieces.  At the same time, I think CS courses are exciting for high-achieving students BECAUSE we haven&#8217;t figured out how to break things down into bite-sized chunks, yet!  Certainly, when I was starting my perpetual quest to learn to program, I found something deeply satisfying about looking at several examples of a construct to establish a model of how it works.  For students who are not used to considering an idea from different angles in an attempt to really understand it, it&#8217;s a deeply frustrating process.</p>
<p>I feel like this points to a deep need for differentiated instruction to  keep my top end students engaged without overwhelming my bottom end.  I&#8217;ve been trying to be more careful about giving students sample code that address sub-concepts one at a time and having different milestones so students at various levels can be successful.  Again, not really finding best practices but that&#8217;s probably because computing education is primarily done at the college level where it&#8217;s not much of a concern for instructors (or I don&#8217;t know where to look?).  <a href="http://chai.it.usyd.edu.au/People/RaymondLister">Raymond Lister</a> and John Leaney&#8217;s <a href="http://portal.acm.org/citation.cfm?id=858430">First Year Programming: Let All the Flowers Bloom</a> does present some nice work supporting the idea of shifting my goals for weaker students to reading and interpreting code rather than producing entirely novel programs.</p>
<p>Of course, I don&#8217;t pretend to know what the right solution is.  One thing I think is underscored by the overwhelming list of concepts needed to understand the humble while loop is the importance of being very deliberate about the order topics are introduced in.  Sometimes I look at introductory programming course syllabi and I feel like concepts are just being thrown haphazardly into a pile instead of aiming to construct knowledge.  Strong students will probably be fine but what about normal people?!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenemartin.com/2010-05-while-loops-gone-wild/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>OLPC / XO</title>
		<link>http://www.helenemartin.com/2008-04-olpc-xo/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=olpc-xo</link>
		<comments>http://www.helenemartin.com/2008-04-olpc-xo/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 18:38:00 +0000</pubDate>
		<dc:creator>Hélène Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dev world]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[olpc]]></category>
		<category><![CDATA[xo]]></category>

		<guid isPermaLink="false">http://www.helenemartin.com/wordpress/?p=13</guid>
		<description><![CDATA[We&#8217;ve had our OLPC through the G1G1 program for long enough that I find myself entitled to an opinion. It&#8217;s not positive at all. We got ours mostly as a fun coffee table ornament, but also out of a sincere hope that it could have value for the developing world and that we could contribute [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve had our OLPC through the G1G1 program for long enough that I find myself entitled to an opinion.  It&#8217;s not positive at all.  We got ours mostly as a fun coffee table ornament, but also out of a sincere hope that it could have value for the developing world and that we could contribute developer hours to the project.  Having wasted yet another long series of hours on OS woes, I&#8217;m about ready to call the whole damn thing a completely futile endeavor.  I love the hardware and hate the software.  Maybe Windows will make it easier to use.  Harr.</p>
<p>Still, I think it has value, and I&#8217;d like to get it to a point where I can reliably use it as a travel computer.  It&#8217;s small, light, cheap, not enticing to steal and has reasonable battery life, though nowhere near what promised.  The default browser is mostly useless, but Opera is a very nice alternative.  Skype on there works reasonably well.  And I love, love, love the screen.</p>
<p><span id="more-13"></span></p>
<p>Some thoughts on my experience so far:</p>
<p><strong><span style="font-size: medium;">Intuitive?</span></strong><br />
I&#8217;m spatially challenge, but I&#8217;m vaguely intelligent.  It took me about seven minutes to get the XO opened, and that was with Yaw&#8217;s suggestions and both of us puzzling over it.  No one I know has opened the darn thing in under two minutes.  Some people simply walk away and others come pretty close to snapping the thing in half.  I know kids will be in classrooms when they receive them and get instruction and all, but still.  I think it&#8217;s great that it holds shut really well and has an amazing form factor but&#8230; arrows?  Hints?  Anything?  It&#8217;s just a frustrating way to get started.</p>
<p>The thing takes A Long Time to boot.  Very long.  Minutes.  The visual feedback doesn&#8217;t start right away, so I hard reset the thing in its boot sequence three times thinking it had hung before just letting it do its thing and realizing it just took a while.  Now that it hibernates, that might not be such an issue.  But still, another source of frustration.</p>
<p>I really like the different zoom levels Sugar has &#8212; network level, group level, machine level and app level.  But I don&#8217;t think it&#8217;s very intuitive.  Most applications toss you into an environment that&#8217;s pretty difficult to discover.  My younger brother is 18 and brilliant but I had to spend some significant amount of time explaining Etoys to him (which is not some magical thing.  It&#8217;s just as clunky as Squeak).  Again, this will probably come up in a classroom context where explanation can be given, but I&#8217;m disappointed.  I thought Sugar was supposed to revolutionize the GUI design world.  Far from.  Many of the metaphors are the same, just somewhat stylized.</p>
<p>Keyboard mappings are really inconsistent across applications, in my experience.  Sometimes the X works to quit, sometimes it doesn&#8217;t.  Sometimes copying works, sometimes it doesn&#8217;t.  Again, irritating.  It makes me want to play with balls and hoops because those always do EXACTLY WHAT I EXPECT.  Which brings me to my next complaint&#8230;</p>
<p><strong><span style="font-size: medium;">Unpredictable behavior</span></strong><br />
I stopped using Windows long ago because I felt like I was mostly at the mercy of completely random patterns of behavior.  I&#8217;d try the same thing five times and get five wildly different results and that was driving me crazy.  I&#8217;ve never seen anything as bad as the OLPC.  We got a machine with build 656.  Yaw upgraded to candidate-691.  It somehow reverted back to 656.  I updated to candidate-691.  This morning it was back to 656.  I upgraded to candidate-703.  Rebooted.  Failed at installing activities.  Rebooted.  Failed again.  Rebooted.  Back at 656.</p>
<p>At first we could su and get a root shell.  At some point su stopped working and we had to click a button.  This morning, su worked fine.  And now, back at 656, for the first time, I get /bin/su: permission denied and no root shell from the terminal activity.  But I can log in as root from the overall terminal.</p>
<p>So I&#8217;m trying the 703 upgrade again, but I feel crazy.  Maybe this isn&#8217;t such a big problem because children will not be expected to perform upgrades on their own machines.  Fine.  I can buy that.  But if there&#8217;s some magical sequence of things I keep doing that revert to a previous version, I don&#8217;t know what those poor kids will think.</p>
<p><span style="font-size: medium;"><strong>Education?</strong></span><br />
There&#8217;s a fair amount of opportunity for fun on here, and that&#8217;s great.  A lot of it is somewhat educational or at least provides access to more information and varied experiences.  Fine.  I&#8217;ll buy all that.  But when teachers get asked what kids in pilot programs do with their XOs, answers range from &#8220;oh, they measure the distance between each other&#8221; to &#8220;they really like the camera.&#8221;  Really?  That&#8217;s the best you can say?</p>
<p>There&#8217;s value to learning through osmosis.  It&#8217;s how I learned almost everything I know about computers &#8212; just poking around.  But I worry that a lot of the knowledge gained this way won&#8217;t really be all that transferable.  The applications are&#8230; well, toys.</p>
<p><span style="font-size: medium;"><strong>Impact?</strong></span><br />
Again, the hardware is beautiful, and I&#8217;m extremely glad we have it.  But I really worry about the impact of this project.  The politics of it all have been heartbreaking to watch and the software is far from usable, in my opinion.  I wonder whether the overall effect will be positive &#8212; what if some governments find themselves short millions of dollars with plenty of paperweights and as just as many hungry mouths to feed?  I worry that the reaction will be to move away from funding educational technology programs, which would be a very unfortunate result.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenemartin.com/2008-04-olpc-xo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rediscovering the passion.</title>
		<link>http://www.helenemartin.com/2008-03-rediscovering-the-passion/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=rediscovering-the-passion</link>
		<comments>http://www.helenemartin.com/2008-03-rediscovering-the-passion/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 03:18:00 +0000</pubDate>
		<dc:creator>Hélène Martin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[computer science]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[csta]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[Teaching]]></category>

		<guid isPermaLink="false">http://www.helenemartin.com/wordpress/?p=26</guid>
		<description><![CDATA[&#8220;Has anyone considered the possibility that it&#8217;s just not fun any more?&#8221; &#8211; Don Knuth, Stanford University, October 2006 SIGCSE caught me in an interesting place somewhere between extreme career-angst and profound passion for ongoing CS projects. Unsurprisingly, a number of the sessions I chose to attend had to do with computer science&#8217;s negative image [...]]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;Has anyone considered the possibility that it&#8217;s just not fun any more?&#8221;</em><br />
&#8211; Don Knuth, Stanford University, October 2006</p>
<p><a href="http://www.sigcse.org/">SIGCSE</a> caught me in an interesting place somewhere between extreme career-angst and profound passion for ongoing CS projects.  Unsurprisingly, a number of the sessions I chose to attend had to do with computer science&#8217;s negative image and ways to overcome them.  One of my favorites was titled Rediscovering the Passion, Beauty, Joy and Awe: Making Computing Fun Again.  Everyone has a different theory on why computer science is losing its appeal: programming is considered boring, programming is fun but students find the rest boring, it&#8217;s too hard, the field is too competitive, there&#8217;s a perception of a lack of jobs,  it&#8217;s considered antisocial&#8230;</p>
<p>One of the talk&#8217;s speakers, executive director of the <a href="http://www.csta.acm.org/">CSTA</a>, noted that the enrollment crisis that&#8217;s been plaguing us for a few years may in fact prove to be positive because it is forcing us to come together and reengineer the field&#8217;s identity.  Really, there&#8217;s an element of truth in all of the perceptions listed above.</p>
<p><span id="more-26"></span></p>
<p>I tend to feel that I was born in entirely the wrong decade to be a computer scientist, and I doubt I&#8217;m the only one.  I wanted to be around forty years ago when Engelbart was founding the Augmentation Research Center at Stanford or thirty years ago when Metcalfe was creating Ethernet at PARC or twenty years ago when the original Macintosh was emerging.  It&#8217;s books like <a href="http://www.amazon.com/What-Doormouse-Said-Counterculture-Personal/dp/B000OCXFYM">What the Doormouse Said</a> and long nights of hacking device drivers in Linux that got me hooked.  And these days, all anyone seems to want is Facebook.  Which is not to say that there are no active subfields &#8212; surely cloud computing, multi-core devices and computerized medical systems are not devoid of interest but I grew up about two and a half miles from the HP garage and it heavily influenced my concept of the future as a computer scientist. Where are the small grassroots innovations?</p>
<p>The whole conference placed a lot of emphasis on introducing algorithmic thinking and computer science-y things in K-12, which really resonates with me (I am, after all, coordinating the UW <a href="http://cs4hs.cs.washington.edu/">CS4HS</a> workshop this summer).  My early experiences with computers from programming with Logo in 6th grade, taking apart computers with my dad even before then and doing <a href="http://www.usfirst.org/">FIRST</a> in high school all left me with very strong impressions.  Regardless of the fields students will ultimately go to, any CS skills they pick up will serve them well, so it definitely makes sense to incorporate at all levels.  Additionally, as <a href="http://www-cs-faculty.stanford.edu/~eroberts/">Eric Roberts</a> pointed out in his portion of the talk, the field loses most students before they even get to college, implying that the quality of courses offered at that level may not explain dwindling enrollment at all.  In his words, &#8220;curriculum is our hammer and the enrollment crisis is our nail.&#8221;  He was even able to show Stanford course evaluation data demonstrating that the intro CS series are among the more popular classes on campus, but that students&#8217; enjoyment of the course has nothing to do with whether they&#8217;ll stick with the field &#8212; students choose majors based on what they want to do, not on what they want to study.</p>
<p>In some ways, I feel a little bit cheated because my FIRST experience, for example, was much closer to the HP garage than anything I&#8217;ve done since.  All of this talk of introducing CS with gimmicks including <a href="http://www.alice.org/">Alice</a>, robots and video games is all nice and good, but is it really representative of what students will end up doing?  Probably not, and if they are hooked by those things, I don&#8217;t think it means that they will stay interested.  If, with all my love of technology and my successes in the area, I still end up having an existential crisis related to my options to the future, of course others are suffering from the same.  I think I&#8217;m an example of someone who chose the major because it&#8217;s exactly what I wanted to study but who isn&#8217;t sure what to do with it after that.  Sure, I could keep studying it, and that&#8217;d probably be fun, but studying something just for the sake of fun is only fulfilling for so long for me.</p>
<p>Industry has become ridiculously unattractive to a whole slew of us.  Sure, Google attracts many people with its promise of on-campus pool and dry cleaning service but to some of us those &#8220;perks&#8221; are repulsive.  Of course it&#8217;s convenient, but it&#8217;s too invasive for me.  A lot of jobs involve little creativity.  The social impact is minimal.  It just doesn&#8217;t fit into my value system.  And it was really great to hear speakers denouncing this reality and suggesting that it&#8217;s industry&#8217;s responsibility to make work more appealing.</p>
<p>Beyond that talk, the conference was fantastic.  It was so much fun to meet all the big names I&#8217;ve heard so often &#8212; Berkeley&#8217;s <a href="http://www.cs.berkeley.edu/~ddgarcia/">Dan Garcia</a> and <a href="http://www.cs.berkeley.edu/~clancy/">Mike Clancy</a> Stanford&#8217;s <a href="http://www-cs-faculty.stanford.edu/~zelenski/">Julie Zelenski</a> and <a href="http://www-cs-faculty.stanford.edu/~nick/">Nick Parlante</a>, Duke&#8217;s <a href="http://www.cs.duke.edu/~ola/index.html">Owen Astrachan</a> and so many others&#8230;</p>
<p>Man, I just want to teach.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenemartin.com/2008-03-rediscovering-the-passion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
