Lär dig att Сode: Hemligheten med en rekursiv metod

3

Kodning är där framtiden finns, globalt såväl som individuellt. Det finns inga "om" eller "men" om det. Rädd för ditt jobb, orolig för globaliseringen och rädd att du inte kommer att klara av att gå ihop under de kommande åren? Framtidssäkra dig sedan genom att lära dig koda.

Den är öppen för alla, oavsett ålder, kön eller hudfärg, den tjänar bra pengar, med en genomsnittlig mjukvaruutvecklare som kommer i närheten av 100 000 per år, och är en sektor som förväntas fortsätta växa kl. 22 % fram till 2022.

Och det är helt platsoberoende. Du kan enkelt göra det online, kommunicera via Skype-e-post eller snapchat. Så om du bor i rustbältet, Bangladesh eller i en grotta, så länge du har en anständig anslutning kan du koda, dra ut en lön och leva bekvämt – även om den sista delen visserligen kan vara svår om du är lever i en helhet i marken.

Och även den största ursäkten av dem alla, att det är svårt att lära sig och att du inte har någon att lära dig, håller inte vatten längre. Varje dag läggs fler resurser online för att hjälpa dig att lära dig hur du väljer det språk du vill koda på, hur du lär dig det språket och möjligheter att koda på det.

Det enda som håller dig tillbaka är du.

Vilket språk ska du lära dig?

Okej, det kan vara lite slarvigt. Det är lite mer som håller dig tillbaka än så. Men alla problem kan övervinnas! Det behöver inte ens kosta dig pengar. Det första valet du måste bestämma dig för är vilket språk du vill börja lära dig. Det finns många av dem och det kan vara lite skrämmande.

Lyckligtvis finns det verktyg här också. Alternativt kan du lösa det på egen hand. Det är faktiskt inte så svårt. Det första du behöver veta är att det finns två olika grupper av språk. Dessa är dynamiska och statiska språk.

  • Dynamiska språk är mer nybörjarvänliga. De kräver inte så mycket kod och är väldigt flexibla. De kommer att lära dig teorin. De är också vad som kallas "högre nivå". Det betyder att de inte oroar sig för bitarna och bultarna (som är de lägre nivåerna) och istället är flera steg borttagna därifrån. Så istället för att säga "ta ut bröd ur kylen, ta ut två skivor, ta smör…" skulle du istället bara säga "gör jordnötssmör och syltmacka". Uppenbarligen är det sistnämnda mycket snabbare och på så sätt ger dynamiska språk dig resultat snabbare.
  • Statiskt skrivna språk är den andra sidan av myntet. Dessa språk är närmare vad du föreställer dig när du tänker på kodning. Det här språket är på en lägre nivå och kräver därför mer kod för att åstadkomma samma sak – men du får åtminstone bestämma om din smörgås ska vara med eller utan skorpa, så det finns det. Dessa programmeringsspråk anses mer skalbara, robusta och lättare att underhålla. Samtidigt straffas misstag hårdare.

Förstod det? Okej, låt oss sedan titta på några exempel på språk som du kan tänka dig att använda. Vi börjar med några av de dynamiska språken först.

PHP

Om du planerar att leka med WordPress – och det är chansen att du är det, eftersom det är en av de mest populära webbplatsbyggande plattformarna där ute med XXX av webbsidorna på internet byggda med den – så vill du börja med PHP .

Lyckligtvis är detta skriptspråk på serversidan ganska nybörjarvänligt, eftersom det är lätt att förstå vad koden kommer att göra när du använder den. Det betyder att det är mycket lättare att förstå än många andra språk.

Vad mer är, eftersom det har varit starkt specialiserat för webbanvändning och det är förmodligen där du ska börja på dina programmeringsinlärningseskapader, kan du säkert göra värre än PHP.

Andra plattformar byggda på PHP inkluderar Facebook, Wikipedia, Yahoo och Tumblr.

Javascript

I andra änden av skalan finns Javascript. Det är omåttligt populärt och används på många olika platser och sätt. Det är kompatibelt med alla webbläsare, används ofta för att skapa interaktiva webbappar och används också som ett serverspråk.

Det enda problemet? Det anses vara ganska svårt, eftersom det är ett otippat språk, vilket gör det mycket svårt att felsöka. Detta är definitivt du kommer att vilja lära dig så småningom, men du bör förmodligen inte försöka ta upp det först. Fokusera på en av de andra istället.

Bra, så nu ska vi titta på några statiskt skrivna språk som du kan överväga.

Java

Man kan verkligen inte prata om ett statiskt skrivet språk utan att nämna Java. Det skulle vara som att prata om Nordamerika utan att prata om USA. Nittio procent av Fortunate 500-företagen använder Java. Det är rätt. Nio noll. Och de som inte gör det är förmodligen som människor som vägrade använda Apple på noughties. Det är principen i saken, fan!

Det är inte precis ett lätt språk så det kanske inte är det bästa stället att börja. Som sagt, det är verkligen lärbart, för om 90 % av dessa företag använder det, så måste uppenbarligen någon tjäna på det, eller hur? Du kan säkert göra värre än att välja Java som ditt första statiskt skrivna språk.

C

Ett annat (mycket) viktigt språk är C. Det är operativsystemets valspråk. Det har påverkat alla programmeringsspråk vi har nämnt hittills. På ett sätt är det som latin, där alla europeiska språk har lånat mycket från det och dess idéer. Och precis som latin kommer att lära sig det göra det mycket lättare att lära sig alla de andra språken.

