Denna vecka har det handlat om att bara nöta lite grundkunskaper och försöka skapa någon webbapplikation. Kod har skrivits, kod har testats och kod har fungerat men än finns inget resultat att visa upp.
Motivation har varit en bristvara denna vecka. Med mycket annat att göra så har det varit svårt att få sig tid och ork till att knacka kod, men lite har man hunnit med. Det största problemet har varit idétorkan som härjat. Har försökt leta inspiration men inte funnit något vettigt. Vad är det jag ens letar? Jo, någon webbapplikation att skriva. Har ingen större lust att göra en blogg, ett forum eller en (ny) gästbok. Jag vill ha något nytt, något nyskapande, något… Spännande. Detta kan låta löjligt men jag tycker att det är en viktig del för att man ska vilja koda. Att göra nyskapande saker låter en utvecklas på ett annat sätt än annars och det gör verkligen kodandet roligare. Till nästa vecka ska jag försöka hitta något att göra och börja på det men mer än så vet jag inte just nu.
Jag har nu efter mycket om och men gjort klart min första Djangoapplikation!
Slutsatserna jag kan dra efter det är att Django är inte så enkelt och underbart som jag först trodde. Detta är dock helt i linje med djangobook.com när de räknar upp saker Django inte gör:
- Feed your cat.
- Mind-read your project requirements and implement them on a carefully timed basis so as to fool your boss into thinking you’re not really staying home to watch “The Price is Right.”
Dock tror jag att Django, likt mycket annat, kommer att bli enklare och enklare att hantera ju mer man använder sig av det.
Inget riktigt inlägg för denna vecka men bara lite kuriosa. Django uttalas tydligen “zhane-go” och inte alls som vi har uttaladet det, det vill säga precis som det stavas. Jag fann detta när jag satt på sidan Python Web Development with Django.
If I continue to pronounce it ‘da-zhane-go’, please correct me. It is just ‘zhane-go’.
Django is named after Django Reinhardt a gypsy jazz guitarist from the 1930s to early 1950s.
En vecka med mycket gjort men lite synlig framgång. Har denna vecka sysslat med att sätta in mig djupare i grundläggande användning av Django. Det har resulterat i att jag har börjat skriva en egen sorts introduktion eller genomgång av några delar i Django. Det jag skrivit om denna vecka är “models”, “views” och “templates”. Varje del innehåller kort om vad respektive del är samt en kort genomgång (med exempel) om användning. Den kommer tyvärr inte att publiceras denna vecka utan först i början av nästa (vecka 47) då ytterligare delar har skrivits till (användning av “forms” samt eventuellt någon annan del) samt den hela har lästs igenom och rättats till på de ställen där det behövs.
Denna veckas arbete har känts mycket, mycket, mycket givande. Det har verkligen hjälpt att skriva introduktionen då jag har lärt mig massvis under processen och dessutom börjat förstå tänkandet bakom Django. Har verkligen börjat förstå kraften och samtidigt lite av enkelheten. Just nu känns det som om projektet går bra fram och stora hinder har försvunnit långt bakom en. Ett plus ett är inte längre lika med tre.
Vad är det som händer? Ja, det kan man fråga sig. Jag har suttit nu några kvällar och försökt få någon ordning på min första Django”applikation”, men den bara jäklas med mig, och intrycket jag hittills har fått av Django är att det är avancerat, väldigt avancerat. Jag trodde att Django skulle vara som en dans på rosor jämfört med PHP, men det har snarare visat sig vara en dans på taggtråd (ganska obekväm).
Som exempel tar det en viss tid för förändringar att faktiskt ta någon effekt, speciellt i de s.k. templates man skapar (mallar för hur de genererade sidorna kommer att se ut), men det tar även tid att uppdatera views. Detta beror säkert på någon slags cachning eller liknande, men när man sitter och utvecklar och prövar sig fram litegrann är det oerhört irriterande att behöva “vänta” tills Django har cachat om sidan.
Databaskopplingen verkar också vara lite lurig. Jag har med hjälp av administrationssystemet fört in lite data i min applikation, närmare bestämt två poster. När jag laddar om sidan som ska visa posterna syns ibland bara den ena, medan man oftast ser båda två. Skumt?
Nä, hittills har jag inte fått ett så bra intryck av Django. I början var det krångligt och avancerat att konfigurera, nu visar det sig också vara svårt att använda. Hoppas inlärningskurvan mattas av lite..
Under vecka 45 så har det handlat om att få lära sig grunderna i Django. Att lära sig om databashantering och användning av mallar (templates) har varit de mest dominanta ämnena denna vecka. Det som har då gjorts är en gästbok, eller en shoutbox som jag vill kalla det, som kan hittas här. Den saknar felhantering och finare utseende men tanken finns där. Det går att skriva meddelanden samt redigera/ta bort dessa genom det automagiskt genererade administrationssystemet.
Det jag gjort denna vecka har känts totalt hopplöst och oförståeligt. Jag har verkligen förstått lite av det jag gjort denna vecka och det har varit verkligen väldigt svårt att få saker och ting att fungera. Antar att det hela beror på att tankesättet i Django är till mig förvirrande samt att jag inte är insatt nog i hur man gör grundläggande saker. För att få bukt på detta så kommer jag att ägna nästa vecka åt att försöka lära mig och förstå saker som att hämta data från en databas, att lagra ny data i en databas, att ändra data i en databas samt felhantering/felkontroll av data från användaren. Det enda som har varit positivt på pythonfronten denna vecka är mitt andra projekt som handlar om att göra ett chattprotokoll med klient och server. Stora framsteg har gjorts där och mycket har jag lärt mig om att arbeta i Python. Nåväl, förhoppningsvis så kommer boken vi beställt inom kort och förhoppningsvis så kan den ge mig klarhet.
Det vi ska göra under de kommande tre-fyra veckorna är helt enkelt att bekanta oss mer med Django. Boken kommer förhoppningsvis nästa vecka (om den är beställd?), annars kommer den förmodligen nästnästa vecka.
Om vi ser i ett lite längre perspektiv tänker vi oss att det tar ungefär fram till jul att lära oss Django någorlunda, så vi kommer att fokusera på det fram till jul. Efter jul kommer vi börja bygga aktivitetssidan. Saker att fundera på tills dess:
- Innehåll och funktioner
- Ska vi använda oss av något versionshanteringssystem?
- Databasdesign – vad ska lagras var?
En vecka av lov och projektarbete har rusat förbi. Denna vecka har det handlat om att försöka få servern att fungera rätt så att vi har kunnat få börja arbeta med Django samt att få det smidigt att skapa nya djangoprojekt. Detta har dock misslyckats fullkomligt. Ingenting vill fungera som det är tänkt och att ha igång flera sidor i Django samtidigt verkar vara en omöjlighet. Det enda jag har fått att fungera är utvecklingsservern som följer med Django men den är endast till för just utvecklingen av sidan och inte på något sätt och vis för visning av sidor till den stora massan. Det som då skall göras för att en gång för alla få saker och ting att fungera är att jag ska början om från början med konfigurationen och att erfaret folk skall kontaktas.
Denna vecka har då varit en tur igenom helvetet då det gäller projektet. Ett antal timmar har lagts ner men utan något vettigt resultat. Det enda som har varit positivt är den lilla glimt av Django jag fick då jag satt och provade utvecklingsservern. Utifrån vad jag såg så verkade det vara mycket trevligt att arbeta i men samtidigt en del ologiskt. Förstod bland annat inte varför mallarna (templates) måste vara i en annan mapp än allt annat, det gör bara allt jobbigare känns det som. Läste något om att det är av säkerhetsskäl men jag förstår inte riktigt vad man kan få ut för viktig information av att titta på filerna. Att arbeta i Django blir nog ett stort steg från den vanliga programmeringen jag är van vid. Tänkandet känns som om det är helt annorlunda och totalt ologiskt. Blir nog mycket grubblande över hur de har tänkt då de gjorde detta och hur man gör något som smartast. Eftersom det finns färdigskriva funktioner till nästan allt i Python så blir det nog en fördel att vara väl påläst om dessa så att man inte skriver sig en bunt kod helt i onödan.
Nästa vecka kommer den riktiga introduktionen till Django och mitt personliga mål då blir att skriva en simpel gästbok.