haas/fall2026/c4eng/projects/gfo0.md
... ...
@@ -0,0 +1,304 @@
1
+# PROJECT: GRADE FIGURE-OUTERER (gfoX)
2
+
3
+## OBJECTIVE
4
+
5
+To successfully obtain, input, calculate, and derive your current overall
6
+status in the course through the use of a spreadsheet calculator.
7
+
8
+## BACKGROUND
9
+
10
+For this project, you will be using **Google Sheets** to create a
11
+spreadsheet and use it to tabulate and compute your current status in the
12
+class.
13
+
14
+You will need a Google account (a personal one is fine; if you use your
15
+school account, be mindful of any sharing restrictions that may apply).
16
+Sheets is accessed through your web browser at:
17
+
18
+ * https://sheets.google.com
19
+
20
+No installation is required. You will still use your lab46 account to
21
+look up your results (see LOOK UP YOUR STATUS below), but the spreadsheet
22
+itself is built in the browser.
23
+
24
+## GOOGLE SHEETS BASICS
25
+
26
+If you have never used a spreadsheet before, here is what you need to get
27
+started. Google also has built-in help (Help menu -> Sheets Help) and a
28
+function list (Help -> Function list) you can reference at any time.
29
+
30
+### CELLS AND REFERENCES
31
+
32
+A spreadsheet is a grid of **cells**. Columns are lettered (A, B, C...)
33
+and rows are numbered (1, 2, 3...), so the cell in column B, row 4 is
34
+**B4**. Click a cell to select it, and type to enter data.
35
+
36
+ * A cell whose contents start with `=` is a **formula**.
37
+ * Formulas can reference other cells: `=B4+B5`
38
+ * Formulas can reference a **range** of cells: `=SUM(B4:B9)`
39
+ * Formulas update automatically when the cells they reference change.
40
+
41
+### USEFUL FUNCTIONS
42
+
43
+Some functions you will likely find helpful (there are others; explore!):
44
+
45
+ * `SUM(range)`: add up all the numbers in a range
46
+ * `MIN(a, b)`: the smaller of two values (useful for capping)
47
+ * `MAX(a, b)`: the larger of two values
48
+ * `ROUND(value, places)`: round to a number of decimal places
49
+ * `IF(test, if_true, if_false)`: choose between two results
50
+ * `IFS(test1, result1, test2, result2, ...)`: chain multiple tests
51
+ * `VLOOKUP(key, range, column, is_sorted)`: look a value up in a table
52
+
53
+### FORMATTING
54
+
55
+Use the toolbar to make your spreadsheet readable: bold headers, borders,
56
+cell background colors, column widths, number formats (such as decimal
57
+places or percent). You can also merge cells for titles (Format -> Merge
58
+cells).
59
+
60
+### SAVING
61
+
62
+Google Sheets **saves automatically** as you work. Give your spreadsheet
63
+a meaningful name by clicking the title at the top left of the page (for
64
+example: `gfo0`).
65
+
66
+See the SUBMISSION section for how to get your finished work to me.
67
+
68
+## LOOK UP YOUR STATUS
69
+
70
+Ever since the first projects came due and were evaluated, your results
71
+were accessible to you on lab46 via the **status** command.
72
+
73
+The synopsis for the **status** command is:
74
+
75
+```
76
+status DESIG [OPTION..]
77
+```
78
+
79
+Where OPTION is any valid presence and combination of viable options
80
+(**detail** is one, **help** is another).
81
+
82
+The most common usage will probably be (square brackets in this context
83
+denote optionality):
84
+
85
+```
86
+status DESIG [detail]
87
+```
88
+
89
+Customize per the desired request. If you do not want the detailed view,
90
+omit the `detail` option. If you desire it, include the `detail` option.
91
+
92
+NOTE: **status** and the data it reads from are only accessible on lab46.
93
+
94
+```
95
+lab46:~$ status DESIG
96
+```
97
+
98
+Furthermore, if you were curious about the breakdown of points, you could
99
+also append the 'detail' argument to get an expanded view of information:
100
+
101
+```
102
+lab46:~$ status DESIG detail
103
+```
104
+
105
+NOTE: because 'detail' is an optional argument we use the square brackets
106
+to denote optionality. You do not type them, instead, you either type
107
+what is in them, or you do not, depending on desired functionality.
108
+
109
+## CALCULATING YOUR GRADE
110
+
111
+Your grade is calculated from four distinct components, three of which
112
+you regularly encounter each week through the semester, and the final one
113
+at the end. Each is worth a certain amount of overall points, that when
114
+added up equals 104 points. With their individual point values, they are:
115
+
116
+ * projects (52 points)
117
+ * notes (13 points)
118
+ * participation (13 points)
119
+ * eoce (26 points)
120
+
121
+Within each category, you tally up two different accumulations of points:
122
+
123
+ * all the points YOU got
124
+ * all the points POSSIBLE to get
125
+
126
+Each category (and the overall grade) is evaluated as a sum of points
127
+earned out of a sum of points possible (NOT an average of averages).
128
+
129
+For example, take this sample participation dataset:
130
+
131
+```
132
+1:wcp1:final tally of results (1/1)
133
+2:wcp2:final tally of results (2/2)
134
+1:wcp3:final tally of results (1/4)
135
+5:wcp4:final tally of results (5/8)
136
+4:moar:final tally of results (4/0)
137
+```
138
+
139
+This person got 1+2+1+5 points (and 4 bonus points), for a total of: 9 +
140
+4 = 13 points.
141
+
142
+The total amount of points available (at this point) was 1+2+4+8+0, or:
143
+15 points
144
+
145
+A note on 'bonus' points: in each category, there is the potential for
146
+the accumulation of bonus/extra/moar points. These are added into the
147
+mix, BUT for the purposes of grading, the final tally of YOUR points can
148
+NOT exceed the final tally of total points (bonus points only pad the
149
+category in which they were earned, and only up to that category's
150
+maximum).
151
+
152
+In this case, the person amassed 13 total points, out of a total of 15
153
+points: for purposes of grading, for their participation score, it would
154
+be 13/15. Bonus points only apply to the particular category in which
155
+they were earned (they cannot be applied to a different category).
156
+
157
+Continuing this example, the person got 13/15ths of the 13 available
158
+points for that section (participation is worth 13 total points). We
159
+would calculate that "out of 13" result as follows:
160
+
161
+`(13/15)*13` = 11 (so at this point, they'd have 11 out of 13
162
+participation points)
163
+
164
+Do the same for projects (52) and notes (13). For now, the total possible
165
+grade points you can receive is 78 total points (52+13+13). So that is
166
+what your spreadsheet should reflect. (EoCE does not exist yet, so it is
167
+not part of this calculation.)
168
+
169
+### LETTER GRADES
170
+
171
+Your letter grade is obtained by determining your score (out of 100) and
172
+selecting the letter grade pertaining to that value. Letter grades are
173
+pegged to the following numeric values (per the course syllabus):
174
+
175
+```
176
+A 98.00+
177
+A- 92.00 - 97.99
178
+B+ 86.00 - 91.99
179
+B 80.00 - 85.99
180
+B- 74.00 - 79.99
181
+C+ 68.00 - 73.99
182
+C 62.00 - 67.99
183
+D 56.00 - 61.99
184
+F 0.00 - 55.99
185
+```
186
+
187
+Your score out of 100 is your current points out of 78, scaled to 100:
188
+`(your points / 78) * 100`.
189
+
190
+## SPREADSHEET
191
+
192
+For this project, your task is to make a spreadsheet in Google
193
+Sheets that, in clearly readable and organized fashion, plots out your
194
+various results on the different deliverables for the class, ultimately
195
+displaying your current overall grade for the course.
196
+
197
+I want to see each project (identified), along with the points you got,
198
+along with the total points possible for a "dashboard" quick glance,
199
+calculate your project "score" out of 100 (just to give you a feel for
200
+how you did on a particular project). Be sure to:
201
+
202
+ * have a category for bonus points you have earned
203
+ * have a projects score tally (all your points earned)
204
+ * have a projects total tally (all the points possible to earn)
205
+
206
+Calculate your projects "score" out of 100 (just to give you a feel for
207
+how you did on the category overall).
208
+
209
+Calculate your projects "points" (out of 52), and display it under an
210
+identifiable label.
211
+
212
+Do the same for the participation and notes categories as well.
213
+
214
+Add up your category points (52+13+13=78), and have these be near each
215
+other in your spreadsheet.
216
+
217
+Calculate your actual current score for the class (based on a total of 78
218
+points), and use a spreadsheet function (such as IFS or VLOOKUP) to
219
+determine from the letter grade ladder where you fall, displaying the
220
+resulting letter grade.
221
+
222
+Do NOTE: the aim and spirit of this project is to use the SPREADSHEET as
223
+the calculator. I want to see embedded equations, NOT pre-calculated
224
+values in your spreadsheet data. I do NOT want to see you being the
225
+calculator, pre-calculating all the values, and just entering them. That
226
+is NOT effective use of the spreadsheet.
227
+
228
+If you'd like to continue using this spreadsheet for additional points
229
+accrued in the coming weeks, you may want to plan ahead and set up your
230
+"final results" tally with some space away from the growing list of
231
+results (or on its own tab). Using ranges that have room to grow (for
232
+example, `SUM(B2:B30)`) can save you from having to rewrite formulas
233
+later.
234
+
235
+## TIME-SENSITIVE DATA
236
+
237
+gfoX is issued twice during the semester, and each iteration is to
238
+capture the following snapshot of data in its reporting results:
239
+
240
+ * gfo0: start of semester through and including week 6 deliverables
241
+ * gfo1: start of semester through and including week 12 deliverables
242
+
243
+There is a bit of a lag from the end of the sampling window and when that
244
+project is due:
245
+
246
+ * gfo0 (through week 6 data) will be due alongside pct9/wcp9
247
+ * gfo1 (through week 12 data) will be due alongside pctE/wcpE
248
+
249
+Each iteration is a fresh snapshot: gfo1 should include everything from
250
+gfo0 plus the weeks since (weeks 1-12 in total). You are welcome to build
251
+gfo1 by copying your gfo0 spreadsheet and extending it (in Google Sheets:
252
+File -> Make a copy), as long as the final result is correct for the full
253
+week 1-12 window.
254
+
255
+## SUBMISSION
256
+
257
+To successfully complete this project, the following criteria must be
258
+met:
259
+
260
+ * Solution must utilize the algorithm/approach presented above
261
+ * Output must conform to the specifications presented above
262
+ * Submit your solution by committing it to your private semester
263
+ repository (NOT via the lab46 **submit** tool).
264
+
265
+Your finished spreadsheet needs to be exported from Google Sheets in a
266
+format that preserves your formulas, and then placed in the gfoX project
267
+directory of your private semester repository:
268
+
269
+ 1. In Google Sheets, choose **File -> Download -> Microsoft Excel
270
+ (.xlsx)**. Name/rename the downloaded file `gfoX.xlsx`
271
+ (substituting the actual iteration, such as `gfo0.xlsx` or
272
+ `gfo1.xlsx`).
273
+ 2. Place the file in the corresponding project directory of your
274
+ private semester repository (the same place you would put other
275
+ project deliverables).
276
+ 3. Add, commit, and push it.
277
+
278
+NOTE: do NOT download as CSV. CSV files contain only the displayed values
279
+and discard your formulas, which would defeat the purpose of the project.
280
+
281
+Be sure the push completes without errors, and verify that your file
282
+shows up in your repository. If not, check for typos and or locational
283
+mismatches (wrong directory, wrong filename, forgetting to push).
284
+
285
+Your submission is evaluated as of the project's due date, so be sure to
286
+push before the deadline (the late policy applies as usual).
287
+
288
+It is also a good idea to keep your Google Sheet itself as a backup.
289
+
290
+### RUBRIC
291
+
292
+What I will be looking for:
293
+
294
+```
295
+52:gfoX:final tally of results (52/52)
296
+*:gfoX:gfoX.xlsx data points entered as numbers, adequately labelled [13/13]
297
+*:gfoX:gfoX.xlsx all calculations done as equations in spreadsheet [13/13]
298
+*:gfoX:gfoX.xlsx calculations reference cells, NOT literal data [13/13]
299
+*:gfoX:gfoX.xlsx calculations use available spreadsheet functions [13/13]
300
+```
301
+
302
+Additionally:
303
+ * Solutions not abiding by **SPIRIT** of project will be subject to a 25% overall deduction
304
+ * Solution output lacking **ORGANIZATION** or not easy to read (fits on a standard screen without excessive scrolling, clear labels and formatting) are subject to a 25% overall deduction
haas/fall2026/c4eng/projects/gfoX.md
... ...
@@ -1,304 +0,0 @@
1
-# PROJECT: GRADE FIGURE-OUTERER (gfoX)
2
-
3
-## OBJECTIVE
4
-
5
-To successfully obtain, input, calculate, and derive your current overall
6
-status in the course through the use of a spreadsheet calculator.
7
-
8
-## BACKGROUND
9
-
10
-For this project, you will be using **Google Sheets** to create a
11
-spreadsheet and use it to tabulate and compute your current status in the
12
-class.
13
-
14
-You will need a Google account (a personal one is fine; if you use your
15
-school account, be mindful of any sharing restrictions that may apply).
16
-Sheets is accessed through your web browser at:
17
-
18
- * https://sheets.google.com
19
-
20
-No installation is required. You will still use your lab46 account to
21
-look up your results (see LOOK UP YOUR STATUS below), but the spreadsheet
22
-itself is built in the browser.
23
-
24
-## GOOGLE SHEETS BASICS
25
-
26
-If you have never used a spreadsheet before, here is what you need to get
27
-started. Google also has built-in help (Help menu -> Sheets Help) and a
28
-function list (Help -> Function list) you can reference at any time.
29
-
30
-### CELLS AND REFERENCES
31
-
32
-A spreadsheet is a grid of **cells**. Columns are lettered (A, B, C...)
33
-and rows are numbered (1, 2, 3...), so the cell in column B, row 4 is
34
-**B4**. Click a cell to select it, and type to enter data.
35
-
36
- * A cell whose contents start with `=` is a **formula**.
37
- * Formulas can reference other cells: `=B4+B5`
38
- * Formulas can reference a **range** of cells: `=SUM(B4:B9)`
39
- * Formulas update automatically when the cells they reference change.
40
-
41
-### USEFUL FUNCTIONS
42
-
43
-Some functions you will likely find helpful (there are others; explore!):
44
-
45
- * `SUM(range)`: add up all the numbers in a range
46
- * `MIN(a, b)`: the smaller of two values (useful for capping)
47
- * `MAX(a, b)`: the larger of two values
48
- * `ROUND(value, places)`: round to a number of decimal places
49
- * `IF(test, if_true, if_false)`: choose between two results
50
- * `IFS(test1, result1, test2, result2, ...)`: chain multiple tests
51
- * `VLOOKUP(key, range, column, is_sorted)`: look a value up in a table
52
-
53
-### FORMATTING
54
-
55
-Use the toolbar to make your spreadsheet readable: bold headers, borders,
56
-cell background colors, column widths, number formats (such as decimal
57
-places or percent). You can also merge cells for titles (Format -> Merge
58
-cells).
59
-
60
-### SAVING
61
-
62
-Google Sheets **saves automatically** as you work. Give your spreadsheet
63
-a meaningful name by clicking the title at the top left of the page (for
64
-example: `gfo0`).
65
-
66
-See the SUBMISSION section for how to get your finished work to me.
67
-
68
-## LOOK UP YOUR STATUS
69
-
70
-Ever since the first projects came due and were evaluated, your results
71
-were accessible to you on lab46 via the **status** command.
72
-
73
-The synopsis for the **status** command is:
74
-
75
-```
76
-status DESIG [OPTION..]
77
-```
78
-
79
-Where OPTION is any valid presence and combination of viable options
80
-(**detail** is one, **help** is another).
81
-
82
-The most common usage will probably be (square brackets in this context
83
-denote optionality):
84
-
85
-```
86
-status DESIG [detail]
87
-```
88
-
89
-Customize per the desired request. If you do not want the detailed view,
90
-omit the `detail` option. If you desire it, include the `detail` option.
91
-
92
-NOTE: **status** and the data it reads from are only accessible on lab46.
93
-
94
-```
95
-lab46:~$ status DESIG
96
-```
97
-
98
-Furthermore, if you were curious about the breakdown of points, you could
99
-also append the 'detail' argument to get an expanded view of information:
100
-
101
-```
102
-lab46:~$ status DESIG detail
103
-```
104
-
105
-NOTE: because 'detail' is an optional argument we use the square brackets
106
-to denote optionality. You do not type them, instead, you either type
107
-what is in them, or you do not, depending on desired functionality.
108
-
109
-## CALCULATING YOUR GRADE
110
-
111
-Your grade is calculated from four distinct components, three of which
112
-you regularly encounter each week through the semester, and the final one
113
-at the end. Each is worth a certain amount of overall points, that when
114
-added up equals 104 points. With their individual point values, they are:
115
-
116
- * projects (52 points)
117
- * notes (13 points)
118
- * participation (13 points)
119
- * eoce (26 points)
120
-
121
-Within each category, you tally up two different accumulations of points:
122
-
123
- * all the points YOU got
124
- * all the points POSSIBLE to get
125
-
126
-Each category (and the overall grade) is evaluated as a sum of points
127
-earned out of a sum of points possible (NOT an average of averages).
128
-
129
-For example, take this sample participation dataset:
130
-
131
-```
132
-1:wcp1:final tally of results (1/1)
133
-2:wcp2:final tally of results (2/2)
134
-1:wcp3:final tally of results (1/4)
135
-5:wcp4:final tally of results (5/8)
136
-4:moar:final tally of results (4/0)
137
-```
138
-
139
-This person got 1+2+1+5 points (and 4 bonus points), for a total of: 9 +
140
-4 = 13 points.
141
-
142
-The total amount of points available (at this point) was 1+2+4+8+0, or:
143
-15 points
144
-
145
-A note on 'bonus' points: in each category, there is the potential for
146
-the accumulation of bonus/extra/moar points. These are added into the
147
-mix, BUT for the purposes of grading, the final tally of YOUR points can
148
-NOT exceed the final tally of total points (bonus points only pad the
149
-category in which they were earned, and only up to that category's
150
-maximum).
151
-
152
-In this case, the person amassed 13 total points, out of a total of 15
153
-points: for purposes of grading, for their participation score, it would
154
-be 13/15. Bonus points only apply to the particular category in which
155
-they were earned (they cannot be applied to a different category).
156
-
157
-Continuing this example, the person got 13/15ths of the 13 available
158
-points for that section (participation is worth 13 total points). We
159
-would calculate that "out of 13" result as follows:
160
-
161
-`(13/15)*13` = 11 (so at this point, they'd have 11 out of 13
162
-participation points)
163
-
164
-Do the same for projects (52) and notes (13). For now, the total possible
165
-grade points you can receive is 78 total points (52+13+13). So that is
166
-what your spreadsheet should reflect. (EoCE does not exist yet, so it is
167
-not part of this calculation.)
168
-
169
-### LETTER GRADES
170
-
171
-Your letter grade is obtained by determining your score (out of 100) and
172
-selecting the letter grade pertaining to that value. Letter grades are
173
-pegged to the following numeric values (per the course syllabus):
174
-
175
-```
176
-A 98.00+
177
-A- 92.00 - 97.99
178
-B+ 86.00 - 91.99
179
-B 80.00 - 85.99
180
-B- 74.00 - 79.99
181
-C+ 68.00 - 73.99
182
-C 62.00 - 67.99
183
-D 56.00 - 61.99
184
-F 0.00 - 55.99
185
-```
186
-
187
-Your score out of 100 is your current points out of 78, scaled to 100:
188
-`(your points / 78) * 100`.
189
-
190
-## SPREADSHEET
191
-
192
-For this project, your task is to make a spreadsheet in Google
193
-Sheets that, in clearly readable and organized fashion, plots out your
194
-various results on the different deliverables for the class, ultimately
195
-displaying your current overall grade for the course.
196
-
197
-I want to see each project (identified), along with the points you got,
198
-along with the total points possible for a "dashboard" quick glance,
199
-calculate your project "score" out of 100 (just to give you a feel for
200
-how you did on a particular project). Be sure to:
201
-
202
- * have a category for bonus points you have earned
203
- * have a projects score tally (all your points earned)
204
- * have a projects total tally (all the points possible to earn)
205
-
206
-Calculate your projects "score" out of 100 (just to give you a feel for
207
-how you did on the category overall).
208
-
209
-Calculate your projects "points" (out of 52), and display it under an
210
-identifiable label.
211
-
212
-Do the same for the participation and notes categories as well.
213
-
214
-Add up your category points (52+13+13=78), and have these be near each
215
-other in your spreadsheet.
216
-
217
-Calculate your actual current score for the class (based on a total of 78
218
-points), and use a spreadsheet function (such as IFS or VLOOKUP) to
219
-determine from the letter grade ladder where you fall, displaying the
220
-resulting letter grade.
221
-
222
-Do NOTE: the aim and spirit of this project is to use the SPREADSHEET as
223
-the calculator. I want to see embedded equations, NOT pre-calculated
224
-values in your spreadsheet data. I do NOT want to see you being the
225
-calculator, pre-calculating all the values, and just entering them. That
226
-is NOT effective use of the spreadsheet.
227
-
228
-If you'd like to continue using this spreadsheet for additional points
229
-accrued in the coming weeks, you may want to plan ahead and set up your
230
-"final results" tally with some space away from the growing list of
231
-results (or on its own tab). Using ranges that have room to grow (for
232
-example, `SUM(B2:B30)`) can save you from having to rewrite formulas
233
-later.
234
-
235
-## TIME-SENSITIVE DATA
236
-
237
-gfoX is issued twice during the semester, and each iteration is to
238
-capture the following snapshot of data in its reporting results:
239
-
240
- * gfo0: start of semester through and including week 6 deliverables
241
- * gfo1: start of semester through and including week 12 deliverables
242
-
243
-There is a bit of a lag from the end of the sampling window and when that
244
-project is due:
245
-
246
- * gfo0 (through week 6 data) will be due alongside pct9/wcp9
247
- * gfo1 (through week 12 data) will be due alongside pctE/wcpE
248
-
249
-Each iteration is a fresh snapshot: gfo1 should include everything from
250
-gfo0 plus the weeks since (weeks 1-12 in total). You are welcome to build
251
-gfo1 by copying your gfo0 spreadsheet and extending it (in Google Sheets:
252
-File -> Make a copy), as long as the final result is correct for the full
253
-week 1-12 window.
254
-
255
-## SUBMISSION
256
-
257
-To successfully complete this project, the following criteria must be
258
-met:
259
-
260
- * Solution must utilize the algorithm/approach presented above
261
- * Output must conform to the specifications presented above
262
- * Submit your solution by committing it to your private semester
263
- repository (NOT via the lab46 **submit** tool).
264
-
265
-Your finished spreadsheet needs to be exported from Google Sheets in a
266
-format that preserves your formulas, and then placed in the gfoX project
267
-directory of your private semester repository:
268
-
269
- 1. In Google Sheets, choose **File -> Download -> Microsoft Excel
270
- (.xlsx)**. Name/rename the downloaded file `gfoX.xlsx`
271
- (substituting the actual iteration, such as `gfo0.xlsx` or
272
- `gfo1.xlsx`).
273
- 2. Place the file in the corresponding project directory of your
274
- private semester repository (the same place you would put other
275
- project deliverables).
276
- 3. Add, commit, and push it.
277
-
278
-NOTE: do NOT download as CSV. CSV files contain only the displayed values
279
-and discard your formulas, which would defeat the purpose of the project.
280
-
281
-Be sure the push completes without errors, and verify that your file
282
-shows up in your repository. If not, check for typos and or locational
283
-mismatches (wrong directory, wrong filename, forgetting to push).
284
-
285
-Your submission is evaluated as of the project's due date, so be sure to
286
-push before the deadline (the late policy applies as usual).
287
-
288
-It is also a good idea to keep your Google Sheet itself as a backup.
289
-
290
-### RUBRIC
291
-
292
-What I will be looking for:
293
-
294
-```
295
-52:gfoX:final tally of results (52/52)
296
-*:gfoX:gfoX.xlsx data points entered as numbers, adequately labelled [13/13]
297
-*:gfoX:gfoX.xlsx all calculations done as equations in spreadsheet [13/13]
298
-*:gfoX:gfoX.xlsx calculations reference cells, NOT literal data [13/13]
299
-*:gfoX:gfoX.xlsx calculations use available spreadsheet functions [13/13]
300
-```
301
-
302
-Additionally:
303
- * Solutions not abiding by **SPIRIT** of project will be subject to a 25% overall deduction
304
- * Solution output lacking **ORGANIZATION** or not easy to read (fits on a standard screen without excessive scrolling, clear labels and formatting) are subject to a 25% overall deduction