This is a read-only archive of the old Scratch 1.x Forums.
Try searching the current Scratch discussion forums.

#1 2010-05-27 15:24:29

johnm
Scratcher
Registered: 2007-03-08
Posts: 100+

ITopic: Working together in Squeak

Hello, everyone.

[This post is aimed at those making custom versions of Scratch, who find themselves writing code in Squeak. I originally posted this on the Panther Development thread, but Lightnin asked me to post it as a separate topic so it wouldn't get lost.]

I am very impressed that so many folks are creating their own versions of Scratch and exploring the underlying Squeak language.

Squeak was built by a bunch of people working together (I was one of them). When you are working as a team, it's better to not worry about who did what. Most good ideas are really collaborations; even if it seems like a brand new idea, the seeds for it probably came from earlier ideas by others. So my advice for working together is to focus on collecting the best ideas and making the greatest possible overall system, and don't waste time arguing about who contributed which bits. (Scratch itself is collaboration among dozens of people, and even those involved don't remember who contributed which ideas.)

But on to practical matters...

As some of you know, Squeak automatically records all the changes you make to methods and classes and has tools for managing and sharing such "change sets". Here are some notes about this from the Squeak wiki:

  http://wiki.squeak.org/squeak/674

If you are working with other people, either many others or just one, it helps to have one person take the job of "changes coordinator". The changes coordinator is responsible for collecting change sets from all the contributors, filing them into one Squeak image, resolving conflicting changes (i.e. when the same method is changed by several people), and creating a new version of the Squeak image that everyone else can start using and building on. The changes coordinator job is a lot of work and responsibility, but it's also very rewarding. You learn how every part of the system works, and you get to use your judgment when deciding what to include and how to resolve conflicts.

Incidentally, I emailed Alan Kay, who invented the Smalltalk language and created Squeak, to tell him about all the exciting work you have been doing with custom versions of Scratch. When Alan created Smalltalk and Squeak, he dreamed of people changing the system itself, just as you are doing.

Scratch on!

  -- John

Offline

 

#2 2010-06-04 18:51:27

Billybob-Mario
Scratcher
Registered: 2008-01-05
Posts: 500+

Re: ITopic: Working together in Squeak

For some strange reason, Slash doesn't have a changeset. Is it hidden somewhere, or missing?

Offline

 

#3 2010-06-04 22:32:26

cds56
Scratcher
Registered: 2008-05-02
Posts: 500+

Re: ITopic: Working together in Squeak

Billybob-Mario wrote:

For some strange reason, Slash doesn't have a changeset. Is it hidden somewhere, or missing?

Did you make your changeset?

When you're in editing code, go into the world menu, and open a new change sorter.

add a new category, like slash and right(?)click "Make changes go to me" and then that's that.


http://img192.imageshack.us/img192/909/meowdevlogo.pnghttp://i32.tinypic.com/pucti.png

Offline

 

#4 2010-06-05 01:31:24

Subh
Scratcher
Registered: 2010-05-25
Posts: 100+

Re: ITopic: Working together in Squeak

I am making a GUI encrypter-decrypter using Scratch.

For that I need these features very much -
1) a button/ program (like stamp) which can alter the sprite under it when it stamps
2) a way to find the no. of the Colour of a Given Pixel (FAST because I'll use it atleast 10 times in 1 project)

Please can anyone Knowing Squeak answer the questions I am asking. I would be very obliged if anyone answers it.

Thank You


http://wiki.scratch.mit.edu/skins/scratch/logo.png     I'M IN Scratch Wiki .... ARE YOU ????

Offline

 

#5 2010-06-05 02:01:06

adriangl
Scratcher
Registered: 2007-07-02
Posts: 1000+

Re: ITopic: Working together in Squeak

For some reason, I am behind with this. I suddenly saw all these people making their own versions of Scratch and I still do not know how to program in Squeak. Does anyone know a good tutorial?


Scratchin' since 2007

Offline

 

#6 2010-06-05 09:37:02

midnightleopard
Scratcher
Registered: 2007-09-13
Posts: 1000+

Re: ITopic: Working together in Squeak

adriangl wrote:

For some reason, I am behind with this. I suddenly saw all these people making their own versions of Scratch and I still do not know how to program in Squeak. Does anyone know a good tutorial?

Google Squeak by example


http://pwp.wizards.com/5103673563/Scorecards/Landscape.png

Offline

 

#7 2010-06-10 07:28:00

Billybob-Mario
Scratcher
Registered: 2008-01-05
Posts: 500+

Re: ITopic: Working together in Squeak

What is the file extension for a changeset? I might have fixed it.

Offline

 

#8 2010-06-10 07:34:26

Billybob-Mario
Scratcher
Registered: 2008-01-05
Posts: 500+

Re: ITopic: Working together in Squeak

Also, how do you use them?

Offline

 

#9 2010-06-10 08:24:32

likegames
Scratcher
Registered: 2008-03-24
Posts: 100+

Re: ITopic: Working together in Squeak

.changes


There are 10 types of people in this world: Those who understand trinary, those who don't, and those who think this is the same old signature.
Three lines! (and base three!)

Offline

 

#10 2010-06-10 08:52:02

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: ITopic: Working together in Squeak

Changesets have the extension *.cs

You can file them out from one image using the change sorter tools and into another one using the file list tool within Squeak. If you've created a whole class or just a single method you can file out or file in those directly from the system browser, then their extension is *.st. You can also file in *.st files in the file list tool. Before or while filing them in you can inspect and browse them and see how they differ from the existing methods in your system.

The *.changes and *.sources files is where Squeak keeps versions of saved methods and where it looks up the names of variables and comments. They're part of the code "database", and are not the actual "source code" themselves.

Last edited by Jens (2010-06-10 08:55:04)


Jens Mönig

Offline

 

#11 2010-06-10 15:13:46

Billybob-Mario
Scratcher
Registered: 2008-01-05
Posts: 500+

Re: ITopic: Working together in Squeak

> Jens wrote:

> Changesets have the extension *.cs

You can file them out from one image using the change sorter tools and into another one using the file list tool within Squeak. If you've created a whole class or just a single method you can file out or file in those directly from the system browser, then their extension is *.st. You can also file in *.st files in the file list tool. Before or while filing them in you can inspect and browse them and see how they differ from the existing methods in your system.

The *.changes and *.sources files is where Squeak keeps versions of saved methods and where it looks up the names of variables and comments. They're part of the code "database", and are not the actual "source code" themselves.

Then I found it! How do you import them into things?

Offline

 

#12 2010-06-10 16:28:21

Jens
Scratcher
Registered: 2007-06-04
Posts: 1000+

Re: ITopic: Working together in Squeak

Billybob-Mario wrote:

> Jens wrote:
Then I found it! How do you import them into things?

you can import a changeset by opening a FileList in Squeak (WorldMenu - open), right clicking on the changeset and choosing "fileIn". You can also open a changeset in a WorkSpace, select the parts you want to file in and choose "fileIn".


Jens Mönig

Offline

 

#13 2010-06-10 17:46:57

Billybob-Mario
Scratcher
Registered: 2008-01-05
Posts: 500+

Re: ITopic: Working together in Squeak

I tried to import slash into BYOB (I used the Elements editor to make a fill screen off block) and I got all sorts of errors. Do you have any suggestions?

Offline

 

#14 2010-08-31 08:31:26

hpotter134
Scratcher
Registered: 2010-02-21
Posts: 100+

Re: ITopic: Working together in Squeak

Subh wrote:

I need these features very much -
1) a button/ program (like stamp) which can alter the sprite under it when it stamps
2) a way to find the no. of the Colour of a Given Pixel (FAST because I'll use it atleast 10 times in 1 project)

I agree. We really could use a "Stamp on [Sprite1]" block. I wanted to make a scrolling graphing calculator, where the background is "scrollable" and where the pen draws on the background sprite.

Any suggestions as to how I can make this in Smalltalk?


http://i45.tinypic.com/fxgtvc.png

Offline

 

#15 2010-08-31 09:14:13

johnnydean1
Scratcher
Registered: 2010-02-12
Posts: 1000+

Re: ITopic: Working together in Squeak

hpotter134 wrote:

Subh wrote:

I need these features very much -
1) a button/ program (like stamp) which can alter the sprite under it when it stamps
2) a way to find the no. of the Colour of a Given Pixel (FAST because I'll use it atleast 10 times in 1 project)

I agree. We really could use a "Stamp on [Sprite1]" block. I wanted to make a scrolling graphing calculator, where the background is "scrollable" and where the pen draws on the background sprite.

Any suggestions as to how I can make this in Smalltalk?

I thought of this before.

Lets say you have all the sprites listed. Before each block executes all the sprites clear and then stamp. Then you can make a block to do something, to draw ontop!


You can now reach me on Twitter @johnnydean1_

Offline

 

#16 2011-08-18 10:11:47

xt449
Scratcher
Registered: 2010-04-18
Posts: 65

Re: ITopic: Working together in Squeak

Can someone code a squeak block out of this please?:
http://img825.imageshack.us/img825/3505/ozoneswitchvalue.gif

What it is supposed to do is, if the variable if true set it to false, if it is false set it to true.

Thank you!

Last edited by xt449 (2011-08-19 21:20:55)


Check Out My Newest Project: http://blocks.scratchr.org/API.php?user=xt449&action=projects&type=newest&return=text&num=1
I LIVE on my iPod Touch

Offline

 

#17 2012-03-11 10:08:49

rdococ
Scratcher
Registered: 2009-10-11
Posts: 1000+

Re: ITopic: Working together in Squeak

xt449 wrote:

Can someone code a squeak block out of this please?:
http://img825.imageshack.us/img825/3505 … hvalue.gif

What it is supposed to do is, if the variable if true set it to false, if it is false set it to true.

Thank you!

Code:

switchVariableState: variable
variable = true
ifTrue: [
variable _ false].
ifFalse: [
variable _ true].

If it's false, it sets it to true. If it's true, it sets it to false.  wink

Offline

 

Board footer