32
Introducing Programming to Kids Arun Gupta, @arungupta

Introduce Programming to Kids at Geecon 2014

Embed Size (px)

DESCRIPTION

Introduce Programming to Kids at Geecon 2014

Citation preview

Page 1: Introduce Programming to Kids at Geecon 2014

Introducing Programming to Kids!

Arun Gupta, @arungupta!

Page 2: Introduce Programming to Kids at Geecon 2014

Introducing Programming to Kids!

•  What is a good age ?!•  Analytical skills!•  Logic!•  Structure!•  Mathematics!•  Analogies from their daily life!•  Find what will motivate them!•  Keep it Fun!!

Page 3: Introduce Programming to Kids at Geecon 2014

Scratch!

•  FOSS created by MIT Media Lab!•  2-D visual programming language!•  Drag-and-drop blocks!•  Make interactive stories, animations, games, music, art!•  No need to learn syntax!•  Teach mathematical and computational concepts!•  Browser-based tool!•  Make kids think creative, reason systematically, work

collaboratively!

Page 4: Introduce Programming to Kids at Geecon 2014

scratch.mit.edu!

Stage!

Sprites!

Scripts!

Workarea!

Page 5: Introduce Programming to Kids at Geecon 2014

Fundamental Concepts!

Page 6: Introduce Programming to Kids at Geecon 2014

Mighty Battle of Thumpback, Hothead, and Eruptor!

http://scratch.mit.edu/projects/The_Frog/3191476!

Page 7: Introduce Programming to Kids at Geecon 2014

Attack of the minions!

http://scratch.mit.edu/projects/19011275/#fullscreen !

Page 8: Introduce Programming to Kids at Geecon 2014

Alice!

•  FOSS created by University of Virginia and Carnegie Mellon!

•  3-D environment to teach OO and event-driven!•  Three core issues!•  Teach programming theory!•  Comes with IDE, no syntax to remember!•  Less focus on computation, appeal to specific sub-populations, such as

female students of middle school!

Page 9: Introduce Programming to Kids at Geecon 2014

Alice!

Page 10: Introduce Programming to Kids at Geecon 2014

Getting Started with Alice!

•  Specially targeted at girls in middle school!•  Installers: Windows, Linux, Mac, Generic Zip installer!•  Uses NetBeans platform for installer!•  NetBeans plugin!•  help.alice.org!•  www.aliceprogramming.net!

Page 11: Introduce Programming to Kids at Geecon 2014

Greenfoot!

•  FOSS created as university research project at University of Kent, Canterbury, UK!

•  Create visual and interactive world and teaches OO concepts in Java!

•  ‘Actors’ live in ‘world’ to build games, simulations, etc.!•  Programmed in standard textual Java code!•  IDE provides auto completion, syntax highlighting,

etc!

Page 12: Introduce Programming to Kids at Geecon 2014

Greenfoot!

Page 13: Introduce Programming to Kids at Geecon 2014

Sample Game with Greenfoot!

Page 14: Introduce Programming to Kids at Geecon 2014

Getting started with Greenfoot!

•  Joy of code: thorough introduction using short video tutorials!•  http://blogs.kent.ac.uk/mik/category/joy-of-code/!•  Text-based tutorials, javadocs!•  Greenroom: Exclusive to instructors!•  Greenfoot Hub: Workshops for teachers, F2F training,

support, etc.!•  Encouraged to open local chapter!•  http://greenfoot.org!

Page 15: Introduce Programming to Kids at Geecon 2014

BlueJ!

•  FOSS created as university research project at University of Kent, Canterbury, UK!

•  Teaches object-orientation!•  Supports!•  Fully integrated environment!•  Graphical class structure display!•  Graphical and textual editing!•  Built-in editor, compiler, VM, debugger, etc.!•  Interactive object creation, object calls, testing!

Page 16: Introduce Programming to Kids at Geecon 2014

Getting Started with BlueJ!

•  Implemented in Java!•  Installers: Windows, Linux, Mac, Generic JAR installer!•  Available as NetBeans plugin as well!•  http://bluej.org!!

Page 17: Introduce Programming to Kids at Geecon 2014

LEGO Mindstorms!

•  Software + Hardware to create small, customizable, programmable robots!•  1 NXT brick!•  4 modular sensors (ultrasonic, sound, touch, light)!•  3 servo motors!•  7 connection cables!•  USB interface!•  NXT-G GUI to create/download programs to brick!•  NXT-OS -> Lejos!

Page 18: Introduce Programming to Kids at Geecon 2014

NXT Programming!

Page 19: Introduce Programming to Kids at Geecon 2014

LEGO Bot!

Page 20: Introduce Programming to Kids at Geecon 2014

FIRST LEGO League!

Page 21: Introduce Programming to Kids at Geecon 2014

Arduino!

Page 22: Introduce Programming to Kids at Geecon 2014

Minecraft!

•  Breaking and Placing Blocks in 3D environment!•  ~Infinite bucket of LEGO!•  Game!•  Modes: Creative, Survival, Adventure, Hardcore!•  Redstone: Logic gates!•  Download and Purchase!•  Minecon!

Page 23: Introduce Programming to Kids at Geecon 2014

Extremely Creative!

Page 24: Introduce Programming to Kids at Geecon 2014

Extremely Creative!

Page 25: Introduce Programming to Kids at Geecon 2014

Minecraft Mods!

•  Changes the game from what it was originally written!•  Make TNT explosions bigger, craft/smelt new items, flaming pigs, …!•  Client-side and server-side mods!•  Several ways to mod!•  Forge, Bukkit, Scriptcraft!

Page 26: Introduce Programming to Kids at Geecon 2014

Modding Tutorial!

http://bit.ly/minecraft-tutorial!!

Page 27: Introduce Programming to Kids at Geecon 2014

Devoxx4Kids!

•  Started in 2012 by Devoxx Team!•  Teach kids!•  Programming!•  Robotics!•  Engineering!•  …!•  Chapters all over the world – open a local one today!!•  Having fun is a key aspect!!

Page 28: Introduce Programming to Kids at Geecon 2014

Devoxx4Kids!

Page 29: Introduce Programming to Kids at Geecon 2014

Devoxx4Kids!

Page 30: Introduce Programming to Kids at Geecon 2014

Devoxx4Kids!

Page 31: Introduce Programming to Kids at Geecon 2014

Workshops!

Page 32: Introduce Programming to Kids at Geecon 2014

Resources!

•  devoxx4kids.org!!

•  Open a local chapter: devoxx4kids.org/join-us/!!

•  http://parleys.com/channel/51b6ea81e4b0065193d63047/presentations?sort=date&state=public!