Posts

AP CSP End-of-Course Reflection

END-OF-SEMESTER SELF-EVALUATION I WOULD LIKE YOU TO DO AN EVALUATION OF YOURSELF IN RELATION TO THIS CLASS. THIS WILL NOT COUNT IN ANY WAY TOWARD YOUR GRADE, HOWEVER IT IS REQUIRED TO COMPLETE THE CLASS. PLEASE ANSWER THE FOLLOWING QUESTIONS, NOT NECESSARILY IN THE GIVEN ORDER.  PLEASE FEEL FREE TO ADD ANYTHING ELSE YOU WOULD CONSIDER APPROPRIATE TO HELP ME UNDERSTAND HOW THIS COURSE WENT FOR YOU. * HAS YOUR APPROACH TO Computer Science, Coding CHANGED DURING THIS COURSE  OR COMPARED TO OTHER COURSES OR PROGRAMMING LANGUAGES THAT YOU HAVE TAKEN OR TAUGHT YOURSELF?    IF YES HOW? I think that this course has taught me a great deal of info about computer coding and science. Some of my favorite things we did included the digital divide, Blown to Bits, Code.org clicker games, and the Will It Crash activity. With this new knowledge I now possess about computer science and coding, I think I’ll be more prepared should I take AP Computer Science A next year. ...

Golf.Prime Final Project Overview and ReadMe File

README FILE Amir and Aidan's Golf.Prime Final Project Overview:  Our project is an app made in code.org for golfers everywhere (javascript). The app gives the  users two options at the starting screen. The user can either use the “Live Golf” feature or  the “Post Round” feature. “Live Golf” is a new feature that gives live advice to the golfer  based on the hole that the user is on. We hope that the live feedback will help the user to do  as best as they can on the hole that they are on. Our “Post Round” feature is what the user  should use after they are done with their round. The user can input their statistics from the  round to get valuable feedback from the app. We hope that the user can get the feedback that  they have never thought about before. We want our users to have greatly improved their golf  game after using Golf.Prime.  1). Copy and paste this link below into your browser ...

Cybercrimes One-Pager: JP Morgan & Chase Co

Image
Cybercrimes 1 Pager: JP and Morgan Chase & Co Database Hacked Overview =The event occured in mid-late 2014. Millions of people's data was stolen from JP Morgan Chase & Co, as part of an organized hacking that spanned just under 10 years. 3 guys from Israel, plus an anonymous fourth hacker, stole 83 million people’s personal data, and used it to make millions of dollars in illegal profits. The hackers also stole info related to company profits and news, which they used to manipulate stock prices and make financial gain. The hackers planned to use the data to start their own company based on JP Morgan & Chase Co, but fortunately their hack was stopped and they were caught before they could start. How and How to Prevent -These guys were able to use over 200 fake ID documents to manipulate the company's payment processing center, in order to launder money through 75 fake shell companies and accounts. The attack was discovered in September, but not fu...

Reflection on Blown to Bits Pages 32-36

I found this Blown to Bits reading interesting. It's shocking to me that it was so easy for the computer science professor to identify everyone in the "de-uniqued" medical data, using just voting information. This really shows how important it is to completely "de-unique" your data, or just not release it to the public at all! What information can you find about people here?  Provide at least 4 examples of how this information could be used in a manner that could compromise someone's privacy and have a negative impact on their lives. Like in Blown to Bits, just using basic outside information such as the census bureau or voting statistics, you can gather lots of information about people and connect it to the medical data. Using this information, you could sell their information to advertisers, sell it back to them, use it against them, or use it to threaten them.

Digital Scene Reflection

Provide an overview of the purpose of your program and how your program code works. Describe the most important program features, rather than providing a line-by-line summary of the program code. -The program designs the individual pieces of a grassy field. It first designs the Sun, ground, and grass, then draws flowers, and finally completes the scene with sheep and fluffy clouds., Describe the most difficult programming problem you encountered while writing your individual code. What was the difficulty? Explain how you resolved it. The most difficult part of programming my code was figuring out how to draw the edge lines that made up the border of the sun. Since the sun was a large dot, I had to find a way to write a program that drew each individual line of the sun. In order to do this, I ended up using moveForward, turnLeft, and moveBackward.  With these commands, I was able to complete my sun. Identify an abstraction used in your program and explain how it helped ma...

Digital Scene Project

