Retrospective of Tri 1

1. Comparison with myself to the beginning of the year


Throughout this first trimester, the most important thing I gained in this Trimester is my confidence and positivity about Computer Science by understanding the basics and fundamentals. This included setting up the tools like Github and VScode on the computer, then organizing and understanding how the entire web and information development works. Socialization had always been a struggle to me, but over this trimester, I find communication to be the only way to communicate my idea to others. Looking back at my struggles with setting up the tools on VScode for the first sprint, now I know that I struggled because I didn’t know its purpose, nor did it interest me. The two later sprints were where the skills of communication became useful in order to progress. I felt like sprint 2 was just like doing the homework and learning the fundamentals. Then Sprint 3 it was a lesson game through cooperation, where alien planets were used as learning stations for new skills. However, after this trimester, I still have one thing in mind, and it was that we always seemed to be using templates or AI, and to me, in order to truly learn and be confident in CompSci, it was to start and write something on my own(For example, Lessons from the digital-famine game had our ideas, but not every part was written by us).


2. Key things from the 3 sprints


Sprint 1, I learned to set up the tools, edit on VScode(download proper files, setup venv, commit, push and pull(make changes on VScode)) then deploying them on github, contents included game hacks(snake and RPC), designing lessons to help new students to learn how to setup the tools(LXD), ex different code types or fundamental concepts needed to understand the general process of coding.

Sprint 2, I was assigned to design the “Random Values” lesson to the class like other teams, where specifcally the lesson teaches you how computers function to randomize, as well as shuffling or picking objects from a list. Other teams taught mathematical expressions, boolean, lists, etc.

  • Link: https://github.com/DavidMaDNHS/student-portfolio/issues/6

Sprint 3: Me and team had created the “digital-famine” story of earth losing its technology and visiting planets(each with a skill) is necessary to help restore earth due to alien disturbance. Skills on thse planets include “micrblogging”, “cyber skills”, “AI” use, and media literacy, as well as numerous accidents in between that needed to be solved by testing your knowledge. I specifically focused on the Cyber concepts.

  • Link to Cyber Module: https://pages.opencodingsociety.com/digital-famine/end/submodule_4/


3. N@M Reflection and Comments

During Night at the Museum, our codemaxxer team presented the story of digital-Famine, showcasing what we learned about coding, problem-solving, and teamwork. Visitors interacted with the game and saw how we applied computer science concepts in a creative way. Despite the room being noisy, it was a valuable experience to share our project and learning with others.

4. My opinion on Next Project

Given from the challenges faced in Sprint 3, especially if it is a large group project, I find it difficult to contribute as quickly or to come up with interesting ideas when everyone covered most of the ideas for the draft. Also, if the group projects are meant for smaller amount of people, this would allow me to open up more, as well as a great part of me would be contributing to the project’s ideas and progress. Maybe next project should be about learning how to put the knowledge like Boolean, Random Values, conditionals, etc together into a game or webpage. As learning the skills itself are useless, but useful if we learn how to put them togehter, as well as other fundalmentals in coding, like how can we confidently code without using.

5. What I want to learn next in CSP

Just like what I said above, I wanted to do programming developments, so even though I have learned some coding fundamentals, I now want to learn how to use them together. I want to kind of go in the direction of algorithms or functioning, because I am very interested in art and design, I am also very interested in video game developments. So far, all the games are on 2d, I dream one day I can create my own complex 3d video game.

6. Analytics Review

Username: DavidMaDNHS

Profile URL: https://github.com/DavidMaDNHS

Repos URL: https://github.com/DavidMaDNHS/student-portfolio

Public Repos: 1

Commits: 127

SnakeGame: https://github.com/DavidMaDNHS/student-portfolio/issues/3

RPS: https://github.com/DavidMaDNHS/student-portfolio/issues/4

Sprint 2 Progress

HW: https://github.com/DavidMaDNHS/student-portfolio/issues/5

Random Value Lesson: https://github.com/DavidMaDNHS/student-portfolio/issues/6

Sprint 3 Progress

Storyboard: https://github.com/P4CodeMaxxers/digitalFamine/issues/16

Cyber Module: https://pages.opencodingsociety.com/digital-famine/end/submodule_4/

Issues: 9

  • Link: https://github.com/DavidMaDNHS/student-portfolio/issues

Pull Requests: 0

Lines Changed: +20462/-3794

7. MCQ Review

