Skip to content

Commit 64aaa74

Browse files
Mark FitzgeraldMark Fitzgerald
Mark Fitzgerald
authored and
Mark Fitzgerald
committed
Assignment Link Updates
1 parent 0e3826d commit 64aaa74

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+1137
-0
lines changed

.DS_Store

12 KB
Binary file not shown.

week_1-2/.DS_Store

10 KB
Binary file not shown.

week_1-2/README.md

+78
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# Code 201: Foundations of Software Development
2+
## Weeks 1-2 night and weekend track:
3+
### Introduction to Web Development
4+
**Instructors & TA's**
5+
6+
*Lead Instructor*: Mark Fitzgerald
7+
8+
*TA*: <to-be-determined>
9+
10+
##Week 1 - Daily Plans
11+
###Class 01
12+
1. Intro to Code Fellows
13+
2. Introductions
14+
15+
+++BREAK+++
16+
17+
3. Intro to Dev Env (Tool Belt & Browser basics)
18+
4. Intro to User Stories
19+
5. HTML & JS Basics (Hello World)
20+
21+
###Class 02
22+
1. HTML Basics
23+
1. Links
24+
2. Images
25+
26+
+++BREAK+++
27+
28+
2. JavaScript Basics
29+
3. Debugging Basics
30+
31+
+++BREAK+++
32+
33+
4. Git & GitHub
34+
35+
###Class 03
36+
1. Code Review
37+
2. Control Flow
38+
3. Logical Operators & Counters
39+
40+
+++BREAK+++
41+
42+
4. HTML Lists
43+
5. HTML Tables
44+
45+
+++BREAK+++
46+
47+
6. Github Branches
48+
7. Separation of Concerns
49+
8. README.md / Documentation
50+
51+
##Week 2 - Daily Plans
52+
###Class 04
53+
1. Code Review & Survey Comments
54+
55+
+++BREAK+++
56+
57+
2. Functions
58+
3. Introduction to CSS
59+
4. Color
60+
61+
+++BREAK+++
62+
63+
5. Basic DOM Manipulation
64+
1. getElementById
65+
2. innerHTML
66+
67+
###Class 05
68+
1. Code Review
69+
70+
+++BREAK+++
71+
72+
2. JavaScript Arrays
73+
74+
+++BREAK+++
75+
76+
3. CSS Box Model
77+
4. HTML Forms
78+

week_1-2/class-01/.DS_Store

6 KB
Binary file not shown.

