Skip to content

Commit c57b492

Browse files
author
Noer Paanakker
committed
finished week 2 readings, halfway week 3 (again)
1 parent 75dd8fc commit c57b492

9 files changed

Lines changed: 129 additions & 76 deletions

File tree

README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
55
# Module #1 - HTML, CSS and GIT (Frontend)
66

7+
![image](assets/module1.png)
8+
79
Welcome to the wonderful world of web development! In this module you will learn the basic building blocks of the web: HTML and CSS. HTML gives us the power to add text, images and videos to a page. CSS gives us the power to organize these parts and make it look nice.
810

911
The products of HTML and CSS comprise a two-thirds of what is called `frontend` (the final third is client-side JavaScript, which you will learn about in later modules). What is frontend? It's another word for the presentational part of a piece of software. In terms of web development we're talking about "what you see" when you go to any website.
@@ -16,14 +18,14 @@ You'll also be learning [GIT](https//www.github.com/hackyourfuture/git), softwar
1618

1719
In order to successfully complete this module you will need to master the following:
1820

19-
- Be able to write syntactically correct HTML and CSS
20-
- Understand what is meant by "responsive" web development
21-
- Practice navigation your computer using the command line interface (CLI)
22-
- Learn about GIT and its basic usage
23-
- Become familiar with Trello and GitHub as a way to submit your homework
24-
- Explain your code by presenting what you've done
25-
- Know your way around Visual Studio Code
26-
- Feel comfortable working with your browser's inspector
21+
- Be able to write syntactically correct HTML and CSS
22+
- Understand what is meant by "responsive" web development
23+
- Practice navigation your computer using the command line interface (CLI)
24+
- Learn about GIT and its basic usage
25+
- Become familiar with Trello and GitHub as a way to submit your homework
26+
- Explain your code by presenting what you've done
27+
- Know your way around Visual Studio Code
28+
- Feel comfortable working with your browser's inspector
2729

2830
## How to use this repository
2931

Week2/LESSONPLAN.md

Lines changed: 48 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,68 @@
44

55
The purpose of this class is to introduce to the student (1) the basics of using GIT, and (2) the basics of grid-based thinking and using flexbox:
66

7-
- Basic GIT commands
8-
- Introducing GitHub
9-
- Setting up an SSH key pair
7+
- Basic GIT commands
8+
- Introducing GitHub
9+
- Setting up an SSH key pair
1010

11-
- Introducing grid-based thinking
12-
- The problem Flexbox solves
13-
- Basic flexbox commands
11+
- Introducing grid-based thinking
12+
- The problem Flexbox solves
13+
- Basic flexbox commands
1414

1515
## Core Concepts
1616

1717
FIRST HALF (12.00 - 13.30)
1818

1919
1. **Introduction to GIT**
2020

21-
- GIT is software that allows us to keep track of the changes within our files
22-
- Imagine having written complex code that messed everything up, GIT allow us to return to a previous state where everything was still working
23-
- It can be used through the command line interface (CLI) or using a graphical user interface (also known as GUI): SourceTree
21+
- GIT is software that allows us to keep track of the changes within our files
22+
- Imagine having written complex code that messed everything up, GIT allow us to return to a previous state where everything was still working
23+
- It can be used through the command line interface (CLI) or using a graphical user interface (also known as GUI): SourceTree, SmartGit, etc.
2424

2525
_Create a new local repository and tell students to do the same_
2626

2727
_Show the hidden file `.git` in the folder_
2828

29-
-
29+
- When you want to save your work, you can make a snapshot of your workspace: this is called 'committing your work', which is another way of saying 'saving your work'
30+
31+
_Create a .txt file through the CLI and commit it to the local repository_
32+
33+
_Delete the file and commit that change_
34+
35+
- GIT allows us to revert our workspace to a previous commit. We can look for the right commit using `git log`, `git checkout` and `git revert`
36+
37+
_Show the student the process of reverting back to the first commit_
38+
39+
- GitHub is a development platform that allows us to store a copy of our code online (in developer terms: remote)
40+
- Main benefits are (1) store our code online, (2) let's us easily work together with others in the same repository
41+
42+
_Ask students to create an account if they haven't_
43+
44+
- In order to securely use GitHub we need to create an SSH key
45+
- SSH keys allow GitHub to identify us as a safe connection
46+
47+
_Create an SSH key through the CLI_
48+
49+
_Link the SSH key with your GitHub account_
50+
51+
_Show how to clone the HTML-CSS-GIT repo using SSH_
52+
53+
_Ask students to create an SSH key, link it to their account and clone the repo_
3054

