79

JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved in STEAM

Embed Size (px)

Citation preview

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Techniques for Getting More Kids, Especially Girls, Involved in STEAMHeather VanCura - Oracle, JCP ChairmanSharat Chander - Oracle, Director Dev/RelNilay Yener - Google, Community ManagerTheresa Nguyen - Tomitribe, VP Sales & MarketingNikhil Nanivadekar - Goldman Sachs, VP

October 2, 2017

2

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Tutorial Agenda

● Overview of Techniques (15 min) - Heather

● Q & A (10 min) - All

● Deep Dive into Topics (80 min):

○ Scratch (20 min + Q & A) - Nilay

○ Lego Mindstorm and Raspberry Pi (25 min + Q & A) - Nikhil

○ Robotics Competition & The League of Amazing Programmers

(20 min + Q & A) - Theresa

○ Case study - Devoxx4Kids USA (5 min) - Nilay

○ How to put coding into everyday life (5 min) - Sharat

● Resources and General Q & A (10 min) - All

1

2

3

4

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

OVERVIEW OF TECHNIQUES

Heather VanCura

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Demand for Tech Jobs - Key Skill for Future

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

The First Computer Programmer

● A shift from the one with the best technical skills wins (brogrammer working alone)

● To…the one with the best people skills wins (still need technical skills + teams collaborating and communicating together)

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Consider adding social and creative aspects

• Important to success in future

• Attractive to all kids

• STEAM - Science, Technology, Engineering, Art, Math

• Poetry, create art with circuits, sensors, makerer

• Add social ice breaker activity

• Role Model activities, pair programming

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Technology Reflects the People Who Make It

• Women represent just 14% of the technical engineering workforce

• National Science Foundation found*:

– 1985 > 35% CS majors were women

– 2014 ~ 18% CS majors were women

• Inclusive & not exclusive help (developers & non-developers can help) – Women volunteers should be doing the real work, not just the housework

(food, organizing, etc)

– You do not need to be a developer to help in the workshops

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Gen

der N

eutral &

Gen

der

Balan

ced M

aterials

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Gen

der N

eutral &

Gen

der

Balan

ced M

aterials

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Gender Neutral & Gender Balanced Materials

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Gender Neutral & Gender Balanced Materials

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Role Models are Key - Especially for Girls

• What does a girl imagine when she thinks of a scientist or engineer?

• Before meeting a role model: He is dedicated to work...kind of crazy, talking quickly….can be annoying

• After meeting a role model: Scientists lead a normal life outside of work.

• Break the stereotype of scientists and engineers by:– Introducing girls to STEM professionals– Connecting science concepts to real careers– Helping girls imagine themselves

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Middle School Art

Before After

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Make it Meaningful

• Connect activities to:

– Their lives

– Local community

– Careers

– Other activities or disciplines

– Helping others and making a difference

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

How Should Volunteers Talk

• Use kid friendly language

• Share academic and career path

• Show how people in STEM fields can change the world

• Include personal interests and hobbies to combat the stereotype that tech workers do not have a personal, family or social life

• Creativity– Avoid perfection trap– Volunteers encourage kids to try on their own– break it down into steps

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Age Appropriate Techniques - Elementary School Students

• Can be lead to teach themselves

• Likely to grasp abstract concepts and run with it (to suit their needs)

• Goal oriented & interested in progressing through levels

• Depth of program offering keeps students motivated and progressing

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Age Appropriate Techniques - Middle School Students

• Mix bag

• Half prefers to work on team projects

• Half prefers to work alone

• Engage students by making the a part of the community

• Proving opportunity to mentor newer, younger students

• Enjoy more challenging puzzles and problems

• Teachers competing with students attention – puberty (losing battle)

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Age Appropriate Techniques - High School Students

• Can be lead to teach themselves

• Likely to grasp abstract concepts and run with it (to suit their needs)

• Goal oriented & interested in progressing through levels

• Depth of program offering keeps students motivated and progressing

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Age Appropriate Techniques - Demographics

• Teaching Homogenous-Gender Classes – Less distraction (with each other)

– More focused on work at hand.

• Underserved students– Slower pace

– Lower expectation of completion for each class session

