# [ALGORITHM IN JAVASCRIPT] 01: INTRODUCTION TO ALGORITHM2 min read

Hi friends, as you can see writing code isn’t enough, to become a programmer you need to have a certain ability to think. To train thinking as a programmer, solving algorithm is a great option. First of all, **what is algorithm?**

According to Wikipedia, **Algorithm is an unambiguous specification of how to solve a class of problems. Algorithms can perform calculation, data processing and automated reasoning tasks.**

**Why should you learn Algorithm?
**

- It helps you think like a programmer.
- Always make sure you find the best solution.
- You works faster and easier when you using algorithm.
- It is easy to debug as every step is got its own logical sequence.
- And a lot of other advantages when you using Algorithm…

**A few examples of using Algorithm**:

- In order to make the display exactly what user is looking for, Google use algorithm.
- For quality content on your newsfeed that suits you best, Facebook uses their algorithm.
- Or just to display the largest number of digits you have entered, you can use algorithm.

**Difficulties encountered when learning and practicing Algorithm:**

- It’s quite hard for beginners.
- You need to understand many concepts of programming language that you will practice algorithm on it.
- It’s time consuming.

*But don’t let it hinder your progress…because*

“It always seems impossible until it’s done.”

**How do I present my thoughts? **

This is the first article in my series about learning Algorithm. In next articles you and me will learn algorithm together with all that I have and want to share with you as a learner. I will start with the basic algorithms and try to approach in the most comprehensive and easy-to-understand to make sure you can understand each Algorithm challenge with the presentation of Javascript programming language!

**What the algorithms we will learn and practice together?**

Starting with the basic algorithms, you and me will overcome the algorithm challenges on some of the following popular sites:

- CodeFights
- HackerRank
- freeCodeCamp

**How can we learn and practice algorithm together?**

As I mentioned earlier, each article will be an algorithm challenge on 1 of the 3 sites above. I will present the problem I have dealt with in detail and you should pay attention to observe step-by-step to understand the problem or so great if you can figure out better solution for yourself.

**On the next article, You and I will practice together on the first algorithm challenge. I am very excited to write this article. Happy Coding and see you next time!**