Intro to computer science module 1

33 %
67 %
Information about Intro to computer science module 1
Education

Published on March 8, 2014

Author: walidsaba

Source: slideshare.net

Description

This is module 1 of an introductory course that will introduce computer science and software engineering to the novice, and it is also a course that will teach even veteran computer scientists some new concepts, or explain concepts they thought they understood well. Concepts are introduced with hands on experience using object-oriented pseudo code (which can very easily be translated to C#, Java, C++, etc.) and functional programming pseudo code (which can easily be translated into F#, Erlang, Python, Haskell, etc.)

Foundations of Computer Science and Software Engineering module 1/30 WALID S. SABA

Foundations of Computer Science and Software Engineering TO THE TEACHER ALBERT EINSTIEN

Foundations of Computer Science and Software Engineering TO THE STUDENT SOCRATES

Foundations of Computer Science and Software Engineering About this Course This is an introductory course that will introduce computer science and software engineering to the novice, and it is also a course that will teach even veteran computer scientists some new concepts, or explain concepts they thought they understood well. Concepts are introduced with hands on experience using object-oriented pseudo code (which can very easily be translated to C#, Java, C++, etc.) and functional programming pseudo code (which can easily be translated into F#, Erlang, Python, Haskell, etc.) About the Author Walid Saba has 20 years of experience in information technology, where he worked at such places as the American Institutes for Research, AT&T Bell Labs, Metlife, Nortel Networks, IBM and Cognos. He has also spent 7 years in academia where he has taught computer science at Carelton University, the New Jersey Institute of Technology, the University of Windsor, and the American University of Beirut. He has published over 30 technical articles, including an award wining paper that he recieved at KI-2008 in Germany. Walid holds a PhD in Computer Science which he obtained from Carleton University in1999

Foundations of Computer Science and Software Engineering Other Courses by the Author o o o o Logic, Semantics and Natural Language Processing Ontology, Data Modeling and Knowledge Representation Object-Oriented Software Engineering Advanced Data Structures and Algorithm Design

Foundations of Computer Science and Software Engineering Legends This icon is used to display some additional information related to the content of a slide Before you proceed, we recommend answering timely questions that are marked by this icon This icon is used when links to additional relevant information on the internet are provided

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge MODULE 1 (20 minutes) WHAT IS THE SCIENCE OF COMPUTING CONCERNED WITH?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge A LITTLE STORY An ancient tribe once sent a wise old man up the mountain to seek God’s wisdom. After some time the wise old man came back claiming that God had supplied him with all the knowledge in the world, which he carved on his cane as a strange symbol that looked like this: Can this be true? Can this strange symbol really represent all the knowledge in the world?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge A LITTLE STORY An ancient tribe once sent a wise old man up the mountain to seek God’s wisdom. After some time the wise old man came back claiming that God had supplied him with all the knowledge in the world, which he carved on his cane as a strange symbol that looked like this: What do you think? Can this strange symbol represent all the knowledge in the world (Yes, or No)? What is your reasoning in either case? Can this be true? Can this strange symbol really represent all the knowledge in the world?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge One can argue that, yes, this can be true ... How? Well, all of our knowledge (all of our mental creations),

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge One can argue that, yes, this can be true ... How? Well, all of our knowledge (all of our mental creations), are scripts, symbols, and text

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge One can argue that, yes, this can be true ... How? Well, all of our knowledge (all of our mental creations), are scripts, symbols, and text, paintings

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge One can argue that, yes, this can be true ... How? Well, all of our knowledge (all of our mental creations), are scripts, symbols, and text, paintings, sounds and melodies

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge One can argue that, yes, this can be true ... How? Well, all of our knowledge (all of our mental creations), are scripts, symbols, and text, paintings, sounds and melodies, movies and animations, etc...

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But you have all seen these objects on your digital devices (TVs, computers, phones, tablets, etc.) The reason you are able to do so is that these objects can all be digitized

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But what do we mean by “all of these objects can be digitized”? We mean they can all be represented as a sequences of 1’s and 0’s

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But what do we mean by “all of these objects can be digitized”? Two words in the heading of this slide make up a phrase that this slide is specifically talking about. What are they? We mean they can all be represented as a sequences of 1’s and 0’s Can you guess how 1 and 0 are manifested inside a digital device?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge In the end, a binary sequence is nothing but a number. The decimal value of any binary sequence such as is computed as follows:

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But, in the end, a binary sequence is nothing but a number. The decimal value of any binary sequence such as is computed as follows: Note that in the case of a binary sequence, the decimal value is obtained by computing some values and either adding them to the total (multiply them by 1), or ignoring them from the total (multiplying them by 0). In other words, either we are ignoring that position, or we are giving it some value!

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But, in the end, a binary sequence is nothing but a number. The decimal value of any binary sequence such as is computed as follows: According to the above definition, what is the decimal value of the binary sequence “101101”?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But, in the end, a binary sequence is nothing but a number. The decimal value of any binary sequence such as is computed as follows: How would you modify the above definition to compute the decimal value of a sequence of octal digits (that is, a sequence of digits in base 8), where 0, 1, 2, 3, 4, 5, 6 and 7 are the only digits?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge But, in the end, a binary sequence is nothing but a number. You will soon see learn how to write a very simple, though not The decimal value of any binary sequence such as too efficient function (or program) that implements the above is computed as follows: and later how to write the more efficient one. definition,

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Let’s summarize what we have so far

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Let’s summarize what we have so far All of our mental creations can be

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Let’s summarize what we have so far All of our mental creations can be digitized into a binary sequence of 1’s and 0’s 1100010101001110001111100100000111010110101 ...

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Let’s summarize what we have so far All of our mental creations can be digitized into a binary sequence of 1’s and 0’s A binary sequence, not matter how large, is in the end some number 1100010101001110001111100100000111010110101 ... 72619283749824723947...

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Let’s summarize what we have so far All of our mental creations can be digitized into a binary sequence of 1’s and 0’s A binary sequence, not matter how large, is in the end some number This number is so large that we want to represent it using this symbol 1100010101001110001111100100000111010110101 ... 72619283749824723947...

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge NOW LET’S REPEAT THE STORY AND ASK THE SAME QUESTION AGAIN An ancient tribe once sent a wise old man up the mountain to seek God’s wisdom. After some time the wise old man came back claiming that God had supplied him with all the knowledge in the world, which he carved on his cane as a strange symbol that looked like this: What is your answer now? Can this be true? Can this strange symbol really represent all the knowledge in the world?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge NOW LET’S REPEAT THE STORY AND ASK THE SAME QUESTION AGAIN Admittedly, the question is a bit tricky. Some of you An ancient tribe once sent a wise old man up the mountain togiven that we showed that seek might have answered yes, God’s wisdom. After some time the wise old man creations can be digitized and stored as a all mental came back claiming binary sequence, which in the end a that God had supplied him with all the knowledge in the world, whichsingle value (or he carved on his cane as a strange symbolthat symbol). Others might have said no, this cannot that looked like this: be done, but they do not have a formal proof. Actually, the answer, which will be discussed next, is that at this point in the state-of-the-art, is partially YES and partially NO. Let’s see why ... What is your answer now? Can this be true? Can this strange symbol really represent all the knowledge in the world?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge Here’s the answer ... Yes, the symbol below can represent all the DATA in the world, and some INFORMATION, but not all the KNOWLEDGE in the world o Yes, we can digitize, store (given enough memory), and manipulate all the DATA in the world o With creative data modeling, we can represent and manipulate INFORMATION about this data o But computers, at this point, do not KNOW what they know! So, what is stored is data and information, but not knowledge, and this is the quest of computing science!

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION, and KNOWLEDGE So what is the difference between DATA, INFORMATION, and KNOWLEDGE? Data is just a set of values (of some variables). That’s it! Some examples of data: raw figures, numbers, or symbols that represent the value of something

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A datum such as ‘45’ can represent the value of many variables:

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A datum such as ‘45’ can represent the value of many variables: Age

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A datum such as ‘45’ can represent the value of many variables: Age Number of branches in California

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A datum such as ‘45’ can represent the value of many variables: Age Number of branches in California Number of UN resolutions vetoed by the US between 1966 & 1985

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A sequence of letters such as “ABBA” can be a string that stands for:

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A sequence of letters such as “ABBA” can be a string that stands for: Name of a Swedish pop rock band

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A sequence of letters such as “ABBA” can be a string that stands for: Name of a Swedish pop rock band God, or “the Father” in Aramaic (Jesus called his Father Abba ...)

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA A sequence of letters such as “ABBA” can be a string that stands for: Name of a Swedish pop rock band One of the 4-letter palindromes that can be made out of the letters ‘A’ and ‘B’ God, or “the Father” in Aramaic (Jesus called his Father Abba ...)

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data. hmmm

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data. Too much data

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data. What to do?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data. Higher a data modeller!

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data.

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data.

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Put simply, INFORMATION is organized DATA. Modeling data in a certain structure that is meaningful to us makes information out of data.

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION Some examples of organizing data into information ... The datum 2 and the datum 3 can be organized in a pair (2,3) to represent a point in a 2-dimensional space (2,3) The datum 1 and the datum 5 can also be grouped in a pair to represent another point (5,1) The straight line connecting (5,1) and (2,3) can be represented by a list of points {(5,1), (2,3), … }

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person:

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person: o who is 45 years old,

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person: o o who is 45 years old, who is a female,

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person: o o o who is 45 years old, who is a female, whose name is Mary,

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person: o o o o who is 45 years old, who is a female, whose name is Mary, whose is an Engineer, and

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION As another example, consider the following structure (or record, as these structures are typically referred to) This structure, made-up of five data items, might represent a record of information for a certain person: o o o o o who is 45 years old, who is a female, whose name is Mary, whose is an Engineer, and who has a salary of 45,000

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge INFORMATION We can organize such data further. For example, the following set of records might represent (part of the) information about employees in a certain company

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION and KNOWLEDGE The question now is this: if data is raw figures, numbers or symbols about some facts, and information is a meaningful organization of data, then what is knowledge?

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION and KNOWLEDGE The question now is this: if data is raw figures, numbers or symbols about some facts, and information is a meaningful organization of data, then what is knowledge? Information is data organized into facts.

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION and KNOWLEDGE The question now is this: if data is raw figures, numbers or symbols about some facts, and information is a meaningful organization of data, then what is knowledge? Knowledge Information is data organized into facts. Knowledge is information about information, or conditional facts

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION and KNOWLEDGE The question now is this: if data is raw figures, numbers or symbols about some facts, and information is a meaningful organization of data, then what is knowledge? Knowledge Information is data organized into facts. Knowledge is information about information, or conditional facts

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge IN SUMMARY …

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge IN SUMMARY …

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge IN SUMMARY …

Computer Science is ultimately the science of representing and reasoning with data, information, and knowledge DATA, INFORMATION and KNOWLEDGE It is a bit early to discuss the real difference between data, information and knowledge. After all, this course is an introduction to Computer Science and Software Engineering, not an advanced course in Artificial Intelligence. And, we did not even start the course yet! But now we know a little bit about data, information, and knowledge

Introduction to Computer Science COMPUTER SCIENCE AS A DESCIPLINE

Introduction to Computer Science COMPUTER SCIENCE As a formal subject of study, Computer Science started in 1950’s, but the roots of Computer Science can perhaps be traced back to years of work in philosophy, mathematical logic, linguistics, psychology, biology and physics Pioneers that have defined the field were either mathematicians, such as Godel and Turing; physicists, such as Von Neumann; philosophers, such Gottlob Frege; logicians, such as David Boole; or Biologists, such as McCulloch and Pitts

Introduction to Computer Science COMPUTER SCIENCE Although it is one of the newest and fastest developing areas of human knowledge, Computer Science deals with many of the scientific issues that have occupied the most brilliant minds for thousands of years, such as

Introduction to Computer Science COMPUTER SCIENCE Although it is one of the newest and fastest developing areas of human knowledge, Computer Science deals with many of the scientific issues that have occupied the most brilliant minds for thousands of years, such as - the relationship between data, information and knowledge,

Introduction to Computer Science COMPUTER SCIENCE Although it is one of the newest and fastest developing areas of human knowledge, Computer Science deals with many of the scientific issues that have occupied the most brilliant minds for thousands of years, such as - the relationship between data, information and knowledge, - issues related to learning, memory, and cognition,

Introduction to Computer Science COMPUTER SCIENCE Although it is one of the newest and fastest developing areas of human knowledge, Computer Science deals with many of the scientific issues that have occupied the most brilliant minds for thousands of years, such as - the relationship between data, information and knowledge, - issues related to learning, memory, and cognition, - issues of representation, language, meaning, complexity,

Introduction to Computer Science COMPUTER SCIENCE In dealing with such issues that have occupied the minds of the most brilliant philosophers and scientists for thousands of years, computer scientists develop new technologies and applications that are immediately applicable to almost every aspect of our daily lives.

Introduction to Computer Science COMPUTER SCIENCE In dealing with such issues that have occupied the minds of the most brilliant philosophers and scientists for thousands of years, computer scientists develop new technologies and applications that are immediately applicable to almost every aspect of our daily lives. Computer scientists have analyzed, designed, and implemented systems that allow us to perform remote and real-time banking

Introduction to Computer Science COMPUTER SCIENCE In dealing with such issues that have occupied the minds of the most brilliant philosophers and scientists for thousands of years, computer scientists develop new technologies and applications that are immediately applicable to almost every aspect of our daily lives. Computer scientists have analyzed, designed, and implemented systems that allow us to perform remote and real-time banking buy and sell products across the world while sitting home

Introduction to Computer Science COMPUTER SCIENCE In dealing with such issues that have occupied the minds of the most brilliant philosophers and scientists for thousands of years, computer scientists develop new technologies and applications that are immediately applicable to almost every aspect of our daily lives. Computer scientists have analyzed, designed, and implemented systems that allow us to perform remote and real-time banking buy and sell products across the world while sitting home help doctors perform diagnosis as well as perform surgery

Introduction to Computer Science COMPUTER SCIENCE Advanced computer algorithms are also behind the systems that

Introduction to Computer Science COMPUTER SCIENCE Advanced computer algorithms are also behind the systems that control space shuttles

Introduction to Computer Science COMPUTER SCIENCE Advanced computer algorithms are also behind the systems that control space shuttles control and maneuver robotic devices roaming planets that are thousands of miles away

Introduction to Computer Science COMPUTER SCIENCE Advanced computer algorithms are also behind the systems that control space shuttles control and maneuver robotic devices roaming planets that are thousands of miles away perform wireless communication

Introduction to Computer Science COMPUTER SCIENCE vs. COMPUTER PROGRAMMING Computer scientists make machines (computers) do things, and they only way these machines will do anything (since they do not yet understand everyday spoken languages) is by instructing them in formal languages they understand – these languages are called ‘programming languages’. Computer programming is thus one of the things computer scientists do – it is only the ‘tool’ by which computer scientists ‘implement’ their ideas, their models, and their designs

Introduction to Computer Science SPECIALTIES IN COMPUTER SCIENCE Computer science is a rich discipline of study and there are many subfields in computer science that one can spend a lifetime mastering. Some of the main areas of computer science are: o o o o o o o SOFTWARE ENGINEERING ARTIFICIAL INTELLIGENCE DATA MINING AND MACHINE LEARNING COMPUTER GRAPHICS AND VISUALIZATION VIRTUAL REALITY TELECOM AND COMPUTER NETWORKS COMPUTER VISION o o o o o COMPUTER SECURITY AND CYRPTOGRAPHY DATA COMPRESSION PARALLEL AND DISTRIBUTED SYSTEMS COMPUTER ARCHITECTURE AND ENGINEERING IMAGE PROCESSING AND PATTERN RECOGNITION

Introduction to Computer Science SPECIALTIES IN COMPUTER SCIENCE Computer science is a rich discipline of study and there are many subfields in computer science that one can spend a lifetime mastering. Some of the main areas of computer science are: o o o o o o o SOFTWARE ENGINEERING ARTIFICIAL INTELLIGENCE DATA MINING AND MACHINE LEARNING COMPUTER GRAPHICS AND VISUALIZATION VIRTUAL REALITY TELECOM AND COMPUTER NETWORKS COMPUTER VISION o o o o o COMPUTER SECURITY AND CYRPTOGRAPHY DATA COMPRESSION PARALLEL AND DISTRIBUTED SYSTEMS COMPUTER ARCHITECTURE AND ENGINEERING IMAGE PROCESSING AND PATTERN RECOGNITION In what subfield of Computer Science would you like to become an expert? You are right if you are thinking that it is a bit too early to decide!

Introduction to Computer Science COMPUTER SCIENCE Before becoming a specialist in any subfield of computer science, let us start learning the basics By the time you finish all the modules in this course you will be in a position to start learning any subfield of computer science in more details Our main hope is that the key concepts that are covered this course, and which form the foundations of many advanced topics in computer science, are well understood. We further hope that the material presented in this course inspires you to truly become a computer scientist who might one day solve one or more open problems in this exciting field of study

Introduction to Computer Science CONTENT OF THIS COURSE PART 1 – FOUNDATIONS o o o o o o o o o o Basic Introduction to Logic Sets, Relations and Functions Inductive (Recursive) Data Structures Recursion, Induction, and Recursive Programs Relations, Functions and Relational Algebra Complexity Analysis Data Types, Types of Programs and Type Inferences Higher-Order (Generic) Programming and Programming Patterns Languages, Grammars and Semantic Analysis Introduction to Automata: Machines and Computation

Introduction to Computer Science CONTENT OF THIS COURSE PART 2 – BASIC ALGORITHMS AND DATA STURCTURES o o o o Basic Data Structures (lists, trees, stacks, queues, graphs) Basic Algorithms (searching and sorting algorithms) Hashing techniques Applications of algorithms and data structures PART 3 – OBJECT-ORIENTED SOFTWARE ENGINEERING o o o o o Abstract Data Types (ADTs) From ADTs to Classes: The Notion and Use of Polymorphism Object Modeling: Inheritance, Containment and Delegation Object-Oriented Analysis and Design Design Heuristics and Design Patterns

Introduction to Computer Science END OF MODULE 1 Next module MATHEMATICAL PRILIMENARIES – LOGIC

Add a comment

Related presentations

Related pages

Intro to computer science module 1 - Education - documents

This is module 1 of an introductory course that will introduce computer science and software engineering to the novice, and it is also a course that will ...
Read more

Introduction to Computer Science - Code.org

Stage 1: Introduction to Computer Science ... Introduction to Computer Science. This lesson will introduce the concept of Computer Science and explain ...
Read more

K-8 Intro to Computer Science | Code.org

K-8 Intro to Computer Science is a free course that aims to demystify computer science and show K-8 ... Artist 1; Algorithms; Artist 2; Functions; Farmer 1;
Read more

Introduction to Computer Science and Programming ...

Unit 1 Introduction to 6.00; Core Elements of a Program; Problem Solving ... 6.00SC Introduction to Computer Science and Programming, Spring 2011.
Read more

Introduction to Computer Science - Wikiversity

Introduction to Computer Science. From Wikiversity. Jump to: navigation, search. Introduction . Dear student! You are starting to learn about ...
Read more

Free Introduction to Computer Science Online Course | ALISON

Module 1: Introduction to Computer Science: Module 2: ... Introduction to Computer Science: Course #: 522: Course Publisher: Harvard: Course Category: 1 ...
Read more

Lec 1 | MIT 6.00 Introduction to Computer Science and ...

Lec 1 | MIT 6.00 Introduction to Computer Science and Programming, Fall 2008 MIT OpenCourseWare. ... Computer science education: ...
Read more

PLTW Computer Science - Curriculum | Project Lead The Way

Computer Science Principles (CSP, 1 year) Using Python ...
Read more