From Things to the Internet: Teaching Kids to Code Java on the Raspberry Pi Ian Utting & Fabio Hedayioglu.

Slides:



Advertisements
Similar presentations
Introduction to Raspberry Pi
Advertisements

Media Player for the i.MX31 Advanced Embedded Systems Architecture Class Project May 14, 2011 Rafael Castro Ryan Ugland Carlos Cabral.
BEYOND SMARTPHONES WITH RASPBERRY PI BY - ASHISH KSHIRSAGAR.
Internet of Things with Intel Edison Presentation Paul Guermonprez Intel Software
Teaching Kids to Program Things with Java and the Raspberry Pi Ian Utting & Fabio Hedayioglu.
Introduction to the Raspberry Pi ® Saman Amighi 10/2013 ® Raspberry Pi Foundation.
Embedded Programming and Robotics Lesson 12 Introducing the Raspberry Pi Intro to Raspberry Pi1.
RaspberryPi Ira Goldstein Siena College. What is a Raspberry Pi? University of Cambridge’s Computer Laboratory – Decline in skill level – Designed for.
SINGLE BOARD COMPUTERS -KEVIN JOSE. WHY DO WE USE THEM? Good performance at low price GPIO capability to interact with the outside world Small form factor,
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Exercise #1: Exploring Open- Source Operating Systems with Virtual Machines J. H. Wang Mar. 9, 2010.
Raspberry Pi.
By Naveed Ahmad! How to setup a. First of all, what are the parts of a Raspberry Pi? Source:
1 First BlueJ Day, Houston, Texas, 1st March 2006 Writing BlueJ Extensions Ian Utting University of Kent.
Home Intrusion Detection System Andre, Irena, Priyanka, Balta.
Copyright © by Shayne R Flint Simplified Web Application Development Shayne R Flint Department of Computer Science Australian National University.
Exercise #1: Exploring Open- Source Operating Systems with Virtual Machines J. H. Wang Sep. 25, 2015.
SINGLE BOARD COMPUTERS ARE YOU ON THE RIGHT AIRPLANE?
Introduction :  In the beginning, the calculator is the basic idea of computers out, then that arrived at the large computers.  in1980 or late seventies.
Connected Hardware for Software Engineers 101 Pance Cavkovski, Netcetera.
F28HS Hardware-Software Interface Lecture 0: Overview.
Rasberry pi 2 model B. Selve computeren i rasberry pi’en.
Raspberry Pi Project Control Your Home Lights with a Raspberry Pi.
Introducing the Raspberry Pi Nauru ICT Department April 2016.
Farhin Al Masud What is Raspberry PI? o Low cost, credit card sized computer o SOC (System on a chip) o Founded by Raspberry PI foundation.
Raspberry Pi. Introduction The Raspberry Pi is a credit-card sized computer It can be plugged into your TV and a keyboard, and can be used for many of.
Raspberry PI 2 Installation & Demo App By Wayne Keadle.
University of Wisconsin-Whitewater. What is a Raspberry Pi?  Low cost, ARM based computer the size of a credit card  Uses SD card for persistent storage.
An introduction to the Raspberry Pi. What is a Raspberry Pi?  University of Cambridge’s Computer Laboratory  Decline in skill level  Designed for education.
Flowcharting Workshop
SAURABH GINGADE 12311A0480. The Raspberry Pi is a credit-card sized computer.
RaspberryPi.
Engineering Innovation Center
Another slice of pi Hands-ON with the raspberry pi computer
Building Raspberry Pi Controllers with Python
Introduction to Raspberry Pi & Kano
Workshop on Raspberry Pi 3
Computer System Laboratory
Mandava Institute of Engineering and Technology
Ira Goldstein Siena College
IoT Milos Hampl.
IoT 101 with Raspberry Pi and Azure
Raspberry Pi.
Multi-Platform User Interfaces using HTMLRenderer
Chapter A - The Raspberry Pi Computer
IzoT™ Device Stacks March 2014.
Remote Sensor Interface for IoT
A microcontroller Raspberry Pi 2 Model B V1.1 RPi
Alþingi's Digital Signage System
Programming with Arduinos and Rapsberry Pi
Raspberry Pi Pi 2 Model B.
PRESENTED BY Bitware Technologies
An introduction to the Raspberry Pi
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Raspberry Pi. Introduction to Raspberry Pi Python Electronics Linux Outline.
What we learn during Program
Presenter: Nicholas Exner
Building an Internet of Things Device
What is a Raspberry Pi? The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or TV, and uses a standard keyboard.
AI Stick Easy to learn and use, accelerate the industrialization of artificial intelligence, and let the public become an expert in AI.
Chapter 7 –Implementation Issues
Workshop GPIO I2C SPI Panic1 woensdag 10 april 2019.
Beginning Raspberry Pi
Single Board Computers and Dev Boards
Introduction to Single Board Computer
Emphasis: Get it working and do stuff!
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
Internet of things - IoT
Real-time Object Recognition using deep learning-Raspberry Pi
Raspberry Pi Hardware By: Mike Kwiatkowski.
Presentation transcript:

