Mustig Uppdatering ^4.2.0
Här följer nu en mustig uppdatering version ^4.2.0 (ja, mustig uppdatering 6 blir självfallet ^6.9.Nice) där det har hänt en hel del. En hel del har hänt då både Projektledningskursen och JS-ramverkskursen börjar närma sina slut. Jag har varit på mitt första IT-mingel-evenemang, och jag har gått och blivit med webbhotell?!
Projektledningskursen närmar sitt slut
Den hemskt men matnyttiga projektledningskursen börjar närma sitt slut. Jag har - vilket jag skrivit i en Discord-grupp - lyckats tagit mig upp trots att jag ej annars orkat för att arbeta med min tilldelade projektgrupp. Vi har nu fått vår "Projektplan" rättad och godkänd (Uppgift 2a Grupp) och vi har redan lämnat in både Uppgift 2b Grupp och "Slutrapporten" (Uppgift 3c Grupp). Uppgift 2b Grupp är själva arbetet och all kringliggande projektdokumentering.
Vad beträffar själva arbetet i projektledningskursen så är det bara en hemsk Figma i tre olika skärmstorlekar med simpel Prototype-navigering med tre olika Flows (en för varje skärmstorlek) där du då kan simulera att du loggar in på ett e-sparkonto för att se över din ekonomi. Du möts med tre olika alternativ som du kan klicka/trycka vidare dig till inuti Figma.
Det hela gjordes färdigt på typ två projektgruppmöten sammanlagt cirka 5-6 timmar allt som allt. Nu den 20:e oktober 2023 har vi "redovisning" där vi ska "demonstrera" arbetet i den utsträckning det går. Och sedan blir den uppgiften - 2b Grupp - godkänd förhoppningsvis. I Uppgift 3c Grupp så skrev vi själva slutrapporten vilket vi redan har lämnat in i förrgår så den är inlämnad innan demonstrationen.
Så i projektdokumenteringen vilket är ett Google dokument så står det att vi redan har betat av alla projektfaser trots att vi egentligen inte har gjort det. Vi har tagit ut seger i förskott skulle man kunna säga. Hursomhelst så för detta oss till vad vi verkligen känner för just denna kurs...
Flera håller med: inte så givande kurs trots allt
...Flera i min klass känner verkligen att man egentligen inte har lärt sig något om traditionell och/eller agil projektledning mer än vad vissa har lyckats lära sig via sina tidiga intervjuer med IT-inriktade projektledare. Samma sak gäller för mig. Jag upplever inte att jag lärt mig så mycket faktiskt projektledning mer än den jag har fått bedriva sedan Discord-gruppstarten och i gruppen där jag också tog mig på projektledarrollen.
Vår grupp hette "De sinnesslöa" för jag tycker det ordet är så onödigt roligt i hur "tunt" det låter vid uttal samtidigt som dess innebörd är synonymt med ett mycket mer känsloladdat ord. Om jag ska reflektera över det "Projektledarskap" jag har haft i Discord-gruppen som jag skapade den 28 augusti 2022 om jag minns rätt så har jag gjort vissa misstag.
Exempelvis har jag råkat tagit bort vissa Discord-kanaler då jag tänkte att kurserna nu är över efter kompletteringstiderna löpt ut. Men då glömde jag bort - klantigt egoistiskt nog - att vissa inte ens hann färdigt med kompletteringarna och då gärna hade tagit del av dessa kurskanaler nästa år när jag lämnar över rodret till någon eller några andra som vill fortsätta bedriva Discord-gruppen trots att jag tror att många kommer att lämna den efter avslutad distansutbildning.
En bra sak jag har gjort med Discord-gruppen sett ur projektledningsperspektiv är att jag har försökt hålla det demokratiskt genom att Discord-gruppen höll en simpel "omröstning" om en kursdeltagare skulle få vara med trots att denna kursdeltagare inte är med i vår årskull utan bara en som behöver gå denna kurs och komplettera en till för att kunna ta examen i samma Webbutvecklingsprogram som vår årskull går.
Vad gäller Projektledning så hörde jag från en i klassen som berättade om sin projektledarintervju där en tungviktare till projektledare (över 20+ års erfarenhet) berättade om att det är viktigt att kunna "sparka projektmedlemmar vid behov" för att ett givet projekt inte ska riskeras över potentiellt inkompatibel projektmedlem helt enkelt.
Detta kan låta "hemskt" ur ett perspektiv. Men denna intervjuade projektledare (ej den jag intervjuade) sade då att många gånger så arbetar projektmedlemmar med fler arbetsuppgifter på företaget än enbart projekten de är tillsatta i. Projektledningsteori tolkar jag - återigen - delvis som väldigt "idealiserande" och "förenklat" på många sätt och vis. Exempelvis som att projektledning som arbetsform skulle kunna vara helt åtskild från kärnverksamheten vilket denna projektledare menar på sällan är fallet. Mycket går in i varandra. Det är komplext och kan ändå gå ihop trots allt det!
Så... inte alla i den virtuella klassen är "nöjda" med denna kurs även om ämnet i sig är matnyttigt att kunna. Om jag minns rätt så är läraren inte ens tänkt att vara denna lärare utan den faktiska läraren är föräldraledig så någon som samtidigt skriver en doktorsavhandling har fått till uppgift att vara vår lärare i denna kurs. Inte nödvändigtvis det bästa upplägget. Men som det sägs på engelska:"It is what it is."
Moment 3 äntligen rättad - Sälen uppskattades!
Moment 3 i JS-ramverkskursen har nu rättats trots att jag trodde det skulle ha rättats redan förra veckan. Det började rättas denna vecka istället så den blev rättad igår. Läraren uppskattade min säl jag hade lagt upp som visas när 404-sidan visas:
Jag har ett liknande "påskägg" för slutuppgiften i JS-ramverkskursen där istället ett annat djur kommer att visas när 404-sidan visas. En sak i Laravel här som jag stör mig på för att jag inte löst det är att det verkar inte finnas någon "catch-all-route" att sätta utan istället skickar Laravel med världens längsta respons utöver message-sträng. Jag hade önskat att bara få skicka med en simpel "message"-sträng om att:"API-anropet är ogiltigt. Här är en bild på ett djur istället!".
Både kalla och varma fötter i "Par-programmeringsprojektet"
På tal om slutuppgiften i JS-ramverkskursen så berättade jag från förra uppdateringen att jag hade hoppat in för allra första gången i "par-programmeringsprojekt" i den utsträckning att vi nu är två personer som arbetar i samma kodbas i form av två Collaborators på tilldelad GitHub Classroom från lärarna.
Vi får då synka och ibland gnäller Git Explorer i VSCode att någon inte kan commit&push utan den måste pull&push typ. Vi har dock inte stött på någon merge conflict ännu vilket kanske är tack vare att vi är noga med att inte sitta i samma filer. Sistnämnda ska dock kanske vara möjligt ändå så länge vi båda bara lägger till kod och inte att någon tar bort kod som den andre har kvar i sin version? 🤔
Varför har jag då både varma och kalla fötter? Jo, för att samverka i samma kodbas har ibland lett till att den ena personen måste delvis "justera" - eller vad man diplomatiskt ska kalla det för(?) - den andres kod då den andre kanske hade ändrat något eller inte tillräckligt testats en kod. Exempelvis gör jag något och testar så att alla API-anrop fungerar och alla felmeddelanden visas på frontend.
Den andra personen hoppar in och lägger till något i samma fil och av någon anledning så har detta nu påverkat min koddel i samma fil utan att den andra personen upptäckte eller testade tillräckligt innan commit. Så då får jag tillbaka en delvis "trasig" kod vilket varit smått störande, men absolut inga "allvarligheter" eller "dålig stämning" på grund av det. Utan endast smått tillfällig frustration som sedan gått över efter att det "justerats" som det så fint heter.
Det har varit och är fortfarande en nyttig erfarenhet att arbeta med samma kodbas och behöva hantera sådana här saker, och förbereda sig inför verkligheten där delade kodbaser med flera utvecklare med kanske flera olika ambitionsnivåer ska samverka på ett sätt där den gemensamma kodbasen kan växa med minimalt antal buggar/"unwanted features".
Som det ser ut nu i Slutuppgiften i JS-ramverkskursen så kommer vi att bli färdiga med den troligen i slutet på denna vecka trots att senast inlämningsdatum är 29 oktober 2023. Det vore underbart om jag kunde bli färdig med båda Slutuppgifterna för kurserna och då bara behöva arbeta med Stockholmskunden varje vecka för att sedan "ta ledigt" och spela igenom kommande Super Mario Wonders på Nintendo Switch!
Mitt första IT-mingel-evenemang(?)
Idag när jag skriver denna uppdatering så var jag på ett lokalt IT-mingel-evenemang eller vad jag ska kalla det för? Det var mingel, ett slags evenemang med talare från olika företag, och det var IT-inriktat, så fungerar namnet då? Hursomhelst så hade jag - som jag beskrev det i en Discord-grupp - "lika tur som Alexander Lukas från Kalle Anka" då jag anlände dit nervös som den introvert jag är.
Jag är den introvärt som måste bli varm i kläderna innan jag framstår som extrovert. Och samtidigt "laddar jag batterierna" genom att få vara för mig själv, möjligen med husdjur då. Väl på plats runt 11-tiden så gick jag och drygt ett dussin till in på en gammal byggnad i lokala stan här där jag inte satt min fot på sedan nästan tio år sedan då det då var en klubb och bar.
Vi gick ut på en utomhusterrass med inglasat tak och senast jag var så var jag minst sagt berusad och inte så nykter som jag var idag. På tal om det där med introvert så tänkte jag att om lunchen ingick så ingick väl drycken också? Jag såg att öl fanns, nåja, lättöl i form av mörk lager. Men bättre än ingenting tänkte jag!
Jag satte mig då nära vid en projekt som hade alldeles för hög belysning så kontrasten blev alldeles för hög så det som var ljust från inkopplade datorer blev svårt att se. Väldigt illa ur "Webbanvändbarhetssynpunkt" om man säger så! Där jag satte mig så satt jag helt själv för jag kom dit själv, representerade den virtuella klassen på helt egen hand.
Nu hände "Alexander Lukas"-händelsen: Två personer kommer fram och frågar om de kan sätta sig ned vid mig vilket de självfallet kan. De sätter sig ned och efter ett tag så börjar jag bli varm i kläderna så jag kan prata mer med dem. Då visar det sig att en av dessa är ingen mindre - i egen hög person - än den självaste faktiska IT-konsultchefen vid samma företag där jag var och intervjuade en projektledare vid från förra veckan! Det kändes riktigt "tur" att jag fick sitta bredvid just den nyckelpersonen i och med det kommande ex-arbetet nästa år.
Denna person informerade mig dock om att det redan hade kommit in förfrågan hos denne och att det var rätt dåligt om platser för just webbutvecklare vid detta företag just i staden där jag bor och hade tänkt att göra mitt examensarbete i. Jag kontaktade dock denna person senare idag via LinkedIn och meddelade även en annan nyckelperson från den Discord-grupp som hade tipsat mig om detta evenemang vilket jag återigen tackar allra ödmjukast för! o7
Jag passade även på att tacka själva Discord-gruppens existens då utan den så hade ovanstående händelse aldrig ha inträffat och jag vet inte vart heller jag hade varit någonstans med projektledarintervjun som faktisk blev av. Hade den blivit av eller hade jag försökt skriva ihop något med hjälp av chatGPT3.5 på grund av mitt personliga missnöje med just denna projektledningskurs och inte själva ämnet i sig?!
Jakten på en plats för Självständigt arbete - "ex-arbetesplats"
Då är vi vid "Slutbossen" av Webbutvecklingsprogrammet på distans vilket är just det Självständiga arbetet som också kallas för "ex-arbetet" vilket jag trodde var att jobba på en före detta arbetsplats! xD Här så har jag alltså slängt ut en så kallad "intresse-krok" samtidigt som jag indirekt har uppmanats om att inte lägga alla ägg i en och samma korg.
Jag ska därför söka mig till andra platser här i stan där det också finns andra IT-bolag i hopp om en givande plats för både mig och där jag kommer att genomföra mitt Självständiga arbete vid. Förhoppningen jag har är att få ta fram åtminstone någon del i någon del av ett verkligt projekt även om det troligen är högst osannolikt på grund av min "juniora erfarenhet" då om ens det.
På tal om "junior vs senior" så har jag aldrig förstått varför just "junior" beskrivs på YT-kanaler om programmering som om de inte kan något. "Newbie" eller "Beginners" är ju mer korrekt då. Dessutom kan "senior" misstolkas som om dessa programmerare är "fulländade" vilket är den värsta sortens människor att ha med att göra: de som tror att de störst, bäst, vackrast, eller åtminstone redan kan allt inom sitt primära yrkesområde. Eftersom de redan kan allt, så finns det ingen anledning för dem att ta sig till något nytt och de kan inte heller erkänna brister eller fel eftersom det skulle gå emot deras självbild om "perfekta fulländning".
Att aldrig kunna ha fel innebär att du aldrig kan lära dig något nytt, tänker jag.
Det är därför jag haft en tråd om "titlar" inom programmering och att jag ser mig själv som en kodare och inte programmerare för jag tycker att kodare är mindre "tung titel" och därmed också mer ödmjukt då jag faktiskt inte kan något riktigt tekniskt inom datorer och IT. Jag kan räkna binärt (0=0, 1=1, 10=2, osv), men jag förstår mig inte på minneshantering i datorer, då jag inte behöver hålla på med sådant inom de programmeringsspråk jag använder.
Fördelen med den självödmjukheten och kanske även till viss mån "självnedvärderingen" är att jag är då öppen nog för att kunna ta mig till ny information för att bli bättre och få mer "XP" som blivande "junior-webbkodare". Frågan är då: Hur många XP behövs innan jag utvecklas till "senior-webbkodare"? Är det möjligt här att vi ser en allvarlig problematik med den premissen?
"Jag har gått och blivit med webbhotell"
Det faktiska domänet är annat. Det får upptäckas "organiskt" förr eller senare...
Vissa går och blir gravid och med barn, andra går och blir med webbhotell. Jag hade egentligen tänkt att införskaffa/investera i ett webbhotell redan i augusti månaden men det blev inte av förrän slutet på september istället. Nu har jag ett webbhotell investerat för ett år med tre, snart fyra, kopplade domäner till.
Här fick jag lära mig grundläggande om DNS:er och allt som det innebär. Tydligen så är det som så att namnservrarna för ett domän berättar då vilken "domänkatalog" som vet var ett domän finns. Så jag har ett par svenska domäner via Loopia vars namnservrar är ändrade till webbhotellets namnservrar. På så vis så "berättas" webbläsarna om för att domänet och dess förknippade IP-adress som letas återfinns hos följande namnservrar - alltså hos webbhotellets namnserver.
Det går då dit. Men! Det är inte färdigt ännu, trodde jag. Jag trodde att om jag bara ändrade namnservrar där så skulle det lösa sig. Jag gick sedan in i filsystemet för mitt DirectAdmin-shared hosting-konto (även denna bit med alla olika varianter av shared hosting-mjukvarulösningar är en djungel i sig) och skapade en mapp under "domains" och trodde att det skulle räcka.
Men nepp! Domänet hittar inte rätt. Utan jag behövde göra en sak till. Jag hade till och med överfört ett domän från Loopia direkt till webbhotellet och ändå behövde jag göra denna extra sak till. Vad för sak? Jo, jag behövde gå till "Domain Management" i mitt DirectAdmin-konto och lägga till domänet så visste nu webbhotellets namnservrar inte bara vilken IP-adress (jag köpte en unik i samband med webbhotellet) som den ska peka mot utan också vilken undermapp i "domains"-mappen.
Så tänker jag att det "på ett ungefär" fungerar med hur domänet via DNS:er kan hitta till rätt public_html-mapp i rätt domains-undermapp under rätt IP-adress bland alla DirectAdmin-konton som finns hos webbhotellet. Det är som sagt var en hel djungel i sig och som jag påpekat flera gånger under detta distansbaserade Webbutvecklingsprogram: vi har inte fått lära oss något anmärkningsvärt mycket om just deployment- & maintenance-biten!
"Använd Netlify eller ladda upp på student-ftp:n" är typ det som har lärts ut om det ens är att kalla det för att lära ut. I nuvarande JS-ramverkskurs är det inte ens krav på att behöva ladda upp utan bara det fungerar via localhost. Tanken är att vi ska inte behöva betala för vår distansutbildning (i och med att Heroku nu kostar pengar annars hade Laravel laddats upp). Samtidigt läser jag att Laravel ska kunna installeras på ett DirectAdmin-shared hosting konto efter lite .htaccess-magi även om det inte rekommenderas alls.
Därför framstår ovanstående mer som om jag är en "Fullstack-localhost-utvecklare" än en faktisk "Fullstack-webbutvecklare", eller hur?! 😜
På återseende - som vanligt, i framtiden!
Mvh,
WKL.
---------
✔️Kurs 1: (B) HT2022 DT057G Datateknik GR (A), Webbutveckling I, 7,5 hp (distans)
✔️Kurs 2: (A) HT2022 DT084G Datateknik GR (A), Introduktion till programmering i JavaScript, 7,5 hp (distans)
✔️Kurs 3: (A) HT2022 DT068G Datateknik GR (B), Webbanvändbarhet, 7,5 hp (distans)
✔️Kurs 4: (B) HT2022 DT200G Datateknik GR (A), Grafisk teknik för webb, 7,5 hp (distans)
✔️Kurs 5: (A) VT2023 DT093G Datateknik GR (B), Webbutveckling II, 7,5 hp (distans)
✔️Kurs 6: (C) VT2023 DT003G Datateknik GR (A), Databaser, 7,5 hp (distans)
✔️Kurs 7: (A) VT2023 DT197G Datateknik GR (B), Webbdesign för CMS, 7,5 hp (distans)
✔️Kurs 8: (A) VT2023 DT173G Datateknik GR (B), Webbutveckling III, 7,5 hp (distans)
🚧Kurs 9: (Slutuppgift Pågår) HT2023 IK060G Informatik GR (A), Projektledning
🚧Kurs 10: (Slutuppgit Pågår) HT2023 DT193G Datateknik GR (B), Fullstack-utveckling med ramverk