Skip to content
David Weis edited this page Sep 1, 2019 · 17 revisions

Prewired Workshops

Motivation

Although the main ethos of Prewired is to support attendees in developing their own projects, it can also be useful to give them more structured input in the form of short workshops. There are a number of reasons for doing this:

  • stretching the kids' capacities and providing a new focus for their work (we still have a few attendees who default to playing shoot-em-up games);
  • they don't know what they don't know -- most of them could benefit from improving their coding skills in one area or another and there are always new technologies to learn;
  • it can be fun for mentors to get more involved in this way.

How

Basic approach:

  • short presentations (10-20 mins) which act as a lead-in to activities by the workshop participants [MUST]
  • clear expectations of participants' prior knowledge of topic and some rough idea of learning outcomes [MUST]
  • participant activities should be graded in difficulty (start easy, build up to something challenging) [MAY]
  • written materials (ideally kept on GitHub/GitLab):
    • for participants [MUST]
    • for other mentors and as something to build on for future iterations [MAY]
  • follow-on activities that workshop participants can carry on with in regular evening sessions [MUST]

In addition, we might want to have something like: feedback forms after each workshop; certificates of completion; target projects that could be worked on over a course of weeks and demo-ed.

For every workshop there should be at least one mentor who takes ownership of defining the topic, delivering the workshop itself, producing learning materials and managing follow-up activities. Of course, this could be done with a team but one person needs to take overall responsibility.

Topics

Preliminary list of topics...

General

  • thingy on OSS licensing
    • Not sure how to make this into a workshop but it could be a cool talk

Games

  • Snake on Micro:bit (EaRS)
  • Rock, Paper, Scissors (EaRS) (This one is short and would make an easy test)

Robotics

  • Self-balancing mobile robots
  • Remote controlled car with Micro:bits (EaRS)

David: I am talking to EaRS about their workshops. I can run them myself. They are fun and friendly for beginners

Cybersecurity

  • Prompted exercise to control a public display (and show name in lights) ESP8266 controlled lights/display.
  1. find SSID,
  2. connect, get login screen, suggest common ID/passwords to try, succeed and get User sign in screen showing company/device, google and find website - user manual + binary code, text search for "password" and find default, use manual to post own name. Display name until next person cracks it.

Electronics 101

(Maybe one topic a week ? )

  • Batteries (volt, current) ==> power ==> energy -> static electricity, lighting, electric cars -> supercapitors.
  • Capacitor (smooth,filter, storage)
  • Resistor - pull up, voltage drop, rating, values
  • Diode -> LED - (voltage drop resistor)
  • Semiconductors (transistor, MOSFET, SCR/TRIAC)
  • AC vs DC, mains/battery.
  • Transformer -> inductor -> magnetism, radio waves, relay, motor, back EMF.

Soldering, using a multimeter, other skills ?

David: I am not sure we can do this safely. Our insurance would probably not be okay with it either.

Building a computer from basic components

Networking

Intro to Linux / be your own sysadmin

Version control - GIT + general good coding practice

David:

  • I can make redo my git workshop to be nicer. We can stretch it out and make it interactive.
  • I noticed that even kids that know how to use git don't actually know what they are doing most of the time. So we may even do a more "in depth" workshop

Python

David: I feel like it's more interesting to do workshops where they do python instead of a straight up python workshop. The Micro:bit workshops I have are good for this. They also force you to figure things out.

Beginner

  • How to get started e.g., programming micro:bits.
  • Simple intro to basic syntax; loops; how and when to write functions -- ideally run this via JupyterHub

Post-beginner

  • Classes
  • List comprehension
  • Documenting code
  • ...

Internet of Things

HTML, CSS, Javascript

  • HTML elements; write your basic page and put it on a server
  • Add some CSS
  • Try to write a consistent set of pages (menus, consistent headers) and bang your head in frustration; learn a simple framework (which one?)
  • Execute JS in the browser

David: maybe show them something like jekyll instead? It's a super easy and nice way to get their websites up.

Data Visualisation and Maps

Clone this wiki locally
You can’t perform that action at this time.