From Things to the Internet: Teaching Kids to Code Java on the Raspberry Pi Ian Utting & Fabio Hedayioglu

Overview What is the Pi? What is the Pi for? Developing for/on the Pi Java for the Pi BlueJ for the Pi Challenges Demo

What is the Raspberry Pi? A small, cheap, self-contained, Linux machine Based on a Broadcom SoC: 900MHz ARM Cortex-A7, 1GB SDRAM VideoCore IV GPU (OpenGL, 1080p, H264) HDMI out 40 GPIO pins, I2C, CSI (Camera) etc. Ethernet and 4xUSB 2.0 (e.g. for WiFi) Raspbian Linux boots from Micro SD

What is the Raspberry Pi for? To support/encourage/revive programming in schools Conceived as an IoT sensor/actuator platform: Many daughter boards available But also as a desktop replacement: Needs a keyboard/mouse and screen (TV or monitor) In schools, crucially, it doesn’t need “permission” Outsourcing of schools’ IT support C.f. the Apple 2/spreadsheets story.

Developing for the Pi: 2 approaches Develop on a separate machine, treat the Pi as a slave Allows use of standard tools (but their generality adds configuration complexity), and permission to install Requires a second machine (and significantly complicates the execution model for beginners) Develop on the Pi itself Simplifies deploy/debug cycle Standard tools (NetBeans/Eclipse) are too heavy, so use lightweight IDEs (IDLE) or vi/emacs and the command line Mention IDLE -- Python lightweight REPL/IDE

Java on the Pi: 2 approaches Java ME Wants to be headless – no GUI APIs Unfamiliar i/o mechanisms (GCF etc.) Views the Pi as a gateway platform for embedded systems Very little support and material for beginners Java SE Includes Swing and JavaFX Uses standard networking libraries Pi4J library provides good access to GPIO etc. Views the Pi as a desktop machine with hardware extensions Lots of material and support for beginners available

BlueJ on the Pi BlueJ is a lightweight Java SE IDE designed for beginners. Used by ~2.5M students/year It includes complete (but basic) IDE functionality: edit, compile, execute, debug, and version control It also includes direct object manipulation through the GUI – great for exploring APIs and behaviours Pre-installed on the standard Raspbian desktop

It’s about The Internet and Things Pi hardware is capable – real-time video with face recognition is feasible Pi networking is easy (java.net.*) This lets us link things (a small camera) to the internet (social networking – Twitter) Our demo is about change detection – if we’d been sure of the room we’d have done it with door opening and tweeted the faces, as it is …

Demo

Summary The Pi is a great platform for beginners to explore IoT Self-hosted development is much easier for beginners than using remote Pro Tools An IDE helps beginners focus on the task-in-hand Abstractions of real Things into Java classes helps beginners to start progreamming for IoT Allowing exploration of the implementation of those abstractions helps advanced students go further More details and demos: bluej.org/raspberrypi