Skip to content

Latest commit

 

History

History
 
 

CANDI

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

City and Islington Access Course

Overview

This is roughly the course that was delivered with the first group of students at CANDI. We worked with BTEC Computing students, so they already had some strong concepts, and had done most of their coding with Python.

The students were keen to create an app, so we worked on creating a relatively simple To Do list app, using HTML, CSS and Javascript.

NB: This programme may need to be adapted a fair bit if used with a group with less experience of coding - In particular the JS concepts such as array manipulation were picked up very fast as they could link them with their learning about lists in Python.

Weekly Outline

Week 1 - HTML

Intro (20 mins)

  • Introduce students to Github and get them signed up.
  • Introduce students to Gitter and explain that we'll use it to support each other and share our progress
  • Introduce students to freeCodeCamp
  • Share the Tribute Page challenge and some good quality examples, and explain that we'll work on building our skills to make our own

Part 1

  • 20mins working individually on freeCodeCamp
  • 20mins pairing and supporting each other on freeCodeCamp

Part 2

  • 40mins start to make a tribute page in HTML in pairs
  • 20mins share links on Gitter and discuss progress as a group

Homework

  • Finish the basic HTML section on fCC by next week

Week 2 - CSS

Part 1

  • 40mins working individually on freeCodeCamp Basic CSS
  • 20mins pairing to support each other

Part 2

  • 40mins to work on tribute page, adding styling
  • 20mins to share progress and discuss what we'd like to add

Homework

  • Finish the basic CSS section on fCC by next week

Week 3 - Responsive Design

Part 1

  • 40mins working individually on freeCodeCamp Responsive Web Design and Flexbox
  • 20mins pairing to support each other

Part 2

  • 40mins to work on tribute page, adding styling, making responsive
  • 20mins to share final outcome and discuss what we'd like to add if we had more time

Homework

  • Finish the Responsive Web Design and Flexbox sections on fCC by next week
  • Put finishing touches on tribute page if desired

Week 4 - Javascript

Part 1

  • Introduce To Do list app challenge
  • 40mins working individually on freeCodeCamp Basic Javascript
  • 20mins pairing to support each other

Part 2

  • 40mins to research JS array methods and compare with Python lists
  • 20mins to discuss how you would use array methods to organise a to-do list

Homework

  • Finish the basic JS section by next week

Week 5 - Design Heuristics and Prototyping

Part 1

  • 20mins introduction to design heuristics (using design burst 1)
  • 20mins research existing products/ design patterns
  • 20mins discuss how existing products meet design heuristics

Part 2

  • 20mins introduce Figma
  • 40mins work in pairs to create 1-page prototype

Homework

  • Finish 1-page prototype

Week 6 - Build to-do app in HTML/CSS

Part 1

  • introduce reset.css or normalise.css, demo an HTML layout for the app
  • 40mins in pairs to create layout using semantic HTML / CSS
  • 20mins share progress and discuss

Part 2

  • 40mins in pairs to add CSS and styling
  • 20mins share progress and set targets for homework

Homework

  • Finish HTML/CSS layout

Week 7 - DOM manipulation

Part 1

Part 2

  • demo how to use DOM manipulation to make the to-do page interactive (link up the form and submit button to add items into the UL, give each one a button to mark it as done and a button to delete it)
  • 40 mins in pairs to add JS to the HTML/CSS to-do apps

Homework

  • Continue basic JS on fCC

Week 8 - Managing State

Part 1

  • introduce the idea of keeping state in JS and rendering it into the DOM
  • demo using an array of to-do items, using objects with title and status
  • discuss what functions will be needed to manipulate the list
    • add a to-do item
    • remove a to-do item
    • toggle an item as done / not done
    • sort the list by status (done / not done)
  • students in pairs to write the necessary JS functions to manipulate the array

Part 2

  • discuss how to link the logic with the DOM
  • students in pairs to write a render function that puts the state into the page
  • 20mins share and discuss