In the first of two sequential lessons, students create mobile apps that …
In the first of two sequential lessons, students create mobile apps that collect data from an Android device's accelerometer and then store that data to a database. This lesson provides practice with MIT's App Inventor software and culminates with students writing their own apps for measuring acceleration. In the second lesson, students are given an app for an Android device, which measures acceleration. They investigate acceleration by collecting acceleration vs. time data using the accelerometer of a sliding Android device. Then they use the data to create velocity vs. time graphs and approximate the maximum velocity of the device.
Although C# is derived from the C programming language, it introduces some …
Although C# is derived from the C programming language, it introduces some unique and powerful features, such as delegates (which can be viewed as type-safe function pointers) and lambda expressions which introduce elements of functional programming languages, as well as a simpler single class inheritance model (than C++) and, for those of you with experience in "C-like" languages, a very familiar syntax that may help beginners become proficient faster than its predecessors. Similar to Java, it is object-oriented, comes with an extensive class library, and supports exception handling, multiple types of polymorphism, and separation of interfaces from implementations. Those features, combined with its powerful development tools, multi-platform support, and generics, make C# a good choice for many types of software development projects: rapid application development projects, projects implemented by individuals or large or small teams, Internet applications, and projects with strict reliability requirements. Testing frameworks such as NUnit make C# amenable to test-driven development and thus a good language for use with Extreme Programming (XP). Its strong typing helps to prevent many programming errors that are common in weakly typed languages.
C is the most commonly used programming language for writing operating systems. …
C is the most commonly used programming language for writing operating systems. The first operating system written in C is Unix. Later operating systems like GNU/Linux were all written in C. Not only is C the language of operating systems, it is the precursor and inspiration for almost all of the most popular high-level languages available today. In fact, Perl, PHP, Python and Ruby are all written in C. By way of analogy, let's say that you were going to be learning Spanish, Italian, French, or Portuguese. Do you think knowing Latin would be helpful? Just as Latin was the basis of all of those languages, knowing C will enable you to understand and appreciate an entire family of programming languages built upon the traditions of C. Knowledge of C enables freedom.
Students will use the Hopscotch or Tynker App (either on an iPad …
Students will use the Hopscotch or Tynker App (either on an iPad or web-based) to create their own video game. This project is designed for grades 6-8 but could be adopted to other grades. The project is intended for use after students complete the 20 hour course on introduction to coding on Code.org (https://studio.code.org/s/20-hour)
Code For Fun assembles, creates, reuses curricula, to provide educators with content …
Code For Fun assembles, creates, reuses curricula, to provide educators with content they can use, and adjust based on their audience. Their lessons cover all the standards in the CS K-12 Framework and California K-12 Computer Science Standards.
CodeMonkey is a great way for students to gain a better understanding …
CodeMonkey is a great way for students to gain a better understanding of how programming works. It is an engaging platform where programming knowledge is acquired alongside 21st century skills through collaboratively playing and solving puzzles, inventing, creating and sharing.
Designed with inclusivity, cultural relevance, social justice and regional curriculum in mind, …
Designed with inclusivity, cultural relevance, social justice and regional curriculum in mind, these coding & robotics programs are offered free to K-12 classrooms across subject areas.
Launched in 2013, Code.org® is a non-profit dedicated to expanding participation in …
Launched in 2013, Code.org® is a non-profit dedicated to expanding participation in computer science by making it available in more schools, and increasing participation by women and underrepresented students of color.
Great opportunity to learn computer science. The makers of this online coding program curriculum believe computer science and computer programming should be part of the core curriculum in education, alongside other science, technology, engineering, and mathematics (STEM) courses, such as biology, physics, chemistry and algebra.
The makers of Code.org are proud to offer all of their curriculum and course content completely free worldwide, without any sort of needed partnership to use our materials in your school.
From Code.org: "In this lesson, students will relate the concept of algorithms …
From Code.org:
"In this lesson, students will relate the concept of algorithms back to real-life activities by playing the Dice Race game. The goal here is to start building the skills to translate real-world situations to online scenarios and vice versa."
From Code.org: "The bridge from algorithms to programming can be a short …
From Code.org:
"The bridge from algorithms to programming can be a short one if students understand the difference between planning out a sequence and encoding that sequence into the appropriate language. This activity will help students gain experience reading and writing in shorthand code."
" This course will cover fundamentals of digital communications and networking. We …
" This course will cover fundamentals of digital communications and networking. We will study the basics of information theory, sampling and quantization, coding, modulation, signal detection and system performance in the presence of noise. The study of data networking will include multiple access, reliable packet transmission, routing and protocols of the internet. The concepts taught in class will be discussed in the context of aerospace communication systems: aircraft communications, satellite communications, and deep space communications."
Students will use the Scratch Jr. app to create, compare and contrast …
Students will use the Scratch Jr. app to create, compare and contrast characters. This introductory lesson will include the foundational skills students will need to begin using Scratch Jr., so it makes a great "first project" with students.Pre-requisites-Have a device available for each student (Note: instructions are written for iPad, but the app is available on Android and ChromeOS devices as well).-Ensure that the app "Scratch Jr." is installed on all of the devices. This is a free app in the iOS App Store, Google Play Store, or Chrome Web Store.-Read through this lesson plan. The teacher will be directing students through each step along the way, so familiarize yourself with the end product.
" This class explores interaction with mobile computing systems and telephones by …
" This class explores interaction with mobile computing systems and telephones by voice, including speech synthesis, recognition, digital recording, and browsing recorded speech. Emphasis on human interface design issues and interaction techniques appropriate for cognitive requirements of speech. Topics include human speech production and perception, speech recognition and text-to-speech algorithms, telephone networks, and spatial and time-compressed listening. Extensive reading from current research literature."
From the Scratch Wiki: "Scratch contains the resources available for creating a …
From the Scratch Wiki: "Scratch contains the resources available for creating a question/answer system. This system can be used for one to be 'quizzed', or to repetitively answer automated questions. This tutorial shows various methods on how to create a question system. For each method, the ask () and wait block is used to ask questions and input answers."
Use these blocks to teach students to create a quiz for many different concepts and disciplines.
Learn HTML(5) and CSS W3Schools is the largest web developers site on …
Learn HTML(5) and CSS W3Schools is the largest web developers site on the Internet with HTML(5) and CSS web development tutorials and references covering most aspects of web programming. Easy to Use Tutorials W3Schools focuses on simplicity, practicing easy and straight-forward learning by using simple code explanations, and illustrations on how to use it. Tutorials start from basic level, and move all the way up to complete professional references. Online Editor W3schools presents thousands of code examples. The site contains an online editor allowing teachers/students to edit examples and execute computer code experimentally, to see what works and what does not, before implementing it.
W3Schools is a completely free developers resource. Permission is granted to link the site and use small snippets of code in examples.
This site allows students to get exposure to coding. Teachers and students …
This site allows students to get exposure to coding. Teachers and students can access material with or without an account. There are various options to choose from and are engaging for students. This is a great way to introduce coding and have exploratory days.
This tutorial is a great first-time view and explanation of coding using …
This tutorial is a great first-time view and explanation of coding using javascript drag and drop method. It sets the stage for the though process between connecting events and accomplishing an event. After a 3 minute introduction and demonstration, users are able to get right to it by practicing to code using the drag and drop method.
In this lesson, students will reinforce the importance of giving clear instructions …
In this lesson, students will reinforce the importance of giving clear instructions to a partner for a desired outcome or result, similar to what is needed in a real world work environment, when instructions or notes need to be communicated in person to or left in written form for a co-worker who may be on a different shift and need to complete a project. In the real world, if instructions are not clear, machines or entire assembly lines may be down for a period of time which causes the company to lose money. This lesson will be used in conjunction with Code.org's Course D (2019) curriculum (https://studio.code.org/s/coursed-2019) after the initial lesson called Graph Paper Programming - https://curriculum.code.org/csf-19/coursed/1/. In this lesson, students will use what they just learned about programming, sequencing, and algorithms (set of instructions) and take it a step further by communicating instructions for navigating through a series of steps to a partner who either has their eyes closed (or is wearing a blindfold) from a starting to finishing point, while picking up small blocks (or something similar) along the way.
Here's a quick run-down of how we teach coding here: We explain …
Here's a quick run-down of how we teach coding here:
We explain new concepts using a talk-through, which is like a video but more interactive.Then you'll do a step-by-step challenge to practice that concept.Finally, you'll work on a project, where you can get more practice and be more creative with the skills you've learned.
Based on their experience exploring the Mars rover Curiosity and learning about …
Based on their experience exploring the Mars rover Curiosity and learning about what engineers must go through to develop a vehicle like Curiosity, students create Android apps that can control LEGO MINDSTORMS(TM) NXT robots, simulating the difficulties the Curiosity rover could encounter. The activity goal is to teach students programming design and programming skills using MIT's App Inventor software as the vehicle for the learning. The (free to download) App Inventor program enables Android apps to be created using building blocks without having to actually know a programming language. At activity end, students are ready to apply what they learn to write other applications for Android devices.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.