How to learn to program? There are many methods, but all of them some stand out above others. Today we will talk about the kits for learning to program, a set of tools that we make it very easy to pick up all those basic concepts that then continue walking.
But wait, why learn to program? What tools do I need? These two questions we will answer them today in this special, which will also discuss the main kits for learning to program, a key element in this learning as to the agenda.
Why learn programming?
Programming is an increasingly common knowledge in our day to day. Many countries integrate this subject in the curricula of their schools – we will not deny that, generally, are behind other countries in education … – and it is a matter implanted in some communities, with the tendency to reach much more in the coming years.
EXPERTS BELIEVE THAT AS WE LEARN TO WRITE, TO READ OR MATHEMATICAL OPERATIONS IN THE XXI CENTURY WILL BE KEY PROGRAMMING COURSE IN EDUCATION
Its purpose, providing a basis for learning to program, why should we learn to program? Experts like Jeannette M. Wing, director of the Department of Computer Science of Carnegie Mellon University in Pittsburgh (Pennsylvania, United States)ensure that it is a key to the twenty-first century material for the value of one of the main features that promotes the thinking Computer.
Computational thinking is a crucial skill for everyone, not just for computer scientists. To reading, writing, and arithmetic, Should we add computational thinking to every child’s analytical ability?
Computational thinking is a term that began to be named in 1980 by Seymour Papert, who appointed him one of his first works, Mindstorms – yes, is linked with products in the late 90 LEGO launched – defining it as the method of solving problems that generalize the solution to apply in different environments. It requires a series of concepts – decomposition, a generalization of information, abstraction, modeling problem, etc. – That with the advent of computing both the domestic environment and the professional all we handle over the coming years.
And it is precisely the context of today’s society that makes programming a key element for any job. The technology around us and we must know how to deal with it, know it thoroughly and take advantage as much as possible. This achievement results in computational thinking, applicable to many areas of life – not technological; analog, if I am allowed to term – and therefore leads to programming as a key element of society in the XXI century.
The two articles mentioned before that during the summer we published related to teaching and training programming. They proposed a series of basic concepts of entry to enter the world in a direct way with the matter through languages and adapted to take the first steps interfaces. However, there are also kits that may be interesting to start programming.
Speaking of software kits that are tangible is to treat only part of the whole. Talk programming is talk about software on the one hand, and a hardware part optional on the other. There are some exceptions such as Computer Science Unplugged, but of course are the least.
The software is essential and a key part of teaching and training programming. And here I recognize that for my language Scratch is a fundamental axis. A software born at MIT in 2002 and since then has evolved during an online community that reaches 11.7 million shared projects, with millions of users worldwide.
Scratch is, from my point of view, the best language to enter the market. We use it daily in the Club of young programmers from the University of Valladolid and the results are still excellent. Its interface, block – based and not text, it helps to understand the programming and facilitates the process of understanding how computers work, that process iterative and sequential algorithms that all computer and programmers are used to , but it is rare for the most distant of matter.
Scratch But I recognize that there are many based on the concept of block programming options. Without going any further Code.org and excellent tutorials initiation, or the bq with bitBloq, a kind of clone Scratch very focused on their own products and with a more commercial spirit.
We also have around App Inventor that allow us to create Android apps with programming blocks (which has a rather curious story), Alice to create 3D environments or own language of LEGO Mindstorms with.
For those who believe that the post-PC era has arrived (that’s another discussion) there are also some options for tablets, although they tend to be very limited compared to those of the PC platforms. We Scratch Jr. as a little brother of the original Scratch, but which has also been developed by the Lifelong Kindergarten MIT; or Hopscotch as interesting and native iOS proposal.
Can we learn to program with text languages, more ‘traditional’? Of course yes, and choose a language or a text block will largely depend on our age. It is true that languages block are aimed at a younger, even young audience (4-5 years to 16-18), and that after this age many recommend going directly to languages like Python, which for many has to be the first step. They help some websites / tutorials as CodeCombat, which puts great effort into the gamification to promote learning.
However, as we are talking about kits to learn to program in the end there is a maximum: each kit incorporates its range of supported languages, and rarely can get out of them. Some are more versatile and more closed, and therefore ideally is documented to see what we can use. Personally, I recommend starting blocks languages and, once mastered, make the jump to the textual. Now, of course, everyone is free to start wherever.
Kits for learning to program
Here we present four kits to begin programming, and that will be of great help when taking the first steps in this new field.
A toy that seems trivial to do, but it took years to arrive. With the name Makey Makey: An Invention Kit for Everyone appeared on Kickstarter a set of cables, clamps and a USB to connect to the computer. It allows you to create simple products like a piano with a few bananas:
The operation is simple and is based on the electrical conductivity and touching different objects, all connected to the computer via the Makey Makey. Very simple to understand and the ability to very surprising results – like bananas – but with the disadvantage of being somewhat limited and therefore give a relatively short game, although sometimes surgan great ideas.
If you want to get one will cost $49.95 at the official store, but we can find it on Amazon
If we talk about programming it is necessary to talk about Arduino, which in recent years has gone from being a platform for electronic geeks to be instrumental in teaching programming.
While Makey Makey is a product designed for any kid can use it, it is true that Arduino is for profiles older, typically above 8 or 10 years. Arduino is a solvent and with infinite possibilities product, and among these many possibilities … begin programming is one of them. For example, create a program that turns lights from time to time or every time you press a button is trivial.
Arduino Pros have their extensive list of supported programming languages beyond the official based on C / C ++ and includes dozens of different possibilities. Among them is the possibility of using it through some languages blocks as the bitBloq be or, more important, also with Scratch (either through S4A, a project, or ScratchX).
Another key point of learning programming with Arduino is the huge community that exists on the Internet, from the resources and official examples to guide all kinds and of course, as we are talking about kits, the Starter Kit Arduino official will linchpin, being available or in the official store. Another option is Makeblock, which also offers starter kits.
LEGO Mindstorms EV3
We were talking in the first paragraph of this entry Papert and his work Mindstorms, which after a few years – and many collaborations between Papert himself, his pupil Resnick, MIT and the LEGO Danish – led, in 1998, the first LEGO Mindstorms, the so-called RCX.
This evolved into a second generation in 2006 called NXT, and more recently (2013) in the third and current Mindstorms EV3: programmable robots for LEGO has its own language – also based on, yes, block – and are tremendously therefore attractive introduction to the world of robotics, for some competitions at local and national level as the First Lego League.
If we buy a Mindstorms EV3 we will have everything from hardware (the main block, sensors, and other parts) to software (originally programmed with its own language, but also allow many others). The downside is the price: LEGO Mindstorms EV3 is an ‘expensive’ toy that comes to the not inconsiderable figure definitely a product away from many pockets.
I admit I fell for LittleBits when I saw it for the first time, and I still falling. A series of kits that are defined as “The ultimate invention toolbox”, and proposing an electronic platform that enables different physical blocks to create the most disparate inventions.
LittleBits is extremely simple to use, because the parts are connected via magnets tremendously simple and intuitive way, with a color code that will help to understand the whole. The endless possibilities and community are its pluses, with extensive tutorials and guides that promote from the official website.
Then there is the wide variety of existing LittleBits, with kits for all types of uses and can accommodate multiple prices. In the official store are all options with kits 99 to $ 1,599 and different objectives: Makey Makey, Arduino, Smart Home, Gizmos & Gadgets or music. Amazon there are some available though of course the offer is better than that proposed by the official website.
If you need more help
… On the Internet, you will find absolutely everything you need to thrive in terms of programming. It is said that any doubt has already been resolved in general communities of Stack Overflown, or dozens of pages and forums in different languages or environments.
Each of the kits we have discussed here has their respective user community including forums and questions and answers. If the tutorials initiation you have not had enough, or if you have choked at any point, search the Internet or ask around. The Internet is the answers to (almost) all your questions.