Re: [Edu-sig] Research on best language to use for teaching beginners

2015-10-02 Thread Laura Creighton
I have found that if you begin teaching:

for item in lst:

and

for letter in word:

and then add break, and continue,

and then teach

for x in range(y):

and then teach

while (something):

it all goes better than if you begin with while loops.

But I don't know whether this means this is a better order to teach in,
or simply a better order for _me_ to teach in.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] more thoughts on diversity...

2015-02-04 Thread Laura Creighton
There is an important number that is being missed here.

What percentage of pitches do VCs hear from women?

If 2% of the number of pitches that the VC's hear are from women,
and 10% of the number that they fund are from women , then women
are more likely to be funded than men --- and to get 50/50
equality all we need to do is to get more women to submit bids.

If on the other hand, 20% of the number ... and 10% ... then
well, either we have discrimination against women or else the
women are new at this, and maybe aren't as polished as the men ...

If on the other hand 40% of the number  and 10% ... then
we are clear on the fact that there is systemetic discrimination,
sex-based, here.

But the numbers matter.  If it turns out that VCs are not
getting pitches from women, because the women believe they
will not be funded in any case  -- well, that is something that
matters too.

maybe this was for diversity, not edu-sig Kirby?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] real advice to a real student (comments welcome)

2015-01-15 Thread Laura Creighton
Can you suggest your student watch this video?
http://www.thersa.org/events/rsaanimate/animate/rsa-animate-drive

It is Dan Pink's _The Surprising Truth About what Motivates Us_

After he or she has done so, I have this added bit.

Turns out, in test after test after test, what people want in order to
be happy with what they do is Autonomy, Mastery and Purpose.  (It's
also what you need to give them if you want them to do that job well.)
I would add, not on Dan Pink's list, that the opportunity to work
with interesting and good people also is a factor.

This means that when you go out and consider what do I need to do or
learn in order to have a job in IT, it is important to work something
out so that you will end up doing something that you find worthwhile.
Otherwise, you will just quit and find something else to do ...

People who are about to study something are at a bit of a disadvantage
when it comes to making sure that they get autonomy, mastery and purpose.
After all, by deciding to talk to Kirby you are demonstrating idependence
and autonomy, and whenever you decide to learn something, like Python
you are working on Mastery.  The Purpose of 'I am going to transform
myself into a Skilled Python programmer' handles the Purpose part rather
well, and learning things on your own handles the autonomy part about
as well as it can be done.  With all these aspects being well handled,
it is easy to fool yourself into thinking that all life as a Python
programmer will work this way.

But once you have done sufficient learning as to be able to get a job,
it is quite possible to end up doing something that isn't autonomous
(your boss rides you all the time about the work that needs doing),
isn't challenging (we aren't paying you to learn around here, just to
do things that you already know how to do) and thus doesn't increase
your sense of mastery, and is fairly pointless (if I weren't getting
paid to do this, I would never do anything like this at all).  As
Dan Pink mentions, the thing to do about money is to pay people well
enough that it no longer becomes a motivating issue, because people
who are paid far too little are always thinking about money and not
about the job.  Now, if you are in the position of being dependent
on your parents for any money you receive, you may be deep in the land
of 'not getting paid enough for your effort' because you are not getting
paid at all.  And, indeed, your life will be greatly improved once you
start earning a decent wage 

But at this point the other factors start becoming the most important ones,
and if you haven't understood this, you can end up in a pointless (but
decently paying) job that doesn't allow you to grow, controls you and
stresses you out.  By understanding the problem you can make sure you
do not end up there.

Best of luck in life, whatever you choose to do --
Laura Creighton

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Edu-sig list owner

2015-01-09 Thread Laura Creighton

Just FYI:

The list owner of a mailman mailing list doesn't have to be one person.
You can have several owners.  This is useful when the workload is high
or you want to make sure that there is always somebody awake who is
owner of the list.  I don't think either of these are relevant here,
but Jeff,  if you find you need help, just ask.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Need resource for beginners

2014-12-17 Thread Laura Creighton
Screen-scraping has proven to be a favourite introductory topic here.
People want to know when something has changed on any of a list of
favourite websites -- the 'are the concert dates announced yet?' problem.

The problem with using their math and physics problems, is that if they
find math and physics uninteresting, they will get the idea that
programming is unintersting -- or worse, only for scientists and engineers.

Can you get the students, ahead of time, to answer the question 'what do
you wish your comptuer could do'?  Or, more in general 'what would you
like to get out of this course?  Why are you here?'

The Raspberry Pi Foundation http://raspberrypi.org has a whole lot of
really useful, proven resources.  I'd start there rather than try to
roll my own lessons, especially since it sounds like this is your
first time doing this.

Best of luck, and let us know how it works out.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Recommendation for editor+console or IDE for teaching beginners

2014-12-10 Thread Laura Creighton
Will you be doing this in English, French, or both?  However, make sure that
what you use has adequate online documentation in both English and French
(and ideally many more) so that people who mostly cannot learn from lectures,
but badly need _something to read while they are working things out_ can
find all the stuff they require.

Ahead of time it is hard to know how the numbers break down but if you
expect to get a large number of self-motivated 12 and 14 year olds, then
you are also expecting to get a large number of people who pick things up
by reading the book and for whom lectures are either a) painful or b) a
pleasant way to socialise with others who are trying to learn the same
things.

It is more or less impossible to teach many of these people by making
lectures and having them listen to them because they have almost no
experience of learning by being talked to.  Their entire educational
experience is one where they read the textbook, first,  and thus come
to class more or less already knowing what the teacher is going to teach
and looking to the teacher for some clarification on corner cases, and the
like.  The smarter they are, the less they need to be taught, having already
taught themselves ...

Thus they have almost no experience in learning by being talked to, even by
the teachers who are the very best at lecturing.

Higher education can be excruciatingly hard for these students if the
teacher hasn't made his own textbook yet, and expects the students to
learn from the lectures.  It doesn't help matters that such teachers
are notoriously bad lecturers.  Naturally, the teachers expect the
students to be already well trained in learning by 'being talked to'
-- their expectation is that this is how the students have been
learning their whole lives.  And the students, generally don't
understand what the problem is.  They know they are smart, and they
know that they are floundering in class, but they don't know that
their problem is that they aren't very good at learning from lectures,
and badly need some texts to read if they are ever to make sense of
things ...

If you can get these people to recognise themselves then, no matter how
they end up doing in this particular course, you will do them a priceless
service.  

The problem gets exponentially worse if the language the teacher is talking
in isn't your preferred language for learning in.

It's late here.  I will write more later.

Good luck.

Laura

ps would go with IDLE myself.  Now that tkinter is shipped with modern
Mac distros, there hasn't been much of a problem any more here.  But make
sure that absolutely everybody knows what a PYTHONPATH is, can find their
own, and can check that their PYTHONPATH is what it should be.
___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Reeborg update

2014-11-24 Thread Laura Creighton
By the way, around here I get to read a whole lot of stuff the import of
which is that just as writing and penmanship are no longer things that
teachers need to focus on (because everybody types things, these days),
typing is about to get the axe as voice recognition is getting up to speed.
So people will not have to learn how to type, they will just talk their
essays, etc. into their tablets.

I think that this may work fine for dictation, but right now I shudder at
the thought of modifying code that way.  But this is what the future is
supposed to be, or so we are being told ...

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Reeborg update

2014-11-24 Thread Laura Creighton
Well, getting the specs for an Ipad air is easy, any apple site has that.
And should Apple be as anxious to get ipads into Canadian schools as it
was to get them in Swedish schools, getting a ipad for you to test on
would just be a matter of calling your local apple rep and saying 'hey, I
want to test my educational software and get it to work on an ipad'.  If
things work over there the way you do here, you would get an ipad or 2
in the mail over the next few days.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Reeborg update

2014-11-24 Thread Laura Creighton
In a message of Mon, 24 Nov 2014 11:48:45 -0400, Andre Roberge writes:
>On Mon, Nov 24, 2014 at 11:41 AM, Christian Mascher <
>christian.masc...@gmx.de> wrote:
>
>>  Hi,
>>
>>  I went there in a recent chrome on a laptop with a fairly small screen and
>>> there are some rendering issues that make some of the controls unusable.
>>>
>>>
>> I noticed the same with Nexus 7 (android) and firefox. On the desktop Ctrl
>> + - usually makes things smaller and thus fit onto the screen (esp. editor
>> right next to the world, so the controls below the world are visible), but
>> on the android tablet that didn't help.
>>
>> These tablets are just to small for all the information and even firefox
>> is different compared to its desktop version.
>
>
>>From the beginning, my thinking was that anyone interested in doing some
>programming was going to use either a deskop or laptop with proper
>keyboard, etc., and thus a reasonably sized screen.
>
>Should I review this basic hypothesis?  If so, does anyone have an idea as
>to what minimum screen size I should be aiming to support?  I'm not ever
>planning to target tiny screens for smartphones and the like ... but if
>only relatively small adjustements are needed to support "typical" tablets,
>I could look into it.
>
>André

Children all over Sweden are getting ipads, ruggardized from the school
districts.  They are 240 x 170 mm, and apple has done a very good job of
convincing education officials that this is where the 'computer literacy'
money should be spent.  Some schools are bucking the trend and using Android
tablets instead.  They are typically '10 inch' screen but some '7 inch
screens' as well are being used.  The android market is fragmented, so what
a 10-inch screen really is, width and height-wise varies, as long as 10 inches
is on the diagonal, that is what they will call it.

And the current trend in cellphones is to grow them like crazy, so the
flagship models of a great many popular brands now support 6.5 inch screens.
(Indeed, it is a bit of a chore to find a very fast phone with a smaller
screen.  Since I already own a 7-inch android tablet, I would like things
much better if my phone could just stay a phone, and go back to the battery
length times we had before we had smartphones )  But I disgress.

At any rate, for use around here ipad support would be required, and if you
got things to work with a 7-inch screen a whole lot of other people would
be happy.

But that's just here ...

Laura
___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Looking back on OSCON XVI

2014-08-31 Thread Laura Creighton
In a message of Sat, 30 Aug 2014 18:13:21 -0700, kirby urner writes:
>On Sat, Aug 30, 2014 at 1:38 PM, Laura Creighton  wrote:
>
>> >In sketching out the Python ecosystem in broad brush terms, is it fair to
>> >say NumPy gets a lot of US investment whereas PyPy is more an EU pet
>> >project?  Or is that too broad brush?
>>
>> Too broad.  In investment terms, PyPy gets from _everywhere_,
>> including lots from the USA.  But PyPy core contributors are still
>> mostly from not-in-the-USA ... unless things have changed in the last
>> 6 months while I have been busy elsewhere.
>>
>> Laura
>>
>>
>OK.  I was partly asking because I know the US government is putting funds
>directly into Blaze:
>
>http://continuum.io/blog/blaze
>
>I don't know if the US government itself directly pays for PyPy
>development, but my impression is the EU itself does.
>
>Kirby

The EU has in the past.  But there hasn't been an EU grant proposal written 
for a while.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Looking back on OSCON XVI

2014-08-30 Thread Laura Creighton
>In sketching out the Python ecosystem in broad brush terms, is it fair to
>say NumPy gets a lot of US investment whereas PyPy is more an EU pet
>project?  Or is that too broad brush?

Too broad.  In investment terms, PyPy gets from _everywhere_,
including lots from the USA.  But PyPy core contributors are still
mostly from not-in-the-USA ... unless things have changed in the last
6 months while I have been busy elsewhere.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] https://www.python.org/success-stories/category/education/

2014-08-30 Thread Laura Creighton
In a message of Sat, 30 Aug 2014 10:02:34 +0100, "Nicholas H.Tollervey" writes:
>-BEGIN PGP SIGNED MESSAGE-
>Hash: SHA1
>
>On 29/08/14 22:33, Jurgis Pralgauskis wrote:
>> empty?
>> 
>> -- Jurgis Pralgauskis tel: 8-616 77613; Don't worry, be happy and
>> make things better ;) http://galvosukykla.lt
>> 
>> 
>> ___ Edu-sig mailing
>> list Edu-sig@python.org 
>> https://mail.python.org/mailman/listinfo/edu-sig
>> 
>
>There's no obvious way that I know of to allow us to change this. I
>presume there's a python.org web team somewhere who accept pull requests.
>
>I can think of many success stories (in the UK). Raspberry Pi,
>Education Track at PyconUK, RaspberryJam, Raspberry Jamboree, London
>Code Dojo, Reading Code Dojo etc etc etc
>
>N.

Good luck.

I think the only way to get changes now is to mail the private list 
psf-redes...@python.org.

Don't bother mailing webmaster, that's me (and some others) and we
cannot do anything, as we don't have the power to edit the site.  We
cannot read their private list, and they never mail anything to
webmas...@python.org, so we don't know what (if anything) is doing on.

My best informed (which admittedly is informed by the utter lack of
information) guess is that nothing is going on.

We've been forwarding such problems to psf-redesign for as
long as the new site has been up, and figure we might as well have sent
the lot to /dev/null.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Use of "badges" to encourage learning

2013-06-27 Thread Laura Creighton
You have to be really careful with this.  The overwhelming evidence is that,
most of the time, rewarding people for good performance makes them perform
poorly.

see: http://www.youtube.com/watch?v=u6XAPnuFjJc

If your badge system ends up as a reward system, then you will end up with
the same problems.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Teaching python at a Computer Clubhouse

2012-05-21 Thread Laura Creighton
In a message of Tue, 22 May 2012 08:54:47 +1200, Carl Cerecke writes:

>I'm thinking of becoming a mentor at a local Computer Clubhouse
>http://www.computerclubhouse.org/. In particular, there are some kids the
>re
>who are quite keen to learn to make their own games, but none of the
>current mentors know any programming (one said that he had done some
>"programming" in HTML).
>I would be grateful for any recommendations for material to help me and t
>he
>kids. I have plenty of programming experience and some teaching experienc
>e
>(at the university level, though). I've written some text-only turn-based
>games in python before (about the level of connect-4), but nothing with
>graphics. The idea is supposed to be that this is driven by the interests
>of the children, but I need to balance that with the requirement for a bi
>t
>of a programming foundation as well if they're going to be successful in
>writing the sort of games they're interested in. I also think I need to
>make sure their expectations are realistic...
>So, any advice/recommendations?
>
>Cheers,
>Carl.

How old are the members of the clubhouse?
If at all possible you should let kids group by interest.
Date of manufacture (birth date) is a rotten way to sort people and your kids,
like everybody else, will be happier if people are sorted by something
other than 'birth date'.

I steal regularly from
http://www.briggs.net.nz/snake-wrangling-for-kids.html

and given that the author is in NZ as well, he might have some insights
that are better shared in person. 

best of appreciation for what you are doing,
Laura Creighton
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Online Data Base of Dynamic Question

2012-05-21 Thread Laura Creighton


In a message of Mon, 21 May 2012 13:08:10 -0300, Raniere Gaia Silva writes:
>Hi,
>
>I was searching for a easily and quickly way to make math tests/exercises
>(I don't want a course management system like moodle 
> or
>webwork ).
>Since I didn't find any great solution I start to make one:
>http://smart-teacher.alwaysdata.net/
>
>would be interested in comments :)
>and in which other groups I could discuss it?
>
>Raniere