I got 24/66. So I was pretty good with some of it is basic math and logic, while others are more conceptual things felt harder, like the idea of internet communication, file/etc downloads, copyright laws, as well as coding fundamentals.

  • Q4: Answer A(A simulation of flipping a fair coin) This option is correct. There are only two possible results of a coin flip, which can be stored in a Boolean variable as true or false.

  • Q5: Answer C This option is correct. This code segment initially sets One word, ticket Price to 12, and then changes the price to 9 only for children and seniors. The code segment then increases One word, ticket Price by 5 for 3-D movies.

  • Q6: Answer A This option is correct. The IETF develops and oversees standards such as hypertext transfer protocol (HTTP), Internet protocol (IP), and simple mail transfer protocol (SMTP).

  • Q9: Answer D This option is correct. Incrementally adding code segments to correct, working programs can help programmers identify new errors that are introduced.

  • Q15: Answer C This option is correct. Connecting new devices to the Internet is enabled by assignment of an IP address.

  • Q16: Answer D This option is correct. If the album was purchased and downloaded through a licensed music store, the user will not be in violation of the DMCA.

  • Q19: Answer A This option is correct. Metadata for an e-book would typically be used to provide descriptive information about the book. Previous versions of the e-book would likely be considered data, not metadata.

  • Q22: Answer B This option is correct. This Boolean expression evaluates to true when counter (the number of temperatures greater than or equal to 90) is greater than 50% of total (the number of entries in the list).

  • Q23: Answer B This option is correct. Redundant routing is impossible if there is only one possible path from one device to another. There is only one possible path from P to S (P to R to Q to S).

  • Q24: Answer C This option is correct. The transformation is lossless because an encoded string can be restored to its original version. For example, “%##%E_BEST_W#H can be restored to “THIS_IS_THE_BEST_WISH” by replacing all instances of “%” with “TH” and by replacing all instances of “#” with “IS”.

  • Q25: Answer B This option is correct. It is not possible to use byte pair encoding in the string Open quotation, LEVEL, underscore, UP, close quotationbecause no pair of characters appears in the string more than once.

  • Q26: Answer A This option is correct. This code segment rotates right whenever there is an open square to the right. The robot will move forward from its initial location to the upper-left corner of the grid, then rotate right, then move forward to the upper-right corner of the grid, then rotate right, then move down two squares, then rotate right, then move forward to the gray square.

  • Q27: Answer B This option is correct. Inserting Win, left arrow, true between line 9 and line 10 will cause the loop to terminate when the guess is correct.

  • Q30: Answer D This option is correct. Each call to the Analysis procedure requires one hour of program execution time. The procedure is called once before the loop, and then four times inside the loop (once for each of the four entries in One word, genre List). Therefore, the program will take approximately 5 hours to execute.

  • Q31: Answer C This option is correct. Program I correctly moves the robot to the gray square by repeatedly moving the robot forward, rotating left, moving forward, and rotating right. Program II correctly moves the robot to the gray square by moving the robot forward to the upper-right corner of the grid, rotating left, and moving forward to the upper-left corner of the grid.

  • Q33: Answer A This option is correct. The flowchart sets include to true whenever floor is greater than 1 0 or bedrooms equal 3, and sets include to false otherwise. Therefore, the algorithm is equivalent to Include, left arrow, open parenthesis, floor greater than 10, close parenthesis, OR, open parenthesis, bedrooms equal 3, close parenthesis.

  • Q34: Answer D This option is correct. The number of predators is initialized at the beginning of the program but is never updated.

  • Q45: Answer C This option is correct. The expression P AND Q evaluates to true when both P and Q are true, and evaluates to false otherwise. Therefore, the expression NOT, open parenthesis, P AND Q, close parenthesis evaluates to false when both P and Q are true, and evaluates to true otherwise.

  • Q48: Answer D This option is correct. This option causes the experiment to be successful when RANDOM, open parenthesis 1 comma 100, close parenthesis produces a result from 1 to 7 5, or 75% of the time.

  • Q50: Answer B This option is correct. The procedure implements a linear search, which sequentially compares each element of the list with the target value. The list does not need to be sorted because the procedure checks list elements until either the target is found or it reaches the end of the list.

  • Q55: Answer D This option is correct. The expression ((response = “y”) AND (response = “yes”)) always evaluates to “false” because it is not possible for the variable “response” to be equal to both “y” and “yes”. Therefore, the procedure will always return “false”.

  • Q62: This option is correct. As any user has the ability to edit articles, there will be many opportunities for people with different perspectives to contribute.

8. Something Cool to share

I wish I can learn enough skills to learn how to develop my own 3d video game, as I am good with 3d-modeling and animations.