Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
MIT's Scratch Team releases Scratch 2.0 editor and player as open source (github.com/llk)
239 points by speakvisually on May 13, 2014 | hide | past | favorite | 61 comments


I've taught a few kids using Scratch and it works quite well. I'm happy to hear they're working on an HTML5 version, and hopefully it will be possible to install if offline like the current Adobe AIR version does. I teach with a few netbooks running Ubuntu, and can't always rely on having internet, so I had to install the last version of AIR that supported Linux to get it working.

There is also an unaffiliated app for Android called Pocket Code that is clearly inspired by Scratch. It works nicely on Nexus 7 tablets, and touch screens are clearly more natural for kids, but it is buggy and more limited than Scratch so I had to stop using it. Hopefully it will improve, or the Scratch team will provide their own mobile port (not a simple task, of course).


As I mentioned below, they are making a tablet version of Scratch aimed at 5-7 year old kids. Out this summer....

http://www.scratchjr.org/


Just iPad or Android, too?


An Android version is planned for later.


I played with Scratch for some time with my 9 year old son. They've done an excellent job with it. We ended up using Construct 2, only because they've done an even better job and it releases to HTML 5, is playable on all kinds of devices including iPad.


https://www.scirra.com/construct2 - not seen that before, thanks for the tip.

Edit: looks like it's Windows only. Will try with WINE.

Edit2: Pretty buggy on WINE over Kubuntu 14.04 - crashes when trying to start project from template or when run layout on empty project.


