Initiativ som Code.org, som bland annat stöds av Bill Gates och Mark Zuckerberg, hävdar att programvaruutveckling är läskunnigheten i 2000-talet och talar om behovet av att införliva detta ämne i grundutbildningen.
Tyvärr är dessa typer av förändringar aldrig tillräckligt snabba och i många fall tar de inte hänsyn till utbildningen för alla som redan befinner sig utanför utbildningssystemet.
De online-utbildningsplattformar som har dykt upp de senaste åren har fyllt det gapet i utbildning i ny teknik.
Tack vare MOOC-plattformar, Stackoverflow-typ Q & A-webbplatser och naturligtvis mobilapplikationer har vi alla nödvändiga resurser för att lära oss programmera utan att behöva gå in i ett klassrum.
Idag presenterar vi några av de bästa Android-apparna för att börja med de första stegen mot mjukvaruutveckling.
Meddelande till navigatörer: innehållet i de flesta av dessa appar är på engelska.
Men det är det skicklighet som förväntades av oss på 1900-talet, minns du?
SoloLearn-serien
SoloLearn erbjuder en serie självlärande applikationer för programmeringsspråk, mest relaterade till webbutveckling.
Dess appar för att lära sig HTML, Javascript och CSS är en bra utgångspunkt om du är intresserad av frontend.
Du hittar också appar för att lära dig språk backend som Java, Python eller PHP.
Alla SoloLearn-kurser följer samma struktur: först ett kort teoriutdrag som du kan läsa på bara några sekunder och sedan ett test relaterat till det du just har läst.
När du klarar testerna låser du upp nya lektioner.
I slutet av varje lektion finns en allmän tentamen för att förstärka begreppen.
Ladda ner den om du vill lära dig webbutveckling medan du väntar på tåget.
– Lär dig Javascript för Android: fullständig granskning och nedladdning (gratis)
– Lär dig HTML för Android: fullständig granskning och nedladdning (gratis)
– Lär dig CSS för Android: fullständig granskning och nedladdning (gratis)
Javvy från Hello Code
Om du är mer intresserad av att skaffa dig nödvändiga färdigheter för att utveckla Android-applikationer måste du börja med att lära dig Java, grunden för språket i Googles mobila operativsystem.
Javvy Hello Code erbjuder dig ett guidat och interaktivt sätt att lära dig Java, som Codecademy.
Varje lektion är uppdelad i olika steg, och vart och ett av dessa steg består av ett teoristycke, instruktioner för övningen, en kodredigerare som du måste ändra och en knapp för att köra programmet.
När du gör det visas resultatet och förklaringen.
Efter varje lektion bör du svara på några frågor för att se till att du förstår begreppen.
Ladda ner det om du vill lära dig Java men du är överväldigad av de tråkiga programmeringsböckerna.
– Javvy för Android: fullständig recension och nedladdning (gratis)
Öva och lär dig SQL från Knowledify
Oavsett om du bestämmer dig för att lära dig att utveckla mobilappar, eller ta vägen för webbutveckling, kommer du förr eller senare att behöva lagra och extrahera information från en databas.
Relationsdatabaser är de mest utbredda inom mjukvaruutveckling och SQL är ett språk som låter dig kommunicera med dem.
Så att lära sig SQL är nästan obligatoriskt för alla programmerare. Öva och lär dig SQL Knowledify är en app som låter dig förvärva grundläggande kunskaper om SQL-språket på ett interaktivt sätt.
Lektionerna är uppdelade i nivåer som du måste genomföra genom att läsa teorin och lösa övningarna korrekt.
Du kan till och med dela dina prestationer genom att ansluta appen till online-rankningen för Google Play Games.
Ladda ner den om du vill lära dig hur man lagrar och extraherar data programmatiskt.
– Öva och lär dig SQL för Android: fullständig granskning och nedladdning (gratis)
GitHub-handledning
A versionskontrollsystem garanterar att de olika ändringarna som vi tillämpar i vår kod alltid är tillgängliga och säkra.
Det är ett viktigt verktyg i utvecklingsteam och därför en färdighet som förväntas av alla programmerare.
GitHub är en plattform för värdprojekt som använder det populära Git-versionskontrollsystemet.
Med GitHub-handledning Från Neel World kan du lära dig de grundläggande kommandona för att engagera dig i projekt som använder Git och Github.
Lektionerna är indelade i tre nivåer (nybörjare, mellanliggande och avancerade) och det finns ett testavsnitt för att bedöma den kunskap du förvärvar.
Ladda ner det om du vill lära dig de grundläggande kommandona för git-versionskontrollsystemet.
– Github Tutorial för Android: fullständig granskning och nedladdning (gratis)
Lär dig att programmera av Jan Tursky
Om du inte har hittat språket eller den bland de tidigare applikationerna ramverk du vill lära dig bör du ta en titt på Learning to Program av Jan Tursky.
Aprender A Programar erbjuder handledning, officiell dokumentation och källkodsexempel från ett 50-tal programmeringsspråk (Python, Ruby, Perl, Haskell), bibliotek (jQuery, Bootstrap, …), ramverk (Node.js, JUnit, …) eller resurser programmering (Regex, Vi, RSS).
Du kan komma åt den ena eller den andra från sidomenyn och se, med förklaringen om färgade prickar, vilken typ av innehåll som är tillgängligt för det språket eller ramverket (handledning, dokumentation, källkod).
Dessutom innehåller den en sandlådekodredigerare med vilken du kan ändra, förhandsgranska och köra exempelprogrammen eller dina egna.
Ladda ner den om du behöver en snabbreferensapp för huvudfunktionerna för ett visst språk eller ram.
– Lär dig att programmera för Android: fullständig recension och nedladdning (gratis)
Gaurav Gupta hackr.io
Om du redan har slutfört alla övningar och handledning för de tidigare apparna och du fortfarande vill ha mer, Hackr.io Det är appen som berättar var du ska följa.
Hackr.io tillåter användare att lägga till och rösta på de bästa programmeringshandledningarna som finns tillgängliga online för varje språk.
Appen innehåller mer än 100 kategorier som inte är annat än programmeringsspråk, ramar, bibliotek eller andra resurser relaterade till programutveckling.
Var och en av dessa kategorier består av en lista med länkar till handledning som beställts från de flesta till de minst röstade.
En mycket användbar resurs med en enda nackdel: från appen kan du inte ladda upp nya handledning eller rösta (endast från hacker.io officiella webbplats).
Ladda ner det om du vill fortsätta lära dig och inte vet vad ditt nästa steg ska vara.
– Hackr.io för Android: fullständig recension och nedladdning (gratis)
Stack Exchange
Alla tidigare appar erbjuder resurser för att börja flyga ensam i programvaruutvecklingsvärlden.
Men när du börjar utveckla dina första projekt kommer du att märka att mycket specifika tvivel uppstår vars svar inte är (eller åtminstone inte uppenbart för dig) varken i den officiella dokumentationen eller i handledningarna.
Nu är det dags att använda en fråga och svar-plattform (Q&A) som Stackoverflow.
Faktum är att Stackoverflow bara är det avsnitt som är tillägnad programmering Stack Exchange, som är en slags samlare av Q & A-webbplatser med olika teman (fotografi, kultur, spel).
Dess officiella ansökan gör att du kan lägga upp frågor, svara på dem, kommentera dem och rösta på dem.
En viktig resurs när du börjar.
Ladda ner det om du har fastnat och inte hittar svaret i självstudierna.
– Stack Exchange för Android: fullständig recension och nedladdning (gratis)
Skriven av Manu Glvez.
Han har tillbringat flera år på att analysera appar och skriva om mobiltelefonindustrin på appszoom, en plattform som gör det enkelt för användare att upptäcka mobilapplikationer via sin webbplats och sina Android- och iPhone-appar.