Initiatives such as Code.org, supported, among others, by Bill Gates and Mark Zuckerberg, argue that software development is the literacy of the 21st century, and speak of the need to incorporate this subject into basic education.
Unfortunately, these types of changes are never fast enough and, in many cases, do not take into account the training of all those who are already outside the educational system.
The online educational platforms that have emerged in recent years have filled that gap in training in new technologies. Thanks to MOOCs platforms, Stackoverflow type Q&A websites and, of course, mobile applications, we have all the necessary resources to learn to program without having to enter a classroom.
Today we present you some of the best Android apps to start with the first steps towards software development. Notice to navigators: the content of most of these apps is in English. But that's the skill that was expected of us in the 20th century, remember?
All SoloLearn courses follow the same structure: first, a short snippet of theory that you can read in just a few seconds, and then a test related to what you just read. As you pass the tests, you unlock new lessons. At the end of each lesson there is a general exam to reinforce concepts.
Download it if you want to learn web development while waiting for the train.
– Learn HTML for Android: complete review and download (Free)
– Learn CSS for Android: complete review and download (Free)
Javvy from Hello Code
If you are more interested in acquiring the necessary skills to develop Android applications, you will have to start by learning Java, the basis of the language of Google's mobile operating system.
Javvy Hello Code offers you a guided and interactive way to learn Java, very much like Codecademy. Each lesson is divided into different steps, and each of these steps is made up of a paragraph of theory, instructions for the exercise, a code editor that you must modify and a button to run the program. When doing so, the result and explanation will appear. After each lesson, you should answer a few questions to make sure you have understood the concepts.
Download it if you want to learn Java but you are overwhelmed by the tedious programming books.
– Javvy for Android: full review and download (Free)
Practice and Learn SQL from Knowledify
Whether you decide to learn to develop mobile apps, or take the path of web development, sooner or later you will end up needing to store and extract information from a database. Relational databases are the most widespread in software development and SQL is a language that allows you to communicate with them.
So learning SQL is almost mandatory for any programmer. Practice and Learn SQL Knowledify is an app that allows you to acquire basic knowledge of the SQL language in an interactive way. The lessons are divided into levels that you must complete by reading the theory and solving the exercises correctly. You can even share your achievements by connecting the app with the online rankings of Google Play Games.
Download it if you want to learn how to programmatically store and extract data.
– Practice And Learn SQL for Android: complete review and download (Free)
A version control system guarantees that the different changes that we apply to our code are always accessible and safe. It is an essential tool in development teams and, therefore, a skill that is expected of any programmer.
GitHub is a platform for hosting projects that uses the popular Git version control system. With GitHub Tutorial From Neel World you can learn the basic commands to get involved in projects that use Git and Github. The lessons are divided into three levels (beginner, intermediate and advanced) and there is a test section to assess the knowledge you are acquiring.
Download it if you want to learn the basic git version control system commands.
– Github Tutorial for Android: complete review and download (Free)
Learn to Program from Jan Tursky
If among the previous applications you have not found the language or the framework you want to learn, you should take a look at Learning to Program by Jan Tursky.
Aprender A Programar offers tutorials, official documentation and source code examples from some 50 programming languages (Python, Ruby, Perl, Haskell), libraries (jQuery, Bootstrap, …), frameworks (Node.js, JUnit, …) or resources programming (Regex, Vi, RSS). You can access one or the other from the side menu and see, with the legend of colored dots, what type of content is available for that language or framework (tutorial, documentation, source code). In addition, it contains a sandbox code editor with which you can modify, preview and run the example programs or your own.
Download it if you need a quick reference app for the main functions of a specific language or framework.
– Learn to program for Android: complete review and download (Free)
Gaurav Gupta hackr.io
If you have already completed all the exercises and tutorials of the previous apps and you still want more, Hackr.io It is the app that will tell you where to follow.
Hackr.io allows users to add and vote on the best programming tutorials available online for each language. The app includes more than 100 categories that are nothing more than programming languages, frameworks, libraries or other resources related to software development. Each of these categories is made up of a list of links to tutorials ordered from most to least voted. A very useful resource with a single downside: from the app you cannot upload new tutorials or vote (only from the official website of hacker.io).
Download it if you want to continue learning and do not know what your next step should be.
– Hackr.io for Android: full review and download (Free)
All the previous apps offer you resources to start flying alone in the world of software development. However, when you begin to develop your first projects, you will notice that very specific doubts arise whose answer is not (or at least not evident to you) neither in the official documentation nor in the tutorials. Now is the time to use a question and answer (Q&A) platform like Stackoverflow.
In fact, Stackoverflow is just the section dedicated to programming Stack Exchange, which is a kind of aggregator of Q&A websites of different themes (photography, culture, gaming). Its official application will allow you to post questions, answer them, comment on them and vote on them. An essential resource when you are starting.
Download it if you are stuck and can't find the answer in the tutorials.
– Stack Exchange for Android: full review and download (Free)
Written by Manu Glvez. He has spent several years analyzing apps and writing about the mobile phone industry on appszoom, a platform that makes it easy for users to discover mobile applications through its website and its Android and iPhone apps.