scratch - intuitive and accessible programming
TRANSCRIPT
ScratchIntuitive and Accessible Programming
What is Scratch?
What is Scratch?
Visual Programming Language“Lets users create programs by manipulating program elements graphically rather than by specifying them textually” - Wikipedia
What is Scratch?
“Three core design principles for Scratch:Make it more tinkerable, more meaningful, and more social than other programming environments.”- Mitchel Resnick et al.
What is Scratch?
Developed at MIT by the Lifelong Kindergarten Group, led by Professor Mitchel Resnick
First released 2002 Website launched 2007 Scratch 2.0 released 2013
What is Scratch?
Designed for ages 8-16 Most users are preteens and teens, but
user age ranges from 4 to 80 Open source, free to use Can be used online or downloaded locally Available in more than 150 countries and
more than 40 languages South Sudan and Antarctica are the only
countries with no users
Technical Requirements for Scratch 2.0
Mac, Linux, or Windows computer Adobe Flash Player (recent version) One of the latest two versions of
Chrome, Firefox, Safari, Edge, or Internet Explorer 10+
Otherwise, Scratch 1.4 can be downloaded and used locally
How doesit work?
How doesit work?
Users connect “blocks”, each of which comprise a section of script.Blocks can render visual or auditory actions, determine triggers for running scripts, create loops, perform operations, and just about anything else other programming languages can.
How doesit work?
1. Motion2. Looks3. Sound4. Pen5. Data
6. Events7. Control8. Sensing9. Operators10. More Blocks
Blocks are presented inten categories:
How doesit work?
Connecting blocks makes the functions run together as a group, sequentially from top to bottom.Under “More Blocks” users can create their own blocks from scratch, or connect their project to external sensors, in particular the Picoboard and LEGO WeDo.
How doesit work?
So this code would result in1. When the character is
clicked, a speech balloon appears with “Hello!” for 2 seconds
2. Then, an infinite loop involving a) the character changing color and moving back and forth and b) two different drumbeats playing begins
What canit make?AnimationsGamesScientific and
mathematic simulations
Interactive art
What canit make?
The Colour Divide – animation series by bubble103
https://scratch.mit.edu/projects/71447764/
What canit make?
Scratchnapped – platformer game by griffpatch
https://scratch.mit.edu/projects/10118230/
Reception
Reception of Scratch has largely been positive, with research illustrating its benefits for beginning programmers
Positive contribution to logical-mathematical thinking skills and overall academic achievement (Korkmaz, 2016)
Helps develop creativity (Korkmaz, 2016) Significantly enables understanding of basic programming concepts as well as
slightly more complex core concepts (Simpkins, 2014)
Reception
Reception of Scratch has largely been positive, with research illustrating its benefits for beginning programmers “Kelleher and Pausch [7] […] noted how systems can
make programming more accessible for novices “by simplifying the mechanics of programming, by providing support for learners, and by providing students with motivation to learn to program” (p. 131). We think that Scratch addresses all three of these areas.” (Maloney et al., 2008)
“Importantly, students report that they consider the transferability of the programming skills they have learnt in a blocks environment to a traditional textual language as very straightforward” (Simpkins, 2014)
Criticism & Controversy
The major criticisms of Scratch include
Ultimately limiting in its programming capabilities (Simpkins, 2014) However, Scratch is only intended as an introductory
tool Technical requirements potentially exclude large
portions of people globally who do not have access to the latest hardware and software Most users are in the US, UK, Australia, and Canada
Criticism & Controversy
Controversy with Apple (Chen, 2010) In 2010, Apple removed the Scratch app from iTunes
“No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s)” – developer agreement, clause 3.3.2
“Scratch doesn’t seem like the sort of thing that one could use to build software that’s even vaguely of the caliber of native iPhone apps” - John Gruber
The Scratch app has since returned to the App Store
Conclusions
Free, open source, and intuitive, Scratch provides a much-needed first step into programming concepts for beginners. Scratch’s use in programming education, from elementary school to universities to individuals in their home, is a testament to its effectiveness. With over 15 million registered users, and numbers of daily users and daily projects posted at their peaks and rising, Scratch does not show signs of slowing down.
Tutorial!https://scratch.mit.edu/projects/editor/?tip_bar=getStarted
References & Further ReadingChen, B. X. (2010, April 20). Apple Rejects Kid-Friendly Programming App. Retrieved December 3, 2016, from https://www.wired.com/2010/04/apple-scratch-app/ Harvard Graduate School of Education. (n.d.). [Scratch blocks]. Retrieved December 1, 2016, from http://scratched.gse.harvard.edu/guide/Video Korkmaz, Ö. (2016, October). The Effect of Scratch- and Lego Mindstorms Ev3-Based Programming Activities on Academic Achievement, Problem-Solving Skills and Logical-Mathematical Thinking Skills of Students. Malaysian Online Journal of Educational Sciences, 4(3), 73-88. The LEAD Project. (2016). [Super Scratch Programming Adventure]. Retrieved December 3, 2016, from https://www.nostarch.com/scratch Lifelong Kindergarten Group. (n.d.). Scratch - Imagine, Program, Share. Retrieved November 29, 2016, from https://scratch.mit.edu/Lifelong Kindergarten Group. (n.d.). Scratch - Imagine, Program, Share. Retrieved December 3, 2016, from https://scratch.mit.edu/statistics/
References & Further Reading
Maloney, J. H., et al. (2008, March). Programming by choice: Urban youth learning programming with Scratch. ACM SIGCSE Bulletin. doi:10.1145/1352322.1352260Resnick, M., et al. (2009, November). Scratch: Programming for all. Communications of the ACM, 52(11), 60-67. doi:10.1145/1592761.1592779[Scratch logo and cat]. (2016). Retrieved December 1, 2016, from http://www.romansrobots.com/courses/Simpkins, N. K. (2014, July-September). I Scratch and Sense But Can I Program? International Journal of Information and Communication Technology Education, 10(3), 87-116. doi:10.4018/ijicte.2014070107Visual programming language. (2016, November 2). Retrieved November 29, 2016, from https://en.wikipedia.org/wiki/Visual_programming_language