I have taken the liberty of posting this to testing-in-python.
Many testing frameworks already exist, and some of them -- Geoff Bache's
TextTest comes to mind -- may work to do what you want with minimal
tweaking.   But you will need to describe what it is that you want
to do.  Mostly we test python code here, but some of us have things
that deal with more arbitrary input.  And there is also Crunchy Frog
which might be adaptable.

Around here (TIP) we like use cases lots more than we like discussion of the
internal vision for the project, which means in describing what you
want, if you can say things like 'I want the teacher to provide X,
and when the student provides Q, the result Z is generated' we will
have an easier time of seeing if the frameworks we know and maintain
can be of use to you.  There are dozens represented here, all quite
friendly -- so you will not be able to narrow down your choice by
asking 'which is the best'.  The answer is always 'for whom? to do
what?'.

But I think customising something here will be a lot easier than writing your
own from scratch, especially if you have never done this before.


And even if our solutiuons are overkill for your problems -- well, you
will at least get to meet a nice group of people, many of whom have also
felt the itch to write their own frameworks, and who can talk about some of
the problems that await you.

best,
Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] transforming CS at Harvey Mudd

2012-04-04 Thread Laura Creighton
In a message of Tue, 03 Apr 2012 17:40:00 PDT, David MacQuigg writes:
>When I read the headline "Giving Women the Access 
>Code", I was worried that it sounded like a watered-down course for women.
>It's not that at all. It's the guys that need to change their
>attitude.

The guys may need to change their attitude, but the gals do too.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Using try / except: any stipulations against routine use?

2011-12-15 Thread Laura Creighton
In a message of Wed, 14 Dec 2011 23:01:54 PST, kirby urner writes:
>I happen to agree with your sentiments.
>
>I still think  mytally [ mykey ] =3D mytally.get ( mykey, 0 )  + 1
>is not "too clever".  I think it's rather "just right".  But sure,
>use defaultdict instead if you prefer.  Or try / except, even
>though it's more verbose.

We're going to have to disagree about this one being 'just right' then.

>> The problem is that, after a certain stage in language development, you
>> get beyond the point where every new feature you add is completely positi
>ve.
>> Instead, you are stuck with haveing to decide for or against a feature
>> that makes expressing 'this sort of problem' easier, and makes for clearer
>> and more readable code, but at the expense of making it possible to use
>> these constructs when dealing with 'that sort of problem', where the
>> result is poorly constructed, harder to read code. And that is the tradeoff
>> that is always there.
>>
>
>Maybe core Python should stop advancing.  Seriously.  Why keep going?
>
>It's a great language, 3 x best in show per LinuxJournal.  Quit while ahe
>ad?
>
>Lets have cool libraries but call it quits on adding to core Python.
>
>Is anyone taking that position, just for kicks?
>
>I know about the moratorium that happened for awhile.  Why not make it
>permanent?

Yes, this is pretty much my position. I don't think, in general,
we can improve Python by making any more changes to the core language,
and each change adds to the cognitive load we need to take on to
learn the language.  It used to take good employees 6 months to go
from 'this is my first Python program' to being good Python programmers,
and now it takes them longer.  I'm not sure how much longer, or how
we could go about measuring this, but I'd like to.

But, again, I'm in favour of putting Software Transactional Memory into
PyPy, and this will demand a syntax change.  If the benefits of using
STM happen -- we get to use our multi-cores for free -- then I think
this would be a good candidate for a core language change.  I hope that
we will end up with the construct:

with atomic:


see: 
http://morepypy.blogspot.com/2011/08/we-need-software-transactional-memory.html
for more details.

This is what I consider a new, very high level construct that would make
Python a more high-level language than it is today.  I'm vastly more
sympathetic towards language changes like this, as oppsed to language
changes of the 'grow a few more methods here and there'.  I think that
large new syntactical changes have to face much harder scrutiny, as to
whether or not they are beneficial.  But it's hard to argue against
adding this method, and that one in particular.  Each of them adds only a
tiny bit of cognitive load.  Thus I worry about the boiled frog effect.

The other thing I worry about is that many people, for whatever
reason, like making syntactic changes to programming languages.  I'm
guilty of this vice myself.  I think that everybody should design
computer languages, for fun, because there is a real joy in this.
(Just don't inflict the rest of the world with your shiny new
languages unless you really think that you have something new to
offer.)  What is worse, from this perspective, is that good number of
people are only interested in programming in languages where a good
number of syntax changes are happening all the time.  If the changes
stop happening, they abandon ship and move to another, more rapidly
evolving place.  Thus, even if we could reach consensus that Python
was more or less finished, there will still be pressure to keep making
changes (which some people would persist in calling evolving) out of
fear that we will loose these people.

I think that the nicest thing about the moratorium was how few people left
because of it, and that, when it was over there wasn't a huge surge in
pent up demand as people began agitating for hundreds of changes, those
they had been sitting on since the ban began.  This says to me that a
good number of changes are things that people really could and did live
without.  Or maybe those who only want to be using cutting edge languages
have jumped ship a long time ago, and are programming in Clojure or
something, and we just didn't notice.

>Wouldn't it be refreshing to have Python not evolve just so a lot more
>people could say they'd contributed a PEP?

I don't follow this.  I'm opposed to making changes in the language so
that more people can say that their PEPs were accepted, but I don't
think that this is what you were proposing either.

>If you really can't live with the limitation of Python being how it
>is, start a new language.

Yes.  This is what Dennis Ritchie used to say when people proposed changes
to C after a certain amount of time.  I think this was very good for C.

>Note:  I am mindful that PyPy provides many more freedoms and think halting
>the evolution of core Python would NOT inhibit people from forking off in
>all different
>directions w

Re: [Edu-sig] Using try / except: any stipulations against routine use?

2011-12-14 Thread Laura Creighton
In a message of Wed, 14 Dec 2011 18:12:57 PST, kirby urner writes:

>I'll take the opposite view for the sake of argument.
>I think returning a default if a key is not found is one of those
>workaday methods we thank Python for having, so we don't have
>to code up little mini-functions.  If you saw try /except over and
>over and each time it was the same thing:  some dict not having
>a key, so needing to initialize a tally versus incrementing,
>then pretty soon people'd be griping about why Guido didn't
>have the smarts to put something so basic in the dict toolkit.

If you are seeing this over and over, then it is time to reach for
defaultdict, no?  I've found that that often does produce what is for me
more readable code, and has the advantage of being very fast, too.

But your last sentence here bothers me too.  I think that 'smarts' and
'cleverness' are terribly overrated in society today.  It's not that
being stupid is an attractive option.  But often the alternative to
being _clever_ about something is being _wise_ about something.  So
the question, in that case, might not be 'why did Guido not have the
smarts' but 'Was Guido being wise here?'.  Is there a reason why this
sort of thing does not exist?

And, quite often, with questions of this sort you get the answer 'because
there really isn't a need to clutter up the language with XXX' -- and 
you can look up past discussions about features that aren't in Python
and see Guido saying exactly that all the time.

The problem is that, after a certain stage in language development, you
get beyond the point where every new feature you add is completely positive.
Instead, you are stuck with haveing to decide for or against a feature 
that makes expressing 'this sort of problem' easier, and makes for clearer
and more readable code, but at the expense of making it possible to use
these constructs when dealing with 'that sort of problem', where the
result is poorly constructed, harder to read code.  And that is the tradeoff
that is always there.

Blindly trusting that a feature that is in a language should be used whenever
it can be used, is not wise.  But if we have a language for grown-ups, which
relies on self-discipline, and indeed assumes that programmers have the
wisdom to use Python well, then, well, there is nothing for it but as
educators to try to promote wisdom.

Suggestions on better ways to do this are most welcome.  So far, being
somewhat disapproving of cleverness, and downright hostile towards
gratuitous cleverness is about the best I can do.  As well as sending
assignments back with the note -- refactor for redability -- which at
least gets people thinking beyond 'how to solve this'.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Using try / except: any stipulations against routine use?

2011-12-14 Thread Laura Creighton
In a message of Wed, 14 Dec 2011 14:36:43 PST, kirby urner writes:
>> Isn't this at least as readable, and conceptually simpler?
>>
>> if ext in res_dict:
>>res_dict[ext] += 1
>> else:
>>res_dict[ext] = 1
>
>I get that a lot too and often propose my one-liner.  This is not a
>matter of flagging a mistake, just showing another way.
>
>It's a chance to learn dict methods better and hey, they're paying to
>have a pro coach.
>
>Kirby

This looks suspiciously like 'I am a superior being because I know more
obscure methods that you do, and obscure knowledge defines the professional'.
Bleah.

By my standards, this is _unprofessional_.  Whenever you have the urge
to write code to show off how smart or how knowledgable you are, kick
yourself.  Professional code is meant to be read.  If you make the
general reader go off to the manuals to find out why something is
done, then you ought to have a darn good reason for doing it that way
than the way that everybody can read and understand.

Personally, I think that Python would be a much better language if it
had fewer of these sorts of methods, thus forcing people to use syntax
like Bert Freudenberg posted above, because the more obscure ways
aren't available.  Now we have to rely on personal self-discipline to
not use them, even when we know them, and a deep, unshakeable faith
that code is meant, first and foremost to be _read_, and read by
_everybody, not just the other 'experts' -- an expert being one who is
defined here as 'one who is well-steeped in Python obscurity as you are'.

If we loose the ability to read Python, because all the new graduates
are writing code that is hard to read as a matter of principle --
because they think it is superior, or a matter of ego -- because it
shows off their knowledge and maybe their cleverness, then I might as
well be reading any other language.  We'll have lost the primary thing
that I think makes Python valuable, via the 'boil-the-frog' principle.
http://en.wikipedia.org/wiki/Boiling_frog

I think as educators it is our job to make sure this does not happen by
teaching the appropriate self-discipline.  I'd like to send your top
students back their code with the comment, 'Great that it works.  Now can you
make it more readable?' I'd be looking for code like the above to replace
code like yours.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Using try / except: any stipulations against routine use?

2011-12-14 Thread Laura Creighton
I'm encouraging the use of try: except around here.  I think the 
distinction between 'routine' and 'non-routine' only makes sense if
exceptions are so terribly slower than the routine that using them for
routine use will have a terrible effect in slowness on your program.
It's like using:

string1 = string1 + newstring

inside a loop.

The reason you don't do this is not because there is something conceptually
wrong with this idea, but because it's horribly slow.  And if smarter pythons
recognise this, and emit fast code for it anyway, then that objection goes 
away, and then, well, it is a more straight forward way to code it.

So, if performance is not an issue, then I would recommend using try:
except: wherever it feels natural, and not let '20 years of knowing that
in java exceptions are horrible big and slow things to be used sparingly'
influence what feels natural.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] What do you use for making presentations of a scatterplot of data

2011-09-15 Thread Laura Creighton

I'd like to make a presentation where I have a series of
(informational) points to make, each of which is associated with a
cartesian (x, y) coordinate in a scatter plot.  (It's Charles Perrow's
graph from 'Normal Accidents' that plots 'coupling (from loose to
tight)' vs 'complexity of interactions'.  In the graph 'loose' is -y,
tight is +y, while complexity increases not from 0 to some maximum
value but from -x to +x.  This gives you a separation of data into 4
quadrants, which is how Perrow wants to talk about them.  So, ideally
I would like to show an empty x and y axis, then click the button of
my mouse, have one point show up, which I talk about for a bit, and
then with successive clicks I can add more and more points to the
graph.

I would have thought that software to do this was common, but either
I am picking the wrong words to search for, or this is not the case.
Are any of you doing this already? and in that case, what do you use?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Announcement: How to Think Like a Computer Scientist -- Interactive Edition

2011-08-26 Thread Laura Creighton
Wow Brad, this is really cool.  Have you given any thought to making
this work with Google Translate so that people whose native language
is not English can just use the thing? 

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] General Programming Education

2011-07-14 Thread Laura Creighton
In a message of Thu, 14 Jul 2011 23:20:06 EDT, Corey Richardson writes:

>a few said "Pfff, but python sucks. It's too simple". Is it just me, or 
>should simplicity be a Good Thing? 

It is not just you.  I think these people may be members of the
'misery loves company' crowd.  ``It was hard for me to learn it, so it
had better be hard for you, too.''  Or the ``suffering builds
character'' crowd.  Or the ``programming is an elite business -- we
wouldn't want just anybody doing it´´.  Possibly they just hate
fun, and get annoyed at the idea that it might be fun to program in
Python.  I've met all of the above.  Pity their students.  Of course,
some just have too optimitic a view of the human condition.  They
reason that there must be something good about all the complexity of
java -- even if it is not obvious to them - or else we would have
stopped using it already.  They just need a lesson in the inertia
of human institutions.



>Any other insights?

Python already has a lot of very nice data types.  The dictionary is a
wonderful thing.  People should _use_ them.  Many people who have been
taught the OOP religion automatically refactor every dictionary they
find into a class with attributes, because they think that this is in
some way 'better'.  This is dead wrong.  If you refuse to use the very
high level abstractions out of your VHLL, and only stick to the Low
Level abstractions, then you might as well be programming in a LLL
such as Java.  That some of your colleagues apparantly did not
recognise that the reason that Python is simpler is because it is a
VHLL -- because simplicity in expressing ideas in the hallmark of a
VHLL -- does not speak very well for them.

Laura

>Corey Richardson

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] Robots -- this showed up in pypy-dev today

2011-06-28 Thread Laura Creighton
I'm still not sure what they used pypy for.

Laura
--- Forwarded Message

Replied: Tue, 28 Jun 2011 09:34:39 +0200
Replied: lac
From: Andres Aguirre 
To: pypy-...@codespeak.net
Cc: Jorge 
Subject: [pypy-dev] butialo activity

Hi to everyone.
There's a new activit, I hope that most of you will enjoy, it's called
Butialo (http://activities.sugarlabs.org/en-US/sugar/addon/4457)
Butialo is a IDE based on PyPy that allows programming the Buti=E1 robot
(http://www.fing.edu.uy/inco/proyectos/butia/)
with Lua. Lua is a very fast, powerfull and easy to use language. The
IDE provides autodetects the configuration of your Butia robot, and
provides snippets of code showing how to read sensors and do stuff.
Best regards

- -- =

/\ndr=E9s
___
pypy-dev mailing list
pypy-...@python.org
http://mail.python.org/mailman/listinfo/pypy-dev

--- End of Forwarded Message

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] this is interesting

2011-06-08 Thread Laura Creighton
In a message of Tue, 07 Jun 2011 21:51:31 PDT, michel paul writes:

>>> def f(n, history = []):
>  history.append(n)
>  return history



>
>What's a good way to explain what's going on?
>
>- Michel

Assuming that you have already taught about the difference between
mutable and immutable objects, ask the student to make a different
version, with the signature

def f2(n, history=())

and see if that gives the expected result.

Then get the student to _explain to you_ what's the difference between
tuples and lists that could result in this difference in behaviour.
This will move the discussion one of two ways.  Either to "why using 
default values for mutable objects in function signatures is almost
never what you want to do, and a discussion of what we can do about
this (use sentinels)" :-) or "lists are a bad idea, use tuples for 
everything" :-(.  If you are in conversation 2, you need to detour
through 'then why do we have a list datatype?  What is it good for?"

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] looking for explanations... globals dynamic dict

2011-03-28 Thread Laura Creighton
In a message of Tue, 29 Mar 2011 13:27:20 +1300, Carl Cerecke writes:
>Yes. You are right. But so was I (on the second time around):
>
>a=1
>b=1
>
>a and b could refer to the same object or different objects with the same
>value. It depends on implementation details. I agree here.
>
>a=1
>b=a
>
>a and b refer to the *same* object here regardless of implementation.
>Massimo said they were different, because b+= 2 doesn't change a. That
>statement is incorrect.
>
>That's really all I was trying to say. I wasn't trying to be philsophical
>about Platonic singleness in the universe or whatever.
>
>Cheers,
>Carl.

Ok.  I still found the way you said that confusing. Sorry about that.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] looking for explanations... globals dynamic dict

2011-03-28 Thread Laura Creighton
In a message of Tue, 29 Mar 2011 11:49:08 +1300, Carl Cerecke writes:
>--20cf307abcff67e7bc049f92c049
>Content-Type: text/plain; charset=ISO-8859-1
>
>Yes. Laura, you're correct. I'll try again:
>
>Massimo was trying to say that after:
>a = 1
>b = a
>
>b and a refer to *different* 'one's because changing one of them (b += 2)
>doesn't change the other.
>
>This isn't true. They refer to the same 'one' object (regardless of pytho
>n
>implementation). b += 2 doesn't change the 'one' object, but simply point
>s b
>to a 'three' object.
>
>There. How's that?
>
>Carl.

Incorrect, I think.  When I am talking about 'the same 'one' object',
what I mean is not some sort of philosophical one-ness, some Platonic
ideal of one, which like all the numbers, is a singleton, wherever it
occurs in the universe.  I mean something much more concrete than
that.  Somewhere in my computer are addressable pieces of memory, and
in those locations are values.  When I say that two variables are
bound to the same object I mean they refer to that exact same piece of
memory right there.  (We will ignore, for the purpose of this
discussion, issues related to garbage collectors that move objects
around.  Because its the job of the gc writer to make sure that after
the collection happens, all of those references to the old memory
location all point to the new memory location.  So the location is
different, but the property that all variables bound to the same object
get the same location in memory remains true.)

Consider what happens when your memory goes bad.  Stray alpha particle, or
(more likely) just a bad bit of memory.

I've typed:

>>> w = 1
>>> y = 1   
>>> z = 1

suddenly, a bit of memory goes bad, the chunk that w is bound to. Instead
of containing 1, it contains 2.

What happens?
Well, in CPython, w is now bound to the value 2.  So is y and z.  And
I will bet that CPython will fall over and die a horrible death.  All
the places where it internally uses the value '1' will get the wrong 
value.  But this is an implementation detail.

But in PyPy, when the chunk that w is bound to goes bad, y and z, which
were bound to entirely different pieces of memory, still have good values
in them.  Assuming that w is not something that PyPy uses internally, it
is entirely possible that things could go on seemingly fine.  Should w
be in the code you typed at an interactive PyPy interpreter, you may be 
amazed and perplexed when you type:

 w = 1  # that memory location goes bad right now!
 w + w
4

Not the result you expected.  You'd complain pypy was broken, and if
it kept happening (i.e. it was a bug, not bad memory) you'd be correct.

---
What I think you are trying to say is that you cannot change the values of
immutable objects.  Which is very true. (Barring disasters with bad memory
and alpha particles and the like.)  But this has nothing to do with how
many immutable objects share the same value.  It has to do with the fact
that you cannot mutate immutable objects.  

 a = 1
 a = 2
 a = "horseradish"

All I have done is changed a's bindings.  No walking out to memory, making a
chunk of it mean '1', and binding a to it, then walking about again, finding
the same bit of memory, and scribbling on it so it means '2', and then
walking out and scribbling on it to mean 'horseradish'.  That doesn't
happen.  

as opposed to:

 a = [1]
 b = a
 a.append(2)
 b
[1, 2]

a.append(2) really did walk out into memory, find the bit that a was bound
to, and scribbled on it so that where it once said [1] it now says [1, 2]
Since b is bound to the same bit of memory, it changes too.

Laura






___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] looking for explanations... globals dynamic dict

2011-03-28 Thread Laura Creighton
In a message of Tue, 29 Mar 2011 09:59:40 +1300, Carl Cerecke writes:
>Well, not really. Although I see what you are trying to say.

>numbers (like strings) are immutable. There can ever be only one number 1
>You can't change a number to something else. If add 5 to 3, the number 3
>doesn't change, I get a new number, 8.

This is merely an implementation detail.

Python 2.6.6 
Type "help", "copyright", "credits" or "license" for more information.
>>> w = 1
>>> y = 1   
>>> w is y  # this might surprise you
True

[PyPy 1.4.1] 
Type "help", "copyright", "credits" or "license" for more information.

 w = 1
 y = 1
 w is y # or are you so used to CPython that this surprises you?
False

You can have as many number ones as you like.  In CPython they are
cached to be the same object, but you shouldn't rely on that behaviour.
It's actually pretty dodgy to test the object identity on immutable
objects -- unless you want to surprise people like I tried to.

Incidentally

Python 2.6.6 
Type "help", "copyright", "credits" or "license" for more information.
>>> w = 5234
>>> y = 5324
>>> w is y  
False

so after a certain point, the CPython developers have decided that the
performance gains of cacheing all number xs as the same x isn't worth
it.

Laura


___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] looking for explanations... globals dynamic dict

2011-03-28 Thread Laura Creighton
In a message of Mon, 28 Mar 2011 11:19:45 PDT, kirby urner writes:
>--===091573==
>Content-Type: multipart/alternative; boundary=20cf303b3f9bfa4ea5049f8efcd

>What I less understand is why g isn't just a *snap shot* of what was global
>at the time globals( ) ran.

Because you didn't bind g to a copy of the global dictionary at time t.
You bound it to the global dictionary itself.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] PSF Brochure - call for submissions

2011-03-13 Thread Laura Creighton
In a message of Mon, 14 Mar 2011 03:52:26 +0100, Laura Creighton writes:
>I'm at pycon. Michael Sims of Nasa and the mars robots says he would be
>appy to be in the brochure.  Nothing was said about piday.  I forgot

s/appy/happy/  (Michael Sims is not French)

>all about it.  If you go to freenode and join #pycon you may catch
>sprinters interested in the challenge.  Now me, tonight, at any rate.

s/Now/Not/

>I am exhausted and must sleep.

that ++


>
>Laura
>___
>Edu-sig mailing list
>Edu-sig@python.org
>http://mail.python.org/mailman/listinfo/edu-sig
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] PSF Brochure - call for submissions

2011-03-13 Thread Laura Creighton
I'm at pycon. Michael Sims of Nasa and the mars robots says he would be
appy to be in the brochure.  Nothing was said about piday.  I forgot
all about it.  If you go to freenode and join #pycon you may catch
sprinters interested in the challenge.  Now me, tonight, at any rate.
I am exhausted and must sleep.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Which shell to use

2011-03-11 Thread Laura Creighton
This can be fun to use - or at least I assume the 3.x version is as
much fun as the 2.x version.  

http://ipython.scipy.org/moin/Python3

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] UnitTest?

2011-02-26 Thread Laura Creighton
In a message of Sat, 26 Feb 2011 10:28:58 MST, David MacQuigg writes:
>In my opinion, the unittest framework is way too cumbersome for an 
>introductory course.  Doctests are simple and self-explanatory.  
>Students should get in the habit of writing a doctest for every function 
>they write, even before the function itself is written.

I think this is a reason to use py.test or nose rather than unittest,
but not a reason to use doctest.  I'm very fond of Mark Pilgrim's Unit
testing chapter in Dive into Python
http://diveintopython.org/unit_testing/index.html  (2.x)
http://diveintopython3.org/unit-testing.html   (3.x)

which is easy to adapt to a less verbose testing framework.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] UnitTest?

2011-02-24 Thread Laura Creighton
The children I have taught have had absolutely no problem with py.test.
They wouldn't have had problems with nose, either.  unittest is a bit
wordy for them.  And as far as I am concerned, unless you happen to
need to test the formatting of your documentation, you shouldn't be
using doctest at all. 

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] End of 2010... Happy \N

2011-01-02 Thread Laura Creighton
In a message of Sun, 02 Jan 2011 17:48:52 +0100, Fernando Salamero writes:
>
>>  Will the better Python IDE emerge?  Wing?  Komodo?
>
>What about the new open souce Ninja-IDE?
>
>http://ninja-ide.appspot.com/

Thank you.  I hadn't heard of that one before.  Do they have any 
documentation anywhere? I couldn't find it on that site.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] more card play

2009-11-03 Thread Laura Creighton
In a message of Tue, 03 Nov 2009 18:37:54 PST, Edward Cherlin writes:
>On Mon, Nov 2, 2009 at 22:20, Laura Creighton  wrote:
>> In a message of Mon, 02 Nov 2009 20:27:35 PST, Edward Cherlin writes:
>>>Cards: You are right on the merits for combinatory math, but you will
>>>run into strong cultural aversions.
>>
>> Why?  Especially when _dice_ seem to be the preferred way to teach
>> this stuff?  (Or is this only here?)
>
>I'm including the rest of the world, not just the US. I expect issues
>to be raised by Evangelical Christians, Muslims and others in various
>countries. Dice might be easier, because casting lots is mentioned
>with approval in the Bible. Certainly we can come up with equipment
>that is not associated with common taboos.
>
>> Laura

I wasn't clear, sorry.  Around here (Sweden), when you want to teach
probability, you get out the dice.  That's how it is taught, and
how all the exercises are set up, etc.  I'm really surprised at
the notion that cards would be unacceptable, while dice would be
fine.

I know some people who would be strongly against both, seeing both
as gambling devices, and I know some people who every year are
opposed to the dice and who would find cards unobjectionable.
I hadn't thought that people who like dice but hate cards exist.
Do you know some?  Or are you guessing that they must exist?  And
if the latter, why?

Do you use something else to teach probability?

still puzzled,
Laura 
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] more card play

2009-11-02 Thread Laura Creighton
In a message of Mon, 02 Nov 2009 20:27:35 PST, Edward Cherlin writes:
>Cards: You are right on the merits for combinatory math, but you will
>run into strong cultural aversions.

Why?  Especially when _dice_ seem to be the preferred way to teach
this stuff?  (Or is this only here?)

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Practice Programs/Problems

2009-10-28 Thread Laura Creighton
In a message of Wed, 28 Oct 2009 15:15:31 -0400, Kristin Baaki writes:
>--===2029537282==
>Content-Type: multipart/alternative; boundary=001485f6cc72512f6b0477039e5
>3
>
>--001485f6cc72512f6b0477039e53
>Content-Type: text/plain; charset=ISO-8859-1
>
>Hi All,
>
>I was hoping someone could recommend a book of practice programs/problems
>.
>I've been creating all my class exercises and large programming projects 
>on
>my own and at times I've run out of ideas.  If someone could point me in 
>the
>right directions I'd appreciate it.
>
>Thank you in advance,
>
>Kristin

I get lots of good stuff, and more ideas about how to make more
good stuff here:
http://www.uselesspython.com/

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Python for Philosophers

2009-10-28 Thread Laura Creighton
I think that a course in Epistemology that ended up in Bayesian
logic and probability would be pretty cool.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Summarizing some threads (KIrby again)...

2009-10-23 Thread Laura Creighton
A problem arises when one has to learn new material.  For many of us,
actually writing the material down makes us retain it better.  And for
me, at any rate, writing it down in longhand works better for the
memorisation of facts than typing things in.

I wish I knews of studies of retention like that.  I'd really like to
know why it is that this is so, in order that we can make sure we do
not cheat our students of the tools they need to learn things.  It is
complicated by the fact that people differ in this matter, from the
people with eidic or near eidic memories, who don't understand why
people need tricks to learn how to memorise things, to people who can
remember things that they read easier than things that they wrote, to
people who can remember neither of those well, but do remember the
spoken voice well.  Why are we like this?  Has anybody figured this
out yet?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Fwd: Archives of messages?

2009-10-22 Thread Laura Creighton
A freind of mine put searching into his mailmain archives.
see: http://infothecary.org/jordan/mailman.html

If you click on the link to lbo-talk there you can see how it works.
It looks as if it would only search one year at a time; this is a
mistake, just play with it and see.  

I'd sort of like to get this kind of functionality into mailman, but
i never have the time to get around to it.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Elevator Demo for Python

2009-10-05 Thread Laura Creighton
In a message of Mon, 10 Aug 2009 18:58:10 CDT, Phil Wagner writes:
>--===1754152315==
>Content-Type: multipart/alternative; boundary=001485f80f0aa9546d0470d25bc
>3
>
>--001485f80f0aa9546d0470d25bc3
>Content-Type: text/plain; charset=ISO-8859-1
>Content-Transfer-Encoding: 7bit
>
>Often I am asked for a quick demonstration about the power of Python,
>sometimes for people with no computer science background.  . What can I s
>how
>them that doesn't take too much time but gets the point across that Pytho
>n
>is a good fit for math/education?
>
> Phil

list comprehensions are the single thing that 'do it' for people around
here.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] casino math, ooops sent this only to Gregor not the list

2009-09-13 Thread Laura Creighton

In a message of Sun, 13 Sep 2009 15:21:12 +0200, Gregor Lingl writes:
>
>Laura Creighton schrieb:

>This pattern does not occur in my sample configuration:
>
> (   (11,  6,  2,  1),
> (11, 10,  4,  1),
> ( 9,  2,  6,  3),
> ( 9,  4,  8,  3),
> ( 7, 12, 10,  5),
> ( 7, 12,  2,  5),
> ( 5,  8,  4,  7),
> ( 5,  6, 12,  7),
> ( 3, 10,  8,  9),
> ( 3,  2,  6,  9),
> ( 1,  4, 10, 11),
> ( 1,  8, 12, 11),
> (13, 13, 13, 13),
> (),
> ())
>
>it has only even ranks in the second and third column, occurring
>pairwise in these columns, and odd ranks in the fourth one.

I don't think that it is a matter of being dealt them, sorry to
be unclear.  I think you may have to make them and then break
them.  So now it is not clear to me if your algorithm handles that.

>I do not have a special algorithm to solve Pile On, but only search
>the game tree using backtracking. Normally that gets out of hand.
>The point is that I believe to have found one *special* layout that
>can be investigated completely by hand, because due to its
>symmetries there occurs only a very limited set of possible moves.

Indeed, and thank you very much for it! :-)

>I think, that still some labour is needed to retrace my arguments.
>But if you are convinced (or only strongly believe) that I am wrong,
>you have an easier way to proof it: simply solve the configuration
>given above (and possibly show me, that resolving those patterns
>you displayed above is needed to do so.)

Yes indeed, and while I am quite busy this week, I will try to do
so.  Right now I am trying to hack PySOL-FC so that you can
input a starting configuration of cards, and also save each state
change so that you can replay a game that you have won.  But
today is not a day for hacking for me, so this will take me a
while to do.

>Very thrilling!

Glad to know the problem is keeping somebody else up thinking about
it too! :)

Best,
Laura

>
>Regards,
>Gregor

--- End of Forwarded Message

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] casino math (unit three) (Saturday night fever)