Problemet? Återigen kommer den latinska jämförelsen att tjäna mig väl. Det är komplext och abstrakt och kommer att kräva ganska mycket kod för att göra vad andra gör på mycket mindre. Det betyder att det kan vara svårt att hålla sig motiverad som nybörjare. Det är nog bäst att först lära sig något för att komma till rätta med grundidéerna och sedan ta upp C.

Var kan jag lära mig om dessa plattformar?

Jag är glad att du frågade. Det finns verkligen otaliga resurser tillgängliga, några av dem betalda, några av dem gratis. Jag skulle föreslå att du börjar med de gratis. Du kan bara skriva språket du har valt och inkludera orden "hur man programmerar in" så är du på väg.

Alternativt, och eftersom du redan är här, kan du klicka på en av följande länkar och kolla in plattformarna för inlärning av kod online där.

CodeAcademy är gratis och 24 miljoner människor har redan lärt sig att koda genom denna plattform. Det är förmodligen fler människor än du trodde kunde koda i den här världen. Det är ett mycket bra ställe att börja. Här kan du lära dig HTML, CSS, Javascript, Jquery, PHP, Python och Ruby.

Coursera har över 1000 kurser tillgängliga. De flesta kurserna är gratis. Du kan även få intyg för några av kurserna om du betalar. Platsen har kurser från sådana berömda platser som University of Washington, Stanford, University of Toronto och Vanderbilt.

edX är en annan bra. Den här är öppen källkod så du behöver aldrig betala något. Den byggdes av Harvard och MIT redan 2012 och har växt sedan dess. Det finns över 60 skolor knutna till platsen idag. Så du vet att du kommer att ha omväxling och att vara i den blödande kanten. Du kan säkert göra värre.

Hur man lär sig

Det finns några viktiga verktyg som du måste vara uppmärksam på. Först och främst måste du bekanta dig med biblioteken för det programmeringsspråk du har valt. Det här är termerna och uttrycken som du måste förstå för att få datorn att göra vad du vill att den ska.

Ja, att förstå dessa bibliotek är lite som att lära sig ett annat språk. Lyckligtvis finns det en stor fördel med kodning som du inte kommer att ha någon annanstans och det är att uttrycken åtminstone delvis är på engelska. Detta betyder att du åtminstone kommer att ha några kopplingspunkter till din normala förståelse. Och tro mig, det kommer att hjälpa mycket.

Nu kan du redan börja experimentera, prova nya saker och utforska språkets olika aspekter. Med några riktigt grundläggande programmeringsartiklar kan du komma till rätta med språket du har valt.

Alternativt kan du börja titta på designmönstren i språket. Vad betyder det mystiska uttrycket? Det innebär att du tittar på några av de grundläggande lösningarna på de stora sakerna som varje programmeringsspråk behöver göra. Ja, du kan försöka ta reda på dessa själv – jag rekommenderar faktiskt att du provar åtminstone några av dessa eftersom det kommer att lära dig hur du tänker på ett programmeringsspråk och förstår grunderna. Som sagt, du vill inte lägga din tid på att uppfinna hjulet på nytt – särskilt eftersom ditt hjul förmodligen kommer att vara fyrkantigt i jämförelse med vad som redan finns där ute.

Läs rekursivt

Ett mycket viktigt sätt att lära sig läsa programmeringsartiklar är att läsa dem rekursivt. Det betyder att du läser en artikel som är informativ, tar alla termer som du inte förstår och googlar dem självständigt. Sedan läser du de artiklar som är mest användbara där och om det finns några termer som du inte känner till här, upprepar du processen. Slutligen, när du har förstått konceptet som du snubblat över, återvänder du till artikeln och fortsätter att läsa den.

Ja, det betyder att du ibland kommer att öppna dussintals olika artiklar för att komma till rätta med en artikel, eftersom en term leder till en annan och så vidare. Saken är den att allt eftersom tiden går och du märker att du vet mer och mer, kommer du att märka att detta händer mindre och mindre. Dessutom blir din förståelse mycket mer komplett och holistisk än om du bara läser saker utan att förstå allt som presenteras.

Varför behöver man en sådan holistisk kunskap, frågar du? Varför kan du inte bara skumläsa programmering som du gör allt annat? Av en mycket specifik och viktig anledning: med andra områden kan du, om du inte förstår detaljerna i ett koncept, komma undan med det, antingen genom att skvallra vagt eller undvika att prata om det.

Det är inte möjligt i programmering. I programmering behöver du faktiskt förstå alla aspekter. Om du inte gör det kan du skriva mycket ineffektiv kod, eller ännu värre, oavsiktligt introducera svagheter i din kod som gör den mottaglig för hackning eller kraschar. Det betyder att du inte kan komma undan med att bara kringgå något du inte vet. Du måste bita ihop och ta itu med varje koncept direkt.

Slutsats

Oavsett om du lär dig programmering för att tjäna pengar, för att få en bättre insikt i hur din sida och ditt företag drivs, för att kommunicera bättre med den som hanterar din sida eller för att spara pengar genom att programmera aspekter själv, fördelarna att lära sig programmera är enorma.

Du kommer inte bara att kunna skriva din egen kod, utan du kommer att kunna bättre förstå vad datorvärlden betyder och varför den fungerar som den gör. Datorer är inte människor – ja det låter vansinnigt, men du inser inte den fulla innebörden av det uttrycket förrän du förstår logiken och mekaniken i några programmeringsspråk. Därifrån kan du sedan veta när något är skumt, vad som är möjligt, och när någon låtsas att något är svårt när det i sanning är en piece of cake.

Dessa är alla oerhört användbara färdigheter att besitta. Och allt du behöver göra för att få dem är att sätta dig ner och investera några timmar i veckan på att lära dig ett programmeringsspråk. Fördelarna överväger med andra ord vida kostnaderna, håller du inte med?

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More