Discuss Scratch

Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

Welcome to the Advanced Topics!
Feel like saying hello? Introduce yourself in a reply below!

The A(dvanced) T(opic)s are, in a way, the place where you go once you outgrow plain old Scratching. At the ATs, we take Scratch to its limits. Most threads here consist of someone either asking a question or showing off some piece of awesomeness, and then dozens of really smart people tripping over each other to help out with comments (and general oohs and aahs). It's pretty satisfying.

We mainly discuss extensions to Scratch, mainly programs written in other languages that enhance Scratch (think custom forum skins and bots to post to the forums automatically). A lot of it is just coming up with a crazy idea and making it happen. That's a great way to learn; just do it.

There are a few fiendishly hard and therefore undeniably delicious math questions. If you need help with concepts like trigonometry or vectors, feel free to ask on the forums. And sometimes people ask about computer science algorithms (and use big, scary words like lambda which make you look really smart). But one of the biggest topics is the idea of remixing Scratch to make something better—these are called Scratch Modifications (Mods in short).

There have been many, many mods on Scratch, the main ones being BYOB (which introduced lambda), Panther (which can create and read files on your computer and connect to the internet), and Bingo (which can share automatically to a different website, Mod Share). They add customized blocks (at one point a user created a library with over a hundred of these), awesome features, and great new ideas to enhance Scratch.

The best way to enjoy the ATs is to learn the basics of a couple of languages. The most useful are Python, JavaScript, and PHP, since most cool projects are in those languages. Learn how to write and run code and you'll be able to enjoy all the brilliant projects people have. I'm going to let you into some secrets: you can play Scratch projects on iPads, use a Lego robot to control Scratch (and vice-versa), and use Scratch to build a website. It's all thanks to ATers who love to come up with these little toys.

Don't be afraid to ask questions! Nobody judges you based on what you ask, and no question is too basic. Everyone was a newbie once. But don't just ask questions, answer them, too! The ATs work because all the active users are really friendly people who will devote half an hour to write a large article to explain something to you. But return the favor to keep things going – share your knowledge. I cannot begin to imagine how to express how monumentally important this is.

The ATs are a lot of fun. If you love to make cool stuff and hack together fun stuff, you've come to the right place. Be polite, be humble, but have fun: jokes are both accepted and appreciated.

FAQs
Some frequently asked questions on the ATs. Comment below if you want to add an FAQ!

What should I post here? What shouldn't I post here?
If you need help about a project, help with advanced math or physics, or help with computer science or programming languages, you can post your question here. If you want to show off a project you've been working on that is related to Scratch (Scratch mods, etc.), you can post here; but if it is completely unrelated to Scratch (maybe you programmed your own blog or a custom screensaver) post it in Things I'm Making and Creating. Ask about general programming on Stack Overflow, another programming site.

What are Python/PHP/JavaScript?
Python, PHP, and JavaScript are programming languages. So are C and Java. Python and PHP are used to program servers while JavaScript is used to program webpages.

How do I get started making a Scratch Modification?
You will have to learn Squeak, another programming language. Then download the Scratch 1.4 source code and hack away!

How do I share code?
You can share code via a GitHub account. Embed small snippets in [code] BBCode tags. You can specify a language: [code language]. Here's an example for JavaScript:
var x = 0;
for (var i = 0; i <= 100; i++) {
    x += i;
}
alert(x);
A list of languages supported can be found here.

You can host websites on Google App Engine/Heroku/Github Pages, but static HTML pages can be hosted on Google Drive directly.

Can I make Scratch 2.0 mods yet?
Yes! Since the 2.0 source has been released (https://github.com/LLK/scratch-flash), you can edit, compile, and run it on your own. See this tutorial for more.

What's a cache and how do I clear it?
A cache is a feature in your browser that saves webpages to a file so you don't have to load all the content over and over. SInce Scratch 2.0 gets lots of updates these days, you might not see these changes and instead see a cached copy of the site. This is why it is important to clear your cache. This site gives step-by-step instructions for many browsers.

My question isn't listed here. What should I do?
Ask it in a reply to this post! I'll get back to you ASAP.


AT News
General news as well as updates about some specific projects. Comment below if you want to add an update about your project!

May 13th, 2014 – The Flash Player is open-sourced.
May 22nd, 2013 – The scratchblocks2 plugin by blob8108 is running live on the Wiki! Congratulations, blob.
May 9th, 2013 – The ATs are released on Scratch 2.0!

Last edited by Paddle2See (Sept. 15, 2021 00:01:39)

gbear605
Scratcher
35 posts

Welcome to the Advanced Topics!

Hey! Thanks for making this topic. It should probably be ITopic'd. (Or perhaps even sticky'd).

If you wish to contact me, visit my website, escratch.org
Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

