[Chicago] python intro for 13 yo -- suggestions?
Ian Bicking
ianb at colorstudy.com
Thu Jul 13 02:39:45 CEST 2006
Michael Tobis wrote:
> I added the following to the BarCAMP page at
>
> http://barcampchicago.com/index.php?action=edit&wiki=ProjectsPage
>
> There's a lot of interest in community development of not just
> interactive but programmable educational media (see the edupython and
> chipy lists). The idea is to have a set of shared programmable widgets
> and a shared environment in which to get them to interact. This could
> be used to teach programming or other quantitative topics.
> Inspirations include Hypercard, Logo, Squeak and Croquet; it would be
> nice to get something like this included in edubuntu.
>
> Contact mtobis at gmail aka this guy:
> http://geosci.uchicago.edu/~tobis/mt.png if interested
So who is planning to do BarCamp? (Note: it's this weekend, Saturday
noon to Sunday 8pm) Who is planning to camp out? Who's ready to play
programming drinking games?
I'm feeling a real itch to try out this DOM-based HyperCard environment.
Anyone want to hack on that? I feel like it's at the right stage for
wild experimentation, rather than thoughtful and well-planned
implementation.
Persistence? http://mochikit.com/doc/html/MochiKit/DOM.html#fn-tohtml
plus a really simply wiki-ish backend. Implement some functions to load
and save bits and pieces too.
E.g., a search form:
name = $('search').value;
pieces = remote('baseballCards').search(name);
$('results').clear()
// This is where Javascript hurts my soul...
for (i=0; i<pieces.length; i++) {
piece = pieces[i];
$('results').append(piece);
}
The idea is that all content under /baseballCards/* gets searched for
some text, and the search() methods returns a list of DOM elements that
were matched (it handles the server communication synchronously, though
we could also do it in an asynchronous fashion if we have the search
just hand itself off to $('result')). Then DOM elements have clear and
append methods added to them, which do the obvious things (shortcuts for
some stupidly-named or awkward methods).
The resulting objects have to hang onto their "source", which is the
location they were fetched from, so that they can be re-saved. So the
search results might become:
<div id="results" volatile="1">
<div dom-src="baseballCards/card1" class="baseballCard">
<span class="name" editable="1">Pete Rose</span>
</div>
</div>
The backend is just basically a simple file store, which applies some
wrappers at appropriate times, and has some methods like GET, PUT,
searching, and perhaps some others.
Damn... I'm aching to do this right now... I might at least implement
the server side to start, just as a dumb file-based system.
--
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org
More information about the Chicago
mailing list