Skip to content

Commit dd8da25

Browse files
add class content
1 parent 317318c commit dd8da25

33 files changed

+1078
-2
lines changed

.gitignore

+155
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
2+
# Created by https://www.gitignore.io/api/node,linux,macos,windows,visualstudiocode
3+
4+
### Linux ###
5+
*~
6+
7+
# temporary files which can be created if a process still has a handle open of a deleted file
8+
.fuse_hidden*
9+
10+
# KDE directory preferences
11+
.directory
12+
13+
# Linux trash folder which might appear on any partition or disk
14+
.Trash-*
15+
16+
# .nfs files are created when an open file is removed but is still being accessed
17+
.nfs*
18+
19+
### macOS ###
20+
# General
21+
.DS_Store
22+
.AppleDouble
23+
.LSOverride
24+
25+
# Icon must end with two \r
26+
Icon
27+
28+
# Thumbnails
29+
._*
30+
31+
# Files that might appear in the root of a volume
32+
.DocumentRevisions-V100
33+
.fseventsd
34+
.Spotlight-V100
35+
.TemporaryItems
36+
.Trashes
37+
.VolumeIcon.icns
38+
.com.apple.timemachine.donotpresent
39+
40+
# Directories potentially created on remote AFP share
41+
.AppleDB
42+
.AppleDesktop
43+
Network Trash Folder
44+
Temporary Items
45+
.apdisk
46+
47+
### Node ###
48+
# Logs
49+
logs
50+
*.log
51+
npm-debug.log*
52+
yarn-debug.log*
53+
yarn-error.log*
54+
55+
# Runtime data
56+
pids
57+
*.pid
58+
*.seed
59+
*.pid.lock
60+
61+
# Directory for instrumented libs generated by jscoverage/JSCover
62+
lib-cov
63+
64+
# Coverage directory used by tools like istanbul
65+
coverage
66+
67+
# nyc test coverage
68+
.nyc_output
69+
70+
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
71+
.grunt
72+
73+
# Bower dependency directory (https://bower.io/)
74+
bower_components
75+
76+
# node-waf configuration
77+
.lock-wscript
78+
79+
# Compiled binary addons (https://nodejs.org/api/addons.html)
80+
build/Release
81+
82+
# Dependency directories
83+
node_modules/
84+
jspm_packages/
85+
86+
# TypeScript v1 declaration files
87+
typings/
88+
89+
# Optional npm cache directory
90+
.npm
91+
92+
# Optional eslint cache
93+
.eslintcache
94+
95+
# Optional REPL history
96+
.node_repl_history
97+
98+
# Output of 'npm pack'
99+
*.tgz
100+
101+
# Yarn Integrity file
102+
.yarn-integrity
103+
104+
# dotenv environment variables file
105+
.env
106+
107+
# parcel-bundler cache (https://parceljs.org/)
108+
.cache
109+
110+
# next.js build output
111+
.next
112+
113+
# nuxt.js build output
114+
.nuxt
115+
116+
# vuepress build output
117+
.vuepress/dist
118+
119+
# Serverless directories
120+
.serverless
121+
122+
### VisualStudioCode ###
123+
.vscode/*
124+
!.vscode/settings.json
125+
!.vscode/tasks.json
126+
!.vscode/launch.json
127+
!.vscode/extensions.json
128+
129+
### Windows ###
130+
# Windows thumbnail cache files
131+
Thumbs.db
132+
ehthumbs.db
133+
ehthumbs_vista.db
134+
135+
# Dump file
136+
*.stackdump
137+
138+
# Folder config file
139+
[Dd]esktop.ini
140+
141+
# Recycle Bin used on file shares
142+
$RECYCLE.BIN/
143+
144+
# Windows Installer files
145+
*.cab
146+
*.msi
147+
*.msix
148+
*.msm
149+
*.msp
150+
151+
# Windows shortcuts
152+
*.lnk
153+
154+
155+
# End of https://www.gitignore.io/api/node,linux,macos,windows,visualstudiocode

README.md

+81-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,81 @@
1-
# cedarrapids-code-102w26
2-
Introduction to Software Development.
1+
# Code 102: Intro to Software Development
2+
3+
## Course Information
4+
5+
- Course Level: 102
6+
7+
## Course Prerequisites
8+
9+
- Computer updated with the latest version of OS, all security patches installed.
10+
- Familiarity with basic algebra concepts.
11+
- Code 101 or equivalent exposure to basic HTML and CSS.
12+
13+
Recommended: Be able to type at least 30 words per minute.
14+
15+
> Students with previous relevant or equivalent experience can test out of this requirement in their application.
16+
17+
## Course Description
18+
19+
In this course you will build a strong software development foundation and learn how to use HTML, CSS, and JavaScript to build for the modern web. You will learn the methods and tools of professional software developers through studying computer science concepts and utilizing contemporary development technologies, including VSCode, Chrome (and its developer tools), Git, GitHub, and Terminal.
20+
21+
## Program Learning Outcomes
22+
23+
Builds a strong software development foundation and learn how to use HTML, CSS, JavaScript, and various libraries to create fully-functional web apps.
24+
25+
This course guides students toward developing a well-rounded foundation of skills necessary for modern web development. These skills include HTML, CSS, and JavaScript coding; utilizing Git workflow processes, project organization, designing with wireframing and employing introductory Agile development methods.
26+
27+
## Student Learning Outcomes
28+
29+
Upon satisfactory completion of this course, a student should be able to:
30+
31+
### Describe and Define
32+
33+
#### Web Development
34+
35+
- Website structure (files, resources)
36+
- The benefits of version control with Git and GitHub
37+
- Markdown
38+
- Proper use of Semantic HTML
39+
- The role of CSS in website development and design
40+
41+
#### JavasScript Programming
42+
43+
- Variables & storing data
44+
- Conditionals
45+
- Flow control with "for" and "while" loops
46+
47+
### Execute
48+
49+
- Tie together HTML, CSS, and JavaScript in an interactive web page.
50+
- Use the same tools utilized by professionals across the tech industry.
51+
- Apply CSS to style content with color, typography, and images.
52+
- Utilize Javascript to make web projects interactive.
53+
- Utilize industry-standard version control tools and workflows, including Git and GitHub.
54+
- Configure your computer and see the workflow for serious software development, with free and open-source tools.
55+
- Learn to write documentation using Markdown.
56+
57+
## Course Schedule
58+
59+
| Class # | Topic |
60+
|-----------------|-----------|
61+
|1| [Learning. Markdown.](class-01/)
62+
|2| [The Coder's Computer](class-02/)
63+
|3| [Revisions and the Cloud](class-03/)
64+
|4| [Structure web pages with HTML](class-04/)
65+
|5| [Design web pages with CSS](class-05/)
66+
|6| [Activate web pages with JavaScript](class-06/)
67+
|7| [Programming with JavaScript](class-07/)
68+
|8| [Just enough math, logic, and computer architecture](class-08/)
69+
|9| [Career Coaching](class-09/)
70+
|10| [201 Entrance Exam](class-10/)
71+
72+
### Tips for Success
73+
74+
Get ready to tackle some seriously ambitious material! You'll have the most success if you:
75+
76+
- Take notes during class.
77+
- Keep up with the daily assignments (code and reading).
78+
- Research topics that are new or confusing.
79+
- Speak up when you're stuck for more than 15 minutes.
80+
- Be thorough and deliberate when reading error messages and console/terminal responses. Take your time and do not go too fast. Always know what you are doing.
81+
- And, above all else, pay attention to details.

class-01/DISCUSSION.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Reflection and Discussion
2+
3+
Below is a collection of resources of varying types and lengths which describe the topics from lecture.
4+
5+
Go through these resources, and **create a page in your reading-notes repo** that summarizes the topics you learned as though you were presenting the material to a non-technical friend interested in learning about it.
6+
7+
Note entry ideas:
8+
9+
* Blog Article (2-3 paragraphs with code sample)
10+
* Dictionary / Flash Cards
11+
* Notes in outline form
12+
* Fill-in-the-blank worksheet of key concepts
13+
14+
## Read
15+
16+
* [Markdown Basic Syntax](https://www.markdownguide.org/basic-syntax/){:target="_blank"}
17+
* [Mastering Markdown on GitHub](https://guides.github.com/features/mastering-markdown/){:target="_blank"}
18+
19+
## Watch
20+
21+
* [GitHub Pages](https://pages.github.com/){:target="_blank"}
22+
23+
## Bookmark
24+
25+
* [GitHub Markdown Syntax](https://help.github.com/en/articles/basic-writing-and-formatting-syntax){:target="_blank"}
26+
27+
## Submission
28+
29+
Share what you've learned by copying and pasting the full text of your new rendered web page into the 'Reply' below. Include the live URL of the new page below your pasted text.
30+
31+
You are invited to check out your classmates' replies and give positive feedback and words of encouragement.

class-01/README.md

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Learning. Markdown.
2+
3+
Welcome to Code 102! We will dive right in to learning new things.
4+
5+
## Learning Objectives
6+
7+
- Students will understand the impact of mindsets on the learning process and know how to adjust their mindset for effective skill acquisition.
8+
- Students will use essential Markdown syntax to create documents and publish a web site of interconnected pages using a Jekyll theme through GitHub Pages.
9+
- Students will publish a reading-notes, to highlight skills gained during the course.
10+
11+
## Agenda
12+
13+
1. Campus Orientation & Intros
14+
1. Learning to Learn
15+
- Growth mindset
16+
- Demo & Lab
17+
1. Web Publishing
18+
- Markdown
19+
- GitHub Pages
20+
21+
See class slides and assignments for details.
22+
23+
## New Vocabulary
24+
25+
- Professional Competencies
26+
- Proficiencies
27+
- Canvas
28+
- GitHub
29+
- Slack
30+
- Growth mindset
31+
- Fixed mindset
32+
- Repository
33+
- Markdown
34+
- Web publishing
35+
- Path learning
36+
- Sandbox learning

class-01/lab/README.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Create a reading-notes Repo
2+
3+
Give yourself a learning challenge: Figure out how to publish a GitHub Pages web site, to use as a reading-notes.
4+
5+
## Setup and Documentation
6+
7+
Use these resources to get going:
8+
9+
- [Growth Mindset](https://www.atlassian.com/blog/inside-atlassian/growth-mindset){:target="_blank"}
10+
- [Markdown on GitHub](https://help.github.com/en/articles/basic-writing-and-formatting-syntax){:target="_blank"}
11+
- [Getting Started with GitHub Pages](https://guides.github.com/features/pages/){:target="_blank"}
12+
13+
## Requirements
14+
15+
1. Your site should exist at `https://USERNAME.github.io/reading-notes/`
16+
1. The "source" for your site should be a README.md file, written with Markdown
17+
1. On the main page:
18+
- Explain "growth mindset" in your own words
19+
- Include 3 reminders to yourself of how to keep yourself in a growth mindset
20+
1. Utilize at least 5 different features of Markdown to structure your page
21+
1. Be sure to introduce yourself, and include a link to your GitHub portfolio page
22+
23+
### Stretch Goals
24+
25+
Beef up your profile page! Add an image, a bio, contact info... as much as you feel comfortable including. Remember, this page will act as a showcase of your developer skills, so make it look great!
26+
27+
### Submission Instructions
28+
29+
Share a link to your live site with your classmates, in the discussion below.
30+
31+
Then, review the sites of your classmates, comment with what you learned from them. Click through to profile pages to "follow" each of your classmates.
Binary file not shown.

class-02/DISCUSSION.md

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Reflection and Discussion
2+
3+
Below is a collection of resources of varying types and lengths which describe the topics for the upcoming lecture.
4+
5+
Go through these resources, and **create a page in your reading-notes repo** that summarizes what you learned as though you were presenting the material to a non-technical friend interested in learning about it.
6+
7+
Reading-notes entry ideas:
8+
9+
* Blog Article (2-3 paragraphs with code sample)
10+
* Dictionary / Flash Cards
11+
* Notes in outline form
12+
* Comparison of "basic" text editor vs coding-specific text editor vs IDE.
13+
14+
## Read
15+
16+
* [Choosing a Text Editor](https://codefellows.github.io/code-102-guide/curriculum/class-02/Choosing-A-Text-Editor--The-Older-Coder.pdf){:target="_blank"}
17+
18+
Document in your reading-notes the different classifications of text editors, and why it's important for software developers to be thoughtful about their selection of what they use to write code.
19+
20+
## Read Carefully
21+
22+
The following pages will give you a step by step introduction to using a terminal. While it refers to Linux, the same commands are available in macOS and Windows (with WSL). Read through these pages carefully. Don't worry about trying this out on your own system yet, that will come very soon. For now, take notes on how commands are used, and which look similar to how you are used to using the GUI File Explorer/Finder.
23+
24+
* [The Command Line](https://ryanstutorials.net/linuxtutorial/commandline.php){:target="_blank"}
25+
* [Basic Navigation](https://ryanstutorials.net/linuxtutorial/navigation.php){:target="_blank"}
26+
* [About Files](https://ryanstutorials.net/linuxtutorial/aboutfiles.php){:target="_blank"}
27+
28+
Record in your reading-notes a "cheat sheet" or other resource for basic terminal usage.
29+
30+
## Submission Instructions
31+
32+
Share what you've learned by copying and pasting the full text of your new rendered web page into the 'Reply' below. Include the live URL of the new page below your pasted text.
33+
34+
You are invited to check out your classmates' replies and give positive feedback and words of encouragement.

0 commit comments

Comments
 (0)