Yeah, it used to be stickied on the 1.4 forums, and I'm waiting for some mod to sticky this one. I pinged Lightnin, but he didn't respond (yet!).
blob8108
Scratcher
1000+ posts

Welcome to the Advanced Topics!

I'm sure you'd already made this while we were in beta

tosh · slowly becoming a grown-up adult and very confused about it
Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

I know, this is largely based on that one (I took out the history part because people don't like history too much). Couldn't you tell?
blob8108
Scratcher
1000+ posts

Welcome to the Advanced Topics!

Hardmath123 wrote:

Couldn't you tell?
I suppose; they sound very different to me.

tosh · slowly becoming a grown-up adult and very confused about it
roijac
Scratcher
100+ posts

Welcome to the Advanced Topics!

Nice to have it again!

You should add a link to stackoverflow.com, that will help lots of people

Also, while PHP is only used at servers, python is used all over the place - especially, but not only in the Linux world Python is used for lots of desktop applications (M30W..)

You could also put a list of the most important projects - Snap!, kurt, Panther, sb2.js, M30W etc.
Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

I'll keep updating the news with new projects every couple days. But I'll definitely mention SO. Thanks!
bharvey
Scratcher
1000+ posts

Welcome to the Advanced Topics!

Hardmath123 wrote:

Can I make Scratch 2.0 mods yet?
No–the Scratch 2.0 source is not released yet. It is written in Flash.

The Snap! source is on Github so in principle people can start modding it. but it's still in beta, still changing every day, so instead of making independent versions, it'd be much better if would-be modders fix some bugs and make a pull request. Or talk with us on the Snap! developer thread about new features we'd like someone to implement.

Last edited by bharvey (May 10, 2013 14:36:17)


bharvey
Scratcher
1000+ posts

Welcome to the Advanced Topics!

Hardmath123 wrote:

and use big, scary words like lambda

Hey! Lambda isn't scary.



The grey ring is lambda. It makes a procedure – a block or script – based on what's inside it.

Was that so hard?

Last edited by bharvey (May 11, 2013 14:13:37)


Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

The word's scary, not the concept.

(Actually, one of my friends who joined the dark side (a.k.a. C++ ) and still thinks for loops are the neatest way to do factorials would beg to differ.)

Last edited by Hardmath123 (May 11, 2013 15:13:27)

DigiTechs
Scratcher
500+ posts

Welcome to the Advanced Topics!

bharvey wrote:

Hardmath123 wrote:

Can I make Scratch 2.0 mods yet?
No–the Scratch 2.0 source is not released yet. It is written in Flash.

The Snap! source is on Github so in principle people can start modding it. but it's still in beta, still changing every day, so instead of making independent versions, it'd be much better if would-be modders fix some bugs and make a pull request. Or talk with us on the Snap! developer thread about new features we'd like someone to implement.


But that's Snap!, not Scratch 2.0


I do, in fact, have my own site; it's here.
I'm also working on a thing called Fetch. Look at it here!
@thisandagain pls explain. @thisandagain pls explain. @thisandagain pls explain. @thisandagain pls explain. @thisandagain pls explain.
technoboy10
Scratcher
1000+ posts

Welcome to the Advanced Topics!

@Hardmath and bharvey Yeah, I think if we just had a different notation for lambda (no, first-class procedure doesn't really make it less scary ), it wouldn't be ‘scary.’

Last edited by technoboy10 (May 12, 2013 18:19:28)


trans rights are human rights
blob8108
Scratcher
1000+ posts

Welcome to the Advanced Topics!

technoboy10 wrote:

I think if we just had a different notation for lambda
How is the grey ring scary?

tosh · slowly becoming a grown-up adult and very confused about it
technoboy10
Scratcher
1000+ posts

Welcome to the Advanced Topics!

blob8108 wrote:

technoboy10 wrote:

I think if we just had a different notation for lambda
How is the grey ring scary?
Sorry, I meant terminology, not notation. The concept isn't scary, but the word ‘lambda’ is.

trans rights are human rights
bharvey
Scratcher
1000+ posts

Welcome to the Advanced Topics!

technoboy10 wrote:

Sorry, I meant terminology, not notation. The concept isn't scary, but the word ‘lambda’ is.

“Reify”? “Closure”? “Make-procedure”? “Function”? People have used all those.

bharvey
Scratcher
1000+ posts

Welcome to the Advanced Topics!

DigiTechs wrote:

But that's Snap!, not Scratch 2.0

I know, but people who are desperate to start modding could get their fix that way.

Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

News!

The scratchblocks2 plugin by blob8108 is running live on the Wki! Congratulations, blob.
dsaztur
Scratcher
500+ posts

Welcome to the Advanced Topics!

I have a question: Can I post a topic on how to create a good scratch project here?

no
Hardmath123
Scratcher
1000+ posts

Welcome to the Advanced Topics!

I think it would be better suited in help with scripts.

Powered by DjangoBB