├── CONTRIBUTING.md
├── LICENCE.md
├── README.md
├── hardware.yml
├── images
├── coder.png
└── login.png
├── ks2.md
├── ks3.md
├── learn.md
├── lesson-1
├── lesson.md
└── worksheet.md
├── lesson-2
├── images
│ ├── final.png
│ ├── new-page.png
│ ├── new-project.png
│ ├── project-settings.png
│ └── text.png
├── lesson.md
└── worksheet.md
├── lesson-3
├── homework_sheet.md
├── images
│ ├── adding-media.png
│ └── video.png
├── lesson.md
└── worksheet.md
├── lesson-4
├── files
│ └── html-cards.pdf
├── images
│ ├── CSS-panel.png
│ ├── Raspi_Colour_R.png
│ ├── blurry-text-html.png
│ ├── blurry-text.png
│ └── fonts.png
├── lesson.md
└── worksheet.md
├── lesson-5
├── images
│ ├── background-colour.png
│ ├── background-image.png
│ └── colour.jpg
├── lesson.md
└── worksheet.md
├── lesson-6
└── lesson.md
├── meta.yml
├── overview.md
├── software.md
└── software.yml
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | All contributions are assumed to be licensed under the same license as the source, i.e. CC BY-SA. This license must remain in all derivatives of this work.
4 |
5 | ## Issues
6 |
7 | If you find a mistake, bug or other problem, please [open an issue](https://github.com/raspberrypilearning/coder-html-css-lessons/issues) in this repository.
8 |
9 | ## Pull Requests
10 |
11 | If you fix a mistake, bug or problem or have something to contribute, please create a pull request for each modification. Please consider grouping modifications sensibly, i.e. don't bundle typo fixes in the same pull request as code changes, instead file them separately.
12 |
13 | Please note that sometimes things are done for pedagogical reasons so changes which make sense from a software engineering perspective (reducing duplication or making use of more advanced programming language features) may not be suitable to maintain the intended educational value.
14 |
15 | ## Derivatives
16 |
17 | The licence must remain in all derivatives of this work.
18 |
19 | ## Licence
20 |
21 | Unless otherwise specified, everything in this repository is covered by the following licence:
22 |
23 | 
24 |
25 | ***Coder HTML & CSS Lessons*** by the [Raspberry Pi Foundation](http://raspberrypi.org) is licenced under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/).
26 |
27 | Based on a work at https://github.com/raspberrypilearning/coder-html-css-lessons
28 |
--------------------------------------------------------------------------------
/LICENCE.md:
--------------------------------------------------------------------------------
1 | # Licence
2 |
3 | Unless otherwise specified, everything in this repository is covered by the following licence:
4 |
5 | 
6 |
7 | ***Coder HTML & CSS Lessons*** by the [Raspberry Pi Foundation](http://raspberrypi.org) is licenced under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/).
8 |
9 | Based on a work at https://github.com/raspberrypilearning/coder-html-css-lessons
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | **This is an archived resource.** The repo will remain available but the resource will no longer be maintained or updated. Some or all parts of the resource may no longer work. To see our latest resources, please visit [raspberrypi.org](http://www.raspberrypi.org).
2 |
3 | # Google Coder - HTML & CSS Scheme of Work
4 |
5 | [](https://www.youtube.com/watch?v=wH24YwdayFg)
6 |
7 | ## Introduction
8 |
9 | [Google Coder](http://googlecreativelab.github.io/coder/) is a free, open source project that turns a Raspberry Pi into a simple platform that educators and parents can use to teach the basics of building for the web. New coders can craft small projects in HTML, CSS and Javascript, right from the web browser.
10 |
11 | This scheme of work will introduce students to the infrastructure of website development, in particular the concept of web pages (HTML & CSS) and web servers. It is specifically targeted towards KS2/KS3 Computing. This has been developed in harmony with the new Computing curriculum in the UK and is based on the [Google Coder Project - The Perfect Recipe](http://googlecreativelab.github.io/coder-projects/projects/perfect_recipe/).
12 |
13 | ##Learning outcomes:
14 |
15 | Over the course of six lessons, students will learn:
16 |
17 | - How to turn a Raspberry Pi into a webserver
18 | - How to create webpages using HTML & CSS, in particular:
19 | - Different ways to display text with HTML
20 | - Adding images and videos
21 | - Adding CSS style
22 |
23 | ## Computing Programme of Study Met:
24 |
25 | **KS2:**
26 |
27 | - Understand computer networks, including the internet; how they can provide multiple services, such as the World Wide Web, and the opportunities they offer for communication and collaboration.
28 | - Select, use and combine a variety of software (including internet services) on a range of digital devices to design and create a range of programs, systems and content. This will accomplish various goals including collecting, analysing, evaluating and presenting data and information.
29 |
30 | **KS3:**
31 |
32 | - Understand the hardware and software components that make up computer systems, and how they communicate with one another and with other systems.
33 | - Create, reuse, revise and repurpose digital artefacts for a given audience, with attention to trustworthiness, design and usability.
34 | - Understand a range of ways to use technology safely, respectfully, responsibly and securely, including protecting the students' online identity and privacy. Recognise inappropriate content, contact and conduct, and know how to report concerns.
35 |
36 | [National Curriculum Computing Programmes of Study](https://www.gov.uk/government/publications/national-curriculum-in-england-computing-programmes-of-study/national-curriculum-in-england-computing-programmes-of-study#key-stage-3)
37 |
38 | ## Resources
39 |
40 | For the majority of the lesson, it is suggested that work is carried out by students on a Raspberry Pi in pairs. Each pair should have access to the standard equipment described below, and each should have a computer with a web browser connected to the network. As there will be multiple Raspberry Pis acting as servers some setup is required in configuring them. [See multiple coder devices setup guide](https://github.com/googlecreativelab/coder/wiki/Using-Multiple-Coder-Devices-(Lab-Setup)). In addition, it is suggested that you have your own teacher setup connected to a projector screen for demonstration purposes. The checklist is below:
41 |
42 | - A Raspberry Pi per pair connected to the local network
43 | - An [SD card with Google Coder installed](http://googlecreativelab.github.io/coder/) per Raspberry Pi, configured to allow multiple coder devices
44 | - A computer per student with a web browser connected to the local network
45 |
46 | ## Lessons
47 |
48 | - [Lesson 1 - Websites & Webservers](lesson-1/lesson.md)
49 | - [Lesson 2 - What is HTML?](lesson-2/lesson.md)
50 | - [Lesson 3 - Adding Images and Other Media](lesson-3/lesson.md)
51 | - [Lesson 4 - Adding Style with CSS](lesson-4/lesson.md)
52 | - [Lesson 5 - Colour with CSS](lesson-5/lesson.md)
53 | - [Lesson 6 - Evaluation](lesson-6/lesson.md)
54 |
55 | ## Community
56 |
57 | Coder is open source, so everyone can help make it better. You can fix bugs, build new features and help make Coder the simplest way for new coders to learn how to create content for the web. To find out more visit the [Google Coder GitHub Page](https://github.com/googlecreativelab/coder/).
58 |
59 | ## Licence
60 |
61 | Unless otherwise specified, everything in this repository is covered by the following licence:
62 |
63 | 
64 |
65 | ***Coder HTML & CSS Lessons*** by the [Raspberry Pi Foundation](http://raspberrypi.org) is licenced under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/).
66 |
67 | Based on a work at https://github.com/raspberrypilearning/coder-html-css-lessons
68 |
--------------------------------------------------------------------------------
/hardware.yml:
--------------------------------------------------------------------------------
1 | - name: A computer connected to a network
2 | img:
3 |
--------------------------------------------------------------------------------
/images/coder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/images/coder.png
--------------------------------------------------------------------------------
/images/login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/images/login.png
--------------------------------------------------------------------------------
/ks2.md:
--------------------------------------------------------------------------------
1 | - Understand computer networks, including the internet; how they can provide multiple services, such as the World Wide Web, and the opportunities they offer for communication and collaboration.
2 | - Select, use and combine a variety of software (including internet services) on a range of digital devices to design and create a range of programs, systems and content. This will accomplish various goals including collecting, analysing, evaluating and presenting data and information.
3 |
--------------------------------------------------------------------------------
/ks3.md:
--------------------------------------------------------------------------------
1 | - Understand the hardware and software components that make up computer systems, and how they communicate with one another and with other systems.
2 | - Create, reuse, revise and repurpose digital artefacts for a given audience, with attention to trustworthiness, design and usability.
3 | - Understand a range of ways to use technology safely, respectfully, responsibly and securely, including protecting the students' online identity and privacy. Recognise inappropriate content, contact and conduct, and know how to report concerns.
4 |
--------------------------------------------------------------------------------
/learn.md:
--------------------------------------------------------------------------------
1 | Through this scheme of work, students will learn:
2 |
3 | - How to turn a Raspberry Pi into a webserver
4 | - How to create webpages using HTML & CSS, in particular:
5 | - Different ways to display text with HTML
6 | - Adding images and videos
7 | - Adding CSS style
8 |
9 | This resource covers elements from the following strands of the [Raspberry Pi Digital Making Curriculum](https://www.raspberrypi.org/curriculum/):
10 |
11 | - [Design basic 2D and 3D assets](https://www.raspberrypi.org/curriculum/design/creator)
12 |
--------------------------------------------------------------------------------
/lesson-1/lesson.md:
--------------------------------------------------------------------------------
1 | #Lesson 1 - Websites & Webservers
2 |
3 | ##Introduction
4 |
5 | Google Coder allows students to create simple, fun and subtly educational web content that can all be made with Coder and Raspberry Pi. It’s free software that turns a Raspberry Pi into a simple, tiny, personal web server and web-based development environment; just what you need for crafting HTML, CSS and Javascript while you’re learning to code.
6 |
7 | Hopefully you’ve already downloaded and installed Coder for Raspberry Pi from the offical Google Coder website. If you haven’t (or aren’t sure what Coder is) you can read about it here: http://goo.gl/coder.
8 |
9 | ## Learning Objectives
10 |
11 | - Know how websites are accessed on the World Wide Web
12 | - Understand the basic functions of a webserver
13 | - Be able to set up and use a Raspberry Pi as a webserver with Google Coder
14 |
15 | ## Learning Outcomes
16 |
17 | ###All students are able to:
18 |
19 | - Know how to plug the components of a Raspberry Pi together
20 | - Access their Coder webserver, and the pages preinstalled on it, with a web browser
21 | - Explain how websites are accessed on the World Wide Web
22 |
23 | ###Most students are able to:
24 |
25 | - Edit some basic HTML code and explain what it does
26 | - Name the functions of a webserver
27 |
28 | ###Some students are able to:
29 |
30 | - Explain the importance of setting a password on a webserver
31 |
32 | ## Lesson Summary
33 |
34 | - An introduction to websites and webservers
35 | - A demonstration of how a Raspberry Pi can be used as a webserver to host websites using Google Coder
36 | - Setting up and connecting a Raspberry Pi with a password
37 | - Starting and editing a Coder app
38 |
39 | ## Starter
40 | Have a demonstration Raspberry Pi already connected and Google Coder software running. Hold up a Raspberry Pi board and ask the students what they think it is. Explain that it’s actually a computer and that in the coming lessons they’re going to do something special with it. Instead of running apps and games other people have created for them, they’re going to learn to create and host websites on it.
41 |
42 | Explain to students the concept of a webserver and how websites are created, stored and accessed on the World Wide Web.
43 |
44 | ## Main Development
45 |
46 | 1. Demonstrate to the class how to connect all the Raspberry Pi components together in the correct order and how to boot it. While they are connecting the components, ask the class to name and describe each one. An alternative demonstration would be to leave out the memory card and attempt to boot the Pi, which will fail. You can then describe the memory card as something that contains instructions to tell the Raspberry Pi how to start.
47 |
48 | 2. Split the students into pairs and issue an an SD card configured for multiple use to each pair. It's recommended that you number the cards and make a note of which group has each card, as they will need to use the same card each lesson in this scheme of work. Allow the students to set up and power up their Raspberry Pi Google Coder webservers using [these student instructions](worksheet.md).
49 |
50 | 3. Once students have connected to their Raspberry Pi Coder server, it will ask them to set a password. This is not necessary, but it could be used as a opportunity to discuss the importance of security on webservers, and why this might be important on the World Wide Web.
51 |
52 | 4. Students should open the **Hello Coder** webpage by clicking on the icon. They should then click on the **edit** button to see the HTML code that makes up the webpage. Students can change some of the writing to see what happens to the page.
53 |
54 | ## Plenary
55 |
56 | Pairs should be invited to demonstrate to the class what they did to the Hello Coder webpage. Following this, a discussion should be held about how the webserver works.
57 |
58 | ## Homework
59 |
60 | Students should be asked to think of their favourite TV programme, game, book or item and write a review of it ready for the next lesson.
61 |
62 |
--------------------------------------------------------------------------------
/lesson-1/worksheet.md:
--------------------------------------------------------------------------------
1 | # Student Instructions
2 |
3 | ## Setting up your Raspberry Pi using Google Coder
4 |
5 | The Raspberry Pi is a bare bones computer. It’s not much use on its own. In order to use it as a webserver and create websites on it, we need to connect a number of things to it:
6 |
7 | - An SD card. This card contains the Google Coder that can be loaded onto the Raspberry Pi in order for it to be used to create websites. You need to slide the card into the slot with the metal pins facing in towards the Raspberry Pi. The label should be visible when it is inserted.
8 | - An ethernet cable or wifi adaptor. This will allow you to connect the Raspberry Pi to a local network to host your website projects on.
9 | - A power adaptor. Plug the power adaptor into a socket and then the small USB connector into the Raspberry Pi. When you turn the socket switch on, you should see the Raspberry Pi flash and text should appear on the monitor.
10 |
11 | *Note: A monitor, keyboard and mouse are not necessary, as you will connect to the Raspberry Pi from an internet browser on a different computer on the network.*
12 |
13 | ## Connect to your Raspberry Pi Coder Server
14 |
15 | Now you have connected your Raspberry Pi to the local network you can use a computer or laptop to connect to it. You will see that after you plugged in the power cable some lights came on; this indicates that your Raspberry Pi Coder server is booting up.
16 |
17 | 1. Give it a few minutes to boot, and then in the web browser on your computer type:
18 |
19 | ```
20 | http://coder.local/
21 | ```
22 | Don't forget the `http://` part!
23 |
24 | 2. You might have to enter the Coder number given to you by your teacher instead, for example `http://coder01.local/` or `http://coder02.local/`.
25 |
26 | 3. Once connected, you will see a screen asking you to set up a password to protect your server. Set a password with your partner. *Note: You will need to make sure that you remember your password every lesson, or your work will be lost. You could use the RPi default password `raspberry`.*
27 |
28 | ## Hello Coder
29 |
30 | Once connected to your Coder webserver you can create a new Coder app. On the main Coder page you will see a grid of boxes with names on them. These are projects (also called apps), and there are a few that come pre-installed on Coder. Some of them are simple, like Hello Coder.
31 |
32 | 1. Click on the **hello coder** app.
33 |
34 | 2. Now click on the **edit** button at the top to see the HTML code that makes this webpage.
35 |
36 | 3. Change the test to say something different to hello world!
37 |
38 | 4. Save your changes.
39 |
--------------------------------------------------------------------------------
/lesson-2/images/final.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/lesson-2/images/final.png
--------------------------------------------------------------------------------
/lesson-2/images/new-page.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/lesson-2/images/new-page.png
--------------------------------------------------------------------------------
/lesson-2/images/new-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/lesson-2/images/new-project.png
--------------------------------------------------------------------------------
/lesson-2/images/project-settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/lesson-2/images/project-settings.png
--------------------------------------------------------------------------------
/lesson-2/images/text.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/raspberrypilearning/coder-html-css-lessons/0422d09df8882f8645e0eef13d0e7614ffe24dcc/lesson-2/images/text.png
--------------------------------------------------------------------------------
/lesson-2/lesson.md:
--------------------------------------------------------------------------------
1 | # Lesson 2 - What is HTML?
2 |
3 | ##Introduction
4 |
5 | In this lesson we will be given an opportunity to program a new webpage using HTML; from creating a webpage on Google Coder, to careful syntax placement, to the joy of creating a simple webpage. In particular, we will learn how to use the HTML tags for headings, line breaks and paragraphs.
6 |
7 | ## Learning Objectives
8 |
9 | - Know that websites are made up of a type of computer code called "HTML"
10 | - Identify some HTML tags and what they are used for
11 | - Be able to use HTML tags to create a basic webpage for a recipe
12 |
13 | ## Learning Outcomes
14 |
15 | ###All students are able to:
16 |
17 | - Know that websites are made up of HTML tags
18 | - Create a new webpage on a Google Coder webserver
19 | - Display some text in headings and main body text
20 |
21 | ###Most students are able to:
22 |
23 | - Identify some HTML tags and explain their use
24 | - Display text in multiple ways using HTML tags such as `
` and `
Your html goes here.
` 84 | 85 | Remove the text between the tags and replace it with your introduction text about your favourite item. For example: 86 | 87 | `The Raspberry Pi is a small computer and is my favourite item.
` 88 | 89 | 4. Now save that and take a look. 90 | 91 | 5. Above your introduction paragraph you can add text to act as a subheading. This could be important text that is not quite as important as the title. 92 | 93 | Add an `