Teaching Programming through FIRST

Created by Patrick Booth / @motleymentor

Patrick Booth

UConn Computer Science & Engineering, Math, Music
RPI Computer and Automation Systems, Robotics
Pratt & Whitney Data Acquisition, Engine Control Simulations

Computer Science for All

"Giving Every Student an Opportunity"

Computer Science for All

CS is a “new basic” skill necessary for
economic opportunity and social mobility.

"Workers of all kinds need to be able to figure out how to break a big problem into smaller pieces and identify the right steps to solve it."

> $4 billion available from federal, institutional, and philothropic sources.

Initiative information on whitehouse.gov

Math class needs a makeover

"An impatience with irresolution."

Math class needs a makeover

Students have lack of initiative, perseverance, and retention, aversion to word problems, and eargerness for formulas.

Conditioning students to unrealistic
problems without purpose.

"What's the point of Hello World?"

More Than Robots

Organization

For Inspiration and Recognition of Science and Technology

“...to show students of every age that science, technology, and problem-solving are not only fun and rewarding, but are proven paths to successful careers and a bright future for us all.”

Matches

Season

Pre-seasonWorkshops
Build seasonDevelopment
CompetitionsOperation
Off-seasonDemos, Experiments, ...

Kickoff

The Robot: "EKIPS"

Languages

C++ / Java

public class Robot extends IterativeRobot {
  public void robotInit() { }

LabView

Resources

wpilib Libraries

Chief Delphi

GitHub

FRCSim

FRCSim

Task: Pick up a ball and fire it autonomously.

FRCSim

Common USB Boot Keys

Dell: Tap F12

HP: Tap F9

Lenovo: Tap F12

Apple Mac: Hold Option

Others: Try tapping Esc, F1-12,
or Enter when the machine first starts

FRCSim

Starting Up

1. Open FRCSim
  Ctrl+Alt+T
  frcsim cte-stem.world

2. Open sim_ds
  Shift+Ctrl+T
  sim_ds

3. Open eclipse
  Shift+Ctrl+T
  eclipse

Running

1. Run Code
 Eclipse:
  Run
   --> Run As
   --> Simulation
  - or -
  Alt+R, S, 2

2. Enable Robot
 sim_ds:
  Autonomous
  Enable

3. frcsim:
 Watch!

Issues

Re-pose Model
 frcsim:
  Ctrl+Shift+R

New Code
 Eclipse:
  Click Terminate
  Re-run

No Response
 sim_ds:
  Restart

Wrap-up

Improve understanding and retention by building purpose.

Build purpose using a challenge as a framework.

Use the framework to lead students through formulating core concepts when they are eager to learn them.

Other Resources

Chicago Requires High School Students to Take CS Classes My Experience Setting-up FRCSim









Created by Patrick Booth / @motleymentor