[Newbies] I need an idea. I know you have some. Give.
casey.obrien.r at gmail.com
Sat Mar 9 05:39:10 UTC 2013
Thanks for the long and thoughtful reply, and good stuff too. Big fan of
Seymour Papert, too. It just so happens that I have a Coleman toolbox
loaded tight with Lego Technics, including an NXT kit, and a big old remote
controlled tractor (I wanted the treads.)
I already have a backburner project involving an Arduino going on in this
category, and I planned to use NXTTalk on the smart brick. I also want to
look at Physical Etoys before I proceed. This is on the backburner in part
because it's pretty broad in scope. Thanks for the suggestion though!
On Fri, Mar 8, 2013 at 8:31 PM, Clinton Blackmore <
clinton.blackmore at gmail.com> wrote:
> Hello Casey.
> What a fabulous question.
> I believe that the Raspberry Pi opens up the door to help everyone,
> especially kids, learn to create things in this (digital) world of ours,
> and not to just be a passive consumer, and that they will if they have an
> accessible way to do it. I also believe we are on the cusp of a personal
> robotics revolution, much like where the personal computer revolution was
> thirty years ago. Lastly, I believe that the best way to teach children to
> code today involved the use of a project written in Squeak, namely Scratch,
> and that tomorrow's tools can be even better!
> I therefore propose the creation of a web-based graphical programming
> environment to allow kids to program robots built with a Raspberry Pi brain.
> I think I've touched on the why, but let me get to the piece that I think
> is really inspiring. Learnable Programming.<http://worrydream.com/LearnableProgramming/>
> This is an essay by a fellow about how we can make programming more readily
> understood and more powerful; he has a great sense of vision, and he sites
> Squeak as being one of the really good environments that we have today.
> [Implementing any sort of Learnable Programming system, whether for
> robotics or not, is a laudable goal, and his site is chock-full of
> inspiration for other things you might do].
> Now, I don't believe that all of the things he suggests -- such as
> allowing a person to scrub forward and backward through a simulation -- can
> be accomplished directly with robotics. But there are parts of it that
> sure could be, and with a full-on computer as the brain, there is memory to
> store the system state [such as sensor readings] at various times and
> explore it.
> Why, then, do I still believe in programming robots over just programming
> computers? Because it is engaging, and it gives kids a platform upon which
> to solve problems that are real instead of trivial. I must say, being one
> who lives a sedentary lifestyle, and having moved to an acreage where the
> house is heated by wood-burning stoves, that after I went out (after
> referring to youtube for instructions) and split wood for a half hour, that
> I was struck by the fact that exercise is so much more enjoyable when you
> are accomplishing something, and I believe the same holds true for (school)
> exercises; for instance, when math is disembodied and becomes the mere
> shuffling of symbols, is it any wonder that kids don't like it, don't
> understand why it is important, and don't do it more than they have to, but
> when it has a context -- ex. meshing a 40 tooth gear with a 12 tooth gear
> lets you increase the torque by a factor of five and decrease the speed by
> the same factor (or vice versa), or, ex. here is what a PID controller is
> and did you know you are using something called 'calculus' -- then,
> suddenly, it is my belief they'll enjoy learning it, understand why they'd
> use it, and have their lives enriched because they have developed the
> strength to solve classes of problems that occur in real life. (Take a
> look at some of the videos I've cited<http://robotclub.ab.ca/articles/51/robotics-resources>as supplementary materials to a presentation I gave, especially this one: Learning
> Science by Doing Science<http://fnoschese.wordpress.com/2012/05/30/my-tedxnyed-session-learning-science-by-doing-science/>
> I mentioned that the best tool for teachings kids to program today is, in
> my opinion, Scratch. Scratch 1.4 is written in a forked version of Squeak
> 2.8. (There have been efforts to port it to something more modern, like
> Scat <https://code.google.com/p/scat/>, but methinks that doing that
> would exceed the time constraints of your project). [Scratch 2, in beta,
> is written in Flash]. BYOB/Snap (v3) is an advanced version of Scratch.
> (v4 is written in HTML5, but I don't know the specifics).
> I learned Squeak so I could hack on Scratch and have developed something
> similar to what I'm advocating here -- Enchanting<http://enchanting.robotclub.ab.ca/>.
> It lets kids program LEGO Mindstorms NXT robots. I've been working on it
> in my spare time for 2.5 years or so now. Even a 10-year old version of
> Squeak is such an awesome language to use.
> There are several deficiencies, the most notable of which is that changes
> do not happen in real time -- kids have to go through a compile and upload
> step. Another thing I've come to realize is it is very hard to
> collaborate simultaneously on a project.
> Since I've read "Learnable Programming" and LEGO has announced a successor
> to the NXT robot set, I've been wondering how I'd make it better.
> If I was starting from a clean slate and targetting the Raspberry Pi --
> and this is the project I'm recommending -- I'd strongly consider:
> - create a web application (but don't start from zero!) that allows
> kids to program the Raspberry Pi robot in a Scratch-like manner.
> - make it so multiple users can edit the same code simultaneously
> (and, as a stretch goal, allow one kid to code on a project in French while
> another codes in Japanese, simultaneously)
> - having some method to share or remix other projects would also be
> - either run the web server for the web app on the Pi, or in the cloud
> with Pi being one of the clients
> - and make sure the Pi can be programmed wirelessly
> - (it'd also be awesome if there was a way to code in text and have it
> turned into blocks, but that sounds like scope creep).
> The environment needs to be live; it needs to let you see what values
> sensors are reporting, and change the program while it is running -- it
> needs to be a lot like Squeak! -- and, for added awesomeness, implement as
> many of the tenets of "Learnable Programming" as possible in the time
> You may be able to use Seaside or Amber to do this. I know I'd be itching
> to try meteor-js <http://meteor.com/>, but, it is, unfortunately, not
> It is worth mentioning that Lady Ada has developed a custom OS for the Pi
> that allows you to program it from another computer; the Pi runs an
> embedded web server (and I think it is running python, but I haven't looked
> into it). [Raspberry Pi WebIDE<http://www.adafruit.com/blog/category/adafruit-learning-system/webide/>
> There are several projects to use the Pi for robotics platforms, I
> believe. I haven't looked into them in depth and don't have links handy.
> There is a robotics subforum<http://www.raspberrypi.org/phpBB3/viewforum.php?f=37>at the Raspberry Pi site. I'm mildly interested in having something that
> lets you build a chasis out of lego -- take a look at MAKE: Lego and
> Arduino Projects <http://shop.oreilly.com/product/0636920024316.do>. If
> you are to pursue a project like this, I'd recommend finding one design or
> project and supporting it well, allowing users to specify what sort of
> sensors and attachments they have on their robot, and where (and don't try
> to be all things to all people!)
> There are many projects similar to a Scratch, some in a broswer, others
> I believe these ones are open source:
> - eToys <http://www.squeakland.org/> and Physical eToys<http://tecnodacta.com.ar/gira/projects/physical-etoys/>
> - App Inventor <http://appinventor.mit.edu/>
> - Google Blockly <https://code.google.com/p/blockly/?redir=1>
> - Alice <http://www.alice.org/index.php>
> - Snap <http://snap.berkeley.edu/>
> - Open Blocks <http://education.mit.edu/openblocks>
> - MiniBloq <http://minibloq/>
> and that these ones are not:
> - 12Blocks <http://onerobot.org/products/12blocks/>
> - ModKit <http://www.modk.it/>
> - Scratch for Arduino <http://seaside.citilab.eu/scratch/arduino>
> - PicoBlocks <http://www.picocricket.com/download.html> (for use with
> PicoCricket robots)
> - stencyl <http://www.stencyl.com/>
> Good heavens. There is a whole Wikipedia page on Visual Programming
> Languages <http://en.wikipedia.org/wiki/Visual_programming_language>.
> That's my idea. Allow kids to learn by doing something "real", making use
> of a powerful and affordable brain for robots, and make programming
> enjoyable and learnable for all!
> Clinton Blackmore
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Beginners