======PROJECT====== PROJECT: Grade Figure-Outerer (gfoX) =====Objective===== To successfully obtain, input, calculate, and derive your current overall status in the course through the use of a spreadsheet. =====Abstraction===== {{page>haas:spring2024:common:projects:abstraction&noheader}} =====Locational Awareness===== {{page>haas:spring2024:common:projects:location&noheader}} =====Background===== For this project, you will be installing the **sc** spreadsheet on your Raspberry Pi, and creating a spreadsheet using it to tabulate and compute your current status in the class. =====Update the package database and apply updates on your pi===== Don't forget to update the package database and apply any available upgrades: yourpi:~$ sudo aptitude update ... yourpi:~$ sudo aptitude upgrade ... Getting an error when trying to run 'aptitude', such as "command not found", or "no such file or directory"? It likely means you need to install it: sudo apt-get install aptitude =====Install sc on your Raspberry Pi===== To proceed on this project, you will also need to install the '**sc**' package: yourpi:~$ sudo aptitude install sc The following NEW packages will be installed: libncurses5{a} sc 0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 263 kB of archives. After unpacking 606 kB will be used. Do you want to continue? [Y/n/?] y Get: 1 http://raspbian.mirror.constant.com/raspbian buster/main armhf libncurses5 armhf 6.1+20181013-2+deb10u2 [75.3 kB] Get: 2 http://raspbian.mirror.constant.com/raspbian buster/main armhf sc armhf 7.16-4 [188 kB] Fetched 263 kB in 10s (26.1 kB/s) Selecting previously unselected package libncurses5:armhf. (Reading database ... 98655 files and directories currently installed.) Preparing to unpack .../libncurses5_6.1+20181013-2+deb10u2_armhf.deb ... Unpacking libncurses5:armhf (6.1+20181013-2+deb10u2) ... Selecting previously unselected package sc. Preparing to unpack .../archives/sc_7.16-4_armhf.deb ... Unpacking sc (7.16-4) ... Setting up libncurses5:armhf (6.1+20181013-2+deb10u2) ... Setting up sc (7.16-4) ... Processing triggers for man-db (2.8.5-2) ... Processing triggers for libc-bin (2.28-10+rpi1) ... yourpi:~$ =====sc instructions===== There are two sources of information you can reference for **sc** operation. ====manual page==== With the installation of **sc** the manual page is made available for viewing ('q' to quit, up/down pageup/pagedown to view): yourpi:~$ man sc ====sc tutorial==== In the manual page there is given reference to an available **sc** tutorial, also installed with the **sc** package (tutorial itself tells you how to exit): yourpi:~$ sc /usr/share/doc/sc/tutorial.sc ====saving==== One can use the **P** command to "Put" the file to the filesystem (ie saving). =====Looking up your 'status'===== Ever since the first projects came due and were evaluated, your results were accessible to you on lab46 via the **status** command: lab46:~$ status desig Furthermore, if you were curious about the breakdown of points, you could also append the 'detail' argument to get an expanded view of information: lab46:~$ status desig detail NOTE: because 'detail' is an optional argument, the whole command may be written (for reference) as: 'status desig [detail]'; the square brackets denote optionality. You do not type them, instead, you either type what is in them, or you do not, depending on desired functionality. =====Calculating your grade===== Your grade is calculated from four distinct components, three of which you regularly encounter each week through the semester, and the final one at the end. Each is worth a certain amount of overall points, that when added up equals 104 points. With their individual point values, they are: * projects (52 points) * journal (13 points) * participation (13 points) * eoce (26 points) Within each category, you tally up two different accumulation of points: * all the points YOU got * all the points POSSIBLE to get For example, take this sample participation dataset: 1:wcp1:final tally of results (1/1) 2:wcp2:final tally of results (2/2) 1:wcp3:final tally of results (1/4) 5:wcp4:final tally of results (5/8) 4:moar:final tally of results (4/0) * this person got 1+2+1+5 points (and 4 bonus points), for a total of: 9 + 4 = 13 points * the total amount of points available (at this point) was 1+2+4+8+0, or: 15 points A note on 'bonus' points: in each category, there is the potential for the accumulation of bonus/extra/moar points. These are added into the mix, BUT for the purposes of grading, the final tally of YOUR points can NOT exceed the final tally of total points. In this case, the person amassed 13 total points, out of a total of 15 points: for purposes of grading, for their participation score, it would be 13/15. Bonus points only apply to the particular category in which they were earned (they cannot be applied to a different category). Continuing this example, the person got 13/15ths of the 13 available points for that section (participation is worth 13 total points). We would calculate that "out of 13" result as follows: * (13/15)*13 = 11 (so at this point, they'd have 11 out of 13 participation points) Do the same for projects (52) and journal (13). For now, the total possible grade points you can receive is 78 total points (52+13+13). So that is what your spreadsheet should reflect. Your letter grade is obtained by determining your score (out of 100) and selecting the letter grade pertaining to that value. =====Spreadsheet===== For this project, your task is to make a spreadsheet that, in clearly readable and organized fashion, plots out your various results on the different deliverables for the class, ultimately displaying your current overall grade for the course. I want to see: * each project (identified), along with the points you got, along with the total points possible * for a "dashboard" quick glance, calculate your project "score" out of 100 (just to give you a feel for how you did on a particular project) * have a category for bonus points you have earned * have a projects score tally (all your points earned) * have a projects total tally (all the points possible to earn) * calculate your projects "score" out of 100 (just to give you a feel for how you did on the category overall) * calculate your projects "points" (out of 52), and display it under an identifiable label * do the same for the participation and journal categories as well * add up your category points (52+13+13=78), and have these be near each other in your spreadsheet * calculate your actual current score for the class (based on a total of 78 points, that you could then determine against the letter grade ladder where you fall) * do note, the aim and spirit of this project is to use the SPREADSHEET as the calculator. I want to see embedded equations, NOT pre-calculated values in your spreadsheet data. Note that you may have to make your terminal window larger, or just deal with the need to scroll through the spreadsheet when enough data is accumulated. If you'd like to continue using this spreadsheet for additional points accrued in the coming weeks, you may want to plan ahead and set up your "final results" tally with some space away from the growing list of results. =====Time-sensitive data===== As gfoX may be issued multiple times during the semester, each iteration is to capture the following snapshot of data in its reporting results: * gfo0: start of semester through and including week 4 deliverables * gfo1: start of semester through and including week 8 deliverables * gfo2: start of semester through and including week 12 deliverables =====Example===== Here is a mock-up example spreadsheet that I did, organizing information in the fashion useful for being informative and pertaining to this project: {{ :haas:fall2020:common:projects:gfo0_sample.jpg |}} =====Submission===== To successfully complete this project, the following criteria must be met: * Solution must utilize the algorithm/approach presented above * Output must conform to the specifications presented above * Submit a copy of your solution to me using the **submit** tool. To submit this to me using the **submit** tool, run the following command at your lab46 prompt: lab46:~/src/SEMESTER/DESIG/gfoX$ submit DESIG gfoX gfoX.sc Submitting DESIG project "gfoX": -> gfoX.sc(OK) SUCCESSFULLY SUBMITTED You should get some sort of confirmation indicating successful submission if all went according to plan. If not, check for typos and or locational mismatches. =====Evaluation Criteria===== What I will be looking for: 39:gfoX:final tally of results (39/39) *:gfoX:gfoX.sc data points entered as numbers and adequately labelled [13/13] *:gfoX:gfoX.sc all calculations done as equations in spreadsheet [13/13] *:gfoX:gfoX.sc calculations reference cells AND use spreadsheet functions [13/13] Additionally: * Solutions not abiding by **SPIRIT** of project will be subject to a 25% overall deduction * Solution output lacking **ORGANIZATION** ior are not easy to read (within 90 char width) are subject to a 25% overall deduction