reedy hs
Computer Program
A program is a collections of program statements that performs a specific task when run by a computer.
A program is often referred to as software.
Computing Innovations
A computing innovation includes a program as an integral part of its function. It takes in data, transforms data and outputs data in order to solve a problem and/or show creative expression.
Legal and Ethical Concerns
The law protects intellectual products from being used in an unauthorized fashion. Laws protecting intellectual property are of 4 different categories: copyright, patent, trademark, and trade secrets.
Beneficial and Harmful Effects of Computing
Computing and computing innovations have global effects, both beneficial and harmful.
One innovation can have great benefits, yet the same innovation can also have harmful effects at the same time, or when it is used not- as-intended.
Digital Divide
The digital divide describes the disparity between those who have access to technology and those who do not, including but not limited to access to a computer, the Internet, or other hardware and software.
Artificial Intelligence
The ability of machines to perform tasks that are typically associated with human intelligence.
AI - is only as good as the data/training sets that we input into the AI computer system. If the data is biased or inaccurate, the results won’t give accurate results.
Machine Learning
Training the computer software. It involves exposing a computer to large, relevant data collections, and then that computer learns to make judgments or predictions about the information it processes.
Personally Identifiable Information (PII)
Information about a person that can uniquely identify them, such as their educational, medical, financial, or employment information. Examples of data elements that can identify an individual include name, email, fingerprint, etc.
Encryption
Data Encryption is the process in which data is encoded into another form, using an encryption algorithm and an encryption key.
It aims to protect digital data confidentiality as it is stored or transmitted over computer networks.
Crowdsourcing
The practice of obtaining input or information from a large number of people via the Internet
Citizen Science
Uses the collective strength of communities and the public to:
identify research questions
collect and analyze data
interpret results
make discoveries
develop technologies and applications
- all to solve problems.
It is a specialized form of crowdsourcing.
Intellectual Property
A product created by a person - an artist, writer, scientist, or engineer.
It can include creative artistic work such as writing, music, drawing, photography, and film.
Creative Commons
A not-for-profit organization that have various forms of licenses that can be used to protect original work from being plagiarized. All Creative Common licenses have this symbol.
Plagiarism
Plagiarism is copying someone’s work and passing it off as your own work.
One way to avoid plagiarism is to give credit to the source of the information. It is ethical to give credit to the sources you used to provide the information.
Open Source
Open source development allows programmers and developers to access the source code and to modify and improve the code as they see fit.
The most significant advantage of this is that it allows many eyes to analyze the code and utilize unique skill sets to make it better.
Cybersecurity / Information security
The protection of a system against the unauthorized or criminal use of a system.
Primarily it is to protect networks, devices, programs and data from external and internal threats.
Decryption
The conversion of encrypted data into its original form. It decodes the encrypted information so that only an authorized user can decrypt the data with a secret key or password.
How do FUNCTIONS help us write better programs?
They break our programs down into smaller parts
Make our program easier to understand
Avoid repeating code over and over and over again
Another Name for function?
Procedure
Define a Function
def turn_right():
def - keyword for define
Function name - turn_right
Parentheses – require syntax
Colon - required syntax, marks end of definition
Call Function
You must call your function to get it to run.
Such as: turn_right()
Functions
Functions are one of the most important parts of programming.
Top Down Design
Start by identifying the problem that needs to be solved.
Then break the problem down into smaller manageable parts.
In some cases the different parts can be divided up and solved by various people.
Decomposition
Means to breaking your program down into small manageable parts that are easy to understand.
Commenting Code
A way for you to leave notes about what your code is doing in plain English, so other people can understand it.
Python Multi-line Comment
“”” My code does amazing things that will change the world. No one will be able to live without it. “””
Python Single-line Comment
# You are an amazing programmer
Abstraction
When a programmer hides all but the relevant data/code in order to reduce complexity and increase efficiency.
High Level Abstraction -
Programming languages like Python, have abstracted a lot of details away from the programmer. Python let’s us use English like commands rather than using machine language.
Low Level Abstraction
the machine language that tells the tiny bits and bytes to turn on or off.
Procedural Abstraction
Functions/Procedures - You can call procedure in your program, without needing to know what every step of the procedure does.
Functions are a great example of abstraction.
API’s
API is a set of tools used for building programs.
API’s abstract away complex coding detail.
An API should have very good documentations to tell the programmer how to use the API.
Examples: turn_left(), turn_right()
Sources
CODEHS.com
The Princeton Review, AP Computer Science Principles Prep 2023