3155
SECOND HALF (14.00 - 16.00)
3256

3357
1. **Grid-based thinking and Flexbox**
58+
59+
- Thinking in grids
60+
61+
_Look at the following [website](https://htmlstream.com/preview/unify-v2.6.2/unify-main/home/home-default.html) and dissect it thinking in grids_
62+
63+
- Flexbox allows us to easily align elements on the page
64+
- It replaces float-based web design
65+
- It is activated with the `display: flex` CSS property, after you can make use of flex-specific properties
66+
67+
_Take a look at the following [CodePen](https://codepen.io/enxaneta/pen/adLPwv) with students_
68+
69+
_Rebuild the navigation bar, center image and reponsive website layout from this [example](https://github.com/ratracegrad/made-with-flexbox)_
70+
71+
_Ask student to rebuild the navigation bar using Flexbox_

Week2/MAKEME.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,11 @@
1313

1414
The first exercise is to create a local repository using GIT and link it to a remote GitHub repository. Go through the following instructions:
1515

16-
- [Getting Started with Git and GitHub](https://www.codecademy.com/articles/f1-u3-git-setup)
16+
- [Getting Started with Git and GitHub](https://www.codecademy.com/articles/f1-u3-git-setup)
1717

1818
The next exercise is a short interactive course, that will take you through the basics of GIT usage:
1919

20-
- [Learn GIT](https://www.codecademy.com/learn/learn-git)
20+
- [Learn GIT](https://www.codecademy.com/learn/learn-git)
2121

2222
### 2. Responsive design challenges
2323

@@ -27,14 +27,14 @@ Instead, you'll be applying certain CSS rules only to certain device sizes: the
2727

2828
In the following two mini-courses you'll get some practice in doing this:
2929

30-
- [Learn Responsive Design](https://www.codecademy.com/learn/learn-responsive-design)
31-
- [Responsive Web Design Challenges](https://learn.freecodecamp.org/responsive-web-design/responsive-web-design-principles/)
30+
- [Learn Responsive Design](https://www.codecademy.com/learn/learn-responsive-design)
31+
- [Responsive Web Design Challenges](https://learn.freecodecamp.org/responsive-web-design/responsive-web-design-principles/)
3232

3333
### 3. Code along
3434

3535
In the following video you'll be rebuilding a responsive HTML5 website. Put your focus on how the structure of the page is built: First HTML to provide structure & content, and then the CSS. Look at the HTML tags used and the names given to classes.
3636

37-
- [Build An HTML5 Website With A Responsive Layout](https://www.youtube.com/watch?v=Wm6CUkswsNw)
37+
- [Build An HTML5 Website With A Responsive Layout](https://www.youtube.com/watch?v=Wm6CUkswsNw)
3838

3939
### 4. PROJECT: Drones website
4040

@@ -48,15 +48,15 @@ The page contains two grids: the first one should work using `floats`, the secon
4848

4949
Other than that you should use `media queries`. Here are the requirements for each device size:
5050

51-
- On mobile phones (smaller than 600px): a two column grid, with the exception that the first item spans the full width
52-
- On tablets (between 600px and 1024px): a three column grid, with the exception that the first two items span the full width together (so first we have two columns, then after the first two items we have three columns)
53-
- On desktops (1024px and up): a four column grid, with the exception that the first item spans two columns. - There should be some `margin` between the grid items
51+
- On mobile phones (smaller than 600px): a two column grid, with the exception that the first item spans the full width
52+
- On tablets (between 600px and 1024px): a three column grid, with the exception that the first two items span the full width together (so first we have two columns, then after the first two items we have three columns)
53+
- On desktops (1024px and up): a four column grid, with the exception that the first item spans two columns. - There should be some `margin` between the grid items
5454

5555
Make the page look beautiful by adding some more CSS! Include CSS rules for:
5656

57-
- `hover states` for buttons
58-
- A distinct `font-family`, found from [Google Fonts](https://fonts.google.com/). Include using the `font-face` [rule](https://css-tricks.com/snippets/css/using-font-face/)
59-
- animation using `transition`
57+
- `hover states` for buttons
58+
- A distinct `font-family`, found from [Google Fonts](https://fonts.google.com/). Include using the `font-face` [rule](https://css-tricks.com/snippets/css/using-font-face/)
59+
- animation using `transition`
6060

6161
> Tip: Use GIT and GitHub along the way, you can easily use this project as part of your portfolio!
6262

Week2/README.md

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55
These are the topics for week 2:
66

77
1. Introduction to GIT
8-
- What is GIT?
9-
- Installing GIT
10-
- Basic GIT commands
11-
- What is GitHub?
12-
- Working with SSH
8+
- What is GIT?
9+
- Installing GIT
10+
- Basic GIT commands
11+
- What is GitHub?
12+
- Working with SSH
1313
2. More advanced CSS
14-
- Flexible organizing with flexbox
15-
- Pseudo class selectors
16-
- Responsive design with media queries
14+
- Flexible organizing with flexbox
15+
- Pseudo class selectors
16+
- Responsive design with media queries
1717

1818
## 1. Introduction to GIT
1919

@@ -31,9 +31,9 @@ This is exactly what happens with GIT: however, instead of calling it _saving yo
3131

3232
In order to use GIT you first have to install it. The software is different depending on your operating system:
3333

34-
- For Windows, install [Git Bash](https://git-scm.com/download/win)
35-
- For MacOS, install [GIT](https://git-scm.com/download/mac)
36-
- For Linux, install [GIT](https://git-scm.com/download/linux)
34+
- For Windows, install [Git Bash](https://git-scm.com/download/win)
35+
- For MacOS, install [GIT](https://git-scm.com/download/mac)
36+
- For Linux, install [GIT](https://git-scm.com/download/linux)
3737

3838
After you've installed it you can use it through the CLI. To verify that it worked, enter the command:
3939

@@ -56,10 +56,10 @@ Like any software you execute through the CLI, you'll use GIT in the same way.
5656

5757
There are different uses for GIT and for now we'll learn one procedure: committing your workspace to a local repository. Let's take that phrase apart first:
5858

59-
- **Committing** is another word for saving or storing the changes you've made to the files in your workspace. For example, changing the content of a file is a "change".
60-
- **Workspace** is another word for the project folder (and its contents). When making a repository it will be in the root (in other words, the top level) of the folder.
61-
- **Local** refers to your computer, with no involvement of the internet. When you create a file or folder on your computer, you are creating it "locally".
62-
- **Repository** is a storage location inside which the data regarding your project folder is kept. GIT creates a hidden folder `.git` that functions as the local repository.
59+
- **Committing** is another word for saving or storing the changes you've made to the files in your workspace. For example, changing the content of a file is a "change".
60+
- **Workspace** is another word for the project folder (and its contents). When making a repository it will be in the root (in other words, the top level) of the folder.
61+
- **Local** refers to your computer, with no involvement of the internet. When you create a file or folder on your computer, you are creating it "locally".
62+
- **Repository** is a storage location inside which the data regarding your project folder is kept. GIT creates a hidden folder `.git` that functions as the local repository.
6363

6464
Before we do anything we must know the most basic command of all:
6565

@@ -77,21 +77,21 @@ No we can continue with the actual procedure itself. This happens in 3 stages:
7777

7878
This might sound very abstract, and it is. So to illustrate this watch the following videos and code along:
7979

80-
- [GIT Tutorial for beginners](https://www.youtube.com/watch?v=HVsySz-h9r4)
81-
- [Introduction to GIT - Core Concepts](https://www.youtube.com/watch?v=uR6G2v_WsRA)
82-
- [GIT & GitHub Crash Course](https://www.youtube.com/watch?v=SWYqp7iY_Tc)
80+
- [GIT Tutorial for beginners](https://www.youtube.com/watch?v=HVsySz-h9r4)
81+
- [Introduction to GIT - Core Concepts](https://www.youtube.com/watch?v=uR6G2v_WsRA)
82+
- [GIT & GitHub Crash Course](https://www.youtube.com/watch?v=SWYqp7iY_Tc)
8383

8484
## What is GitHub?
8585

8686
GitHub is **NOT the same** as GIT. While GIT is software that allows you to keep track of your files, GitHub is a development platform that allows you to store a copy of your code online. Check the following video to learn more:
8787

88-
- [What is GitHub?](https://www.youtube.com/watch?v=w3jLJU7DT5E)
88+
- [What is GitHub?](https://www.youtube.com/watch?v=w3jLJU7DT5E)
8989

9090
We use GitHub because of its main benefit: it allows us to freely store our code online (or "remote", as we developers also call it). This is useful, for example, in case our computer crashes and our projects are lost.
9191

9292
The second benefit of using an online code storage is that it allows us to work together with other developers, using one central (and remote) repository. This is done using branches, which you will learn about [next week](../Week3/README.me).
9393

94-
- [GIT Good: A Practical Introduction to GIT and GitHub](https://codeburst.io/git-good-part-a-e0d826286a2a)
94+
- [GIT Good: A Practical Introduction to GIT and GitHub](https://codeburst.io/git-good-part-a-e0d826286a2a)
9595

9696
### Working with SSH
9797

@@ -103,13 +103,13 @@ When working with online (or what you'll hear more often: remote) code repositor
103103
104104
Check the following resources for more information:
105105

106-
- [Beginners Guide To SSH](https://www.youtube.com/watch?v=qWKK_PNHnnA)
107-
- [How SSH works](https://www.youtube.com/watch?v=zlv9dI-9g1U)
106+
- [Beginners Guide To SSH](https://www.youtube.com/watch?v=qWKK_PNHnnA)
107+
- [How SSH works](https://www.youtube.com/watch?v=zlv9dI-9g1U)
108108

109109
When working with GitHub we want to ensure the same level of security. Thus, we will have to make an SSH key and link it to GitHub!
110110

111-
- [How to generate an SSH key](https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)
112-
- [Adding SSH Key to GitHub](https://www.youtube.com/watch?v=H5qNpRGB7Qw)
111+
- [How to generate an SSH key](https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)
112+
- [Adding SSH Key to GitHub](https://www.youtube.com/watch?v=H5qNpRGB7Qw)
113113

114114
## 2. More advanced CSS
115115

@@ -123,8 +123,8 @@ What this does is helping you to think according to 'grid-based web design': ele
123123

124124
Read the following to learn more about 'grid-based web design':
125125

126-
- [Introduction to grids in web design](https://webdesign.tutsplus.com/articles/a-comprehensive-introduction-to-grids-in-web-design--cms-26521)
127-
- [Intro to Web Design Grids](https://www.youtube.com/watch?v=gjYZoPEk0ow)
126+
- [Introduction to grids in web design](https://webdesign.tutsplus.com/articles/a-comprehensive-introduction-to-grids-in-web-design--cms-26521)
127+
- [Intro to Web Design Grids](https://www.youtube.com/watch?v=gjYZoPEk0ow)
128128

129129
Once you understand this way of thinking you'll know why it makes sense to know Flexbox.
130130

@@ -136,22 +136,24 @@ display: flex;
136136

137137
This will allow us the Flexbox-specific properties, that allow us to develop clean and organised CSS. Check the following links to understand how this is done:
138138

139-
- [CSS Flexbox Course](https://www.youtube.com/watch?v=-Wlt8NRtOpo)
140-
- [CSS Flexbox Tutorial for Beginners 1/2 ](https://www.youtube.com/watch?v=siKKg8Y_tQY)
139+
- [CSS Flexbox Course](https://www.youtube.com/watch?v=-Wlt8NRtOpo)
140+
- [CSS Flexbox Tutorial for Beginners 1/2 ](https://www.youtube.com/watch?v=siKKg8Y_tQY)
141141

142142
### Pseudo class selectors
143143

144144
Every HTML element can be in different states. The default state is when an element is untouched. You already know how to style for this.
145145

146146
```css
147147
p {
148-
color: white;
148+
color: white;
149149
}
150150
```
151151

152-
However, there are times when a user interacts with an element in a particular way. For most of these interactions we have special selectors. Read the following article to learn about it:
152+
However, there are times when a user interacts with an element in a particular way: for example, clicking a button that opens another page. As frontend developers we need to give the user feedback on that particular action. When they place the mouse on top of the button it lights up (we call this a `hover state`). However, we have to write instructions for that to happen.
153153

154-
- [Pseudo class selectors](https://css-tricks.com/pseudo-class-selectors/)
154+
Like the hover state there are others as well: click, focus, visited, and others. For most of these element states we have special selectors. Read the following article to learn about them. Once you do try the out for yourself!:
155+
156+
- [Pseudo class selectors](https://css-tricks.com/pseudo-class-selectors/)
155157

156158
### Responsive design with media queries
157159

Week3/LESSONPLAN.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,12 @@
44

55
The purpose of this class is to introduce to the student
66

7-
- GIT branching
8-
-
7+
- What is GIT branching?
8+
- Master and development branch
9+
- What is a feature?
10+
11+
- What is a framework?
12+
- Popular CSS frameworks
913

1014
[[[[[TO BE CONTINUED!!!!!!!!!]]]]]
1115

0 commit comments

Comments
 (0)