– More difficulty retaining information• offer lots of review and repetition (Key)

– Lower concentration stamina• offer more frequent water, restroom or chit-chat breaks if needed

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Logistics

• Format - full day event or workshop; leverage existing resources

• State any hardware requirements upfront

• Wireless and downloads in advance - send to participants

• Bring on Flash Drive/USB stick

• Media Releases for photography

• Parents - what do you want them to do onsite, prompt and supportive, educate

• Dietary needs - pizza, healthy snacks, water/juice

• Volunteers - prepare them in advance

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Q & ADEEP DIVE TOPICS

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

SCRATCH How Scratch Supports STEAM?

Nilay Yener@nlycskn

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Scratch

• Fun, easy to use, drag and drop programming language

• Enable kids to create their own games, stories, animations and share with others

• Available at http://scratch.mit.edu

• Free and accessible

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

How does Scratch supports STEAM?

• Scratch provides lots of learning tools to teach coding and creative computing (free and accessible)

• Covers coding concepts• Teaches and practices Computational Thinking

– Concepts – Processes – Perspective

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

What’s Computational Thinking?

Steps of computational thinking :

• Break the problem into manageable parts

• How current problem relates to previously solved problem

• Set aside the info that isn’t needed

• Come up with the steps that are required to solve this

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Why Computational Thinking?

Helps with teaching computer science

Transfers to the other areas of learning (Biology, Literature, Art, Mathematics )

Confidence and persistence with complex problems

Builds on and reuses the prior knowledge

Ability to deal with open ended problems

Connecting and communicating with others

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Scratch

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Computational Thinking With Scratch

Kids engage with a set of computational concepts that are common in programming languages

• Sequence• Loops• Parallelism• Events• Conditionals• Operators• Data

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Computational Thinking With Scratch

Kids create computational strategies and processes for developing media

• Experimenting and iterating• Testing and debugging• Reusing and remixing• Abstracting and modularizing

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Computational Thinking With Scratch

Perspective shifts while working with Scratch

• Expressing - "I can create."• Connecting - "I can do different things when I have access to others."• Questioning - "I can (use computation to) ask questions to make sense of

(computational things in) the world."

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Set up workshop

• 1-2 hour workshop• Experience level

– No experience - Start from basics – Experienced - Games, animations, shared projects

• Have kids using their own computer– Working together is good but learning the first stages and exploring the

programming environment on own computer might be more comfortable• Send installation and account creation guidelines before the workshop

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Set up environment

• Scratch can be run from web browser or Flash installed computer

• Offline editor at https://scratch.mit.edu/scratch2download/

• You can save your project, download on your computer and upload again

• Create an account

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Games, Stories, Animations

Flappy parrot game

https://scratch.mit.edu/projects/125009520/

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

LEGO MINDSTORM & RASPBERRY PI

Nikhil J. Nanivadekar@nikhilnanivade

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Lego Mindstorms

Image: https://www.lego.com/en-us/mindstorms/products/mindstorms-ev3-31313

•Combines Lego elements with a programmable brick•Kit contains sensors and servo motors•Available at all leading stores

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Heart of EV3 (Programmable Brick)

• TI Sitara AM1808–ARM9, 300Mhz

•64 Mb RAM / 16 Mb Flash expandable• Analog to Digital Converter• 4 Motor Ports• 4 Sensor Ports• Bluetooth compatible• Wi-Fi compatible• USB connectivity

Reference: http://www.slideshare.net/steveonjava/devoxx4kids-lego-workshop?ref=http://steveonjava.com/java-lego-workshop-4-kids/ Image: https://www.lego.com/en-us/mindstorms/products/mindstorms-ev3-31313

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

EV3 Programer App

• Simulink based drag-drop programming interface available• Visual and graphical programming interface• Available at Mindstorms website

Image: https://www.lego.com/en-us/mindstorms/apps/ev3-programmer-app

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

EV3 Programer App - Demo

Image: https://www.lego.com/en-us/mindstorms/apps/ev3-programmer-app

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

EV3 with Programming Languages

• Drag and drop interface good for simple programs• No ability to store variables• Fine motor control not possible• EV3 is programmable using different languages like Java, Python

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

LeJos

