Skip to content

Commit 5d549f2

Browse files
authored
Merge branch 'main' into main
2 parents 5d06788 + 5c071e3 commit 5d549f2

File tree

7 files changed

+198
-1
lines changed

7 files changed

+198
-1
lines changed

lesson_03/quiz/quiz.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,14 @@ quiz:
4343
- $2y$10$QsN9VkjWORsKgZRiBT46VOUgc5HVnswKAT4uDbs7JYbTF7DdKbsw.
4444
- $2y$10$sqXEOL0L8o0kRyiAb.2s4u0RlBC2.LmOGDbGWXHj5IfBNwinkv2yq
4545
- $2y$10$HaWueXgrIzd7z8yf39HfVeTjjyr.Kgx0GFBqwCRSzW3zRSreN19yi
46+
ljmcwilliams:
47+
- $2y$10$krHODbBQL0Z.4Me1fsRc0.XODWzJQPjrEL1xzXwDa98TPONF8OeiK
48+
- $2y$10$S5HH5Vv834yLEUO2B3hHQO9gnR.8eBMA3zDORpXFrSYzXCuDsWHN6
49+
- $2y$10$nAd2FkTtyrmhHfTlhuxPcu1tWPimr7cX9mpDSGeIweUPLafpSTeiW
50+
tommytran:
51+
- $2y$10$6Mf9m8JXRHUyCgRNPn4nceimRZVOhtmsZbOGoFnI4ZJp..RluHmwy
52+
- $2y$10$Xr6W53IVq52orDvf6.TQQuXeMGaysQdgAu1cm5DYi1NyCskG2ByPe
53+
- $2y$10$x8BG/EcIbVohTU1s/thyc.TIzlfc8f/aVZaD4/1yMpcks2OWzKKMe
4654
zionbuchanan:
4755
- $2y$10$ufNCdP1efvioBYIih6K92uye33p5ckN/IrxfCvw4n7agHjN8aNfhe
4856
- $2y$10$Mb7LA1kqlDRWlN9jdBYvF.u1B8cmJqXWkrxQeMr/3ETRVOAzFlflG
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
import {
2+
AnswerChoice,
3+
MultipleChoiceQuizQuestion,
4+
QuizQuestion,
5+
QuizQuestionProvider,
6+
} from 'codedifferently-instructional';
7+
8+
export class LjMcwilliamsQuiz implements QuizQuestionProvider {
9+
getProviderName(): string {
10+
return 'ljmcwilliams';
11+
}
12+
13+
makeQuizQuestions(): QuizQuestion[] {
14+
return [
15+
LjMcwilliamsQuiz.makeQuestion0(),
16+
LjMcwilliamsQuiz.makeQuestion1(),
17+
LjMcwilliamsQuiz.makeQuestion2(),
18+
];
19+
}
20+
21+
private static makeQuestion0(): QuizQuestion {
22+
return new MultipleChoiceQuizQuestion(
23+
0,
24+
'Which component of a computer is responsible for short-term memory?',
25+
new Map<AnswerChoice, string>([
26+
[AnswerChoice.A, 'Motherboard'],
27+
[AnswerChoice.B, 'CPU (Central Processing Unit)'],
28+
[AnswerChoice.C, 'RAM (Random Access Memory)'],
29+
[AnswerChoice.D, 'Power Supply'],
30+
]),
31+
AnswerChoice.UNANSWERED,
32+
); // Replace `UNANSWERED` with the correct answer.
33+
}
34+
35+
private static makeQuestion1(): QuizQuestion {
36+
return new MultipleChoiceQuizQuestion(
37+
1,
38+
'Which terminal command allows a user to copy a file or directory?',
39+
new Map<AnswerChoice, string>([
40+
[AnswerChoice.A, 'cp file-name'],
41+
[AnswerChoice.B, 'cpy file-name'],
42+
[AnswerChoice.C, 'dupe file-name'],
43+
[AnswerChoice.D, 'make file-name'],
44+
]),
45+
AnswerChoice.UNANSWERED,
46+
); // Replace `UNANSWERED` with the correct answer.
47+
}
48+
49+
private static makeQuestion2(): QuizQuestion {
50+
return new MultipleChoiceQuizQuestion(
51+
2,
52+
'Which Git command allows a user to delete a feature branch LOCALLY?',
53+
new Map<AnswerChoice, string>([
54+
[AnswerChoice.A, 'git remove branch-name'],
55+
[AnswerChoice.B, 'git push origin --delete branch-name'],
56+
[AnswerChoice.C, 'git checkout master'],
57+
[AnswerChoice.D, 'git branch -d branch-name'],
58+
]),
59+
AnswerChoice.UNANSWERED,
60+
); // Replace `UNANSWERED` with the correct answer.
61+
}
62+
}

