Så var det dags att sätta sig i skolbänken. Tanken är att jag ska läsa kursen “RIA-utveckling med JavaScript, 2DV407” som inleds med ett orienterande blogginlägg. Deadline på inlägg numero cero är i kväll och som alla goda studenter sitter jag här och skriver ihop detta i sista stund. Ska man leva studentlivet så får man gå hela vägen. Den uppmärksamme ser också att jag tidigare försökt mig på att följa denna kurs, dock utan något vidare gott resultat. Denna gång ska definitivt bli annorlunda! Eller?
Om någon som läser detta mot förmodan inte vet vem jag är så arbetar jag som adjunkt på Linnéuniversitetet och undervisar främst inom klientsidetekniker så som HTML/CSS/JavaScript och då främst inom Webbprogrammerarprogrammet. En av de kurser jag varje år lägger mest kärlek vid är den kurs som är förkunskapskrav till denna kurs, nämligen Webbteknik I som är en grundkurs i JavaScript och DOM-hantering. Kursen har ett ganska klassiskt upplägg och grundar sig på litteratur från Zakas och Flanagan. Under de senaste åren har jag dock mer och mer fått upp ögonen för JavaScripts säregna natur och hur annorlunda och fascinerande språket egentligen är jämfört med de klassiska objektorienterade språken som Java/C++/C#. Jag har även tittat igenom presentationerna (om och om igen) kring funktionell programmering av Christian Johansson, Crockford och Jim Weirich och med detta verkligen fått upp ögonen för funktioner av högre ordning (higher order funktions). En stor förhoppning för mig är jag under denna kurs kan göra mig från c-bojorna som bakbundit mig i 20 års tid och kunna se enklare lösningar på problem när jag kan behärska JavaScripts verktygslåda fullt ut.
Jag har redan tidigare plöjt igenom Resigs Learning Advanced JavaScript och minns den som stundom självklar, stundom omkastande. Jag har inte hunnit gå igenom den på nytt inför detta inlägg, men tiden finns definitivt under nästa vecka. JS Scope Quiz satt dock som en smäck. Kanske tur det
Som förberedelse inför kursen och som en del i arbetet med grundkursen så har jag återigen gått igenom stora delar av Crockfords inspelade visdom och för varje gång jag ser dem får jag nya aha-upplevelser. Jag har även utökat min JS-bokhylla med nya titlar enligt kursens litteraturlista. Crockfords “The Good Parts” är redan sönderläst, Stefanovs “JavaScript Patterns” solblekt och förhoppningsvis kommer Zakas “Maintainable JavaScript” och MacCaws “JavaScript Web Applications” gå samma väg under de kommande tio veckorna.
Jag har också läst igenom de andra kursdeltagarnas bloggar och fått en hel del tips så som t.ex. podcasten JavaScript Jabber som det definitivt blir till att börja plöja igenom.
Jag har väldigt stora förhoppningar för de närmsta veckorna. Troligtvis allt för många för att alla ska kunna uppfyllas. Just nu vill jag bara slänga mig handlöst ut i allt. UnderScore, Require.js, Backbone, Sweet.js, TDD, CoffeScript….. Jag får troligtvis behärska mig och sålla bland nödvändigheterna. Men spännande ska det bli. Framförallt ser jag fram emot coachningen från David vad det gäller kodorganisation och min stora förhoppning är att hitta en klar röd tråd som jag sedan kan lyfta tillbaka och tillämpa i grundkursen.
Utvecklingsmiljö är något jag är fruktansvärt dålig på. Jag har under de senaste åren slängts fram och tillbaka mellan olika kurser, språk och tekniker vilket gjort att jag aldrig haft tid eller incitament till att sätta mig ner och arbeta fram en välfungerande utvecklingsmiljö. Just nu sitter jag både på Windows (jobbet) och OSX (privat). Jag sitter inte i OS X för att jag gillar det. Jag sitter i OS X för att jag känner att jag behöver lära mig båda världar för att kunna handleda studenter på bästa sätt. I denna kurs hoppas jag kunna strömlinjeforma min utvecklingsmiljö något och den, när jag tittar på studenterna, populäraste utvecklingsmiljön just nu verkar vara Sublime Text 2 (vilket bekräftas av ytterligare kurdeltagares blogginlägg). Jag har kört den ett halvår jag gillar den definitivt. Jag har dock inte haft tid att tweeka den med plugin etc. så det är också något jag tänker ägna nästa vecka åt.
Ytterligare ett mål som jag har är att försöka bemästra GIT. Jag kommer från en klassisk Microsoft SourceSafe-uppväxt och har sedan gått över till Subversion. Det är mer än hög tid att verkligen få kontroll över GIT. Vi har förövrigt stora tankar om att använda Git-hub mer i undervisningen och dessutom knyta och integrera GIT-hub mot CoursePress vilket ger ytterligare motivation för mig att bemästra det.
Nuf said. Jag vet att detta är en uppskattad kurs, och jag vet redan på förhand att jag inte kommer att bli besviken på supporten från David. Därför är allt upp till mig. Kör hårt alla blivande ninjor.