2009-09-13 Thread Laura Creighton
I have to think about this more, but on a very quick first reading it
seems that you have missed a strategy that I have needed in order to
solve some tough PileOn games.

And that is breaking up groups of 2 or 3 that you already have built, or 
dealt.  Given these 3 piles to start with

A B X X
C D X E
F G X B
(and then some more)

the correct way to solve things may be to put E and B in the empty
slots, take one X  from the first pile and put it on the second
and take the other and put it on the third.  Then move the B
from the empty slot back to pile one.  The same thing has also
been needed when piles are

A X X B 

as well.

Does your algorithm handle that, or does it assume that things that
are stuck together belong together?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Forgot password

2009-09-08 Thread Laura Creighton
Go here:
http://mail.python.org/mailman/listinfo/edu-sig

Down at the bottom of the page there is a button that says:
'unsubscribe or edit options'.  Stick  ejstrassber...@cps.edu
in the blank field in front of that, and click the button.

You will get a page that starts by asking for your password, which
you don't have.  But on the bottom of the page it says
'Password Reminder' and a button to click that says 'Remind'.
Click on that.

You will get your password sent to you.

Then you repeat the whole thing again, except this time on the second
page, fill in the password that you were mailed, and then click on
the unsubscribe button.  Then wait for more mail.  It will tell you
to go to some automatically generated web page and click on that
to really unsubscribe.

Then you are done.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] generic open source projects...

2009-09-05 Thread Laura Creighton

>What I need to find out before going too far with this is:
>
>(a) do we already have exactly what I'm seeking as a public project?

Not that I know of.  And given that after 'I want to make a game' this
is the number 1 thing that children I meet want to learn programming
to do -- find out when their favourite websites change so they won't
miss anything but don't have to go there every day, I would predict 
that this project would have a lot of mass appeal.  But I think 
that Ian Bicking has written and released code that would be
useful.

>(b) will I be able to find schools that want to turn students loose on
>this scaffolding?

No clue.  But I would have a hard time finding non-university schools
interested around here.

>(c) are we looking at a real project like on Sourceforge, or just a
>set of interconnected examples that feature aspects of Python?

Well, I would like to make the buzz bot understand something like
'other language plugins' from the start.  Maybe we need some 
linguistic-trained people? or would just a good sampling of people
who speak other languages from the onset work?

>This proposal is in part a response to Laura's CP4E work on the
>Diversity list.  She's been suggesting that a primary barrier to
>increasing diversity is simply the daunting time demands, the somewhat
>austere culture of half-moribund bug trackers and dev lists (some of
>these are more like sunken shipwrecks) -- scares people away,
>especially people who "have a life" outside of being uber-nerds.

Ah, in context, I think this scares them away from Python Core Development;
I am sure that there are other projects which have other reasons
that are the primary reason for lack of diversity.

>The fancier buzzbots fork into multiple Python worker bee processes
>that each harvest and file to SQL independently, with a Dispatcher
>(queen bee) keeping track of open searches, handing them off to
>available processes.  I published some manga code to the Chicago user
>list awhile back, haven't tried to dig for it yet...

Speaking of manga - an image-scraper-and-recogniser would be awesome.
But I don't know how to write one of those, at all.  Wonder who does?

Laura

>
>Kirby
>___
>Edu-sig mailing list
>Edu-sig@python.org
>http://mail.python.org/mailman/listinfo/edu-sig
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] casino math (unit three)

2009-09-01 Thread Laura Creighton
In a message of Wed, 02 Sep 2009 03:29:36 +0200, Gregor Lingl writes:
>Laura Creighton schrieb:
>> In a message of Mon, 31 Aug 2009 22:23:55 PDT, kirby urner writes:
>>
>> 
>>
>>   
>>> On break, we encourage playing with Pysol maybe...
>>>
>>> http://www.pysol.org/
>>> http://pysolfc.sourceforge.net/
>>> http://tktable.sourceforge.net/tile/
>>> http://pygames.sourceforge.net/
>>>
>>> Kirby
>>> 4D
>>> 
>>
>> I think that the pysol game 'Pile On' is always solvable.
>> Anybody know for sure?  Writing a program that exhaustively creates
>> all the possible layouts and then solves them seems possible, 

>Hi Laura,
>I fear that this is not  practicable.  There are 52! =
>80658175170943878571660636856403766975289505440883277824
>permutations of 52 cards. If one considers the permutations of the 13 pil
>es
>as equivalent and also the permutations of the four suits one still 
>arrives at a number
>of possible Pile On games that exceeds by far the number of nanoseconds 
>that passed
>since the beginning of the universe.

I don't think that it is quite as bad as all that, given that all we
really have is a set of 52 cards which are 4 sets of 13 cards with
different marks on them.  Thus there is a significant reduction you
can make at the start because an initial set where all the 8s are
swapped for all the 4s are equivalent.

But then, I wasn't really looking for the brute-force proof, but the
elegant one.  I was hoping for an induction proof for 4 sets of 4
cards, n cards, and n + 1 cards, but so far I haven't managed it.

>Yes, I would also be interested in such a proof. I for my part learned 
>to know Pile On
>only today and I find it rather difficult to play. So from my own very 
>irrelevant
>experience would expect that there are start configurations which might 
>not be solvable -
>--- at least for me :-(

Don't believe the strategy that pysol gives about not stacking 3 cards
of a same rank on a single.  As far as I can tell that is nonsense.  But
do keep track of what cards are on the bottom.

>Thanks for the deverting hint
>Gregor

You are most welcome. :-)

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] casino math (unit three)

2009-09-01 Thread Laura Creighton
In a message of Mon, 31 Aug 2009 22:23:55 PDT, kirby urner writes:



>On break, we encourage playing with Pysol maybe...
>
>http://www.pysol.org/
>http://pysolfc.sourceforge.net/
>http://tktable.sourceforge.net/tile/
>http://pygames.sourceforge.net/
>
>Kirby
>4D

I think that the pysol game 'Pile On' is always solvable.
Anybody know for sure?  Writing a program that exhaustively creates
all the possible layouts and then solves them seems possible, but
I keep thinking there has to be a more elegant proof in there.

rules here for those unfamiliar with the game (googling for 'Pile
On' seems to generate a myriad of false positives).

Pile On
One-Deck game type. 1 deck. No redeal.

Begin:
The game begins with 13 piles of 4 cards, ina random order, plus 2 empty piles.

Goal:
Rearrange the cards so that each pile contains four cards with the same rank.

Rules:

Cards can be moved on top of any other card or cards of the same rank,
or to empty piles.  Groups of cards can be moved if they are of the
same rank.

A pile cannot have more than four cards, and an empty slot can be
filled with any card or group of cards with the same rank.

___

So, simple.  But always solvable?  I am not sure about that.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Significant drop in CS interest in high schools

2009-08-28 Thread Laura Creighton
In a message of Fri, 28 Aug 2009 19:07:53 CDT, Jeff Rush writes:



>I'd love to get into the head of some of these decision makers - what
>wierd view do they have of CS?  They must imagine it being some luxury
>topic, some elective nice to have like Italian for advanced students but
>not something of basic literacy for all students.
>
>There is a difference between "this is what every citizen should know
>about computers/tech to understand the rapidly changing world around
>them" and "vocational training to become a professional programmer".
>
>-Jeff

When I lived in California, 15 years ago, I met some of these people.
I was fighting the removal of art classes from a high school.  I
showed up with a team of 5 commercial artists, all of whom were
willing to teach art, for free, after school.  And they wanted to
teach things like photoshop, too.  I was prepared for the school
admins not understanding why photoshop would be a useful thing to
learn.  What I wasn't prepared for was their complete and total
misunderstanding that it was possible to make a living by being an
artist.

They had art == hobby == superfluous and nothing was going to change
their minds about that.  They were proud of the fact that they were
discouraging people from taking art, and now finally preventing them
from wasting their time with this nonsense by killing the classes
altogether.  It was really depressing.  And they really weren't
going to listen no matter what we said.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] [EuroPython] Joel Spolsky wants Python speakers

2009-08-01 Thread Laura Creighton
In a message of Sat, 01 Aug 2009 21:59:51 -, Luke Kenneth Casson Leighton w
rites:
>On 8/1/09, Laura Creighton  wrote:
>>
>>  Me again.  Just found out that 2 of the cities for devdays are
>>  cambridge and amsterdam.  Some of you lot that thought you weren't
>>  interested may think again ...
>
> london is a third one.

Thanks Luke.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] [EuroPython] Joel Spolsky wants Python speakers

2009-08-01 Thread Laura Creighton

Me again.  Just found out that 2 of the cities for devdays are
cambridge and amsterdam.  Some of you lot that thought you weren't
interested may think again ...

Laura

In a message of Sat, 01 Aug 2009 12:30:57 +0200, Laura Creighton writes:
>
>Some of you may be interested.  I just forward this, and haven't even
>viewed the links ...
>
>Laura
>
>--- Forwarded Message
>
>Return-Path: psf-members-bounces+lac=openend...@python.org
>Message-Id: <8581978c-7fb1-48e3-906f-ba36b1562...@gmail.com>
>From: Ted Pollari 
>To: PSF Members List 
>Cc: advoc...@python.org
>Subject: [PSF-Members] Stack Overflow's Dev Days Looking For Python Speak
>ers
>
>
>Anyone interested in representing Python or at least in pointing Joel  
>Spolsky in a good direction?
>
> From the transcript of the Stack Overflow Podcast at:  https://stackover
>flow.fogbugz.com/default.asp?W29071 
>  :
>
>"""Spolsky:  I have a request of our listeners if you're listening to  
>this show. We're trying to organize these stack overflow dev days and  
>I've found alot of good speakers on alot of good topics but what I  
>really want is some Python speakers. People to do a python tutorial in  
>each of the ten cities and I don't have any Python speakers lined up  
>at all and I don't really know who the good Python teachers and Python  
>tutors are. So if you've ever gotten a Python tutorial in person or  
>you've heard somebody speaking on Python who you thought was  
>absolutely brilliant and fun to listen to and taught you alot in an  
>hour. Which is what we want to happen at the stack overflow dev days.  
>Could you please tell me who they are? and what their name is and even  
>where they live? and do that by emailing that to devd...@stackoverflow.co
>m 
>  which is our standard dev days address for any kind of dev days  
>question about dev days."""
>
>
>___
>PSF-Members mailing list
>psf-memb...@python.org
>http://mail.python.org/mailman/listinfo/psf-members
>
>--- End of Forwarded Message
>
>___
>EuroPython mailing list
>europyt...@python.org
>http://mail.python.org/mailman/listinfo/europython
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] Joel Spolsky wants Python speakers

2009-08-01 Thread Laura Creighton

Some of you may be interested.  I just forward this, and haven't even
viewed the links ...

Laura

--- Forwarded Message

Return-Path: psf-members-bounces+lac=openend...@python.org
Message-Id: <8581978c-7fb1-48e3-906f-ba36b1562...@gmail.com>
From: Ted Pollari 
To: PSF Members List 
Cc: advoc...@python.org
Subject: [PSF-Members] Stack Overflow's Dev Days Looking For Python Speakers


Anyone interested in representing Python or at least in pointing Joel  
Spolsky in a good direction?

 From the transcript of the Stack Overflow Podcast at:  
https://stackoverflow.fogbugz.com/default.asp?W29071 
  :

"""Spolsky:  I have a request of our listeners if you're listening to  
this show. We're trying to organize these stack overflow dev days and  
I've found alot of good speakers on alot of good topics but what I  
really want is some Python speakers. People to do a python tutorial in  
each of the ten cities and I don't have any Python speakers lined up  
at all and I don't really know who the good Python teachers and Python  
tutors are. So if you've ever gotten a Python tutorial in person or  
you've heard somebody speaking on Python who you thought was  
absolutely brilliant and fun to listen to and taught you alot in an  
hour. Which is what we want to happen at the stack overflow dev days.  
Could you please tell me who they are? and what their name is and even  
where they live? and do that by emailing that to devd...@stackoverflow.com 
  which is our standard dev days address for any kind of dev days  
question about dev days."""


___
PSF-Members mailing list
psf-memb...@python.org
http://mail.python.org/mailman/listinfo/psf-members

--- End of Forwarded Message

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Pycon organizers is now talking about poster sessions

2009-07-31 Thread Laura Creighton
In a message of Fri, 31 Jul 2009 21:52:26 +0200, Gregor Lingl writes:
>
>
>Laura Creighton schrieb:
>> I think it would help if an actual teacher got involved before they
>> decide what teachers want without consultation ...
>>
>> Laura
>>
>>   
>Hmmm, don't know what to do with this. Seems to be a reply to some postin
>g.
>Ok, I'm a teacher, but I definitely do not belong to the circle of 
>pycon-organizers ...
>
>I think it would be helpful if you posted the original to EduSig?
>
>Best wishes,
>Gregor
>> ps -- unfortunately you have to subscribe to read the archive.  I have
>> no idea why.  http://mail.python.org/mailman/listinfo/pycon-organizers
>> ___
>> Edu-sig mailing list
>> Edu-sig@python.org
>> http://mail.python.org/mailman/listinfo/edu-sig

There are lots of notes by now.  And that is the unfortunate part,
you have to subscribe to read them.  Plus the whole list is in an
uproar as part of discovering that PyCON lost a bunch of money this
year.  But since I know some people on this list have strong ideas
about how a poster session at pycon should be organised, I thought
it was time to put the word out that now is when such things are
being discussed.

The initial article was mine.  I said that I would like PyCON better
if there was some way to get a track of 'what have you been doing
lately'.  The sort of talks that would not get accepted to PyCON
because they are not polished enough, or not of interest to a large
enough segment of the community.  Somebody suggested posters, and
the whole topic took off from there.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] Pycon organizers is now talking about poster sessions

2009-07-31 Thread Laura Creighton
I think it would help if an actual teacher got involved before they
decide what teachers want without consultation ...

Laura

ps -- unfortunately you have to subscribe to read the archive.  I have
no idea why.  http://mail.python.org/mailman/listinfo/pycon-organizers
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] classroom layout (DM and/or CS)

2009-06-22 Thread Laura Creighton
In a message of Mon, 22 Jun 2009 13:25:03 PDT, kirby urner writes:
>I've got this thread going with holdenweb re the ideal classroom
>configuration.

Since price is no object, get yourself a rear projectoin interactive
copyboard.  See: http://www.mirandanet.ac.uk/ftp/whiteboardguide-mirandanet.pdf

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] mentions of Py on Math Forum....

2009-06-06 Thread Laura Creighton
What kind of money are you looking for to replace your laptop?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Overloading (was Re: more on "variable names")

2009-05-27 Thread Laura Creighton
p.s.

Here is a test to see if your students understand about binding, or if
they are walking around with it confused with equality.

>>> class Animal:
... def __init__(eyecolour, sound, action):
... self.eyecolour = eyecolour
... self.sound = sound
... self.action = action
...
>>> cat = Animal('green', 'miaux', 'pounce')
>>> dog = Animal('brown', 'woof', 'wag')
>>> vlerb = Animal('green', 'miaux', 'pounce')


Now go ask them if what they think

vlerb == cat

will print.