• Runs standard Java Virtual machine• Does not run Lego software• Write code similar to a standard Java project• Better motor control, faster processing, open source• Instructions available on Lejos Wiki

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

import lejos.remote.ev3.RemoteRequestEV3;import lejos.remote.ev3.RemoteRequestPilot;import lejos.utility.Delay;public class JavaOneDemoMain { public static void main(String[] args) throws Exception{ RemoteRequestEV3 ev3 = new RemoteRequestEV3("10.0.1.1"); ev3.getPort("B"); ev3.getPort("C"); RemoteRequestPilot pilot = (RemoteRequestPilot) ev3.createPilot(30.0, 140.0, "B", "C"); pilot.setRotateSpeed(500); pilot.setTravelSpeed(500); pilot.forward(); Delay.msDelay(2000); pilot.stop(); pilot.rotate(-90); pilot.rotate(180); ev3.disConnect(); }}

LeJos Demo

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Make the LEGOs work

• Kit contains LEGO parts• Easy to be creative and have amazing creations using basic LEGO blocks

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Salient Points of LEGO workshop

• Keep it easy• Keep it attainable• Do not make big groups (3-4 kids/group is optimum)• Generally participants enjoy building the models• Give incremental problems

– Example: • Step 1: Build an elevator • Step 2: Make elevator go up and down• Step 3: Add logic to wait for button press

• Do test runs with smaller groups

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Stryker Demo

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Elevator Demoimport lejos.hardware.Button;import lejos.hardware.motor.Motor;import lejos.hardware.motor.NXTRegulatedMotor;public class Elevator { public static void main(String[] args) { NXTRegulatedMotor motor = Motor.A; while (true) { int button = Button.waitForAnyEvent(); if (button == Button.UP.getId()) { motor.rotate(900); } if (button == Button.DOWN.getId()) { motor.rotate(-900); } if (button == Button.ENTER.getId()) { break; } } System.exit(0); }}

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Raspberry Pi

• Low cost computer < $35• Monitor, keyboard, mouse, other peripherals needed separately • Raspbian official OS backed by Linux• Developed by Raspberry Pi Foundation, UK

Images: L https://www.raspberrypi.org/products/raspberry-pi-3-model-b/ R https://www.raspberrypi.org/downloads/

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Raspberry Pi

Images:L http://elinux.org/RPi_HardwareR https://www.raspberrypi.org/forums/viewtopic.php?t=4751

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Raspberry Pi - Specs

• Broadcom BCM2837• 1.2 GHz quad-core ARM Cortex A53• GPU: Broadcom VideoCore IV @ 400 MHz• Memory: 1 GB• Ethernet, Wi-Fi, Bluetooth, USB• Source

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Salient Points of Raspberry Pi workshop

• Keep it easy• Keep it attainable• Work in pairs (max 3 kids as an exception)• Spend very less time presenting• Participants will spend majority of time coding• Create exercises such that participants get quicker feedback• Get volunteers to help out• Make volunteers solve the problem as a test run• Get help from Raspberry Pi experts

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Raspberry Pi with Java

•Getting started•Line Runner•IoT Hat•etc.

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

IARoC COMPETITION &THE LEAGUE OF AMAZINGPROGRAMERS

Theresa Nguyen

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• International Autonomous Robot Competition• iARoC:

– Robocamp - teamwork & test environments– Competition Goals

• Mission 1 - Speed Event (drag race)• Mission 2 - Navigation Event (maze)• Mission 3 - Target Acquisition Event (robot to “claim” a target/beacon)• Mission 4 - Technical Briefing

– Hardware• iRobot Roomba• Sensors: ultrasonic, infrared, bump• Raspberry Pi (Prior: Lego mindstorm, android phones, ioio board, etc)

– Software: Java (GitHub, Eclipse Maven, Netbeans or IntelliJ)

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• Mission 1 - Speed Event– From A to B as fast as possible– Bonus points for “no touch”– Bonus points for “return”

• Physical– Hardware & Environment

• Software– Strategy: full speed or sensors– Java to program hardware

(wheels & sensors), logic, data point• Competition - gender blind

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• Mission 2 - Navigation Event– Fastest speed & shortest distance traveled– 1st objective - map & finish maze– 2nd objective - clean run