lesson_03/quiz/src/quizzes/quizzes.module.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@ import { ChigazoGrahamsQuiz } from './chigazo_graham_quiz.js';
88
import { DasiaEnglishQuiz } from './dasia_english_quiz.js';
99
import { JamesCapparellQuiz } from './james_capparell_quiz.js';
1010
import { JosephCaballeroQuiz } from './joseph_caballero_quiz.js';
11+
import { LjMcwilliamsQuiz } from './lj_mcwilliams_quiz.js';
1112
import { OyeyemiJimohQuiz } from './oyeyemi_jimoh_quiz.js';
1213
import { ShawnDunsmoreQuiz } from './shawn_dunsmore_quiz.js';
14+
import { TommyTranQuiz } from './tommy.tran.quiz.js';
1315
import { XavierCruzQuiz } from './xavier_cruz_quiz.js';
1416
import { YafiahAbdullahQuiz } from './yafiah_abdullah_quiz.js';
1517
import { ZionBuchananQuiz } from './zion_buchanan_quiz.js';
@@ -30,8 +32,10 @@ const QUIZ_PROVIDERS = [
3032
ChigazoGrahamsQuiz,
3133
AmiyahJonesQuiz,
3234
XavierCruzQuiz,
35+
LjMcwilliamsQuiz,
3336
ZionBuchananQuiz,
3437
ChelseaOgbonniaQuiz,
38+
TommyTranQuiz,
3539
];
3640

