2.1. Unit Overview¶
This unit provides an introduction to the MIT App Inventor programming platform and your first programming project, the I Have a Dream app. You will be introduced to MIT App Inventor’s event-driven programming model and learn how mobile apps are examples of computing innovations. First you will work through a two-part guided tutorial that plays an excerpt of the famous I Have a Dream speech by civil rights activist Martin Luther King Jr. and then you will be presented with several exercises that challenge you to extend your understanding by solving problems on your own and by working in pairs. This is followed later in the unit by several creative enhancement projects where you will be invited to express your own ideas by developing your own mobile apps. You will also be introduced to several important CS Principles themes and topics. Two lessons focus on hardware and software concepts. You will get your first look at binary numbers learning how to count in binary and how to view number systems such as binary and decimal, as instances of the higher-order data abstraction of a positional number system.
Vocabulary Terms
Below are the vocabulary terms that you'll learn in this unit separated into categories. You will find a vocabulary section similar to this at the end of each lesson. Hover over the terms to review the definitions. You'll be able to practice your knowledge of the vocabulary with a quizlet at the end of the unit.
MIT App Inventor | ||
---|---|---|
event handler |
event-driven programming |
horizontal arrangement |
UI components |
user events |
user interface |
Computer Science Principles | ||
---|---|---|
abstracting |
abstraction |
algorithm |
base |
binary number system |
binary sequence |
bit |
Boolean |
byte |
computing innovation |
constant |
control structure |
data |
data abstraction |
decimal number system |
HTTP |
if/else |
input |
Internet |
iteration |
network |
output |
overflow error |
procedural abstraction |
program |
program function |
program purpose |
protocol |
pseudocode |
repetition |
selection |
sequence |
software |
special purpose computer |
TCP/IP |
variable |
WWW |
WWW as a higher level of abstraction |
General Computing | ||
---|---|---|
blacklist |
browser |
character |
compilation |
computer |
cyberspace |
data center |
data network |
flowchart |
general purpose computer |
hexadecimal number system |
high level language |
IDE |
IETF |
interpretation |
logic gate |
machine language |
Moore’s Law |
octal number system |
open standard |
positional number system |
social network |
Tim Berners-Lee |
whitelist |
Hardware | ||
---|---|---|
AND gate |
chip |
CPU |
disk drive |
flip flop |
hardware |
integrated circuit |
motherboard |
NOT gate |
OR gate |
processor |
RAM |
transistor |
2.1.1. Self-Check¶
Q-1: Identify 1-2 vocabulary terms from the table above that you know and define them in your own words. If you don’t know any of these words yet, that’s ok! Instead, write 1-2 sentences on how you plan to practice learning the vocabulary for this unit.
Q-2: Identify 1-2 vocabulary terms from the table above that you have heard before but don’t know the definition for.
Q-3: Identify 1-2 vocabulary terms from the table above that you don’t know but want to learn in this unit.
2.1.2. Reflection: For Your Portfolio¶
Answer the following portfolio reflection questions as directed by your instructor. Questions are also available in this Google Doc - you will be prompted to make your own editable copy.
If you are using a Google Sites portfolio, see the videos on the portfolio help page on how to embed your google document in your web page.