Code-to-Learn Foundation

THE CODE-TO-LEARN FOUNDATION PROMOTES

computational fluency for everyone. The Foundation supports projects that engage young people in learning through coding, enabling them to develop as creative thinkers, designers, and innovators.

The Foundation believes that young people, as they learn to code, develop new ways of thinking about the world — and new ways of thinking about themselves.

continue reading Code-to-Learn Foundation.

Very Young Programmers – NYTimes.com

By LISA GUERNSEY

Published: September 2, 2013

Ten years ago, a computer programming language called Scratch emerged from the Media Lab at the Massachusetts Institute of Technology. Using colorful stackable icons to represent the sequencing and logic of computer code, Scratch was designed to make programming easy for children 8 and older. Today the free program is used in more than 150 countries and thousands of schools, with more than 1,500 animations and games uploaded to the online Scratch community each day. Even third and fourth graders call themselves coders.

But who says that 8 is the youngest you can teach children how to program? Now there is Scratch Jr. for children still learning to read and tie their shoes.

Designed for children in kindergarten through second grade, Scratch Jr. is not yet available to the public, though its founders are preparing for an iPad version in 2014. This school year, they are evaluating how it works in a handful of classrooms in Massachusetts. The project is led by Marina Umaschi Bers, a professor in the department of child development at Tufts University, and Mitchel Resnick, Scratch’s founder at the M.I.T. Media Lab.

via Very Young Programmers – NYTimes.com.

Scratch: Teaching the Difference Between Creating and Remixing | MindShift

Audrey Watters | August 11, 2011

The introductory programming language Scratch is on the cusp of having its 2 millionth project uploaded to its website. That’s an impressive number, and one that points not just to the widespread adoption of Scratch by novice programmers, but to the growth of a vibrant community surrounding the programming language along with the stories and games that are built with it.

For those unfamiliar with Scratch, some background: Developed by the MIT Media Lab, Scratch is a visual programming language for children age 6 and up. Scratch is available free of charge, and the software runs on Mac, Windows, and Linux computers. (Scratch 2.0, which is currently under development, will bring the tool into the Web browser as opposed to being a download.)

continue reading: Scratch: Teaching the Difference Between Creating and Remixing | MindShift.

New Visual Tool Teaches Kids How to Code at Home | MindShift

As the conversation about education shifts towards helping students develop useful skills in life beyond the classroom, a new spotlight on computer coding has emerged. Kids are impressing adults with their creativity, with their facility in learning new technologies, and their ability to design challenging video games.

More and more, parents are beginning to see computer science and programming as the key to success for their children. And like other foreign languages, even if the child doesn’t grow up to be a computer programmer, learning to code can yield many other benefits, the thinking goes.

continue reading: New Visual Tool Teaches Kids How to Code at Home | MindShift.

Learn To Code, Code To Learn | EdSurge News

Mitchel Resnick

How programming prepares kids for more than math.

Is it important for all children to learn how to write? After all, very few children grow up to become journalists, novelists, or professional writers. So why should everyone learn to write?

Of course, such questions seem silly. People use writing in all parts of their lives: to send birthday messages to friends, to jot down shopping lists, to record personal feelings in diaries. The act of writing also engages people in new ways of thinking. As people write, they learn to organize, refine, and reflect on their ideas. Clearly, there are powerful reasons for everyone to learn to write.

I see coding (computer programming) as an extension of writing. The ability to code allows you to “write” new types of things – interactive stories, games, animations, and simulations. And, as with traditional writing, there are powerful reasons for everyone to learn to code.

via Learn To Code, Code To Learn | EdSurge News.

Tynker

 Tynker is a new computing platform designed specifically to teach children computational learning and programming skills in a fun and imaginative way. Tynker is inspired by Scratch from MIT. It is a completely browser-based implementation written using Open Web standards such as Javascript, HTML5, CSS3 and does not use Flash.

Tynker’s language extensions, built-in physics engine, character editors and other tools make it fun and easy for kids to unleash their creativity. Schools love Tynker because it offers them an easy to use cloud-hosted system for delivering a customized Computer Science course across multiple grades with a ready to use curriculum, classroom management and more. Tynker is the platform of choice at many leading schools – see what educators are saying.

We believe that computational thinking and computer programming should be part of the core curriculum in education. Our goals include:

Provide every child with a solid foundation of STEM (Science, Technology, Engineering and Math) thinking abilities to prepare them for 21st century degrees and careers.

Enable children to learn Computer Science concepts through discovery, creative activities and experimentation.

via Tynker.

Making Games in the Classroom with Scratch – ProfHacker – The Chronicle of Higher Education

I’ve discussed the potential value of learning some scripting for any major in the past, and President Obama recently called for more of a focus on making sure students know “how to actually produce stuff” with computers, citing game design as a potential motivation. I’ve been participating in the Learning Creative Learning MOOC from MIT Media Lab, and this week we’ve been working with Scratch. Scratch is certainly a powerful entry point for the type of learning Obama called for. Playing with Scratch reminded me how powerful it is for a language that uses building block code, and made me reconsider it for introducing fundamental programming to some of my non-coders in the classroom. Scratch is a powerful way to support goals like Brian’s of teaching kids to make–but it’s for more than just kids. I grew up with Logo, a highly visual tool where writing simple code “commanded” a turtle to create things on-screen, and I’m amazed by how far we’ve come since then. Scratch provides a platform for anyone to try making animations, interactive experiments, and games. Unlike the tools I’ve looked at so far in this series — Inform 7, Inklewriter, and Twine –Scratch is highly visual and intended to provide a clear introduction to code.
via Making Games in the Classroom with Scratch – ProfHacker – The Chronicle of Higher Education.

Kinect2Scratch

Kinect2Scratch allows data from the Microsoft Kinect controller be sent to Scratch, the programming language for kids from the MIT Media Laboratory.

This means that anyone can write programs with motion control, use gestures, make kinetic games and generally leap about having fun.

All you need is a Kinect with its own power supply (Kinects bundled with an XBox will need a separate cable).

Scratch and Kinect from Stephen Howell on Vimeo.

via Kinect2Scratch 2.5.

Object-Oriented Programming – Scratch Wiki

Is Scratch OOP?

Whether or not Scratch is Object-oriented is disputable. It definitely uses objects, namely sprites; however, you currently cannot dynamically generate sprites. In Scratch 2.0, however, cloning will be supported. This will allow for dynamically generated sprites.

Arguments against Scratch being OOP are:

  • Scratch does not support custom objects
  • Scratch does not support dynamic generation of sprites

Arguments for Scratch being OOP are:

  • Scratch supports sprites, which are objects.
  • You can access properties of sprites from other sprites.
  • Scratch 2.0 will support cloning, so dynamic sprite generation will become possible.
  • Lists can be used to create pseudo-objects

Object-Oriented Programming – Scratch Wiki.