This is an easier place to clear up the misunderstanding than the first
time they start passing mutable objects as defaults to a function or a
method, which is where my classes in the past have tended to blow up
with this sort of misunderstanding.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Overloading (was Re: more on "variable names")

2009-05-27 Thread Laura Creighton

I no longer think that the problem is that the '=' symbol is overloaded.
I now believe that the problem is that when we, as teachers teach Python,
we read a = b as
'a equals b'

and if we forbid that language usage of the word equals, and always said
'a is bound to b'
instead, then, in students who are learning their first programming language
and don't come with C baggage, the problem will not arise, in much the
same way that using * for multiplication does not cause a problem.

So far this has worked, by my experiment has only been performed with 6
students so far -- hardly a large enough experiemental set.  And the
experiment is flawed because it is still quite difficult for me to stop
saying 'equals', so I still use the forbidden words every so often.
Telling the sudents they can point and make faces at me every time I
slip up does wonders for improving me.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] What version of Python to teach ....

2009-04-19 Thread Laura Creighton
In a message of Sun, 19 Apr 2009 14:25:29 PDT, Edward Cherlin writes:
>No, I'm suggesting that an introductory course on Python 3.0 can make
>use of converted and lightly massaged code, and ignore Python 2.x
>until students have wrapped their minds around one version. Computer
>Science students are not necessarily interested in commercial
>programming, and may never need to learn 2.x. People learning Python
>in order to write their own programs, ditto. The original question was
>how to get enough educational examples in Python 3.0.

But the ability to read code is not something that should be left to
commercial programmers.  Unless you are at an age where reading itself
is problematical, there is no better way to become a better programmer
than to spend an hour a day reading other people's well-written code.
This 'how to read code' is something that belongs in everybody's
Introductory course, and it is something that we are going to have to
pay special attention to these days, if you are teaching Python 3.0,
rather than assuming that students will learn how to read code just by
following your teaching exercises.  The code that you are likely to
assign to students as reading assignments, and the code (aside from
the Python interpreter and the standard library itself) that they are
likely to want to read will be 2.x code.

>For the larger problem of converting existing 2.x libraries and
>applications in order to have more 3.0 to read, that will solve itself
>in the normal course of events. See Guido's advice.

>http://docs.python.org/3.0/whatsnew/3.0.html

This assumes that the creators of 2.x programs intend to move their
old code to 3.0.  For a large fraction of the existing programs out
there, this simply will never happen.  It has been a long time since
these programs were in active development, they are stable, and nobody
wants to go around poking a hornet's nest with a stick if they don't
have to.  The importance of lessons in 'how to read 2.x programs' may
diminish as time goes on, but I predict that it will never go away
altogether.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] What version of Python to teach ....

2009-04-19 Thread Laura Creighton
In a message of Sun, 19 Apr 2009 12:49:17 PDT, Edward Cherlin writes:
>On Sun, Apr 19, 2009 at 12:07 PM, Laura Creighton  wrote:
>>
>> One note:
>> It is very important to teach your students how to read code.  I think t
>hat
>> this is even more important that teaching them how to write code -- not
>> only will they spend more time reading code than writing code in their
>> lives, but it is through reading other people's code that you can learn
>> any technique for writing code.  (Well, that, and a whole lot of practic
>e,
>> but a certain amount of reading of code every day can cut down on the
>> number of things that you have to learn by doing.)
>>
>> There isn't a lot of Python 3.0 code out there to read.  So even if you
>> are only teaching your students how to write 3.0, you will still have t
>o
>> teach them how to read 2.x.
>
>I wonder how much of that is needed. You do need to teach them how to
>convert 2.x code to 3.0,
>but in many cases this is not too burdensome.
>
>http://www.comp.leeds.ac.uk/nde/papers/teachpy3.html
>
>The Python 3.0 distribution comes with a refactoring tool called 2to3,
>intended to assist with the translation of Python 2.x code to Python
>3.0. The tool operates on stdin, individual files or an entire
>directory tree. It writes a unified diff patch for each .py file to
>stdout, and a summary of which files needed changes to stderr. With
>the -w command line option, it will create a back-up of each file and
>then apply the patch to the file.
>
>An an experiment, we tried running the 2to3 tool provided in the third
>alpha release of Python 3.0 on the collection of example programs used
>in our first-year programming lectures [10], using the -w option to
>apply the patches. The tool took 47.2 seconds to process 147 .py files
>[11] and changed 77 of them (52% of the total).
>
>In 80% of cases, the changes involved console I/O only and no manual
>intervention was required to produce satisfactory code. In 5% of
>cases, 2to3 produced code that ran correctly but was redundant in some
>way.
>
>(A conversion example follows).
>
>It would be interesting to go through this collection of examples
>used in teaching 2.x, and find out how much of the new code just
>works, and what are the remaining issues. This might be the basis for
>a book.
>
>> Just thought I would mention it before I forgot,
>> Laura

You are suggesting that students will need to learn how to use a refactoring
tool before they can sit down and read a piece of pre 3.0 code for
pleasure and edification?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] What version of Python to teach ....

2009-04-19 Thread Laura Creighton

One note:
It is very important to teach your students how to read code.  I think that
this is even more important that teaching them how to write code -- not
only will they spend more time reading code than writing code in their
lives, but it is through reading other people's code that you can learn
any technique for writing code.  (Well, that, and a whole lot of practice,
but a certain amount of reading of code every day can cut down on the
number of things that you have to learn by doing.)

There isn't a lot of Python 3.0 code out there to read.  So even if you
are only teaching your students how to write 3.0, you will still have to
teach them how to read 2.x.

Just thought I would mention it before I forgot,
Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Considering Python for an algebra course

2009-04-14 Thread Laura Creighton
Depending on where you live, you might want to go to EuroPython.
http://www.europython.eu/  We will be having a tutorial for people who
are new to Python before the conference.  That may be of interest as well.
(now back to approving talks and sending out acceptence letters, so
that people like you can find out what we are going to have ...)

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Math in a Browser

2009-04-07 Thread Laura Creighton
Somebody wants something 'like matlab' but which is browser based
and all runs in a browser.  I know about http://www.livemath.com/lmplugin/
What else is out there?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Mail features (was Re: Fwd: Do we "teach computers" when we write code?)

2009-04-07 Thread Laura Creighton
In a message of Tue, 07 Apr 2009 16:06:26 PDT, kirby urner writes:
>>> Seems like you'd have to be able to pick out a list from all the
>>> others, which means persisting a list of lists, which may be more
>>> trouble than it's worth?
>>
>> You mean if the message is crossposted to multiple lists? Well then, I
>> just use Reply to All.
>>
>
>Oh I get it.  I didn't remember that mailing list is part of the
>header, and so it'd be unambiguous what 'Reply to List' really meant.
>I was thinking Gmail would somehow have to pick "just the list" out of
>the from: part of the header, where it might be mixed with any number
>of personal addresses.  Google already lets us filter on mailing list,
>so replying to it and only it makes sense as an option.  Good idea.
>
>Kirby

The other thing that makes sense as a command is 'absolutely, positively,
reply only to the from: address totally ignoring the reply-to: line'.
Then you can stop using the reply command altogether, unless you 
communicate with people who want their email to be received in a different 
account than the one where they are sending it from, and who are using 
RFC 2822, as designed, to indicate where they want incoming mail to them
to go.  These people, and I used to be one of them, are a vanishing breed
now anyway, because enough reply-to: munging lists out there have left
them high and dry.

Does Google mail have one of those?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Fwd: Do we "teach computers" when we write code?

2009-04-07 Thread Laura Creighton
In a message of Tue, 07 Apr 2009 11:09:36 PDT, Edward Cherlin writes:
>There is a long-running rwar between those who think that mailing
>lists should have a reply-to set to the mailing list address, and
>those who think that replies should go to the previous sender by
>default. Is it worse that mistakes result in private replies going to
>the list (big-endian) or list replies going to an individual
>(little-endian)? 

Much worse when private replies go to a list.

>You still have to be able to remember what you are
>doing. What _I_ want is a menu item clearly labeled "Reply to List".

Many mailers have one of these.  Writing one is not hard, what mailer
are you using, and is the source available?

Laura

>> the sum of the first and last number is 1+n; and then divide by two.
>
>You can do this in preschool with Cuisenaire rods.
>
>> And then to have the students try to represent a similar problem, and
>> to check their answer against the formula, and THEN to have them do a
>> set of practice problems, that might be teaching.
>>
>> If the computer were able to understand the story about young Gauss,
>> then we could teach it. Instead, we can use it to confirm that the
>> formula seems to work (because computers can add numbers in the
>> fashion that Gauss' elementary school teacher expected just as fast as
>> we can apply the formula),
>
>+/i.100
>
>0.5 * (] * (] + 1))
>
>> and we can show that using the formula is
>> still faster for the computer than actually summing the list, but no,
>> we are not teaching the computer.
>
>I still say that even though the computer is not learning, children
>writing programs have the same impact on their learning _as if_ they
>were teaching.
>
>> Perhaps if the computer were then able to, of its own volition, wonder
>> what we would get if we were to sum consecutive squares, then we could
>> teach it. As hard as it is to get students to wonder about things,
>> it's even harder to create that state in computers.
>
>There are theorem-proving programs, and I know of an instance in which
>one was turned loose and came up with a novel proof in geometry (of a
>well-known theorem, of course.) Still, one shouldn't make too much of
>an isolated incident.
>
>> -Lloyd
>>
>> On Mon, Apr 6, 2009 at 18:05, kirby urner  wrote
>:
>>> I'm wondering what others on this list think of this non-standard use
>>> of "teaching" when talking about programming a computer.
>>>
>>> The authors say we're "teaching" the computer
>> ___
>> Edu-sig mailing list
>> Edu-sig@python.org
>> http://mail.python.org/mailman/listinfo/edu-sig
>>
>
>
>
>-- 
>Silent Thunder 
>(默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر
> ج) is my name
>And Children are my nation.
>The Cosmos is my dwelling place, The Truth my destination.
>http://earthtreasury.net/ (Edward Mokurai Cherlin)
>___
>Edu-sig mailing list
>Edu-sig@python.org
>http://mail.python.org/mailman/listinfo/edu-sig
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Progamming advice. (Was: Why MIT switched from Scheme to Python)

2009-04-06 Thread Laura Creighton
In a message of Mon, 06 Apr 2009 16:50:09 EDT, Gary Pajer writes:
>But to clarify:  I've been programming in python for about six years, alo
>ng
>the way abandoning Matlab in which I was a local go-to guy.   By the way,
>I've also adopted Traits and the Enthought Tool Suite, which IMHO might
>possibly be the future of practical laboratory programming in python.  So
>I'm comfortable enough with the nuts and bolts of OOP.   But higher level
>questions like what to make a function, what to make a class, what to mak
>e a
>module, how best to factor it all out, when to decimate a long routine in
>to
>a bunch of shorter ones, 

That last is telling.  It could indicate where your problem is, which is
that you tend to put too much stuff, and the wrong stuff, in a routine.


>how best to organize input, computation and outp
>ut
>(Traits' MVC architecture helps there), how to think about designing for
>reuse, how to reuse what's already available, when does sub-classing make
>sense, when do exceptions make sense...  and so on and so on.
>
>My current habit is to start coding somewhere and keep patching things on
>till it does what I want.  Imagine building a house starting with "I know
> I
>need at least one upright piece of lumber.  I'll put it here.  I need
>another to hold it up.  Then another set over here, and a horizontal one
>over there...".   I wouldn't want to live in the resulting house.  My cod
>e
>... the resultant code is hard to follow, hard to document,  hard to exte
>nd
>or change, and probably slower than it might be, and I wouldn't want to l
>ive
>in that, either.   When I try to plan my code the way I might plan a hous
>e,
>I soon find myself swimming in possible ideas, going in circles with
>different plans, having disparate approaches in different parts of the
>program, etc.
>
>I'm wondering if some wizard has written a guide to program structure
>paradigms for the intermediate programmer.  Or perhaps this kind of thing
> is
>actually taught in books somewhere...

If your problem is 'I have way too many fiddly bits' then what your problem
may be is that you don't know enough useful data structures, and you need
some.  A data structures course (and there are textbooks for this) will
help.  And they can give your code some needed all-over structure.  Just
learning to think in data structures will help your ability to write code
in any case.

But your problem may be 'I don't have enough fiddly bits' -- and it sounds
like that from your description.  It sounds like while you are writing code,
and solving one bit of the problem you start thinking about a different
problem, and stick that solution in there, just as you are writing.  This
will result in pieces of code that are very hard to refactor, debug, 
document and test, and with bugs due to subtle dependencies in addition.

Or you could be truly blessed and have both problems at the same time.

If your problem is the second, then the best thing to do is to practice
test-driven development.  Write the test first.  Then only write enough
code to make the test pass.  Then write another test.  and so on and
so forth.  By making the tests really small, you can limit the size of
the routines that you are making.  And by having to write the test first
you will get a little more perspective on where in your existing code
it should go.  So you get fewer 'I put it here because that was
what I happened to be writing at the time' problems.  Finally, if you
catch yourself having brilliant ideas and wanting to race off and code
them 'before I forget' .. then TDD will improve things a lot for you.
Because writing the test is usually a whole lot easier than writing
the code, and if you can get your brilliant idea down in a test, then 
its a lot safer for the rest of your code.  Lots of errors happen in
this business because one is not paying attention to the code that one
is actually typing down at the moment, but are instead listening to
your inner voice design the code that you will be typing in 10 minutes,
or 10 hours.

If I were you I would go over to
http://diveintopython.org/toc/index.html
and work through the examples in sections 13, 14, and 15  which introduces
unittesting, test first programming, and refactoring.  See if it makes
you feel any different.  If you aren't used to test first development, it
will be hard for a while, but persevere, it is worth it.

Martin Fowler's Refactoring: Improving the Design of Existing Code
may be worth a read, too.

Good luck!

Laura

>
>-gary
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] thoughts on edu-sig HTML page

2009-03-31 Thread Laura Creighton
Maybe what we need, more, is a list of who is on the list who is
teaching courses in python.  If we did this in a wiki, and asked people
to put a date by their names we could mitigate the problem of 
wikis going stale a bit.  (They's still go stale, but at least
you would get some sort of warning when you looked something up.)
Combining this with 'what they have to share' and 'what they are
looking for' and 'what their specialties are' might make this a
useful list.

just an idea,
Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Order of operations confusion

2009-03-05 Thread Laura Creighton
In a message of Thu, 05 Mar 2009 15:19:52 MST, Charles Cossé writes:
>On Thu, Mar 5, 2009 at 2:52 PM, Laura Creighton  wrote:
>> In a message of Thu, 05 Mar 2009 12:51:40 MST, Charles Cossé writes:
>>
>> The interesting question (to me at least) is whether he would be willin
>g
>> to rewrite a + b + c  as a + c + b
>>
>> and then if he would be willing to rewrite
>> a + b as a - (-b)
>
>
>
>
>Yes, I confirmed that it was definitely due to having been repeatedly
>told the simple rules for order of operations; he observed that "there
>was something to be multiplied" and believed that he couldn't proceed
>until he had carried out that multiplication, which immediately led to
>a gridlock situation for him ... and he would have been okay rewriting
>like you did there since there was no multiplication.  Guess it's just
>one of those many things that you don't realize kids think until you
>come across it ... and then it's a surprise
>
>Charles