• Challenges– Initial programming– Wall hugs– Sensors: findings, readings, usability– Software updates

• Levels– Younger - finish the maze– Older - meet the objectives

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• Mission 3 - Target Acquisition– PVC pipes with 3 beacons– Objective is to claim designated target– All robots

• Challenges– 20+ robots in the field– Which algorithm to use– Lots of luck!

• Atmosphere– Participants - boys and girls– Parents and other adults– Cheers and more cheers!

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• Mission 4 - Technical Briefing– PPT presentation– Team of 2 - 6 kids– All boys, all girls, mix– Grouped by experience/class level– Q & A for the judge

• Challenges– Judge: Age, experience, PPT skills– Kids: Time & mentor help

• Observed behaviors– Girls vs Boys vs Mixed Teams– Presentation skills with age

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• By The League of Amazing Programmers - www.JoinTheLeague.org• Students: grades 5-12 (10 - 18 years old)• Program (501c - nonprofit programming school)

– After school and weekend with open labs, year round– Taught by professional developers (using The League’s curriculum)– Levels: 0-9 (10 levels)– Average duration - 5 years– Max: 7 students (6-8 average)– Goal 1 - Past AP exam – Goal 2 - UCSD Extension credits – Goal 3 - Oracle Java Certification – Scholarships availability

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Robotics - iARoC

• The League’s Curriculum– Workshops - prerequisite for enrollment– Level 0 - Logic, Loops & Variables (Eclipse, Makey Makey, TKP’s Tortoise)

– Level 1 - Objects & Methods (GUI with Java’s SWING API)

– Level 2 - Beginner Project (2-3 students per mentor, write clean & readable code, GitHub, ends w/ presentation)

– Level 3 - Data Structures & Algorithms (list, stacks, hashmaps, algorithms, unit testing, JUnit)

– Level 4 - Advanced Object-Oriented Programming (polymorphism, abstraction, inheritance, encapsulation)

– Level 5 - AP Computer Science Exam Prep (9/10 students, early as 7th grade, write code on paper)

– Level 6 - Advanced Community Service Project (3-4 mo. society impacting project, web or mobile apps)

– Level 7 - Software Craftsmanship (refactoring, clean code, TDD, design patterns, working w/legacy, Eclipse Ninja)

– Level 8 - Oracle Java Certification (Oracle Certified Associate, Java SE 7 Programmer, >65%)

– Level 9 - Ready for Work or College (start work, college/university, internship)

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

DEVOXX4KIDS CASE STUDY

Nilay Yener@nlycskn

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Devoxx4Kids USA Case Study

https://www.meetup.com/Devoxx4Kids-BayArea/

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Devoxx4Kids USA

● Non Profit and 501(c)(3) Organization

● Get kids excited about technology● Introduce technology in a fun way

Devoxx4Kids-BayArea

@Devoxx4KidsUSA

Devoxx4Kids USA

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Devoxx4Kids USA

• San Francisco/ Bay Area• Portland• Redmond• Denver• Chicago• Connecticut• Maryland• Atlanta

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Workshops

• Minecraft

Modding

• BB8 Programming

• Arduino

• Python

Programming

• Circuit Art

• Scratch

• Raspberry Pi

• Basic of HTML

• Lego Mindstorm

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

MineFest

All day festival

8 different workshops

Minecraft battle

Fun!

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

2016 - attendees 2017 - presenters/instructors

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Get involved..

• Become a presenter• Become a volunteer • If there isn’t a chapter in your city, start a chapter• Donate cash• Help with outreach - schools, corporations, sponsors• Host a workshop in your school or company

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

HOW TO PUT CODING INTO EVERYDAY LIFE

Sharat Chander@sharat_chander

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Q & A

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Resources

• Local corporations

• Professional volunteers

• Non-profits

• Scholarships

• List global organizations (conferences):– JavaOne4Kids– Devoxx4Kids – Hour of Code (code.org) , etc

• Local organizations available:– Code Club (London, Brazil)– Amazing League of

Programmers (San Diego)– Girls Who Code– TechBridge Girls– Black Girls Code– Girls Teaching Girls to Code

(Stanford) – Playing at Learning

Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |

Q & A