about

Have you ever stopped to think about how web search engines find what you are looking for? Or how social media manages your contacts, your posts and games? These things are not the result of a magic trick. There are millions of computers performing several different functions to meet users’ needs. Now think: if computers do what we ask them to do, someone else, at some point in the past, instructed them to do it, right? Learning to code is to learn how to tell computers, in their own language, what they must do. But before we engage in a more hands-on activity, we need to know a little about the theory too. Let’s begin?

learning track
1
Learn

Learn

First things first: what is an algorithm? How do computers “think”? You will learn a few basic concepts to start making sense of the logic behind coding.

2
Analyze

Analyze

You’ll be introduced to three different types of algorithms. Comparing them will help you to make a contrastive analysis and to get yourself familiar with the basic structure of codes.

3
Combine

Combine

You’ll learn about and get some practice in the logic behind coding by combining different blocks of pre-defined commands. This is useful practice understanding of what computer commands should be like as well as developing logical thinking.

4
Code

Code

Now it’s finally time to put coding principles into practice! During this step, you’ll be introduced to some commands written in JavaScript and you’ll engage in hands-on activities to consolidate your understanding of this very popular programming language. It is expected that at this point you’ll become familiarized with and motivated to have a deeper understanding of coding.

Have you noticed that many things around us follow a sequence of instructions? When you make chocolate milk, for example, you set aside a mug, some milk, a spoon and some chocolate. Then you put the milk and the chocolate in the mug and stir in the ingredients with a spoon. In doing this, you have followed a series of stages in order to complete a task. Such a sequence of steps is also known as an algorithm. So, when we want to give instructions to a computer, we write a program that contains various algorithms, written in a language that the computer will be able to understand. Would you like to know more? Click on the infographic!

What will I learn?

What computational thinking is and how to create a sequence of instructions.

What will I do?

Create a precise and objective sequence of instructions.

Which skills will I develop? 

Problem-solving and analytical skills and the ability to be objective.

Why should I develop them?  

Because they will help you overcome obstacles and face challenges in a faster and more efficient way.

You've completed step
1 of 4 to becoming a
NOVICE PROGRAMMER.

Glossary

At least: at the minimum.
Dive: to submerge.
Hands-on: practical experience; active participation.
Lead: to show the way especially by going in advance.
Manage: to handle with; to be in charge of.
Pattern: repeated sequences; regular way in which something happens.
Trick: a feat of magic; an illusion.
Step 2Analyze
Test your knowledge about
the previous step and release step 2.
TAKE THE QUIZ

Find the best answer: Computers can...

do what we tell them to do.

How can I tell the computer what to do?

Coding.

CHECK

Now think about the questions below, then share your experience on www.richmondmakers.com:

  • Do you think that skills related to computational thinking will be useful in your daily routine?
  • Which of those skills seems to be the hardest to develop? Why?

Use the hashtags: #makeit #programming #step1

GO TO STEP 2

Unfortunately, computers are still unable to speak human languages and need to receive special coded instructions. We have to use algorithms to tell computers what to do and how to behave. A set of algorithms forms a program. Just like polyglots, computers can “speak” different “languages”, such as C, Java, Python, JavaScript, among others. So, in order to instruct a computer, we have to create an algorithm using a language (a code) that it is able to understand. Click on the infographic to learn more about algorithms.

What will I learn?  

Different ways to represent an algorithm.

What will I do?

Analyze the similarities and differences between three algorithms and create a flowchart.

Which skills will I develop?

The ability to perform comparative analysis.

Why should I develop it?  

Because it will help you improve the ability to make connections between different situations and, more specifically, give you a broader understanding of how computers are instructed to respond to our actions.

You've completed step
2 of 4 to becoming a
NOVICE PROGRAMMER.

Glossary

Average: a number that expresses the central or typical value in a set of data.
Behave: to act or conduct oneself properly.
Float: a float number can have fractions in decimal forms, in opposite of integers, which are whole numbers, without decimals.
Gap: an incomplete or deficient area; a break in continuity.
Input: the information fed into a computer program.
Prompt: in JavaScript, prompt is a kind of pop-up box that requires the user to input a value in order to proceed.
Remainder: the amount left over.
Step 3Combine
Test your knowledge about
the previous step and release step 3.
TAKE THE QUIZ

Which of these is not a programming language?

English.

CHECK

Now think about the questions below, then share your experience on www.richmondmakers.com:

  • Can you draw a parallel between the skills from step 1 and the algorithms in step 2?
  • Is coding becoming easier or more complicated? Why?

Use the hashtags: #makeit #programming #step2

GO TO STEP 3