I'm teaching 10 and 11 year olds here in Sweden, but over the summer
holidays or on weekends in optional classes.  I am always curious as to how
the rest of the world teaches things.  Can you ask him for a favour
for me and see if he would be willing to accept that:

82 + (15 * 10) - 51

is the same as

(15 * 10) + 82 - 51

or if the * is really stopping him cold.

And thank him very much for me for answering my question, if he is 
willing.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Order of operations confusion

2009-03-05 Thread Laura Creighton
In a message of Thu, 05 Mar 2009 12:51:40 MST, Charles Cossé writes:

>So, the equation we were dealing with was something like:
>82+b*c-51=d-13, and the thing that surprised me was that he didn't
>think it was legal to take 82-51 before having dealt with the b*c term

I suspect that he thinks your notation is sloppy, and you should have
written this as 82 + (b * c) - 51 

The interesting question (to me at least) is whether he would be willing
to rewrite a + b + c  as a + c + b

and then if he would be willing to rewrite
a + b as a - (-b)

Can you ask him?  How old is he, anyway?

Laura



___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] CTL: Computer Thinking Language

2009-03-03 Thread Laura Creighton
In a message of Tue, 03 Mar 2009 15:27:28 MST, David MacQuigg writes:
>At 10:00 AM 3/2/2009 -0800, michel paul wrote:
>
>>Before I discovered Python a couple of years ago I was experimenting wit
>h a pseudo-code approach for expressing math concepts.  I had this kind o
>f stuff in mind:
>>
>>factorial(n):
>>if n < 2 ---> 1
>>else ---> n*factorial(n-1)
>
>I like the feeling of action in --->, but I also like the self-explanator
>y "return".  Any other suggestions?  Strong preferences?
>
>We could use a symbol other than = for assignment, just to avoid confusio
>n with the comparison operator and to introduce the idea of variables as 
>labels, not containers.  How about:
>
>a2 --> a**2
>a --> b --> c --> 0

Datapoint: the children I was teaching how to write games have all had
terrible problems with arrows.  Whenever I tried to use them to indicate
anything there was this large mental thud.  So my suspicion is that this
will make things harder, rather than easier.

In explaining things I found that words worked best.

and the words that worked were:

'is bound to'


Just my 2 kronor,
Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] CTL: Computer Thinking Language

2009-03-01 Thread Laura Creighton
I think the whole idea of 'not a programming language' is flawed.  If
you want to teach concepts in this fashion --- and I think this is a
great idea -- you want to teach 'how to use an interpreter' (you
are using an interpreted language) and some sort of Test Driven
Design (which you do not have to teach explicitly) if you have something
like py.test or nose available.

Otherwise what you have given yourself is a lot of marking to do, and
you are stuck with the same problem that troubles math teachers --
(unless they are teaching from Kirby's Pythonic Math exercises, or
something.)  You give your kids an assignment, and they don't
understand it, and get it wrong.  You reteach the principles, and
try again.  The nice thing about proramming is that it doesn't have
to be taught this way.

"Here is an acceptance suite.  Bash on your program until it passes."
is a perfectly acceptable way to go.  And this changes your class from
math class (where there are correct answers and wrong answers, and
hated by those who seem always to get the wrong answers) to programming --
where all running programs are in some sense 'correct' -- they just need
to be completed, or to have some bugs removed before they correctly
solve the assignment. :)  This notion is incredibly liberating to some
people.

I get the distinct idea that the authors of this paper are functional
language fans, and what they are looking for is a way to get to
Haskell or ML or something like that.  This is 'programming as
mathematical proof'.  But I don't think that programming is actually
like that.  I think that the idea that a person needs to invest 10,000
hours in an activity to become very good at it (which seems to work
for learning a sport, or learning how to play a musical instrument)
seems to work for programming as well.  I won't argue for the
10,000 -- but just that if you want to get better at programming,
then what you need to do is practice doing it more.  Filling yourself
with more advanced concepts will not, unfortunately for those of us
who are good at filling ourselves up with concepts, change the fact
that you need to practice writing programs to improve at writing
programs.

I think this analysis misses this point, and then tries to get around
it by saying -- well, we don't actually care if the students learn to
program, only that they learn the concepts behind programming.  But
I think this is exactly backwards -- the way you should be teaching
the concepts behind programming is with an interpreter.  Thus you
need to teach them a tiny bit of programming _first_ and not second.

And more and more I think that Kirby is correct.  You should teach
math with an interpreter, too.

On a related note -- a friend of mine has given his 6 year old son
a linux system on a laptop to play with.  It is a hit.  But now the son
wants a book that explains how the linux operating system works. :)
Anybody have a reference that is suitable for children?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Experience with projecting student screens?

2008-08-14 Thread Laura Creighton
In a message of Thu, 14 Aug 2008 08:31:56 PDT, "kirby urner" writes:
>I wonder if anyone on edu-sig has experience in classrooms that allow
>switching any student's screen to become the projected screen, even
>dividing up the projected screen among students (as in some Xbox
>games).
>
>I find students don't always like having their privacy disturbed nor
>the big brother feel, but understand multi-user game play.



>
>Kirby

My limited experience with this is that it makes a big difference if
this is set up so that students can decide to show their own work on
the big classroom screen, rather than having you as the teacher
expose them to the whole class in a manner out of their control.

I have seen such systems be completely abused by the students and
turned into a way for the good students to excessively brag about
their accomplishments to the other good students, and ridicule and
heap scorn on those having difficulties.  'Welcome to the shark
tank', indeed.  Of course discipline has to pretty much have gone
to hell before such experiments in cruelty become institutionalised,
but if you do the 'travelling lecturer' bit, you may be unfortunate
enough to run into such situations.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] looking for references

2008-07-26 Thread Laura Creighton
In a message of Sat, 26 Jul 2008 10:11:39 CDT, "Daniel Ajoy" writes:
>> I am looking for a study I used to know which demonstrated that
>> the introduction of a grading scheme had a damaging effect on the
>> ability of educators to actually teach students.  Anybody got
>> some references lying around?
>> 
>> Laura
>
>
>Punished by rewards
>
>
>Daniel

Thank you!

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] looking for references

2008-07-25 Thread Laura Creighton
I am looking for a study I used to know which demonstrated that
the introduction of a grading scheme had a damaging effect on the
ability of educators to actually teach students.  Anybody got
some references lying around?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Python and Robots

2008-06-14 Thread Laura Creighton
And http://www.thinkgeek.com/geektoys/rc/9df0/ was a hit at last
year's Europython.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Python and Robots

2008-06-14 Thread Laura Creighton
In a message of Sat, 14 Jun 2008 13:34:17 +0200, Jan Ulrich Hasecke writes:
>This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
>--===0071348944==
>Content-Transfer-Encoding: 7bit
>Content-Type: multipart/signed; protocol="application/pgp-signature";
>   micalg=pgp-sha1; boundary="Apple-Mail-2-1060340619"
>
>This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
>--Apple-Mail-2-1060340619
>Content-Transfer-Encoding: 7bit
>Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed
>
>Hi,
>
>I found pyro and want to know if there is any active development for  
>pyro. The developer list stops on May 2007.
>
>Is there anybody using pyro with real robots?
>
>Are there any other projects around to play with robots and python?
>
>juh

I know people who are using this:
http://packages.ubuntu.com/sv/hardy/python-playerc

Laura


___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy

2008-06-09 Thread Laura Creighton
In a message of Mon, 09 Jun 2008 09:18:45 -0300, "Andre Roberge" writes:
>>>I think both topic and length/level of difficulty would be useful.
>>>But I think the first thing will be to set up such a wiki.
>>>
>>>Does anyone has any suggestions as to where we could do this?
>>>
>>>André
>>
>> Why not use wiki.python.org?
>>
>
>This would seem to be the sensible choice.  However, we'd have to have
>the administrators of that site agree to "upgrade" the wiki MoinMoin
>server by adding the Crunchy parser (when it is completed).
>
>
>André

I am pretty sure that will not be a problem.  We stuffed some
changes into wiki.python.org to accomodate Europython, so I cannot
see any reason why you shouldn't get what you want, as well.
Post to the PSF mailing list to make sure?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy

2008-06-09 Thread Laura Creighton
In a message of Mon, 09 Jun 2008 07:26:55 -0300, "Andre Roberge" writes:
>2008/6/7 Andrew Harrington <[EMAIL PROTECTED]>:
>> The archive sounds good Andre!
>>
>> I would like to suggest that the home page of such a wiki ask submitter
>s to
>> put examples under folders for particular categories, either adding to
>> existing ones or creating new ones where needed.  Also wikis search for
>> pages based on categories.  We might agree on some basic terms to use i
>n
>> categories.  One group might be based on level of difficulty  or length
> 
>>
>
>I think both topic and length/level of difficulty would be useful.
>But I think the first thing will be to set up such a wiki.
>
>Does anyone has any suggestions as to where we could do this?
>
>André

Why not use wiki.python.org?

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Question about Python - Social Networking Software

2008-04-25 Thread Laura Creighton
In a message of Fri, 25 Apr 2008 09:26:58 EDT, =?UTF-8?Q?Ivan_Krsti=C4=87?= writ
es:
>On Apr 25, 2008, at 8:49 AM, csev wrote:
>> Should I just use DJango with a few modules?  I worry that DJango is  
>> too much of a Mambo-clone
>
>Mambo is a content management system. Django is a framework for  
>writing web applications with particularly nice support for writing  
>content management systems. You're confusing the two; you can't just  
>"use Django". I recommend looking at something like Plone (<http://plone.
>org/ 
> >).
>
>--
>Ivan Krstić <[EMAIL PROTECTED]> | http://radian.org

But Plone, like all content managment systems which use the
'publish/approve' method are organisation-centred.  So you might be
happier just using a wiki such as moinmoin.

http://moinmo.in/

Laura Creighton
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] introduction

2008-03-20 Thread Laura Creighton
In a message of Thu, 20 Mar 2008 21:49:39 -0400, Richard Enbody writes:
>We randomly assign within assigned labs -- the labs have 16-20 
>students.  We assign within labs because there is a time, the assigned 
>lab, when students can meet.  That is, the excuse "we couldn't meet" is 
>not valid.  On a subsequent assignment we roll the dice again within the 
>lab and ensure that the same two do not pair up again.  If a partner is 
>a 'no-show' we allow them to match with anyone else who is also paired 
>with a 'no-show'.   We have considered various matching schemes, but if 
>I remember correctly, random is supposed to be the best way -- as 
>opposed to trying to match students.

16-20 is considered oversize if you want to get everybody pairing with
everybody, so I would partition my class into 3 groups of 6 or 8
(or maybe 2 groups of 8 for the 16 case), and then build a rotation schemee
for each group, not getting the groups to interpenetrate.  Random isn't
exactly what you are looking for.  When people say that it is better
to partner randomly, what they mean is that you need a mechanism to 
keep people who like working together from doing just that.  But simple
randomness isn't going to ensure that everybody gets to pair with everybody
unless there are a really large number of sessions for 'changing pairs'.

I've got some more questions:

How long do you have to work with these people?  How long is a lab,
and how many rotations do you try to fit into a lab? and How long
is a course, and how many labs in a course?  How much work do you
expect people to do on the programs outside of lab time?  Are the
labs self-contained, or do they build on each other's work?


>We know about the 'driver' and 'thinker' roles and that the students 
>should change roles.  We talk about it with students, but do not try to 
>enforce it.

I've always had problems with that concept -- or rather, with the idea 
that the 'driver' is the one doing the typing, and the 'thinker' is
the one doing the watching.  Some students I know think a lot better
when they are typing than when they aren't.  Some students who aren't
typing pretty much dictate what the typer is going to type.  So I don't
know if I am just doing something wrong, or if the model is unrealistic.

>I like your model, but it would be difficult to implement here -- too 
>many students have too much going on (unfortunately, for many that is a 
>job to help them get through school).

I have this problem, too, which is why we mostly can only experiment
with things like that in Summer courses, and camps, where you are
trying to pack what would normally be taught in 4 months or 8 months
into 2.  And still there are some people who cannot make the time.

>On your question about not having marks -- that isn't an option.  On 
>your question, 'what if 85% got 85%?' That would be great!  Our grading 
>scheme is not competitive -- if you get the points, you get the grade.  
>In theory, everyone could get a 4.0 (A).  My understanding is that you 
>need such a scheme for pair-programming to succeed.  However, with 
>enough students we seem to get a spread out distribution.

This is an indication that your weaker students aren't catching up
enough.  The question is, why?  If you are trying to get rotation
through groups of size 16 or 20, that is probably one contributing
factor.  If the assigment runs out before the students who began
working on it can get back to it for a second pass, while having done
other things in the meantime, then that is another factor.  There are
others I have seen, and some I have only heard about, such as trying to
do pair programming and not doing test driven design.  Are you doing
that, as well?

>These questions have got me thinking!

Great. :-)

>
>-rich
>[EMAIL PROTECTED]

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] introduction

2008-03-20 Thread Laura Creighton
 teams.

Is it possible to do without marks altogether and just do Pass/Fail?

What sort of rewards and punishments you are required to implement will
influence how well you can get pair programming to work for your goals,
which I am interpreting primarily as raising the level of the weaker 
students, which may be a mistake on my part.  When I was in school
'picking the best people to form an assignment team' (which you
were then stuck with for the whole course) was the most important choice
you could make in terms of getting the highest marks, and all the best
students, who by second year, _knew_ they were the best students, had
no interest in having anybody who wasn't one of the best students in
their group.  

>I do need to get to PyCon and other Python venues, but travel funds are 
>an issue.  Here, the only travel funds are what you generate on research 
>grants, and since none are related to Python I cannot use them.  I need 
>to be more creative.  :-)

The PSF has a grant program, designed with people like you in mind.

I don't know if we are going to have a pair programming clinic at
Europython this year, but watch the Europython space and see what
gets announced. http://www.europython.org/community  Europython has
a grant program as well, and there was some talk of having the PSF
possibly fund some people's travel to Europython.  



>-rich
>[EMAIL PROTECTED]

Good luck, and I can write a whole lot more about this, but
I suspect this is already long enough,

Laura Creighton
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Kirby from Pycon

2008-03-16 Thread Laura Creighton
In a message of Sun, 16 Mar 2008 22:41:36 +0100, Gregor Lingl writes:
>kirby urner schrieb:
>> Greetings from Pycon.
>>
>> I've mentioned this list to numerous people at this
>> conference.  As I said over dinner (hotel buffet),
>> I think we have enough talent around this table
>> to bring off the revolution (OK, a little short on
>> details -- probably why we all seemed to agree).
>>
>> As we disperse, I encourage those of us already
>> here (at the conference and on this list) to keep
>> reaching out to the contacts we've made.  Lots
>> of cool cosmic fish will slip through our nets if we
>> don't (as some will even if we do -- such is life).
>>
>>   
>Hi Kirby,
>
>what do you think about xturtle? Is it cool? Cosmic? A fish ;-)
>Will it slip through our nets?
>
>I read your blog entries and regret not to have been there. It was
>impossible for me this year, but I consider to manage to attend
>PyCon 2009, (if some financial support would be possible from
>somewhere ;) ) Let's see.
>
>Looking forward to more from you, later
>
>Gregor