week_1-2/class-01/README.md

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Week 1, Class 1
2+
3+
# Reading Reminder
4+
5+
* ["Structure" (HTML & CSS, Ch. 1)](https://canvas.instructure.com/courses/1176151/modules/items/13085606)
6+
* ["Text” (HTML & CSS, Ch.2)](https://canvas.instructure.com/courses/1176151/modules/items/13085607)
7+
* ["Process & Design" (HTML & CSS, Ch. 18)](https://canvas.instructure.com/courses/1176151/modules/items/13085608)
8+
* ["The ABC of Programming" (JavaScript, Ch.1 )](https://canvas.instructure.com/courses/1176151/modules/items/13085609)
9+
10+
# Assignment for Class
11+
In class, we wrote a program that accepted user input and, based on that input, displayed a message back to the user. Your assignment in lab today involves a variety of different activities related to that.
12+
13+
[Submit Your Work](https://canvas.instructure.com/courses/1176151/modules/items/13085610)
14+
15+
## User Stories (MVP)
16+
- As a developer, I want to use basic markup to structure my index.html page, so the layout is in the order of assembly I prefer
17+
- As a developer, I want to receive and use the user's name, so that the program is personalized to their experience.
18+
19+
## Technical Requirements
20+
- Work will be done in an HTML file in Atom, and then submitted via Canvas (copy and paste into submission)
21+
- Good use of HTML; e.g. 'body', 'doctype', 'p', 'head', 'html', 'h1', and 'title'
22+
- HTML is cleanly written and indented for readability and organization
23+
- JavaScript written to alert the user in a "Hello, World" type of script
24+
25+
## Helpful Resources
26+
- [**Supporting Information**](support.md)

week_1-2/class-01/support.md

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Supporting Information
2+
### Tool Belt
3+
If there are any lingering issues with the setup or functionality of your laptop and the software installations, we need to individually address that right away in lab. **Note**: Students using Linux or Windows should coordinate with the TA or Instructor who is the most experienced with those platforms (We will help identify those people).
4+
5+
### Design
6+
Design a script (**without actually writing any code yet!**) for a simple "Hello, World" app.
7+
8+
For all local file manipulation, use the Terminal and the Unix commands that you learned in class today.
9+
10+
Next, create a file called index.html that has all of the primary components of an HTML document in the proper structure and order: 'body', 'doctype', 'head', 'html', and 'title'.
11+
12+
Do by hand as a flowchart on a piece of paper (think of paper as a little personal whiteboard... what a concept!). You'll need these designs for the rest of the lab assignment.
13+
14+
### HTML content!
15+
Add a new file to your folder called index.html (do this from the terminal) and create the basic HTML structure for this page using your basic building block elements (doctype, html, head, body, script, etc).
16+
17+
Once the framework is in place, add new elements and content to your page for the following areas of information about you:
18+
19+
- Name
20+
- Biography
21+
- List of Experience
22+
- List of Education
23+
- List of Goals
24+
25+
Think about how readable your code is to other programmers. Be attentive to code style and conventions, as much as you know of them at this point.
26+
27+
### JavaScript!
28+
Like we did we did in class, write JavaScript inside of script tags (placed at the bottom (inside) of the body), that does the following:
29+
30+
- Receives user input through a prompt that asks “What is your name?” and stores that input into a variable
31+
- Returns an 'alert' box with a message that contains that user name somewhere in the middle (“Good to meet you, Homer, enjoy your doughnuts!” or the like)
32+
- Adapt the message to something different than what we did in class
33+

week_1-2/class-02/.DS_Store

6 KB
Binary file not shown.

week_1-2/class-02/README.md

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Week 1, Class 2
2+
3+
# Reading Reminder
4+
* ["Links" (HTML & CSS, Ch. 4)](https://canvas.instructure.com/courses/1176151/modules/items/13085612)
5+
* ["Images" (HTML & CSS, Ch. 5)](https://canvas.instructure.com/courses/1176151/modules/items/13085613)
6+
* ["Basic JavaScript Instructions" (JavaScript, Ch. 2)](https://canvas.instructure.com/courses/1176151/modules/items/13085614)
7+
8+
# Assignment for Class
9+
Today we will be using the code we wrote in the last class as an example for creating a guessing game project to which we'll be adding during the rest of the week. Use three personalized guessing game questions (The game will consist of three yes/no questions about you (example: "Did I grow up in South Dakota?")). Your end product will look very much like what we finished with in class yesterday, just customized. And if you want, extend it.
10+
11+
[Submit Your Work](https://canvas.instructure.com/courses/1176151/modules/items/13085615)
12+
13+
## User Stories (MVP)
14+
- As a developer, I want to create a simple webpage, so that my users can interact with my game.
15+
- As a developer, I want to provide three questions to the user, so that they can guess the answer and get to know me.
16+
- As a developer, I want to notify the user after each question, so they are aware whether they were correct or not in their answers.
17+
- As a developer, I want to debug my code using well structured console messages
18+
- As a developer, I want to manage my code through an online version control system, so I have the ability to work with others and manage my revisions
19+
20+
## Technical Requirements
21+
- A Github Repo has been created for this assignment, and cloned to the local machine
22+
- Directories and file structure are organized with best practices; e.g. Folder called "week_1-2" and file called "index.html"
23+
- HTML and JavaScript are cleanly written with correct indentation and syntax
24+
- Console.log messages are well written and correctly displaying to the browser console
25+
- **Add, Commit, Push** process is being followed; evident in GitHub that commits are made regularly, and with good commit messages
26+
27+
## User Stories (Stretch)
28+
- As a developer, I want to add a fourth question that takes a numeric input, and indicates to the user whether the guess is 'too high' or 'too low'.
29+
30+
## Helpful Resources
31+
- [**Supporting Information**](support.md)
32+
- [Try Git: Github's Git Leaning Tool](https://try.github.io/levels/1/challenges/1)

week_1-2/class-02/support.md

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Supporting Information
2+
# Git
3+
#### Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
4+
5+
### Git Commands:
6+
git status Provides a detailed description of current state in working directory
7+
8+
git checkout -- <file> Remove all changes to file to the point of the last commit.
9+
10+
git add <file> Include file in staged/tracked status of working directory
11+
12+
git reset HEAD <file> Remove file from staged/tracked status of working directory
13+
14+
git commit -m '' Snapshot the tracked changes in current working directory; with message
15+
16+
git push Push local commits to GitHub
17+
18+
19+
##+++++Reminder: Add, Commit, Push (Git Workflow)+++++
20+
21+
###Create a new GitHub Repository
22+
If you have not already, create a new GitHub Repository called guessing-game on GitHub, and clone that repository to your local computer. Your cloned repository folder should be inside your class assignments folder (codefellows or projects or whatever).
23+
24+
###Scaffold your guessing game
25+
Inside of the guessing-game directory on your computer, create an index.html file or move your existing file to this folder.
26+
27+
Make it look similar to the one we created in class today:
28+
- Place your three guessing game questions in prompts
29+
- Store the user input into a separate variable for each question
30+
- `console.log()` the response to each question with a useful message, like we did in class
31+
- In a sequence of alerts to the user, give a message repeating the answers that were given to the questions
32+
33+
##+++++Reminder: Add, Commit, Push (Git Workflow)+++++
34+
35+
###Respond to the user using if/else and 'alert'
36+
Design a script for an extended guessing game, which asks three questions using prompts, and responds to the user using alerts.
37+
- The game will consist of three yes/no questions about you (example: "Did I grow up in South Dakota?")
38+
- The questions will be presented in a 'prompt' with user feedback in an 'alert'
39+
- Tell the user which questions they missed (such as "No, I did not grow up in South Dakota. I grew up in Alabama.")
40+
- If they gave the correct answer, display a specific and personalized confirmation message in an 'alert' (such as "Yay! You got it right, Chris! I was indeed born in South Dakota!"), and if they gave an incorrect answer, display a specific and personalized alternate message (such as "No, sorry Chris, I was born in Liechtenstein, not South Dakota.").
41+
42+
Do this for each of the three questions.
43+
44+
###+++++
45+
46+
Strive for clear and readable code style with proper indentation, line termination, and descriptive variable names.
47+
48+
(If you want to extend this assignment, add a fourth question that takes a numeric input and then indicates to the user whether the answer is correct, too high, or too low. This part is not necessary for today, though... we'll cover it tomorrow.)

week_1-2/class-03/.DS_Store

6 KB
Binary file not shown.

week_1-2/class-03/README.md

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Week 1, Class 3
2+
[**Week 1 Feedback**](https://canvas.instructure.com/courses/1176151/modules/items/13085620)
3+
*You will receive an email from Code Fellows with a link to the survey. Once complete, please complete this assignment as well.*
4+
5+
# Reading Reminder
6+
* [“Decisions and Loops” (JavaScript, Ch. 4)](https://canvas.instructure.com/courses/1176151/modules/items/13085617)
7+
* ["Lists" (HTML & CSS, Ch. 3)](https://canvas.instructure.com/courses/1176151/modules/items/13085618)
8+
* ["Tables" (HTML & CSS, Ch. 6)](https://canvas.instructure.com/courses/1176151/modules/items/13085619)
9+
10+
# Assignment for Class
11+
Today we'll be extending/refining the guessing game and working from a GitHub branch.
12+
13+
In your guessing-game directory, your HTML should be in a file called index.html, your JS in a file called game.js, and you should have a README.md file as well.
14+
15+
[Submit Your Work](https://canvas.instructure.com/courses/1176151/modules/items/13085621)
16+
17+
[Verify Your Understanding with a Quiz](https://canvas.instructure.com/courses/1176151/modules/items/13085622)
18+
19+
## User Stories (MVP)
20+
- As a developer, I want to work on a new branch in my repo, so I do not effect the state of my Master branch
21+
- As a developer, I want to update my README.md file, so my repo is well documented and my sources are cited
22+
- As a developer, I want to validate that my user input is in the correct format, so I can accept uppercase/lowercase or shorthand answers
23+
- As a developer, I want to add a fourth question that takes a numeric input, and indicates to the user whether the guess is 'too high' or 'too low'.
24+
- As a developer, I want to notify the user at the end of the game how many questions they guessed correctly, so they can celebrate their awesomeness.
25+
26+
## Technical Requirements
27+
- Work on a branch and push to GitHub
28+
- Updated and cleanly documented README
29+
- Implement a new form of control flow for the fourth question
30+
- Implement counter to track right/wrong answers
31+
- Logical Operators (and possibly string methods) used effectively
32+
33+
## User Stories (Stretch)
34+
- As a developer, I want to add a fifth question to my game, which prompts the user to guess my number (hint: using a while loop) until they have guessed correctly
35+
36+
## Helpful Resources
37+
- [**Supporting Information**](support.md)

week_1-2/class-03/support.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Supporting Information
2+
### Start today's work on a new Branch:
3+
We reviewed how to create and work from a branch during lecture today, so you'll start today by creating a new branch called class-03 for your work. To create a branch, starting from Master:
4+
5+
`git checkout -b class-03`
6+
7+
This will create a new branch (`-b`) and move to your new branch (`checkout`) at the same time.
8+
9+
### We'll be doing a lot of add-commit-push today (a-c-p)
10+
git add . (Don't forget 'git status' to check your current state)
11+
git commit -m "some kind of meaningful message about the code you are committing"
12+
git push origin class-03 (REMEMBER: Do not push directly to master)
13+
14+
Always think of writing code in a series of steps, making sure that everything works in one step before moving to the next one. After each step, add-commit-push your work with a brief but descriptive commit message. This gives you a preserved backlog of your work with a descriptive history. This is useful for looking back at your code to see where problems emerged. We will review your commit history and your commit messages, so be sure to be attentive to this step.
15+
16+
## +++Add, Commit, Push+++
17+
18+
###Add in error correction
19+
What if your user enters 'Y' instead of 'yes'? Or 'y' or 'YES'? Does your game still work correctly? It shouldn't. We need to build in some error correction. In your 'if' statements, where you are testing the user response, you need to add in && cases to your condition, such that Y/y/YES/yes or N/n/NO/no are all accounted for.
20+
21+
## +++Add, Commit, Push+++
22+
23+
###Add a counter
24+
After the three questions are finished, tell the user how many answers they got correct ("You got 2 correct answers out of 3 questions" or the like). You will need to manage some form of counter for this goal; e.g. track the amount of correct vs incorrect answers, or correct vs total answers, or...?
25+
26+
Be sure to consider in your logic where the incremental counting should and does happen.
27+
28+
### Update your README file
29+
Every repo needs a good README file. There's a lot of debate about what goes into a good README (take a look at http://stackoverflow.com/questions/2304863/how-to-write-a-good-readme), but at the least, you should have your name, the name of the project/assignment, a brief description of it, and citations to any code or sources you utilized in creating the code.
30+
31+
When you've got a good README finished, add-commit-push your repo to GitHub. Remember... the TA's will be checking for these intermediate commits when evaluating your assignment!

week_1-2/class-04/.DS_Store

6 KB
Binary file not shown.

week_1-2/class-04/README.md

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Week 1, Class 4
2+
3+
# Reading Reminder
4+
* ["Introducing CSS" (HTML & CSS, Ch. 10)](https://canvas.instructure.com/courses/1176151/modules/items/13085624)
5+
* ["Color" (HTML & CSS, Ch. 11)](https://canvas.instructure.com/courses/1176151/modules/items/13085625)
6+
* [“Functions, Methods & Objects” (JavaScript, Ch. 3)](https://canvas.instructure.com/courses/1176151/modules/items/13085626)
7+
8+
# Assignment for Class
9+
Today we will be expanding our javascript to include functions so that we can execute code blocks more logically, and later on, in a more controlled manner.
10+
11+
[Submit Your Work](https://canvas.instructure.com/courses/1176151/modules/items/13085627)
12+
13+
## User Stories (MVP)
14+
- As a developer, I want my code written in a modular way, so that I can reuse functionality without duplicating code.
15+
- As a developer, I want my user to see the answers and responses on the web page, so we do not have to constantly interact with alerts.
16+
17+
## Technical Requirements
18+
- Updated and cleanly documented README
19+
- Game functionality is encapsulated in functions
20+
- Alerts have been removed from the game, and replaced by printing answers to the DOM.
21+
22+
## User Stories (Stretch)
23+
- As a developer, I want to add a sixth question to my game, which has multiple possible answers (hint: using an array and for loop)
24+
- As a developer, I want to add some basic styling to my site, so that I can increase the happiness and engagement of my users (hint: do not use inline styling for this; you should link to another file for your styling)
25+
26+
## Helpful Resources
27+
- [**Supporting Information**](support.md)

week_1-2/class-04/support.md

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#Supporting Information
2+
###Move logic into functions:
3+
As we demonstrated in class today, move the logic for the individual questions into separate functions, and call those functions to initiate the game. Use the code from class today as a model. After completing this step the game should behave exactly as it did before. **a-c-p**
4+
5+
###Move the alerts into the browser window:
6+
Using the code from class today (`document.getElementById()`) as a model, move the alert feedback to the game player into `<p>` or `<h2>` tags or similar that display in the browser window. **a-c-p**
7+
8+
###Update the README file:
9+
Always take a look at your README file and see if it needs updating based upon your most recent work.
10+
11+
###Code style:
12+
As always, strive for readable and maintainable code. Fix any issues with indenting and other code style, such as improving variable names and ensuring that line terminations are done properly. **a-c-p**

week_1-2/class-05/.DS_Store

6 KB
Binary file not shown.

week_1-2/class-05/README.md

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Week 1, Class 5
2+
[**Week 2 Feedback**](https://canvas.instructure.com/courses/1176151/modules/items/13085632)
3+
*You will receive an email from Code Fellows with a link to the survey. Once complete, please complete this assignment as well.*
4+
5+
# Reading Reminder
6+
* ["Extra Markup" (HTML & CSS, Ch. 8)](https://canvas.instructure.com/courses/1176151/modules/items/13085629)
7+
* ["Boxes" (HTML & CSS, Ch. 13)](https://canvas.instructure.com/courses/1176151/modules/items/13085630)
8+
* ["Forms" (HTML & CSS, Ch. 7)](https://canvas.instructure.com/courses/1176151/modules/items/13085631)
9+
10+
# Assignment for Class
11+
Today you will be further extending your guessing game by working with CSS and colors. Once complete you'll be working to deploy your code to the interwebs!
12+
13+
[Submit Your Work](https://canvas.instructure.com/courses/1176151/modules/items/13085633)
14+
15+
[Verify Your Understanding with a Quiz](https://canvas.instructure.com/courses/1176151/modules/items/13085634)
16+
17+
## User Stories (MVP)
18+
- As a developer, I want to further apply D.R.Y. to my code, so that I do not have duplicate and unnecessary code.
19+
- As a developer, I want to add some basic styling to my site, so that I can increase the happiness and engagement of my users.
20+
- As a developer, I want to include images in my game, when the user guesses correctly, so that the game is more informative and fun.
21+
- As a developer, I want to color code the answers on-screen, so my user can visually see what answers were right or wrong.
22+
- As a developer, I want to host my game online so that anyone can play!!
23+
24+
## Technical Requirements
25+
- Proper syntax and refactoring when applying D.R.Y.
26+
- Proper use of arrays and functions when applying DRY
27+
- CSS stylesheet linked to html
28+
- Basic CSS properties and values used, such as color, font-size, and font-family
29+
- Images are correctly sized and styled
30+
- Color properly applied on right/wrong answers
31+
- GH-Pages deployment fully functional
32+
33+
## User Stories (Stretch)
34+
- As a developer, I want my site to look more professional, so my users will enjoy their experience (hint: Add more specific CSS styling to make more pretty)
35+
36+
## Helpful Resources
37+
- [**Supporting Information**](support.md)

0 commit comments

Comments
 (0)