penColor("rgb(0,0,255)"); dot(300); sun(); ground(); grass(15); function sun() {   //start   penUp();   moveTo(50, 50);   penDown();   //draw main dot of sun   penColor("rgb(255,255,0)");   dot(35);   //draw edge lines of sun   //note: code cannot be looped as every edge is different.   moveTo(70, 80);   turnRight(140);   penWidth(5);   moveForward(17);   turnRight(180);   moveForward(17);   turnRight(70);   moveForward(20);   turnRight(90);   moveForward(20);   turnRight(180);   moveForward(20);   turnRight(65);   moveForward(20);   turnRight(90);   moveForward(21);   turnRight(180);   moveForward(22);   turnRight(50);   moveForward(17);   turnRight(90);   moveForward(24);   turnRight(180);   moveForward(20);   turnRight(50);   moveForward(13);   turnRight(80);  ...

Reflection on Text Compression

1: Do you think it's possible to describe (or write) a specific set of instructions that a person could follow that would always result in better text compression than your heuristic? Why or why not? - I think it would be possible since the heuristics are not very accurate and are sometimes confusing. A specific set of instructions written by a person would result in a clearer protocol which would lead to faster and clearer text compression.

Unit 3, Lesson 6, Puzzle 2 Code

function turnAround() {   turnLeft();   turnLeft(); } function right() {   turnLeft();   turnLeft();   turnLeft(); } function tDrawingUP() {   moveForward();   moveForward();   moveForward();   turnAround();   moveForward();   turnLeft();   moveForward();   turnAround();   moveForward();   moveForward();   turnAround();   moveForward();   right();   moveForward();   moveForward();   turnAround(); } tDrawingUP(); function tDrawingRIGHT() {   right();   moveForward();   moveForward();   moveForward();   turnAround();   moveForward();   turnLeft();   moveForward();   turnAround();   moveForward();   moveForward();   turnAround();   moveForward();   right();   moveForward();   moveForward();   turnAround(); } tDrawingRIGHT(); function tDrawingDOWN() { ...

Programming with Simple Commands Reflection

What surprised you about programming with such a small set of basic commands? Were you able to be creative with such a limited set of tools? What was most frustrating about this activity? If you could add one additional simple command, what would it be, and why? -I was surprised by the small set of basic commands; however I was able to find success in making the turtle move around. I got creative, using three "turn left" commands to make the turtle turn right, and using "turn left" to turn left. This was a challenge at first, but I was able to solve my problems by being creative. The most frustrating part of this activity was trying to program a “turn right” command. Through trial and error, however, I was able to accomplish this.

Turtle Coding: Efficiency in Programming

Define efficiency in programming: Term used to depict the reliability, speed and programming methodology used in developing codes for an application. Code efficiency is directly linked with algorithmic efficiency and the speed of runtime execution for software. When we are trying to be "efficient" in our programming what are some (valuable) resources we might be concerned with?  Why does it matter? -When we are trying to be “efficient” in our programming, we have to be concerned with the amount of commands we are using. Always being aware of where we are potentially using too many commands is a big part of programming. What strategies or reasoning did you use to identify possible solutions? -First, I followed the program instructions to make the turtle move the way it was supposed to. After that, I looked at the code and found ways to cut down on the amount of lines of code I had. Is the solution that you or another group found the most efficient? How do you know?...

Human Machine Algorithm and Code Reflection

Image
Did your algorithm know when to stop? -Yes, because we included a “stop” button at the end of the program. Did your instructions state where and how to start? -Yes, they do. They tell you where to place your hands on the cards by position. Was it clear where to put cards back down after you've picked them up? -Yes. We used the “swap” command and tried to elaborate within the code as much as possible. Does your card sequencing work for any cards you are given?  How did you sort Aces, Kings, Queens? Did you factor in Jokers? What assumptions did you make? -We created a key that told the human operator the order of suit cards, Jokers, and Aces. We specified the order to be “Jack, Queen, King, Ace, Joker”, in order from least to greatest. What questions or challenges did you have in writing your program? What programming concepts connect to prior coding that you have already done? -A challenge we faced while writing the program was thinking about what commands we ...

Unit 2 Lesson 15: Tell a Data Story

Image
My Visualization: 1. Describe how you collected the data for your visualization including how it was collected, when it was collected, and over what period of time. Your description should be understandable by someone unfamiliar with this project. (approximately 100 words) Over the course of 2 weeks in November, the students in AP CSP filled out a survey that asked about their daily lives. One of the questions was “How do you feel today?” which is what my chart focuses on. The students filled out the survey and indicated how they were feeling on whenever the class met, so the chart represents emotions felt on Monday, Wednesday, Thursday, and Friday. It is a combination of all the emotions data in the spreadsheet into one chart. 2. Describe your development process, explicitly identifying the computing tools and techniques you used to create your artifact. Your description must be detailed enough so that a person unfamiliar with those tools and techniques will understand your ...

Lego Assembly Reflection

Consider the algorithm you designed for today’s activity. Identify two instances where there may be multiple ways to interpret your instructions and suggest improvements that could be made to improve their clarity. The algorithm we designed for today's activity could be improved. In step 2, we could improve the instructions to define how we wanted the assembler to hold the Legos better, rather than just saying "horizontally" or "vertically". Another area that we could improve upon are steps 2 and 3. In these steps, we are vague in saying "center right" and "center left". Possible improvements to these instructions would be to provide exact coordinates for the placement of the blocks, or place the blocks in better locations that can be described easier. Describe the features of a programming language that make it different from the language you are used to using in everyday life. Explain why a programming language must be created in this way...

Lego Assembly Instructions

Image
-Start with the large (4x6) green piece as the base (Note: This piece will be referred to as the “base” for the rest of the instructions) -Hold the base with the long end (6 blocks) facing horizontally. -Put (4x1) green block at top middle of base -Put (2x1) pink block at center right of base -Put (2x1) red block at the center left of base -Put 1 end of the (3x2) red block with 2 pieces underneath the green block -Cover the (3x2) red block with the remaining (2x4) red block Your completed project should look like this:

Unit 2 Lesson 13 Analysis Question

"In order to analyze data with a computer, we need to clean the data first. Based on your experience today, would you say that data analysis is a perfectly objective process? Why or why not?" No, I don't think that data analysis is a perfectly objective process, because different people can do it in different ways. For example, while I was organizing the data, I made different choices than Amir did in terms of answering the analysis questions and organizing the data. Because organizing data requires human analysis, the data will always be organized in different ways since everybody's different.

Average Movie Rating by Age, Gender Charts

Image