The PSF provided financial aid to attend pycon this year and intends to keep on
doing this.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Pycon 2008

2007-12-21 Thread Laura Creighton
Just looking in, it sounds as if what the high school students might
like is a Sprint.  Get to pair program with real python programmers.
Build something.  Learn stuff.  No conference fee needed, no requirement
to eat catered lunches.

What do you think?

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


[Edu-sig] Skolelinux wins Scandinavian Free Software Award

2007-12-09 Thread Laura Creighton
http://mail.fsfeurope.org/pipermail/press-release-sv/2007q4/26.html

(Skol/Skole == School)

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] OLPC G1G1 sales start today

2007-11-13 Thread Laura Creighton

Paul: look at 
http://www.gapminder.org/

see the videos.  Ted 2007 in particular.

There is no 'developing world' /developed world split any more.

Laura who did not have time to readx all you wrote, but
that caught my eye.  Its not simply condescending to refer to
them as the developing world -- because they excell in non-monetary
things, its condescending because they have largely caught up in monetary
things and you apparantly haven't noticed, like most people.

Laura


In a message of Mon, 12 Nov 2007 18:48:33 EST, "Paul D. Fernhout" writes:
>Paul D. Fernhout wrote:
>> For a more typical home user, especially one who does not already know 
>and
>> like GNU/Linux, I'm not sure if it would meet expectations in the devel
>oping
>> world as other than either as special purpose device (like used as an e
>book
>> reader or robot controller) or alternatively, for a family who buys sev
>eral,
>> as a family activity to use some of the built in "connectivist" softwar
>e
>> (either what is there now or what might be speculatively available in t
>he
>> future). 
>
>That should have read "in the developed world", meaning like the USA. And
> I
>really should not be using "developed" / "developing" as they are loaded
>terms (even though the OLPC project uses them too), since there is a lot 
>the
>USA can learn from other countries, including poor ones, some of whom ran
>k
>higher in overall happiness in various surveys -- here's a different one:
>  http://worlddatabaseofhappiness.eur.nl/
>
>On using Java/Jython and the OLPC:
>  "Pepper on the OLPC"
>   http://www.pepper.com/linux/olpc.html
>"A technology preview of a special version of the Pepper environment is n
>ow
>available for the One Laptop Per Child (OLPC) XO laptop. This version of
>Pepper for OLPC runs on the XO laptop and replaces the standard Sugar
>environment while retaining the XO's Fedora-based Linux distribution. ...
>The Pepper environment is written primarily in Java, though it includes o
>pen
>source components like Mozilla and Java that are written in C or C++. The
>Pepper application framework supports Java, C, C++, XUL, HTML, etc. We're
>also working on adding Python support soon. ... We'll be making the sourc
>e
>code for the Pepper for OLPC environment available soon. We're planning t
>o
>release it under an LGPL license. We'll also be sponsoring an open source
>community to maintain the Pepper for OLPC environment."
>
>Using Pepper (if it is indeed released under the LGPL as announced above)
>,
>which is an environment built in Java and including JVM 1.5, I hope I can
>run Jython on the OLPC. I'll have to try it and see. Maybe the Pepper peo
>ple
>do not know about Jython? Of course, software written there in Jython is 
>not
>going to run on the regular OLPC environment (which is CPython+pyGTK).
>
>An informative pro-OLPC post at Slashdot:
>  "Worth Careful consideration"
>  http://hardware.slashdot.org/comments.pl?sid=357665&cid=21325111
>An excerpt: "While you can certainly waste time and goof off on the web,
>there is also a wealth of instructional material, learning material, free
>encyclopedias, and help of all kinds to be had on message boards. Childre
>n
>could learn, for example, methods of improving local sanitation,
>agricultural techniques, and health information which could end up saving
>the developed world millions or billions of dollars in humanitarian aid.
>They could also learn other languages which could open up entire worlds t
>o
>them. Even if they didn't have the internet, they could learn how to
>program, how to compute, make art, photographs, drawings, and a whole bun
>ch
>of other stuff with it. Not to mention the fun factor. It's not an
>educational panacea but it WILL change the world. "
>
>And as another slashdot poster says, you can't buy that many paper textbo
>oks
>for $200, especially compared to what you can cram into 1GB of Flash (or
>even more if you get the files from local servers and delete old ones). A
>nd
>paper books have their own problems in areas of high humidity (mold, chew
>ed
>by rodents, fade in the sun, etc.). I think a lot of the economics that
>governments are considering for deploying OLPC have more to do with
>replacing plain old paper textbooks with a single laptop than any of the
>issues of connectivity or simulation or learning to program which are mor
>e
>the sorts of things we think about for computers in, say, the USA or Euro
>pe,
>where we pretty much take purchasing textbooks and access to local librar
>ies
>of tens of thousands of printed books for granted. Still, even for USA
>schools, OLPCs may make sense if they save money on textbooks. So, USA
>school districts could save money of textbooks (if they were free, as in 
>here:)
>   "Global Text Project – Wiki Textbooks"
>   http://slashdot.org/article.pl?sid=06/09/05/230201
>   http://globaltext.org/
>(or even just at direct author royalty cost) and kids get Python and
>educational simulations thrown in as a bonus. Plus, they 

Re: [Edu-sig] python for kids...

2007-11-11 Thread Laura Creighton
In a message of Sun, 11 Nov 2007 11:09:47 EST, Jay Bloodworth writes:
>On Sat, 2007-11-10 at 19:04 -0600, Michael Tobis wrote:
>> I agree that the concept of a "variable" is deeply unpythonic in most c
>ontexts.
>> 
>
>But it's pretty darn programmatic.  I think overemphasizing python idiom
>and ontology in a first programming course is a mistake.  Variables,
>subroutines, loops, conditionals - these are a few of my favorite
>things.
>
>I've never really taught programming, but my intuition, based on ten
>years experience teaching algebra and prealgebra to middle school
>students, is that they will "get" the idea of variables with any
>reasonable explanation: boxes, labels, names, whatever.  Certainly, many
>will have difficulty understanding scoping, reference vs. value, deep
>vs. shallow copies, etc., but these are concepts that are fundamentally
>more subtle and challenging, and most adults must work to wrap their
>heads around them as well.
>
>I'm going to go a little further out on a limb here and offer a theory
>and a prediction to test it, that I'd appreciate it if anyone who has
>taught programming to 10-15 year old can respond to: Regardless of how
>they are taught, kids first mental model of a variable is something
>like: "a value the program needs to change".  Hence they will be
>uncomfortable and may resist understanding when a variable is used to
>name a constant value.
>
>jay

Your limb is creaking :-)
Younger ones are happy with the notion that 'a variable is a handle'.
As in 'an avatar for posting to a fora is a handle'.  
At least the 12-13 year olds I taught were.  And constants was easy,
it was the opposite, that they could vary that confused them.  But
that may say more about how I presented the idea than anything
about what is easier for 12 year olds to grasp.  I think its all
how I taught them.  We're making online text based games.  Everybody
know what an avatar is.

Laura


___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] python for kids...

2007-11-10 Thread Laura Creighton
read http://mail.python.org/pipermail/python-list/2002-April/140258.html

ore read the whole thread.

Then write something like Alex did.

Laura

In a message of Sun, 11 Nov 2007 11:46:54 +1300, Jason R Briggs writes:
>This is a multi-part message in MIME format.
>--===0995048152==
>Content-Type: multipart/alternative;
>   boundary="080808090007040401080704"
>
>This is a multi-part message in MIME format.
>--080808090007040401080704
>Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>Content-Transfer-Encoding: 7bit
>
>Hi All
>
>I'm seeking some advice, about a change I'm thinking about making to 
>Chapter 2 of my book.  I've received a bit of criticism lately about my 
>decision to stick with the simple concept of a variable as a "box to put 
>things in", rather than explaining the difference in Python (that a 
>variable is a really a name or label for an object).
>My original thinking was to keep it simple (not go into a discussion of 
>store-by-value versus store-by-reference), but I've gradually been 
>convinced, by weight of opinion, that this wasn't the right decision.  
>When you get an email from the Associate Professor of Computer Science 
>at a Brazilian university, you tend to listen more than when you get a 
>mail from someone saying, "dude, you're an idiot, don't you know how 
>Python works!".  ;-)
>
>Anyway, I'm thinking to keep the original discussion about a variable 
>being a mailbox, and then talk about the Python distinction (see updated 
>version below), but I'm not sure that this won't just unnecessarily 
>confuse the reader.  I can scrap the mailbox stuff, but then I lose an 
>illustration (something I'm loathe to do anyway), plus I think in some 
>ways that it's useful information.
>
>Any other opinions on the matter?
>
>Thanks,
>Jason
>
>--- excerpt ---
>
>A "variable" is a programming term used to describe a place to store 
>things. The "things" can be numbers, or text, or lists of numbers and 
>text -- and all sorts of other items too numerous to go into here. For 
>the moment, let's just think of a variable as something a bit like a 
>mailbox.
>
>You can put things (such as a letter or a package) in a mailbox, just as 
>you can put things (numbers, text, lists of numbers and text, etc, etc, 
>etc) in a variable. This mailbox idea is the way many programming 
>languages work.
>
>In Python, variables are slightly different. Rather than being a box 
>with things in it, a variable is more like a label which is stuck on the 
>things. We can pull that label off and stick it on something else, or 
>even stick the label on more than one thing.
>
>We create a variable by giving it a name, using an equals sign (=), then 
>telling Python what we want that name to point at. For example:
>
> >>> fred = 100
>
>We've just created a variable called "fred" and said that it points to 
>the number 100. It's a bit like telling Python to remember that number 
>because we want to use it later. To find out what a variable is pointing 
>at, we can just type "print" in the console, followed by the variable 
>name, and hit the Enter key. For example:
>
> >>> print fred
>100
>
>We can also tell Python we want the variable fred to point at something 
>else:
>
> >>> fred = 200
> >>> print fred
>200
>
>On the first line we say we now want to fred to point at the number 200. 
>Then in the second line we ask what fred is pointing, at just to prove 
>it changed.
>
>We can also point more than one variable at the same thing:
>
> >>> john = fred
> >>> print john
>200
>
>In the code above, we're saying that we want john to point at the same 
>thing fred is pointing to.
>
>Of course, "fred" isn't a very useful name for a variable. It doesn't 
>tell us anything about what it's used for. A mailbox is easy -- you use 
>a mailbox for mail. But a variable can have a number of different uses, 
>and can point at a whole bunch of different things, so we usually want 
>something more informative to describe it.
>
>
>
>--080808090007040401080704
>Content-Type: text/html; charset=ISO-8859-1
>Content-Transfer-Encoding: 7bit
>
>
>
>
>  
>
>
>Hi All
>
>I'm seeking some advice, about a change I'm thinking about making to
>Chapter 2 of my book.  I've received a bit of criticism lately about
> my
>decision to stick with the simple concept of a variable as a "box to
>put things in", rather than explaining the difference in Python (that a
>variable is a really a name or label for an object).
>My original thinking was to keep it simple (not go into a discussion of
>store-by-value versus store-by-reference), but I've gradually been
>convinced, by weight of opinion, that this wasn't the right decision.&nbs
>p;
>When you get an email from the Associate Professor of Computer Science
>at a Brazilian university, you tend to listen more than when you get a
>mail from someone saying, "dude, you're an idiot, don't you know how
>Python works!".   ;-) n>
>
>Anyway, I'm thinking to keep 

[Edu-sig] Python Instructor wanted for Omaha workshop

2007-11-02 Thread Laura Creighton
just forwarding this where it is more likely to reach
interested people.

Laura

--- Forwarded Message

- -- Forwarded message --
From: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Date: Oct 30, 2007 10:51 AM
Subject: [omaha] Looking for Python Instructor for GIS Symposium in April 2008
To: [EMAIL PROTECTED]


I am involved with MAGIC  http://www.magicgis.org/   an organization to
encourage GIS development, sharing, cooperation, etc. and educate
practitioners in GIS.  We hold a symposium every two years in April (next
is April 2008) and provide speakers and workshops in relevant GIS
subjects. ESRI's ArcGIS software holds the market majority and has
embraced Python language as a preferred scripting, customization language.
   One area we have trouble with for our symposium is getting instructors
for Python workshops.   The symposium is in Kansas City on April 20-24,
2008 and the Python course would be held for 4 hours on Sunday April 20th
and would be a hands-on computer based course with a class of about 20-30
beginner programmers.  We desire application to ArcGIS, but also just need
basic Python skills instruction. The instructors and speakers as well as
the planning committee are volunteers to keep the cost down to symposium
attendees.Do you have anyone that might fit as an instructor for an
Introduction to Python language course in the Midwest?  We would like to
get a commitment of an instructor with a one-to-two paragraph outline or
summary to print in our preliminary program by this Friday (November 2,
2007)  Sorry for the short notice, we thought we had someone lined up
already, but do not.
Please call or email me to discuss further.

Eric Foster, Senior Transportation Planner
MoDOT, 600 NE Colbern Rd. Lee's Summit, MO 64086
(816) 622-6330

___
Omaha Python Users Group mailing list
[EMAIL PROTECTED]
http://mail.python.org/mailman/listinfo/omaha
http://www.OmahaPython.org
___
Advocacy mailing list
[EMAIL PROTECTED]
http://mail.python.org/mailman/listinfo/advocacy

--- End of Forwarded Message

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Rich Data Streams

2007-08-23 Thread Laura Creighton
In a message of Fri, 24 Aug 2007 00:07:32 CDT, Jeff Rush writes:
>I've just been frustrated lately across several spheres of life with how 
>very
>hard it is to get people, in general, to get involved, to take on meaning
>ful
>projects even those they agree are valuable.  The explanation eludes me a
>nd
>keeps me awake at night and I ask those I meet from other walks of life w
>hy.

One reason is that having ideas is easy.  Work is work.  One thing that
I have found that has had a limited amount of success -- though better
than near 0 success, as was before -- is for you to step in, take the
idea, and break it down into tasks that would need doing before it
is implemented.  This may need collaboration with the idea-haver, but
not always.  Then organise something -- a sprint, say to go make
code out of the idea.  People are justifiably afraid of getting
involved in a project that could suck up all their available
free time and more, and give them a responsibility that they will be
stuck with forever.  If the thing starts out as shared, there can be
some trust that it won't become an intolerable burden later -- and
that ducking out later to do something else that is interesting
won't damage a community that in some way has become dependent on you.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Rich Data Streams

2007-08-23 Thread Laura Creighton

I just saw this:
http://www.gapminder.org/

play the TED video.

Then go play with things here:
http://www.gapminder.org/gapminderworld/help/gapminder_world_help.htm

This has been done by the Karolinska Instititet in Stockholm.  The
'Create your own project' part does not appear to be ready yet, but
I think that this would be a lot of fun to use.

Laura 


___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-18 Thread Laura Creighton

Late: I have been busy with Europthon

In a message of Sun, 08 Jul 2007 16:35:17 EDT, Jay Bloodworth writes:
>On Sun, 2007-07-08 at 21:46 +0200, Laura Creighton wrote:
>> 
>> Do you have many students who are good at geometry and still rotten
>> at algebra?  Also what do they say when you ask them 'what don't
>> you understand here?'
>
>
>I wouldn't say rotten, but it's not unusual to have students who do
>significantly better in geometry than algebra.  Again, it could just be
>a year of brain maturity that makes that so.

