Build Your Own Blocks/Scratch extensions for Files and Clones
Downloaded: 752
Last edit: 11 November 2022
VERSION 3 NOW AVAILABLE (19/03/2015)
Installing
I've only tested this with Windows, but the changes were developed on a Mac so if you have any problems get in touch.If anyone gets it working on Linux please let me know (when I get time I'll try it here).
Install the 3.1.1 version of BYOB from here, then replace the .image and .changes file with those in the zip file here. The .ypr files are project examples in the new file format (BYOB will load in existing .sb files and convert them). The .cs file is a Squeak changeset, basically the source code for the extensions.
This contains everything from V2 but with the option to hide the basic blocks, leaving only any custom blocks that have been created. Also the custom blocks are displayed first in each category.
The 'Hide basic blocks' setting is saved with a project, so that teachers can make a project which just has custom blocks in it, get students to load this in, and just work with the custom blocks, rather than get distracted with the basic blocks.
One use for this is defining a set of blocks which implement another language (Stefano Federici from Italy has produced a mini-C++ (!), mini-Logo, and I've done some work on a mini-VB and mini-Python). This could help with the transition from block type languages to text based ones.
To hide/show basic blocks for any project hold the shift key down, click the Edit menu, then release the shift key, then toggle (if need be) the setting Hide Basic Blocks.
I've 'hidden' the setting using the shift key to make it harder for students to access.
Sorry, but the SQL blocks mentioned below are still in (early) development.
VERSION 2 NOW AVAILABLE (06/11/2014)
This contains all the extensions from VERSION 1, and to fit in with an article in a forthcoming newsletter on functional programming using BYOB I've made some changes to the (item () of []) and (length of ()) blocks so that they work with lists AND strings.
Following a question on the forums about reading webpages I've borrowed the idea for the (http:// []) and (split [] by []) blocks from Snap! and added them to the BYOB image here. The Word documentation describes all these changes.
VERSION 1
Included here are BYOB.image and BYOB.changes file to replace the ones in the 3.1.1 version to add file handling to the BYOB version of Scratch (anyone who knows Scratch will be able to use BYOB).
I developed this at the suggestion of Ilia Avroutine and Darren Travi, who used a previous version of the extensions for GCSE work.
Also included are a document describing the extensions and some sample BYOB projects.
BYOB, for those who don't know it, adds a lot of power to Scratch, by allowing you to create your own blocks (subroutines/procedures/functions) with parameters. In addition it allows advanced topics such as recursion and functional programming, but you don't have to use these (I've used it to teach these at A-level, and it's been used at the University of California at Berkeley to teach a Beauty and Joy of Computing course).
The File and Clones extensions are released under the Creative Commons Attribution-Share Alike 3.0 License but BYOB is based on the original Scratch code (written in Squeak, a modern version of Smalltalk) which is released under the MIT Scratch License.
We are currently working on a set of SQL blocks as the next extension.
Level: All levels from beginner to advanced
Edit history
John Stout | 11.11.22
Updated the type of the resource
Unlock all resources and events
To access our full library of resources and events create a free account today or login.
If you like this resource make sure you add it to your resource collection to access again or share with the community.
Login Create Account