Annons
Färdiga programmerare har varit efterfrågade i flera år nu, och det ser inte ut som att efterfrågan är på väg att minska när som helst snart. Men även om du inte har för avsikt att tjäna pengar som professionell programmerare kan du lära dig hur du kodar på ett bra sätt kommer att vara praktiskt i alla datorrelaterade jobb - även som chef. Men om du läser detta, borde jag förmodligen inte behöva berätta varför det är bra att bli kodare. Du vet redan, och jag antar att du vet något annat också - det är inte lätt.
Att behärska konsten att programmera tar tusentals (ja, tusentals) timmar. Ändå, om du tillbringar dessa timmar väl kommer du dit förr (och ha roligare på vägen). Här är några idéer som du kan tänka på och kanske prova på din väg till att bli en kodare.
Lös ett riktigt problem
Teori är tråkigt. Så är teoretiska problem oftast. Om du bara lär dig hur du kodar för att tjäna lite pengar, ja, jag är inte säker på hur bra det kommer att fungera. Men om du har en verklig passion för att bygga saker, gå
bygga dem. Så den första frågan du antagligen bör ställa dig själv är "varför vill jag lära mig det här?”Om det svaret är"att göra något“Tja, gör det. Den goda nyheten är att det första steget inte kräver att du vet hur du kodar något: Du måste bara skriva (och helst skissa in) hur skulle den saken se ut. Vad är applikationen du saknar? Vilket verktyg finns inte, men du behöver verkligen?Det som är trevligt med den här metoden (även känd som ”skrapa din egen klåda”) är att ditt projekt inte behöver vara grandiosa. Du kan börja med något riktigt litet, bara skapa ett enkelt verktyg. Men oavsett vad det är, borde du bry dig om det. Det första jag någonsin skrev i Ruby var ett personligt projekt som jag har hållit på med i flera år och som aldrig har släppt ut för världen. Jag är fortfarande väldigt stolt över hur det kom ut, och mycket av det jag vet om Ruby (inte Rails) kom från det projektet.
Börja med information på hög nivå
Ja, jag har tagit fram en specifik bok här. Nej, O’Reilly betalade inte mig (eller MakeUseOf) något. Det är bara så bra. Jag gör det nästan aldrig genom en bok om programmering, men Kod Enkelhet höll mig fascinerad hela vägen igen. Det är en bok om konsten att programmera, med nästan ingen kod i den. Du behöver inte veta ett programmeringsspråk för att förstå det. Det täcker saker som det grundläggande skälet att till och med programmera allt (för att hjälpa människor!), När bör du introducera nytt funktioner i din applikation, när du ska optimera din kod (och vad som är för tidig optimering) och mycket annat bra grejer.
När du är klar med den här boken (eller en annan bok som den, om du hittar en), kommer du att vara på en mycket bättre plats att bedöma dina framtida studier.
Välj din teknik noggrant
Ska du koda ditt första projekt i en upprätt ANSI C? Om du inte har ett mycket specifikt skäl är svaret på det "förmodligen inte". Bra kodare vet hur man kodar, snarare än ett specifikt språk - de kan lära sig vilket språk de behöver för ett visst projekt på kort tid. Men att göra detta för första gången är inte så lätt, eftersom det inte är det språk du måste behärska, utan generalen programmeringskoncept (programlogik och flödeskontroll, variabla typer och scoping, objekt och allt detta bra grejer). Så du bör definitivt spendera lite tid på att tänka på vilket språk eller teknik du vill koda i.
Detta kommer efter att du har valt ditt projekt, eftersom när du vet vad du försöker göra kommer du att begränsas till en smalare delmängd av möjliga tekniker. Du kommer till exempel inte att koda en inbyggd iPhone-app i Ruby on Rails. Men om du kodar för webben, det finns ungefär en zillion olika språk du kan använda, var och en med många olika ramverk. PHP, Python, Ruby, Go, och listan fortsätter.
Spendera tid på att undersöka vart och ett av alternativen - vilken typ av samhälle har den? Hur lätt är det att få stöd? Finns det bra gratis utvecklingsverktyg för det? James behandlade detta ämne i en annan artikel, kallad Vilket programmeringsspråk ska du lära dig för mjukvaruutveckling? Vilket programmeringsspråk ska du lära dig för mjukvaruutveckling?När du börjar med programmeringsvägen är det viktigt att du investerar din tid klokt i att välja att lära dig något som båda kommer att gynna dig i den omedelbara framtiden med synliga resultat på din plattform av... Läs mer .
Spendera inte mycket tid på att lära dig stora bitar av data
En gång tillbringade jag några veckor på en videokurs om PHP. Jag tror att det var 30 timmars video eller något galen som det. Känner jag PHP nu? I helvete heller. Jag menar, jag kan läsa en del av koden, men jag skulle säga att dessa timmar var ett slöseri med tid. Att försöka klämma så mycket kunskap i följd utan kodning fungerar bara inte. För mig är noggrant lika dålig kodning av ett förprojekt som exempel, för det saknar en enorm del av lärandet. Jag gör mitt bästa lärande när jag försöker göra något jag bryr mig om (se ovan) och slumpmässigt stöter på problem. Lös ett problem du känner något om och du har lärt dig något nytt. Stirra på skärmen i 30 timmar och... väl.
Spendera tid på att ställa in din miljö
Precis som det finns många programmeringsspråk, finns det många utvecklingsmiljöer där ute för alla språk. Vissa använder en textredigerare som Vim (som jag rekommenderade i De 7 främsta orsakerna till att ge Vim Text Editor en chans De 7 främsta orsakerna till att ge Vim Text Editor en chansI flera år har jag provat den ena textredigeraren efter den andra. Namnlösa, jag försökte det. Jag använde var och en av dessa redaktörer i över två månader som min primära dagliga redaktör. På något sätt ... Läs mer ) eller Notepad ++ (som vi har visat dig hur du gör "Soppa upp" här Soppa upp anteckningsblocket ++ Texteditor med plugins från Notepad Plus-arkivet [Windows]Notepad ++ är en värdig ersättning för Windows inbyggda och mycket älskade textredigerare och kommer mycket rekommenderas om du är en programmerare, webbdesigner eller helt enkelt någon som befinner sig i behov av en kraftfull enkel... Läs mer ). Att välja en redaktör som passar dig är en mycket personlig process och det är bara början. Därefter måste du anpassa den med kortkommandon, färgscheman, plugins och mer.
Och det är bara en liten del av arbetet - att skapa en utvecklingsmiljö kräver att du installerar det språk du vill arbeta med, många kodbibliotek, ett versioneringssystem (som Git, som James förklarade här Vad är git och varför du ska använda versionskontroll om du är en utvecklareSom webbutvecklare, mycket av tiden vi tenderar att arbeta på lokala utvecklingswebbplatser bara ladda upp allt när vi är klara. Det går bra när det bara är dig och förändringarna är små, ... Läs mer ), och mer. Med andra ord, du har timmar med arbete innan du skapar miljön. Och vet du vad? Det är okej.
Gör bara dig en kopp kaffe eller tio och gå igenom den. Ha så kul. Lär dig känna ditt verktyg, precis som alla hantverkare känner till hans verktyg. Lär dig kortkommandona. Få den markeringen precis rätt. Ju mer bekväm du känner med dina verktyg, desto bättre skulle du kunna uppmärksamma din kod. Så det här är ett område jag inte skulle snåla efter.
Rush Yourself - Deadlines är din fiende
Vad du än gör, kom ihåg att du är här för att lära dig. Du har inte en tidsfrist. När frestelsen uppstår att använda en smutsig hack i din kod bara för att få den att fungera, gör det inte! Ta dig tid och investera omsorg för att ta reda på hur du gör det på rätt sätt. Ett slarvigt första projekt är bättre än inget projekt, men du lär dig mycket mer av ett projekt som du har designat och byggt med stor omsorg varje steg på vägen.
Ha tålamod och svett på detaljerna (när det gäller kodningstekniker och sätt att få saker gjort i kod).
Fråga frågor
Det är det fantastiska Stack Overflow som du kan se på skärmdumpen ovan. Det finns många andra språkspecifika forum på nätet, men oavsett vilken plats du väljer, var inte rädd för att ställa frågor. Om folk inte är trevliga, ta reda på vad du gjorde fel och lära dig att ställa bättre frågor (ett ämne för en artikel i sig, verkligen).
Om det inte går, hitta en annan gemenskap. Men oavsett vad, ställ dina frågor och lyssna på svaren. Att tacka människor för den tid de tog för att hjälpa er är också en bra idé.
Använd rymdrepetition för att behålla information
Detta sista tips är en kort - läs allt om Janki-metoden. Det är en absolut lysande sätt att bygga ett arsenal av alltid aktuell programmeringskunskap och behålla det på obestämd tid, inte i din dator, men i din hjärna där du behöver det. Allvarligt, läs det inlägget.
Slutgiltiga tankar
Lärande är en mycket personlig sak, så kanske inte alla dessa tips kommer att träna för dig. Återigen, kanske har du några andra beprövade som du vill dela.
Det viktigaste (för mig), jag skulle vilja veta om du kommer att använda något av dessa tips i din strävan att bli programmerare. Kommer du? Låt mig veta nedan.
Bildkredit: Gamla stora böcker via ShutterStock