I'm curious about this.  I don't think I have ever heard about
'brain maturity' -- except in terms of 'reading readiness'.  So
I have always assumed that if a student was having a really dreadful
time learning something, and if it wasn't as a result of having an
eidic memory, or a learning disability or some other unique way of
experiencing the world, then it was most likely due to lack of
relevant pre-requisite experience.

And in my case, I built up a model where experience in Geometry is
a prerequisite for learning Algebra, which I why I think that one
ought to teach Geometry first.  Of course, other people may have
different ways of teaching Algebra which doesn't depend on a background
in Geometry.  I'd be really interested in seeing such lesson plans.

One hard thing, of course, is to tell whether your students really
have no relevant experience in Geometry -- or whether that is the
sort of stuff that they have picked up, on their own, simply as part
of being in the world.

>"What don't you understand?"  Usually if a kid can answer that they
>don't have a problem:
>
>Ex: 2x + 3y + 5x = 7x + 3y
>
>Kid 1:
>"Why don't you understand?"
>"Where did the 7x come from?"
>"From combining like terms.  I added 2x and 5x."
>"What are like terms?"
>"Terms with the same variables to the same powers.  2x and 5x both have
>x to the first power and no other variables."

Aha.  I go after this differently.

I give you 2 oranges + 3 apples + 7 oranges.
How many oranges do you have?

If that doesn't work, try MONEY.

It is amazing how many children I know who have problems keeping track of
apples and oranges but have no problem with 20, 50, and 100 Kronor notes.

Long before we start talking about 'variables' and 'powers' and the
like -- which is all part of the 'notationally true' world, we need to
nail down the absolute truths about addition that the order in which
you add terms does not matter.  Which we can then formulate as LAWS
about addition.

And we have to show that this is different from subtraction, where
the order matters, very, very much.  

To get _more_ notational truths across, I just have them set the
variables to things that take a lot of writing.

Pretty soon they are sick of writing:
3 refrigerators full of gorrilla food + 12 refrigerators full of
penguin chow + 6 refrigerators full of gorrilla food = 9 refrigerators full
of gorilla food + 12 refrigerators full of penguin chow

and understand perfectly why mathematicians decided they would rather write

3g + 12p + 6g = 9g + 12p

Sometimes python is useful here.  For the die-hards who don't want to
believe that addition is associative:

It works for letters.

>>> 3 * 'g' + 12 * 'p' + 6 * 'g'
'ggggg'
>>>

They can go count them.  And then write a program that counts the
number of each letter in a string.

Try it with words:

>>> 3 * 'orange' + 5 * 'apple' + 2 * 'orange'
'orangeorangeorangeappleappleappleappleappleorangeorange'
>>>

Writing that program is more interesting.

>versus
>
>Kid 2:
>"Why don't you understand?"
>"I just don't get it."
>
>Not a great example, because most students can do a little better with
>like terms than Kid 2.  But the point is that the "don't get it" kids
>I'm talking about can't really tell you what they don't get.  They see a
>string of symbols on line one and another on line two and claim to see
>no connection between them.  And though I can often ask a series of
>questions to determine what they don't get and to explain it - "Do you
>see where the 3y comes from? Good.  How about the 7x?  Okay, do you see
>the 2x and 5x?  etc." - they'll still say they don't get it.

Yes.  I know lots of Kid2s.  And they are quite correct.  They don't
get it.  They cannot draw you a picture about it, either.  (But if
you can get them to draw silly pictures, it may help them get it.)
They cannot spot the problem for the notation.  It is an abstract
way of representing .. what? Nothing they can 

Re: [Edu-sig] a non-rhetorical question

2007-07-13 Thread Laura Creighton
In a message of Tue, 10 Jul 2007 09:20:15 EDT, Jay Bloodworth writes:



>I'm just not sure that geometric models are likely to help with
>the difficulties struggling students often have.  Two examples:
>
>* It's like pulling teeth to get students to respect order of operations
>and remember consistently that -3^2 = -9.  Where's the geometric model
>for that?
>
>* (a + b)^2 = a^2 + 2ab + b^2, not a^2 + b^2.  Here there is the
>standard geometric area model for multiplication.  Sometimes I present
>multiplication with the model, sometimes not.  It doesn't seem to change
>the error rate.



>Jay

Something I have had success with is dividing what I am teaching into

a) universal truths about the way the universe works

vs

b) notational conventions which are true because we all agreed on it.

using '+' for add instead of '!' is notation.
using ( ) to group things and not {} is notation.

but given that we have agreement, the reason that

(a + b)^2 = a^2 + 2ab + b^2

is because that is _really the way the world works_.  Having a computer
helps.  You write code and try it yourself for a lot of values of
a and b, and can really prove that (a + b)^2 != a^2 + b^2 to your
own personal satisfaction.

Which is why I want geometry first, to give students a whole lot of
exposure to geometric proofs of geometric truths.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-08 Thread Laura Creighton


There is a small fraction of students I get who cannot learn
algebra, ever, no matter what I or anybody else does.  I don't know
why that is.  But there is  a larger number which I could not
teach algebra until after I had taught them geometry.  So we fixed
things  by  requiring them to take geometry before algebra.  Now
you have got me wondering if the difference wasn't the geometry,
but simply that they were one year older, which has never occurred
to me before.  (So thank you.)

Do you have many students who are good at geometry and still rotten
at algebra?  Also what do they say when you ask them 'what don't
you understand here?'

thanks very much,
Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-08 Thread Laura Creighton
In a message of Sun, 08 Jul 2007 10:29:24 CDT, "Atul Varma" writes:
>Has anyone ever explored the idea of using a collaborative virtual
>community for teaching programming?  I'm thinking about something
>along the lines of Amy Bruckman's MOOSE Crossing:
>
>  http://www.cc.gatech.edu/elc/moose-crossing/
>  http://www.cc.gatech.edu/~asb/thesis/
>
>As Laura was saying, having the students create something that's
>meaningful to them and their peers can be enormously motivating.  One
>of the advantages of any virtual community that supports third-party
>coding, from World of Warcraft to Second Life to text-based MOOs, is
>that they provide an excellent social context for computer
>programming.



I haven't taught python this way.  But I have taught a whole lot of
people how to program in LPC that was.  see: 
http://www.genesismud.org/students/index

Most of the people at Open End (our company, whom Atul has visited)
all come from this background.  Genesis is still thriving, if nowhere
near as popular as it was in its hayday, when people queued to get on.
We often talk about writing a python version.  But there are never
enough hours in the day.  However, using pypy to make an LPC
front end becomes a more attractive proposition all the time.  Should
we ever get around to doing that, we can move to teaching people
python, which would be a lot of fun.

Laura (Hazelnut on Genesis, who is rarely seen there these days).

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-08 Thread Laura Creighton
In a message of Sun, 08 Jul 2007 00:04:14 EDT, "Andy Judkis" writes:
>I've been out painting my house, so I have some catching up to do as well
>.
>I thank Andre for coming to my defense, but I think Michael's on the righ
>t 
>track. The problem is that I haven't found something sufficiently motivat
>ing 
>to get these kids to climb the hill.  It's not that I haven't tried, but 
>it 
>hasn't worked out very well. I too try to get to graphics stuff as quickl
>y 
>as possible, but I think it isn't very meaningful without some control 
>structure around it.  I use the livewires API because it's the simplest I
>'ve 
>found, requiring the least foundation, but it still takes a while to get 
>to 
>where you can do much.



It is easier if you let the kids find what they want to do, rather than
having to read their minds, and find something that you think they
ought to want to do.  The kids I was teaching were a fair bit
younger, but when I asked them 'what do you use the intenet for now'
the answers clustered around 'finding out when some favourite web
page changed' 'getting tickets for the Spice Girls concert' and
'playing computer games'.  So we ended up doing a lot of screen
scraping, and collaboratively writing a small text based game.  Of
course the kids that I were teaching were all volunteers.  If your
class is mandatory, you may get kids who don't use computers and
don't want to use them for anything.  They will be a much harder
problem then I had.

Laura



___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-06 Thread Laura Creighton

Now it is sounding to me as if it is possible that your students 
are at the 'i understrand it when you say it, but not well
enough to do it myself' stage.  Which means they need more homework.
Basic drilling stuff.  One odd thing I found was that students are
really unhappy with * as multiply and ** as exponentation -- those
that even knew what exponentation was.  I thought 5 exercises
using the notation would be enough.  Wasn't. 10 was, though.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-06 Thread Laura Creighton
I've been thinking about your students and what possibly might be
going on -- aside from their not learning anything, which unfortunately
is possible.

I think that you are better off trying to teach programming in
conjunction with trying to teach test driven design, and unit tests.
A large problem I see with people learning to program is that they try
to do too much at once. As soon as they think of a a corner case,
they rush off to write code about it, while it is fresh in theie mind.
Quite often they end up with things that never quite work.  And
when they show you things, you can see 2 or 3 obvious bugs in
the same code.  Often they interact.  So the poor student is
busy trying to fix part A of his code when it is part B, or 
both part A and part B together that is the problem.

What this student needs, more than anything else, is an ability
to think in smaller chunks.  Test driven design can really teach
you to decompose your problem into tinier pieces.  And, when you
have a brilliant idea: -- Hey, this program should work when
I type 'Mr. Andy Judkis' -- you can just stick this idea into
a test, which will fail, but will make sure that you don't forget
it for later -- but not get in the way of writing the basic program
in the first place. and unittests teach you to write things in
small chunks.

unittests are nice for the teacher, as well, because you can
assign 'write code that passes all these unit tests' and then
write them in an orderly fashion, which will tend to influence
how the students write their code -- starting small and then
growing the problem -- much better than just telling them things.
Plus you can sit down and run the test suite and have a pretty
good idea how things are going before you start helping any student.

But this doesn't sit all that well with your 'interactice loop'
exercise.  I wonder if it is the interactive loop part that is
the problem.  After all, if you cannot get that part going, it will
be very hard to write the other bits.  The last time I had students,
and these were rather young ones -- I taught them first how to
write programs that absolutely did something -- like print a 
list of the first 10, then 15, then 200 factorials.  This lead
to -- functions, and why we want them. Then it was time for
test driven design, and how to run tests with our framework.

We did a bunch of lessons like that before we got around to learning
how to input things, and even then it was much more common for
students to just have a running python interpreter, import their code,
and pass arguments to functions rather than have a proper main loop.
How to write functions, how to use them, how to use functions in
the standard library.  How to find out what the heck there _is_
in the standard library. How to use each other's functions, and
a favourite, how to report a bug in your friend's function,
complete with a unit test that demonstrates the bug.

Despite all this experience, they found the actual getting and
parsing of text from a user, _really_ _really_ _hard_.  Much
harder than anything else I had taught them before.  And it was only
when I did a fast-forward to 'Exceptions', which I had started out
believing should be taught after classes, but now think should be
taught as soon as you start doing input, and 'never mind the
funny syntax that uses bits of the language we haven't learned
about yet' that some of them caught onto what was going on.

As your exercise stands, students who would not select yourself or
'Mrs. McGrath' would have a program that never terminated.  I had 
several students who were really, really, uncomfortable with the
idea, to the point of not being able to write code about it.  They
were waiting to think of the way to do it which didn't have
this property.  'Real programs wouldn't work like that' they
quite rightly complained.  It was only after I had taught them
about try: and except KeyboardInterrupt: that they were able
to get down to write things.  Before their minds were wrapped
around what for them was the most interesting part of the
problem, whcih wasn't the exercise.

I guess the only way to find out is to ask your students.  Good luck.


[I should revise this, but I must pack for Europython.  If I don't
reply to replies to this, its not that I don't care, but that I expect
to be completely swamped with running the conference for the next
few days.  In the words of Blaise Pascal -- sorry that this is so
long, I do not have time to make it shorter.]


Laura Creighton





___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] a non-rhetorical question

2007-07-06 Thread Laura Creighton


In a message of Thu, 05 Jul 2007 18:48:49 EDT, "Andy Judkis" writes:
>I've just completed my 6th semester as a teacher, teaching 2 sections per
> 
>semester of a 10th grade course that includes a 4 week introduction to 
>programming in Python.  Here's a question from one of my exams:
>
>
>
>Write Python code that will ask the user how who is the best looking 
>teacher in the school.  The program must loop until the user responds eit
>her 
>"Mrs. McGrath" or "Mr. Judkis".  If the use responds "Mr. Judkis", the 
>program must print out "Excellent choice."  If the user responds "Mrs. 
>McGrath", the program must print out "Also a fine choice."  If the user 
>responds with anything else, the program must print out "Wrong, sorry." a
>nd 
>ask again.
>
>
>
>Rather than catalog my frustrations, let me just pose a question to you 
>all -- how much Python exposure do you think it should take before a stud
>ent 
>should be able to answer this question?  If a student can't even answer 
>this, is it reasonable to say that they have learned any programming at a
>ll? 
>(I know that they might have learned something -about- programming, but t
>hat 
>is not the same thing.)
>
>
>
>Thanks,
>
>
>
>Andy Judkis

One way to know a lot about programming, but to be unable to solve
this exam question is to not know how  to accept input from a terminal.
Could they have read teacher names from a file and solved the question?
from a command line?  From a gui toolkit?

Personally, I almost never need to use input or raw_input in
real life, so I always have to look it up whenever I do find I 
need it.  I suspect that I might fail your exam if you don't
allow me to browse python docs while writing it.

Laura
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] Wikis w. Math Support

2007-06-27 Thread Laura Creighton
Mediawiki -- what wikipedia uses.
http://en.wikipedia.org/wiki/Help:Formula

Laura

In a message of Wed, 27 Jun 2007 10:43:50 EDT, Jay Bloodworth writes:
>Not necessarily python related, but perhaps:
>
>Can anyone suggest some wiki software that includes support for math
>markup for nicely formatted expressions, preferably with some simpler
>and server-sider than MathML.  Bonus points if it also supports simple
>syntax for generating graphs of equations.  Double bonus if it includes
>good access control features.
>
>Thanks,
>Jay
>
>___
>Edu-sig mailing list
>Edu-sig@python.org
>http://mail.python.org/mailman/listinfo/edu-sig
___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


Re: [Edu-sig] [python-advocacy] education as Python killer app

2007-06-02 Thread Laura Creighton
In a message of Thu, 31 May 2007 20:29:08 CDT, "Michael Tobis" writes:
>As I understand it, raw_input will be renamed input in 3.0, and the
>function currently implemented as input would go away, requiring you
>to invoke eval(input("prompt")) if you need its functionality. Thus,
>the PEP text you quote doesn't correspond to my understanding, based
>on what I took from GvR's keynote at PyCon.
>
>However, this is off topic for these lists and would be better taken
>up on c.l.p. where someone in the know will be sure to clarify the
>matter.
>
>mt

Actually, this is on-topic for edu-sig.  And the person who knows
the most about it you can find there -- André Roberge.  He had
the same objections, and implemented this approved PEP 
http://www.python.org/dev/peps/pep-3111/  with Guido von Rossum
at PyCon this year.

Laura

___
Edu-sig mailing list
Edu-sig@python.org
http://mail.python.org/mailman/listinfo/edu-sig


  1   2   >