3741
@Module({
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
import {
2+
AnswerChoice,
3+
MultipleChoiceQuizQuestion,
4+
QuizQuestion,
5+
QuizQuestionProvider,
6+
} from 'codedifferently-instructional';
7+
8+
export class TommyTranQuiz implements QuizQuestionProvider {
9+
getProviderName(): string {
10+
return 'tommytran';
11+
}
12+
13+
makeQuizQuestions(): QuizQuestion[] {
14+
return [
15+
TommyTranQuiz.makeQuestion0(),
16+
TommyTranQuiz.makeQuestion1(),
17+
TommyTranQuiz.makeQuestion2(),
18+
];
19+
}
20+
21+
private static makeQuestion0(): QuizQuestion {
22+
return new MultipleChoiceQuizQuestion(
23+
0,
24+
'What is the capital city of Japan?',
25+
new Map<AnswerChoice, string>([
26+
[AnswerChoice.A, 'Seoul'],
27+
[AnswerChoice.B, 'Tokyo'],
28+
[AnswerChoice.C, 'Beijing'],
29+
[AnswerChoice.D, 'Bangkok'],
30+
]),
31+
AnswerChoice.UNANSWERED,
32+
); // Replace `UNANSWERED` with the correct answer.
33+
}
34+
35+
private static makeQuestion1(): QuizQuestion {
36+
return new MultipleChoiceQuizQuestion(
37+
1,
38+
'Which planet is known as the "Red Planet?',
39+
new Map<AnswerChoice, string>([
40+
[AnswerChoice.A, 'Venus'],
41+
[AnswerChoice.B, 'Jupiter'],
42+
[AnswerChoice.C, 'Mars'],
43+
[AnswerChoice.D, 'Saturn'],
44+
]),
45+
AnswerChoice.UNANSWERED,
46+
); // Replace `UNANSWERED` with the correct answer.
47+
}
48+
49+
private static makeQuestion2(): QuizQuestion {
50+
return new MultipleChoiceQuizQuestion(
51+
2,
52+
'Who wrote the play "Romeo and Juliet?',
53+
new Map<AnswerChoice, string>([
54+
[AnswerChoice.A, 'Charles Dickens'],
55+
[AnswerChoice.B, 'William Shakespeare'],
56+
[AnswerChoice.C, 'Jane Austen'],
57+
[AnswerChoice.D, 'Mark Twain'],
58+
]),
59+
AnswerChoice.UNANSWERED,
60+
); // Replace `UNANSWERED` with the correct answer.
61+
}
62+
}

lesson_04/README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,9 @@ Please review the following resources before lecture:
99

1010
## Homework
1111

12-
TODO(anthonydmays): Add details
12+
- [ ] Do [coding exercise](#writing-some-code).
13+
- [ ] Do pre-work for [lesson 05](/lesson_05/).
14+
15+
### Writing some code
16+
17+
For this assignment, you will need to write code that determines whether a number is a prime number. You will produce code in two different languages, then provide a 100+ word write up about the similarities and differences between the two implementations you made. An example is provided in the [anthonydmays/](./anthonydmays/) folder.

lesson_04/anthonydmays/README.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
## Python implementation
2+
3+
```python
4+
def is_even(number):
5+
return number % 2 == 0
6+
7+
# Example usage:
8+
print(is_even(4)) # Output: True
9+
print(is_even(7)) # Output: False
10+
```
11+
12+
## JavaScript implementation
13+
14+
```javascript
15+
function isEven(number) {
16+
return number % 2 === 0;
17+
}
18+
19+
// Example usage:
20+
console.log(isEven(4)); // Output: true
21+
console.log(isEven(7)); // Output: false
22+
```
23+
24+
## Explanation
25+
26+
The Python implementation uses a function named `is_even` that takes a single argument `number`. It returns `True` if the number is even (i.e., when the remainder of the division of the number by 2 is zero), otherwise, it returns `False`.
27+
28+
The JavaScript implementation uses a function named `isEven` that also takes a single argument `number`. It returns `true` if the number is even (using the same logic as the Python function) and `false` otherwise.
29+
30+
### Differences
31+
32+
1. **Syntax**:
33+
- In Python, functions are defined using the `def` keyword, whereas in JavaScript, the `function` keyword is used.
34+
- Python uses `True` and `False` for boolean values, while JavaScript uses `true` and `false`.
35+
36+
2. **Type Coercion**:
37+
- JavaScript has type coercion, which can sometimes lead to unexpected results if the input is not properly handled. In contrast, Python is more strict with types.
38+
39+
3. **Function Calls**:
40+
- The syntax for calling functions and printing to the console/output is slightly different. Python uses `print()`, while JavaScript uses `console.log()`.

lesson_05/README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Lesson 05: Software Development Life Cycle
2+
3+
## Pre-work
4+
5+
Please review the following resources before lecture:
6+
7+
### Required
8+
* [Software Development Life Cycle: Explained (Video)](https://www.youtube.com/watch?v=SaCYkPD4_K0)
9+
* [What is the "best way" to develop software applications? (Video)](https://www.youtube.com/watch?v=oNmcX6Gozg0)
10+
11+
### Recommended
12+
* [User stories with examples and a template](https://www.atlassian.com/agile/project-management/user-stories)
13+
14+
## Homework
15+
16+
TODO(anthonydmays): Add details

0 commit comments

Comments
 (0)