Tom here from Scirra (it's awesome to spot links to Construct 2 in the wild!)

Yes, Windows only for now. We stuck with what we knew to start off which was Windows development.


I found this on the education link:

>Construct 2 is a visual drag-and-drop game creator for Windows.

Is that true, it's only for Windows? I'd like to know more, but I use Mac OSX and ideally I'd like something that ran there and/or on the iPad.


Stencyl is another similar tool that runs on Win/Mac/Linux and exports to HTML5 (as well as native).


We are hiring! http://scratch.mit.edu/jobs/

Also, Scratch Day is May 17th: http://day.scratch.mit.edu/


Is local a hard requirement for the Software Engineer position?


I believe it's preferred, but I am not the one to ask. You should ask through the email linked there.


This (along with the existence of the HTML5 version linked elsewhere in the comments, https://github.com/LLK/scratch-html5 ) is great news! I've always hesitated to point anyone at Scratch due to its non-open license. It's great to see that problem solved.


You'd point someone to an inferior learning tool because of your prejudice against non-free software? Really?


And it has always been free in cost


Scratch is a multimedia authoring tool that can be used by students, scholars, teachers, and parents for a range of educational and entertainment constructivist purposes from math and science projects, including simulations and visualizations of experiments, recording lectures with animated presentations, to social sciences animated stories, and interactive art and music. Simple games may be made with it, as well.

http://en.wikipedia.org/wiki/Scratch_(programming_language)


It's unfortunate that Scratch is built upon the Flash platform. Though Scratch has been released under the GPL, it requires nonfree software in order to run. Scratch looks interesting, but I cannot recommend its use until this problem is fixed.


We have a work-in-progress HTML5 version as well: https://github.com/LLK/scratch-html5


Well that is great news! Thanks for letting me know.


Really? That's very exciting!


Google's Blockly is similar and available under the Apache License:

"Blockly is a component that may be useful for a variety of projects, including educational tools. We want developers to be able to play with Blockly, give feedback, and think of novel uses for it. All the code is free and open source."

https://code.google.com/p/blockly/source/browse/trunk/COPYIN...


I've worked on a project that used Blockly and found it to be great : )


I think it's more important for kids to learn to code, that it is to be consistent about using non-free software.

Scratch is free, committed to open source, and is frankly the best software out there for getting young kids excited about coding.

I'd highly recommend it, despite being encumbered by flash.


The Scratch I knew from a while ago was built on Smalltalk, and in fact there's an updated version that runs on Pharo Smalltalk, called 'Phratch'.

I have not compared the two, but if you want a freer version, I would recommend looking at http://www.phratch.com/


Catroid is another cool related project https://github.com/Catrobat/Catroid


There is a feature request for GSoC 2014 "Make Pocket Code Bricks feature-complete to Scratch"

http://developer.catrobat.org/gsoc_2014_ideas_page#featureco...


This is great. Every time I visited the Scratch website I wished I could use a similar project on a tablet/smartphone.


They are making a tablet version of Scratch aimed at 5-7 year old kids. Out this summer....

http://www.scratchjr.org/


Scratch is really cool - my 6 year old daughter enjoys it a lot even though she doesn't grasp all of it yet. But I think it's a good start in that it starts introducing some of the concepts behind making a computer do things, and making things with computers. She has fun with it too, it's pleasant, which should help develop a positive attitude.


Turtle Art (AKA Turtle Blocks) is another LOGO-derived educational language with aims similar to Scratch.

Turtle Art is free software and its block language seems more powerful and orthogonal. It can be extended with inline Python expressions or by loading Python scripts. I think it's a great way to introduce young children to the basic concepts of programming with a smooth transition to a mainstream language.

While Turtle Art is bundled with the OLPC-derived Sugar learning environment, it also works on a regular Linux desktop.

Get it here: http://wiki.sugarlabs.org/go/Activities/Turtle_Art


There is also the Phratch version (Pharo based). http://www.phratch.com/

This is more for grown ups where one can integrate all kinds of cools things.

A video with Lego Mindstorms EV3 controls.

http://vimeo.com/82540943

And engineers have fun too. http://vimeo.com/89912838


Neat! It would be nice if README.md gave a little introduction to the project.


Hardly 'open' but if you're looking for something similar that works nicely on an iPad Hopscotch is also worth a look https://www.gethopscotch.com

Bit more limited than Scratch but the new editing interface they just released works really well.


I teach programming in the classroom using Scratch and just recently started using Hopscotch for younger learners (age 9 and 10). I really dislike many of the changes in the new Hopscotch release. they feel like UX designing run amok, out of touch with the audience of young learners.

The script blocks (the code) that were front and center are now buried behind a few additional taps.

They've replaced buttons clearly labeled with text with icons that are sometimes cryptic even to me (let alone a 9 year old). Would you guess that an icon with an "i" is how you edit your code? I assumed it would just be some kind of read-only display of extended properties, not an editing capability.

And the worst and most subtle change is the de-emphasis of the X/Y Cartesian-esque grid. Before you had clearly labeled X and Y value textboxes and a grid with matching color-coded horizontal and vertical guide-lines to make it easy to understand the grid, and labeled light gridlines every 100 pixels. Now nothing is labeled or shown except while long-tapping to move a sprite's starting position. Anything that ties into math curriculum is a win (Cartesian coordinates, ordered pairs), and they took much of that goodness away in favor of a more "streamlined" UX.

I do like that they fixed the problem of moving large chunks of script blocks inside of the repeat loops though.


My daughter is a bit too young still so i haven't tried it with any actual kids yet, except myself. I liked the cleaner visual style but it might indeed be less clear now..


I saw somewhere that (now their) App Inventor makes for 13 percent of language use for education purposes, while Python is at 14 percent. They must be doing something right.

http://appinventor.mit.edu/


This is great. I use it for prototyping app ideas, and it works good so far. Only thing I've found to miss for my particular prototype is a "wait" function, but there's ways to build a little procedure for that.

(Also I submitted AppInventor to HN a while ago [1], but it didn't get any attention. Bad timing maybe? Either way, I think it's excellent in it's simplicity)

[1] https://news.ycombinator.com/item?id=7715679


ISTR Scratch being available as a standalone executable, and then changing into a web app. The standalone tool made it easy to let my kid play around with while not having the whole internet there to distract him. Is the standalone app still available?


Yes, the old 1.4 version is available and the new 2.0 version has a stand alone build that works without internet access. It requires adobe AIR.

http://scratch.mit.edu/scratch2download/

http://scratch.mit.edu/scratch_1.4/


Presumably there's a way to use the app without having access to the entire Internet, especially considering this is a link to the source code.


Interesting project! Just a note--I got to step 3 of 13 on the Scratch tutorial and the language switched to Dutch or something ("3 Dansen maar Voeg een nieuw NEEM STAPPEN-blok toe. Klik in het blok en typ een min-teken.")


Whoops! It should be fixed now. (Thanks for reporting!)


That's Dutch, and I did a double take when I suddenly saw Dutch in my Hacker News!

I can't wait to have my siblings try some programming with this tool!


Scratch is great for making animated comics. It appeals to girls as well as boys. I taught kids from 6 to 12 years last year. Kids older than that got bored with it. Highly recommended.


I'm 16, and I still use Scratch from time to time. It is well suited to creating simple 2D games, although it is not efficient enough for anything particulary complex.


Agreed - I think you can get a lot of kids who might otherwise be turned off the idea of 'programming' by promoting Scratch classes as 'animation' classes.

My son's elementary school held a series of scratch programming classes; the turnout was over 90% male. That seems like a shame to me.


We love and use Scratch a lot at Coding Goûter events. Recently we also started to use the HTML-based SNAP![1] that also has the advantage to let older kids create their own custom blocks (functions). It's open source, and seems to be evolving fast. (It started as a clone of scratch, but might diverge in the future if I understand the conversations right) [1]http://snap.berkeley.edu/


I absolutely love Scratch. I get my six year old daughter to make all of the artwork and sound effects and I end up doing all the code. I've been really looking forward to Scratch Jr, just to see if she can do more of the coding.

One thing I'd love to see is an atan2 function in the math routines. Right now if you want to do anything a little bit tricky you end up having to implement your own.


I do the same thing with my 6 year old daughter. She feels like a game designer and comes up with super crazy game ideas. Shark Salon? Sure! Let's do it!


Ah, Scratch. This is how I got started with programming (pretty late, my senior year in high school). I made a game[0] where you try and knock another player or a dumb AI off a disk.

[0]:http://scratch.mit.edu/projects/1108096/


Is there a linux distro that is centered around Scratch that I can PXE boot on my media center PC for my son to play with?

I'm interested in getting him into computing of sorts. I tried Doudoulinux, but it was mostly not good.


Instead of using your media center pc could you get him a Raspberry Pi? I bought my nephew an RPi so he could use Scratch and have a computer of his own. The only challenge I had was figuring out an easy way to introduce him to Minecraft Pi edition.


I have one for him. I just don't have anything to set it up with, yet. The HTPC is an easier test bed since it's already setup for PXE.


When you install NOOBS on the Raspberry Pi there is a "boot to Scratch" option. Maybe that's an option?

http://www.raspberrypi.org/downloads/


Thanks, I'll take a look at this. I hadn't heard of NOOBS before.


One of the older versions of Scratch had support for Lego WeDo. Does Scratch 2.0 have support for Lego WeDo? Would love to introduce it to my kids!


Yes, Scratch 2 does support Lego WeDo.

To enable support, shift + click "More Blocks" and the "Add an Extension" button will appear. From there you can select the LEGO WeDo extension. [1]

If your kids are into robotics, you may also be interested in MOSS - a modular robotic construction kit [2]. MOSS also supports Scratch programming, and in fact we are releasing our extension to the public this week (I'm the lead programmer on the project.), which we'll be announcing very soon.

We've been experimenting with Scratch in classrooms here in Boulder, CO, and we're amazed at how fast kids pick up programming concepts with Scratch!

[1] http://wiki.scratch.mit.edu/wiki/LEGO_WeDo_Blocks [2] http://www.modrobotics.com/moss


> If your kids are into robotics, you may also be interested in MOSS

Ah, thanks for reminding me! I'd been keeping my eye on MOSS and they should be out now! Cool that Scratch supports MOSS as well!


Well, I originally asked this question because awhile back the Scratch WeDo site said they didn't have support for 2.0 yet, but I just looked here [1] and found this:

> In Scratch 2.0, you can add a LEGO WeDo extension within the "More Blocks" category. Click "Add an Extension" and choose "LEGO WeDo."

So, awesome!

[1] -- http://wiki.scratch.mit.edu/wiki/LEGO_WeDo_Construction_Set


I tried to get my son into Scratch, but he didn't like it. He loves hacking on Lua code in the Roblox game.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: