If you are a programming lover, surely on more than one occasion you will have faced the need to work with different languages. This point is sure that you will have mastered it or, perhaps better said, you have reached that phase in which you really no longer have that fear of when you started working with other types of languages since you can even get to enjoy the particularities that each presents one.
In a later phase of your life, it may be time that you want to share your hobby with the little ones in the house, something that can be really hard since learning to program precisely is not knowledge that you can acquire In months or years, you are always learning both academically and even watching source code generated by other developers. Due to this and the particularities that each language presents, Which one is the best for the little ones in our house to learn?
The truth is that the only thing we really have decided is something as simple as programming, as has been demonstrated, is something very important that we must instill in our little ones. Unfortunately when we began to investigate the possibilities are many, so at HWLibre we have decided to try to organize a small guide, more or less by age, where we will talk about the languages that, in my opinion, can be more instructive and interesting.
Table of Contents
Ages between 3 and 6 years
In this first step, the truth is that children can seem too young to begin to understand what is done at a certain step. Because of this, it is best to get them to learn without knowing what they are doing indeed, at this time perhaps this is not necessary so the best option is to try to learn by playing.
To get them started in what would be computational thinking, the best thing is acquire some type of toy that they like and attract their attention And, in this sense, contrary to what you can imagine, there are many options that we have available in the market.
If we do not want to spend too much money in this first attempt to initiate our little ones in this world, one option may be to bet on Scratch Jr. We are talking about an app available for both Android and iOS that bases its use on block programming.
The negative point of this application is found in several of the premises that make it interesting. On the one hand, the child's age must be high for the range that we have marked since must be able to handle a tablet with some ease as well as the fact that you must already have certain capabilities cognitive.
In favor is that application is free and it has a few ideas that can serve as examples and guides to get you started.
Different games with robots
At this point, without giving names or brands, tell you that today in the market there are certain possibilities in which the smallest of the house can play with different automata that can be programmed to perform various predefined movements. An example could be getting a robot, starting from a physical point A in a room, to reach a point B established by ourselves.
Personally, I have to confess that this idea is the one that, at the time, I chose to start working in this area and, although at a young age children tend to be quite restless, we can come to get them interested in the challenges we pose to them provided that we help them at all times.
Ages between 7 and 9 years
In this phase the truth is that the little ones already usually have much more developed skillsAfter all, they are older and their capacities are much higher than we can imagine, especially if we help them train them.
This precisely opens the door to the use of much more advanced programs and challenges for them, who mainly and according to experts, at these ages, should be aimed at promote several of the multiple intelligences such as mathematics, spatial or linguistics
Continuing with the recommendations of the previous level, nothing better than to go from the Jr version of Scratch, especially if you master it, the most advanced version, which is considered one of the main educational programming platforms in the world. This version is intended for children over 8 years old Although, as usually happens, everything will depend on the child himself and the interest he may have.
If you are familiar with Scratch, this is still a kind of high-level language hidden behind the use of colored pieces. Personally, it seems to me a more than interesting platform to start, especially if we take into account that it currently has more than 14 million projects on their websites that can serve as a guide.
Tynker is a programming language whose use can be very similar to Scratch since it is based on the placement of blocks. One of the main advantages, in addition to following a freemium philosophy, is that on its platform we find multiple tutorials that help us get started with the software.
As with the previous option, those responsible for Tynker recommend its use in children older than 8 years, age at which they believe that children will truly get the most out of what the platform offers, which has several levels and a wide variety of objectives to meet.
Ages between 10 to 12 years
At this point, the truth is that our little ones are no longer so and their capacity has grown exponentially over time. At this point, we must stop motivating them by telling them what to do to get them to your own goals and decide how you should achieve them.
This is the point at which perhaps the best thing is that they start to stop working with blocks and go on to carry out their different projects with text, although, of course, on the other hand, at the moment we cannot show them the benefits of the different traditional programming languages , for that there will be time.
This is quite peculiar software that I found more than interesting, this is because, although it is no longer programmed with blocks, the truth is that it can be an intermediate step oriented to the use of professional programming environments, especially due to its interface.
In Code Monkey we will have to control the actions carried out by a monkey that must collect bananas through different scenarios. To move the monkey, as you are sure to imagine, we must write the code using very simple instructions. As we go to the next level, the difficulty increases.
Ages between 13 to 16 years
At this moment in the lives of our children we are at an age 'difficult'. The possibilities, depending on the programming skills for our little one, are many since there are accelerated courses to learn programming techniques that can be interesting although there are also certain platforms that propose different methods.
AppInventor It is nothing more than an application from which you can create Android applications by dragging blocks of code. For more information, tell you that this has been developed by Google itself and its evolution is borne by nothing less than MIT.
The most interesting thing about AppInventor is that it is completely free and very easy to use, especially if we take into account that there are a huge number of tutorials on the internet with which to start our initiation.
Yes, you read correctly, at this age it can be more than interesting to start using Python, especially if the young man in our house wants to stop working with blocks and get into professional programming due to his concerns.
As you well know, we are facing a programming language with everything that they imply. I have included it because there are many experts who recommend using Python as an introduction to textual programming for its simplicity. In turn, doing a little research, you will be able to find many tutorials to discover how to start from 14 years old as well as other sources of information such as traditional books of all life.
17 years and older
At this point, and even in the previous one, we are already talking about perfectly formed young people as well as any adult who wants to enter this world.
At these ages, it is normal for young people to start planning their future. As is logical with many possibilities, from starting to work with textual programming languages to continue burning stages little by little until reaching the recurring Java, Objective-C ... for object-oriented languages or, if you want to go further, enter in the powerful and versatile world of C.
At this level I want to propose several proposals although, personally I believe that the time has come to do much more serious things such as own projects where to mix programming with electronics.
The true potential of Arduino lies in their tremendous possibilities in terms of customization, versatility and scalability. Another point very in its favor is that today there is a huge community behind the project where you can turn to learn to work on real projects.
If you are a video game lover and want to develop your professional career in this way, you may be interested in trying Stencyl, one of the platforms to create more advanced video games of the moment of how many there are free (there is a paid version) that will allow you to create advanced, personalized games with great potential.
The negative part is that to start using it you will have to follow a few of the tutorials that exist on its official website since it is quite complex, at least until, after a while, we begin to have ease on the platform.