Using the visual programming language is one of the most practical ways of learning to code. As we saw in the previous step, the commands in the imperative, which are pre-defined, might be combined in different ways to form algorithms. Because we don’t see the programming syntax signs (tabs, quotation marks, parentheses, among others), the layout is cleaner, making it easier to instruct computers to do the expected task. This is a very useful exercise and it will help you understand the computational logic, which must be clear before you move on to the code writing stage. Click on the infographic to practice!

What will I learn? 

How to develop an algorithm using the visual programming language.

What will I do?

Combine command blocks.

Which skills will I develop?

Computational thinking and pattern recognition.

Why should I develop them?  

Because they will help you understand a language used to communicate with computers and develop your logical thinking.

You've completed step
3 of 4 to becoming a
NOVICE PROGRAMMER.

Glossary

Brackets: the pair of marks [ ] used to enclose words or numbers.
Provide: to supply or make available.
Required: necessary to be done, made, or provided.
Trigger: an event or circumstance that makes something happen.
Step 4 Code
Test your knowledge about
the previous step and release step 4.
TAKE THE QUIZ

What happens when the following parameter is executed?

The character will take 400 steps.

when click repeat 4 move 100 steps

After executing the algorithm below, which direction will Rich be looking at?

Right.

when click repeat 4 turn 90 degrees

Which geometric shape will the character form when he executes the algorithm below?

A hexagon.

when click repeat 6 turn 60 degrees move 100 steps
CHECK

Now think about the questions below, then share your experience on www.richmondmakers.com:

  • What do you think of using command blocks to code? Did you have any difficulties?
  • Do you think that learning how to code involves other subjects? Which ones?

Use the hashtags: #makeit #programming #step3

GO TO STEP 4

As seen in the previous steps, there are different coding languages we can use to instruct computers to do what we want them to do. In this final step, you are going to be introduced to JavaScript and learn basic commands. You will also do a few activities using this language. Naturally, it’s not possible to understand the vast field of programming in just four steps. The aim of this project is to provide you with introductory theory and a little practice so that you can get yourself familiar with coding and understand the logic behind it. Now let’s get started! Click on the interactive video.

What will I learn? 

JavaScript code and a few commands.

What will I do?

Identify problem-solving strategies.

Which skills will I develop?  

Problem-solving and digital skills.

Why should I develop them?  

Because not only will they broaden your knowledge of computing, but they will also help you develop logical thinking and become more objective and practical.

You've completed step 4 of 4. YOU ARE A NOVICE PROGRAMMER!

Glossary

Avoid: to stay away from someone or something.
Figure out: to understand, solve or deduce something.
Interactivity: the communication between humans and computer software.
Period: a punctuation symbol (.) used at the end of a sentence.
Quotation marks: punctuation symbols (“”) used to show that someone else has said something.
Semicolon: a punctuation symbol (;) used in lists, or to separate two parts of a sentence.
Test your knowledge about the previous step.
TAKE THE FINAL QUIZ

What is JavaScript used for?

To promote interactivity.

In JavaScript, the semicolon indicates...

the end of a command.

It is correct to say that parentheses...

are always used to inform the parameters.

CHECK

Congratulations! You did it!

Now think about the questions below, then share your experience on www.richmondmakers.com:

  • Was it difficult to do the activities? If so, what problems did you have? What did you do to try to solve them? If not, what did you like most about this topic?
  • How useful do you think knowing about coding will be in your life?

Use the hashtags: #makeit #programming #step4

Richmond Make it

credits

Publishing Director: Sandra Possas
Multiplatform Editorial Manager: Adriana Pedro de Almeida
Multiplatform Design Coordinator: Raquel Buim
Content: Christian Puhlmann Brackmann
Translation: Bruno Cardoso Lages
Multiplatform Content Editors: Ana Paula Campos, Gabrielle Navarro (Teacher’s guide)
Multiplatform Content Assistant Editors: Cíntia Nogueira, Thaís Teixeira Tardivo
Proofreaders: Flora Manzione, Mayenne Tannús, Rodney Daniel Cameron
Multiplatform Designer: Daniela Carrete
Multiplatform Assistant Designers: Bruno Tersario, Eloah Cristina, Frodo Almeida, Karina de Sá
Illustrations: Rafa Miqueleto
Photo Researcher: Sara Alencar
Audio Production: Spectrum Estúdio
Programming: CPCi Produtora Digital
Educational Portal Content Editor: Sheila Rizzi
Every effort has been made to trace the holders of copyright, but if any omissions
can be rectified, the publishers will be pleased to make the necessary arrangements.
Richmond
Editora Moderna Ltda.
Rua Padre Adelino, 758 — Belenzinho
São Paulo — SP — Brasil — CEP 03303-904
Central de atendimento ao usuário: 0800 771 8181
www.richmond.com.br
2018