tillbaka till startsidan

11. Hur bygger man nått från grunden?

Lyssna på Spotify lyssna! Lyssna på iTunes

I veckans avsnitt snackas det om hur vi tar oss an uppgiften att bygga ett nytt projekt från scratch. Vi hinner röra vid allt från diverse olika approacher, hur gamla erfarenheter spelar in, värdet i oanvändbara projekt till skillnader mellan hobby- och jobbprojekt samt varför man ens skriver kod på fritiden ibland. Dessutom en kort repetition av Ohms lag och som vanligt ett högkvalitativt skämt från Therése!

Om du gillar podden blir vi väldigt glada för en liten recension i iTunes eller en prenumeration på Spotify. Följ oss och säg hej på @asdfpodden på Instagram eller Twitter (Anton, Therése) <3

Avsnittets skämt:

Hur övervintrar en programmerare?
I IDE.
Skrapa här!!
Transkribering
Transkriberingen är gjord av nån "AI-grej". Du kan förbättra den genom att klicka precis här :)
00:00:00
Hur övervintrar en programmerare?
00:00:03
Jag vet inte.
00:00:05
Idé?
00:00:06
Alltså...
00:00:07
Fan vad dåligt det här är.
00:00:12
Jag vet!
00:00:15
Alltså, jag vet inte. Jag skrattar ju, men...
00:00:20
Ja, men... Starkt levererat.
00:00:26
Tack, tack. Hej på dig med.
00:00:28
Hej!
00:00:30
Och hej till alla andra som lyssnar.
00:00:32
Därför har vi en ny avsnitt av ASDF.
00:00:34
I dag...
00:00:36
Ny miljö för oss i Berlin.
00:00:38
Vi sitter i en skrubbe på jobbet.
00:00:40
Ja, det är tajtare än vanligt.
00:00:42
Det är väldigt mycket tajt.
00:00:44
Så är det en massa missljud när vi rör på oss.
00:00:46
Så är det typ att vi river skrubben.
00:00:48
Vi får väl se hur det går.
00:00:50
Det står mycket bra saker här inne.
00:00:52
Ja, en rökmaskin och en karriär.
00:00:54
Det är väldigt mycket bra saker.
00:00:56
Ja, en rökmaskin och en karaoke-maskin.
00:00:59
Ja, spel.
00:01:01
Ja, det är mina spel.
00:01:02
Byggstavar.
00:01:03
Ja, rollspel finns i och för sig här också.
00:01:06
Och folks personliga lådor.
00:01:07
Ja, det finns lite jobbrelaterat också.
00:01:11
Ja.
00:01:12
Vi tänkte väl kanske...
00:01:14
Jo, jag fick en fråga på Twitter av...
00:01:18
Jag glömde fast namn, tyvärr.
00:01:21
Pelle, tror jag. Exakt.
00:01:23
och han frågade lite grann hur jag tar mig an nya projekt.
00:01:30
Alltså tar mig an att bygga någonting.
00:01:32
Jag tror frågan kanske mest har ställts om att bygga någonting från grunden, så vi kanske kan börja där i alla fall.
00:01:37
Jag tänker att du får börja.
00:01:41
Om du ska bygga någonting från grunden, vart börjar du?
00:01:45
Jag bygger väldigt sällan saker från grunden nu för tiden, om man ska vara helt ärlig.
00:01:54
Jag brukar börja med tutorials, eller snarare inblick i tekniken jag tänker använda.
00:02:04
Nu har vi redan valt teknik, men ofta om jag ska bygga någonting från grunden så är det nog för att lära mig någonting nytt.
00:02:12
Och för att lära mig något nytt, då vill jag ändå förstå vad det är jag ska hålla på med.
00:02:18
Och jag gillar tutorials. Jag är inte...
00:02:22
Jag vill säga att jag inte är så kreativ.
00:02:25
Det kanske inte stämmer. Men jag gillar att ha riktlinjer.
00:02:30
Så det blir mycket. Hitta något på Youtube. Kolla igenom dokumentation.
00:02:35
Göra deras "getting started" eller något. Vad det nu kan vara.
00:02:39
Så där börjar jag.
00:02:41
Och säg att det du ska bygga då, om det är någonting, säg att det är en helt egen idé du kommer på.
00:02:47
Och det finns liksom ingen tutorial på "så här bygger du det här".
00:02:51
Nej.
00:02:52
Hur angriper du det?
00:02:55
Jag börjar nog fortfarande med att lära mig teknikerna.
00:02:58
Det är inte så att jag behöver kunna bygga exakt det jag ska bygga i deras tutorials så.
00:03:03
Men jag måste förstå grundstenarna i tekniken jag ska använda.
00:03:07
Det är nog ganska likt hur jag tänker också.
00:03:11
Det är väldigt mycket så här, vad heter det, "command and conquer"?
00:03:14
Nej, "divide and conquer". "Command and conquer" är ett spelet.
00:03:17
Jag vill dela upp problemet i delproblem.
00:03:22
Som när jag byggde mitt, det här rita-gissa-spelet som jag pratat om i något tidigare avsnitt.
00:03:26
Då var det så här, okej, hur funkar realtidskommunikation?
00:03:32
Så hur funkar Websocket-spelet i alla fall, i och med att det är på webben?
00:03:36
Och då började jag bygga något enkelt, något litet med webbsaket via någon tutorial.
00:03:40
Och så följde man där och bara "Okej, nu har jag byggt det".
00:03:43
Och så kan jag säga "Vad har vi mer för problem? Hur gör man något som man ritar?"
00:03:47
Hur liksom... Hur får jag så att den kan rita något?
00:03:52
Och så följer man en tutorial på det och bara "Okej, nu har jag något man kan rita".
00:03:56
Och sen blir det mer och mer att man bygger på de här byggstenarna.
00:03:59
Så att man lägger ihop dem så att till slut får man en hyfsat ihophängande produkt.
00:04:04
Sen ska det också sägas att den här rita-gesa-grejen var det tredje gången jag gav mig på det projektet kanske från scratch.
00:04:14
Så då hade jag försökt en gång, byggde det väldigt ihophackat på en helg, inte alls stabilt. Gick inte alls att skala, gick inte alls att använda på fler sätt än att jag verkligen satt manuellt och startade och grejer.
00:04:30
Och sen blev det liksom att man lärde sig så mycket av det här, så då har man erfarenheter innan man börjar om från början igen.
00:04:36
Sällan har man motivationen att börja om från början igen, särskilt på hobbyprojekt liksom.
00:04:42
Men det gav ju också väldigt mycket för att få ihop ett så pass bra projekt som jag tycker det spelet är ändå.
00:04:51
Jag är ju inte så bra på att ro projekten i hamn, men jag kan tänka mig att det är så jag också skulle göra.
00:05:01
Hur får jag den här saken att fungera? Jag vill göra den här grejen.
00:05:07
Men mitt problem är oftast att jag försöker göra allting på en gång och inte gör det.
00:05:12
Så jag har en överblick av vilka delar jag måste lösa, så de är dividerade.
00:05:19
Men sen försöker jag lösa alla samtidigt.
00:05:21
Ja, jag fattar.
00:05:22
Och då blir det lite överväldigande.
00:05:25
Jag håller mig ofta till mantra att få det bara att funka.
00:05:32
Var det kul att jag sa där i början att jag är bra på att dividera?
00:05:38
Absolut inte. Jag tar tillbaka allting, förlåt.
00:05:40
Nej men väldigt mycket får det bara funka för att jag springer i förväg.
00:05:46
Ja men nu får jag det här optimalt, nu får jag det här och göra det här och nu måste jag lösa det här problemet.
00:05:51
Jag har fortfarande inte fått någonting som kör eller som funkar men jag försöker ändå lösa,
00:05:56
ja men hur ska jag deploya det här eller hur ska jag lösa det här steget så att jag springer i förväg.
00:06:01
Så att jag tror jag lite bränner ut mig själv.
00:06:04
Ja det har jag också upplevt lite grann i diverse projekt som man har byggt.
00:06:08
Särskilt när man styr allting själv. Det är skillnad på det man gör på jobbet och privat.
00:06:12
Men verkligen när man gör det privat, då är det liksom så här, jag är produktägare och kravställare och beställare samtidigt och utvecklare.
00:06:18
Och då blir det väldigt mycket att man liksom så här, okej, men jag vill bara få det här lille biten att funka.
00:06:24
Så vill jag att den ska hänga ihop med den här. Och så bara så här, jag vill ju se helheten direkt.
00:06:28
Även om helheten inte är perfekt. Vilket gör att det blir väldigt liksom mycket som du säger, som ska hända samtidigt.
00:06:35
Och så vill man lösa ett problem som var lite roligare än det tråkiga problemet som sabbar väldigt mycket mer egentligen.
00:06:43
Ja, jag håller helt med. Mitt senaste projekt, som jag inte riktigt har en definitionsfråga om jag har börjat eller inte på det,
00:06:52
men jag vill bygga ett gameshow-system.
00:06:55
Och där tänkte jag att jag ska bygga det med React, men sen vill jag också bygga fysiska buzzers,
00:07:00
som man ska bussra med, typ röda knappar i olika färger.
00:07:05
Och så vill jag att de här ska vara trådlösa.
00:07:07
Och så vill jag att de ska kopplas till datorn på vänster, så att man kan köra det här där.
00:07:11
Och tanken är väl att man ska bygga det här med Arduino,
00:07:16
alltså själva bussr-systemet liksom.
00:07:18
Och Arduino är typ så här, det är små mikrodatorer som man kan programmera med jättelåg nivåspråk.
00:07:26
Och så kan man löda ihop det själv och sätta ihop det och bygga saker.
00:07:30
Det är typ el.
00:07:32
- Jag är så här, det är som en Raspberry. Ja, det är inte bättre förklarat om man inte vet vad det är.
00:07:37
- Nej, men det är typ vad det är. Det är elektronik.
00:07:40
Och det har jag liksom pillat med någon gång innan. Aldrig riktigt lärt mig.
00:07:45
Men nu har jag tagit en annan approach. Nu går jag verkligen grunden upp.
00:07:50
Så nu har jag liksom pluggat ellära.
00:07:53
Jag har kört, nu orört sidospår, men jag har kört en app för Space Repetition, vet du vad det är?
00:08:00
Nej.
00:08:01
Det är ett sätt att försöka plugga in saker och komma ihåg dem för evigt, säger jag i situationstecken.
00:08:07
Ja, vadå som när man skapar minnesrum?
00:08:09
Ja, men typ. Fast i det här fallet går det ut på bara att du typ egentligen, från grunden så är det att du har ett kort som du tittar på
00:08:18
Och där står det kanske en fråga.
00:08:19
Och så kollar du, okej har du rätt på den frågan, då sätter du den i ett annat fack.
00:08:24
Och då är det facket liksom
00:08:26
varannan dag-korten.
00:08:28
Och det första facket är varje dag-korten.
00:08:29
Och då går du igenom alla så här, alla kort som ligger i varje dag-facket.
00:08:34
Går igenom varje dag.
00:08:36
Och svarar du rätt på dem, då sätter du dem i varannan dag-facket.
00:08:38
Och annars så fortsätter du
00:08:41
att plugga dem tills de hamnar i varannan dag-facket.
00:08:43
Och de går du igenom varannan dag?
00:08:45
Exakt. Och då hamnar de sedan, de som du svarar fel på, de hamnar i varje dag facket igen.
00:08:51
Så att du får glömma dem imorgon.
00:08:53
Och de andra hamnar i var fjärde dag facket.
00:08:55
Så då blir det lite längre tills det är deras tur.
00:08:59
Men så fort du svarar fel på något så hamnar de i första facket igen.
00:09:01
Har du gjort fysiska kort för det här?
00:09:04
Nej, jag har en app.
00:09:06
Det sa du.
00:09:08
Men jag har liksom fyllt i det här att såhär, okej, vad mäter man resistans i?
00:09:12
eller resistens, resistans, resistens kändes det som.
00:09:16
Vad, hur betecknar man ström?
00:09:20
Och massa såna här grejer.
00:09:22
Och hittills funkar det ganska bra.
00:09:24
Jag har lärt mig ganska mycket såna här,
00:09:26
väldigt mycket fakta liksom.
00:09:28
- Det var mycket, mycket gammal skolångest
00:09:31
som dök upp för mig där när du började.
00:09:33
- Kan du åmslag?
00:09:35
- Nej, jag har nog faktiskt kunnat åmslag,
00:09:37
men jag har nog förtränkt ganska mycket helt avsiktligt.
00:09:40
Det är U = R * I, vilket då är spänningen är lika med dansen...
00:09:49
Resistans * ström.
00:09:51
Exakt! Du tog det ju snabbare än mig, och jag har nyss pluggat på det här.
00:09:55
Men jag kan väl ändå variablerna för vad som är...
00:09:58
Vad? Att U och I är?
00:10:00
U är spänning, I är ström, R är resistans, tänker jag. Det kanske är helt fel.
00:10:06
Nej, det är rätt. Men jag är imponerad att du kan det.
00:10:09
- Då har du volt. - Ja, exakt. Och watt.
00:10:12
Och effekt hit och dit.
00:10:14
Ja, det är som sagt, tid och spår.
00:10:16
Men den approachen har jag tagit nu. Nu vill jag verkligen lägga grunden för att förstå det här.
00:10:19
För att jag känner att...
00:10:20
Lite för att när man håller på med elektronik så blir det liksom att...
00:10:23
Gör jag fel då, då kommer liksom prylarna gå sönder.
00:10:26
[Skratt]
00:10:28
Det blir liksom bara inte ett kompileringsfel som man kan fixa, utan...
00:10:30
- Det blir ett kostnadsfack. - Exakt.
00:10:33
Jag måste betala pengar för att fixa det. Det är liksom lite annorlunda.
00:10:36
Men det är ett ganska ambitiöst projekt, i min tanke i alla fall.
00:10:41
Så vi får se hur långt det kommer. Men det är liksom approachen jag tagit nu, att börja väldigt grundläggande
00:10:46
och sen arbeta mig uppåt.
00:10:47
Nu känner jag ju också att
00:10:50
visst att bygga liksom reakt-biten av det här, att liksom ha själva gameshow-biten
00:10:54
alltså de olika segmenten, det känner jag ju att jag kan också.
00:10:57
Så nu börjar jag väl med det jag verkligen inte kan.
00:11:01
Och så får man se vart man landar liksom.
00:11:03
Det kanske slutar med att jag köper in buzzers, helt enkelt.
00:11:06
Men jag tycker att det är kul att lära sig också.
00:11:09
Ja, men jag tror den här, alltså var man än slutar i projektet eller hamnar så...
00:11:16
Nu är det någon som tutar uteifrån, jag undrar om det hörs.
00:11:21
Men vart man än hamnar i projektet och när det tar slut så har jag ändå lärt mig någonting när jag drar igång, det känner jag.
00:11:29
Även om det bara är en tutorial och jag bara har touchat på ämnet så har jag ändå bekantat mig vad det är för någonting, vilka byggstenar det finns.
00:11:41
Jag vet att jag var på en workshop någon gång när de pratade om att har du bara skrivit "hello world" i ett språk så har du fortfarande lärt dig någonting.
00:11:50
Det spelar ingen roll att du inte har byggt ett fantastiskt projekt i det här utan du har lärt dig hur du ska kompilera någonting i det här språket
00:11:57
eller hur det funkar, vad du behöver för miljö för att klara av det du har lärt dig i massor.
00:12:02
Så jag försöker vara lite utifrån den devisen.
00:12:05
Jag har haft väldigt högt flygande tankar på att bygga så här.
00:12:10
Jag tror det var någon gång jag tänkte att jag skulle bygga någonting för att dokumentera alla mina kläder,
00:12:17
för att jag skulle kunna matcha dem, lite som i den här Clueless-filmen, den gamla.
00:12:22
mer för att ha en inventering på vilka material är det när de köpta, vad är min miljöpåverkan och sånt.
00:12:29
Jag älskar din referens på Clueless-filmer. Min referens var att bygga en Mixology-app där man liksom gör drinkar.
00:12:37
Fast du gjorde det med kläder istället. Vilka ingredienser ska jag ha på mig idag?
00:12:42
Jag måste matcha min Whiskey Sour.
00:12:47
Ja, nej men så den... och det blev liksom...
00:12:50
Jag började ju helt fel.
00:12:52
Jag började med att fota saker och försöka få bort bakgrunder och hitta...
00:12:56
Så att... och det var väl en viktig sak.
00:12:58
Men jag fastnade på något sätt i liksom fototräsket.
00:13:02
Ehh... och brände ut mig på det.
00:13:04
Och liksom lackade ur.
00:13:06
Ja, för det känns ju som det mest avancerade ur biten.
00:13:08
Ja.
00:13:09
Direkt liksom.
00:13:10
Men det var inte bara så här att det är avancerat utan det fanns inget...
00:13:13
inget slut.
00:13:14
Jag vet inte hur jag vill ha det, jag vet inte vad jag ska ha det till, jag har ju inte byggt det än.
00:13:18
Så nu ska jag bara försöka läsa någonting som jag har noll riktning i.
00:13:24
- Ja, det förstår jag också.
00:13:27
Precis som du säger, som du var inne på innan, att man lär sig väldigt mycket när man bygger saker,
00:13:32
även om man inte bygger klart det.
00:13:34
Eller även om det inte blir någonting alls.
00:13:36
Det kan vara bara skräp och man har ändå lärt sig någonting.
00:13:38
För att ta upp det här exemplet med mitt ritaspel igen,
00:13:43
Så var det liksom...
00:13:45
Jag hade liksom byggt det... Jag tror jag försökte bygga det en gång först.
00:13:49
Det lyckades inte.
00:13:50
Och liksom bara "Äh, jag ger upp".
00:13:52
Och sen tog det ett tag och sen hade man lärt sig mer grejer.
00:13:54
Och så bara "Okej, men nu försöker jag".
00:13:55
Och så blev det liksom en version som funkar där som ändå var kul,
00:13:58
men som inte var så snygg eller professionell eller liksom så här,
00:14:01
inte så underhållningsbar.
00:14:03
Och sen att det liksom går vidare till att "Okej, nu blev det en version som faktiskt funkade".
00:14:09
Och det är så många steg bakom där som kanske inte syns riktigt som man tänker på, som ändå är med i hela utvecklingsprocessen om man ska se det krasst.
00:14:17
Även om det är från första kodraden på det här projektet till sista så var det ganska straight forward.
00:14:24
Så fanns det en massa svans, en lång svans bakom med misslyckade i försök.
00:14:29
Ja, men hur ror du dig i hamn? Vad är det som driver dig?
00:14:36
Jag bygger mycket grejer jag vill ha själv.
00:14:39
Jag bygger mycket grejer som jag vill ha själv.
00:14:46
Och sen hjälpte det ju oerhört mycket.
00:14:50
För här hade jag den här första versionen ute och uppe som funkade okej, men det gick liksom inte
00:14:56
att skala den på något sätt. Man kunde ha ett spel igång i taget till exempel.
00:15:00
Och sen var det så att folk som spelade tyckte att det var jävligt kul.
00:15:05
Och det gav mig lite mer motivation att säga "Okej, men fan, jag har lite motivation att bygga något.
00:15:11
Varför ska jag inte bygga samma grej igen?
00:15:12
Och bara göra det ännu bättre?"
00:15:16
Och då blev det liksom av.
00:15:18
Sen ska jag också säga att
00:15:19
hela den här grejen, den versionen som jag bygger nu med att skapa rum och lite sådana grejer som man kan göra,
00:15:24
att flera kan spela samtidigt,
00:15:26
den hade jag också byggt i ett ännu tidigare projekt som jag byggde för ett antal år sedan i Vue och lite andra grejer.
00:15:32
som var ett quizspel mer, men det var samma struktur i backen
00:15:36
på det projektet som det blev på det här.
00:15:38
Så det är återigen kunskap som bara kommer tillbaka
00:15:41
när man väl stöter på den igen.
00:15:44
Samma problem, fast i annan kontext.
00:15:46
Ja, jag märker ju en ganska stor skillnad på
00:15:52
när jag jobbar och inte jobbar, eller vad man ska säga,
00:15:58
i min intressenivå.
00:16:01
Jag är mycket dräcker och kårda på jobbet.
00:16:05
Ja, gud ja.
00:16:06
Jag tycker inte att någon behöver ha fem miljoner hobbyprojekt för att vara en bra utvecklare
00:16:11
eller för att utvecklas.
00:16:13
Det gör man åtta timmar om dagen ändå.
00:16:17
Jag har alltid tänkt att det är mitt jobb.
00:16:20
Jag kanske inte ens tycker att teknik är superkul.
00:16:23
Jag vet inte. Jag har ju tvivlat fram och tillbaka.
00:16:26
Men sen så blir det ganska tydligt för i vintras nu så hamnade jag på bänken under en period.
00:16:31
Och bänken som konsult är då när man är mellanuppdrag.
00:16:35
Och då fysslar jag mycket med dels bolagsutvecklande saker på vårt bolag men även att lära mig nya saker.
00:16:44
Och då märkte jag helt plötsligt hur mitt intresse för att ta in nya saker och bygga någonting jobbades upp och rullade på.
00:16:53
Det eskalerade nästan, så jag byggde ihop en blogg i Gatsby som jag inte rör tidigare.
00:16:57
Gatsby till eget ansvaret.
00:16:59
Vi kan länka till din blogg i beskrivningen.
00:17:01
Nej, det ska vi inte göra.
00:17:03
För den är inte vackert.
00:17:05
Jag drog upp ett gammalt projekt som var ett Firebase-projekt för att rulla igång det igen.
00:17:17
och började bygga upp på båda de här sakerna.
00:17:19
Teknik har jag inte ägnat mig åt förut,
00:17:21
och lärde mig saker.
00:17:23
Jag drog och vände genom React,
00:17:25
Context API och sådana saker, bara för att färska upp mig.
00:17:28
Då var det ju nästan bara av glädje att göra det.
00:17:35
Av nyfikenhet och glädje, och tycka att det var kul att bygga saker.
00:17:39
Den känner jag inte vanligtvis på vardagen,
00:17:42
för att jag är trött, mätt på att koda.
00:17:46
För mig går det väldigt mycket i perioder.
00:17:51
Jag kan ha perioder när jag kommer hem varje kväll i en vecka, två veckor, tre veckor och knackar kod.
00:17:57
När jag byggde det här Itagisarspelet så byggde det ganska intensivt.
00:18:01
Det var väldigt intensiva tider och jag satt på helgerna och knackade den här koden och bara "fan vad kul det är".
00:18:06
I karantän?
00:18:07
Ja, exakt. I karantän.
00:18:09
Man var bara hemma, jag flyttade inte ens mig från datorn.
00:18:13
Jag gick från jobbet genom att byta tab i VS Code.
00:18:16
Då var det väldigt intensivt och då var jag motiverad att göra det här.
00:18:21
Men sen har jag haft perioder på ett halvår eller mer
00:18:26
när jag inte har skrivit en rad kod hemma.
00:18:28
Så jag kan verkligen trycka på att det är helt okej att inte snacka kod på fritiden.
00:18:36
Jag umgås fan hellre med personer som har lite originella hobbies.
00:18:39
[Skratt]
00:18:41
- Bygga armin också.
00:18:43
- Det är där jag försöker bredda mig.
00:18:45
[Skratt]
00:18:47
Jag går till elektronik. Det är dit jag kommer.
00:18:49
[Skratt]
00:18:51
Nej men, så att...
00:18:53
Det blir liksom att...
00:18:55
Jag vet liksom inte. Ibland så är man bara väldigt taggad på det.
00:19:01
Och för min del så är det mycket en kreativ process.
00:19:04
Det är mitt kreativa utlopp att bygga saker.
00:19:08
Och sen, som sagt, 90 procent av grejerna blir ingenting.
00:19:12
Men leder ändå kanske till någonting.
00:19:14
Ja.
00:19:16
Så att, ja, jag tycker det är svårt liksom.
00:19:20
Sen är det ju här, nu har vi bara pratat om hur man
00:19:23
approachar liksom mer kanske hobbyprojekt.
00:19:26
Ja.
00:19:27
Sen finns det ju liksom helt andra sätt att approacha
00:19:30
projekt på jobbet eller hur man approachar
00:19:32
projekt man kommer in i mitt i till exempel.
00:19:36
Så det är mycket sådana grejer som är annorlunda.
00:19:41
Och i en professionell sätting så blir det ju väldigt mycket annorlunda att man
00:19:45
kanske ska tänka på helt andra saker.
00:19:48
Alltså då ska du ju tänka på såhär, okej hur ska jag ta in det här, vad är det jag ska leverera,
00:19:51
vad är det vi försöker bygga, vilket värde är vi ute efter?
00:19:54
Hobbyprojekt är ju ganska, det är ganska mycket frihet
00:19:59
på ett sätt som jag uppskattar väldigt mycket.
00:20:01
att här kan jag vara kreativ och bara bygga något för kul.
00:20:06
Och så här, designa något, trots att jag inte kan designa för fem öre.
00:20:09
Och sådana grejer.
00:20:11
Ja.
00:20:13
Man ska fundera lite på om man ska in i ett jobbprojekt då, liksom.
00:20:17
För att där är jag...
00:20:21
Jag får ofta den här,
00:20:23
sätt dig ner, läs igenom lite kod och lite dokumentation och kolla genom projektet.
00:20:28
Jag blir otroligt stressad av den kommentaren, vilket är lite ironiskt med tanke på att jag säger att jag läser tutorials när jag ska lära mig något nytt.
00:20:37
Men om jag ska in i något befintligt som jag ändå har hyfsat koll på teknikerna, då är det att det här "ge mig en liten bugg".
00:20:47
Ge mig någonting att göra så att jag kan börja utforska på ett sätt som har ett mål.
00:20:53
För att det här planlöst klickar runt, jag är så dålig på det här. Jag kan inte tänka på det här. Då blir det igen den här överväldigande allting. Jag fattar inte den här biten och inte den här biten. Hur går det här till?
00:21:05
Nej, jag behöver jobba lite.
00:21:08
Jag har nog lite olika approacher. Jag har liksom ingen facit på när jag kör vad.
00:21:17
Jag uppskattar väldigt mycket, som du säger också, att man får någon task som man kan ha som utgångspunkt.
00:21:23
Då kan man utforska den här kodlabyrinten så mycket man vill.
00:21:30
Men man har ändå en utgångspunkt att "det är det här jag ska göra, jag vet ungefär vart jag vill in".
00:21:35
Sen tycker jag att det är väldigt nice att parprogrammera eller mobbprogrammera för att lära sig något.
00:21:39
Och där vet jag att vissa tycker tvärtom.
00:21:42
För att de känner att de hänger liksom inte med eller att det går för snabbt.
00:21:46
Och visst att komma in i en setting där man parprogrammerar med någon som bara kör.
00:21:51
Inte så nice.
00:21:53
Men att parprogrammera med någon som faktiskt sitter där för att förklara eller man själv sitter vid tangentbordet och de förklarar och man bygger liksom en feature eller något.
00:21:59
Det tycker jag är skitnice.
00:22:01
Jag tycker egentligen att det är nice, men jag har ett stort problem med det.
00:22:07
Det är att jag går in i någon slags "jag måste bevisa mig"-mode.
00:22:13
För att ibland sitter jag i den här känslan, om det är imposter-syndrom eller nåt annat,
00:22:19
jag måste bevisa att jag förstår.
00:22:22
Jag måste bevisa att jag förstår på den nivån som jag förväntat förstår saker
00:22:27
och att jag kan göra det fort.
00:22:29
Så jag blir väldigt självmedveten när jag gör det.
00:22:33
Jag tycker det är väldigt nice också, för man får mycket historia, mycket kontext
00:22:38
och mycket klarhet kring vad för saker jag är som det är.
00:22:40
Men samtidigt är jag lite stressad.
00:22:42
Jo, men det kan jag verkligen förstå.
00:22:46
Jag tror att de flesta känner nog som dig.
00:22:48
Inte som mig, jag är ju lite udda.
00:22:51
Jag tycker ju bara att det är nice.
00:22:53
Jag känner liksom inte den pressen.
00:22:56
Så att för min del så är det väldigt bra sätt.
00:23:00
Men det handlar ju också väldigt mycket om att man måste hitta sitt eget sätt.
00:23:03
Jag partprogrammerade ju inte det första jag gjorde när jag började.
00:23:08
Då visste inte ens jag att det fanns typ.
00:23:11
Utan då var det ju att man satte sig vid sin data och bara "Okej, vad fan ska jag göra nu?"
00:23:15
Man kom in när det var världens största projekt och man var så här "Okej, det är en miljard filer.
00:23:21
Det här är inte som mina labbar på universitetet med tre filer i."
00:23:25
Nej, en så lilla sandbox. Bygg den här funktionen här i.
00:23:29
Exakt.
00:23:30
Exakt. Jag har byggt lite biblioteksapp, kommer du ihåg att jag gjorde?
00:23:35
C#. Det var tidigare.
00:23:37
Läste väl länkade listor i färdigbyggda skal?
00:23:41
Ja, det är exakt som i verkligheten.
00:23:44
Ja, Gud ja. Jag har byggt så sjukt många länkade listor nu.
00:23:48
Ni förstår inte.
00:23:50
– Åh Gud, vi borde prata om intervjuer någon gång. Det ska vi ta.
00:23:54
Det kommer vi ta snitt om där framöver.
00:23:55
– Intervjuer? Länkade listor på intervjuer?
00:23:58
– Ja, men typ tekniska intervjuer.
00:24:00
– Okej.
00:24:02
– Nej, men, seriöst, sen liksom så här, för min del handlar det väldigt mycket om att
00:24:08
kanske få testa på, eller sätta ner fötterna i lite olika delar av det man bygger också.
00:24:14
Alltså så här, jag vill kanske inte bara, om jag kommer in och ska lära mig något,
00:24:18
så vill jag kanske inte bara bygga bugfixar på en specifik feature.
00:24:21
Nej.
00:24:22
Utan vill jag komma in i det, då vill jag kanske ha en bugfix i så många olika delar som möjligt av applikationen.
00:24:27
Till skillnad från att man lär sig en specifik del så har man ingen aning om vad det andra gör.
00:24:33
Nej, så vill jag inte heller ha. Men det är också att en bug kan vara en inkörsport i de tyngre sakerna, så att säga.
00:24:41
Exakt.
00:24:43
Ja, men att jag på vägen då kanske inte bara fixar buggen,
00:24:50
men kollar varför är det här en bugg, vad händer egentligen här i och vart liksom.
00:24:54
Alltså att man kollar omgivningarna lite också.
00:24:59
Och sen som du säger så vill man ju gärna ha saker i olika delar av applikationen.
00:25:04
Annars blir man jävligt bra på en jävligt nischad del någonstans.
00:25:10
Ja, för sen handlar det också lite grann om att se till att man tar sig an grejer fast det är lite obekvämt.
00:25:20
Alltså du kommer ju inte vara helt bekväm när du bygger din första större feature i ett nytt projekt.
00:25:25
I 99 fall av 100, vågar jag säga ändå.
00:25:29
Alltså då kommer man ju känna att "oj, jag är inte helt hundra på det här".
00:25:33
Det handlar mycket om att våga fråga och se till att man ändå, lite beroende på var man känner att man själv är kunskapsmässigt kring det man bygger,
00:25:43
så kan man ändå säga "Okej, men jag vet ungefär vad jag ska göra, jag kan testa mig fram litegrann".
00:25:49
Förhoppningsvis finns det bra code reviews.
00:25:52
Ja, där kan du säga att tidspress hjälper en del. Det är bara att rada upp saker, "Det här ska byggas, det är bara att börja bygga någonstans".
00:26:00
Och så får det mata på och sen får man feedback så får man bygga om.
00:26:03
Så det har varit ganska effektivt på sistone.
00:26:08
Ja men du, för ett tag sedan så byggde du någon Java-grej.
00:26:13
Herregud.
00:26:14
Och du kunde ju ingen Java tänkte jag säga, men du kunde lite Java.
00:26:17
Ja men jag kunde ju inte bygga en egen mikrotjänst får man ju ändå säga.
00:26:20
Och jag hade ju aldrig jobbat med webhooks till exempel.
00:26:24
Nej. Men hur tog du någon särskild approach där?
00:26:27
Du vet, lite panik, lite ångest, lite gråta på toa. Vi ska se.
00:26:35
Jag tror kunden har liksom tutorials.
00:26:40
Om man har ett väldigt stort företag så har ju en enorm arkitektur och enorm uppsättning.
00:26:53
Så att de har då tutorials på vilka delar som finns, hur bygger du en ny tjänst och då hade de också en rama för
00:27:01
här är allt du behöver för att bygga en sån här ny typ av tjänst och här borta finns allt för att bygga en sån här ny typ av tjänst.
00:27:07
Så då det är lite som för dem som kan React och har kört Create React App så var det väl lite för dem också.
00:27:14
De var så här "Hej, du vill bygga en webbservice i Java med det här protokollet, starta upp här".
00:27:20
Och så hade man fått en liten igångkick.
00:27:25
Det känns som en väldigt bra approach.
00:27:28
I alla fall när du berättar om den.
00:27:29
Ja, gud ja. Det var ju en av mina bästa onboardings till ett ekosystem och ett projekt.
00:27:38
Jag fick en vecka på mig att sitta igenom tutorials och genom tutorials så satte man också upp miljön och sådana saker.
00:27:45
Ja, det låter ju jäkligt smidigt faktiskt.
00:27:47
Ja. Var det något som inte funkar kunde man skicka en liten bug-rapport på det.
00:27:53
Ja, men det känns ju... Det där är ju också en lyx som större företag har oftast.
00:27:59
Alltså större IT-företag, ska man väl säga ändå.
00:28:03
Och man blir ju lite ledsen när den lyxen inte tas till hand om.
00:28:10
Alltså om man kommer till något större bolag och så vet man att de har gjort ett försök och sen har det inte underhållits.
00:28:15
Så det är totalt kaos istället för att det är bara själv på den istället för att hjälpa den.
00:28:20
Ja, alltså gammal dokumentation, det är det värsta. Jag blir så arg.
00:28:24
Jag blir liksom upprörd. Det här är varför jag hatar att dokumentera saker själv.
00:28:28
För att jag vet hur svårt det kan vara att underhålla det.
00:28:31
Men död dokumentation, det är alltså...
00:28:34
- ...fruktansvärt. - Ja.
00:28:36
Jag såg att Spotify open-sourcade nyligen något...
00:28:41
- Backstage. - ...verktyg.
00:28:43
- TechDocs pratar du om? - Ja, precis. Det var någon plugin till Backstage.
00:28:47
Backstage är väl deras utvecklad portal som är open source, typ.
00:28:51
- Ja. - Och TechDocs kallas det.
00:28:55
Var det då någon plugin till det här där man skulle kunna sköta dokumentationen
00:28:59
genom att egentligen skriva den tillsammans med koden, om jag fattar rätt?
00:29:04
Ja, men TechDocs är...
00:29:09
Jag tror inte att du skriver det ihop med koden, utan det är ett eget...
00:29:14
Det beror väl lite på var man väljer att visa upp det.
00:29:18
Jag vet inte exakt vilka delar som är open-sourcet, men det var mycket att...
00:29:22
Det är markdown som genereras, och som du skriver själv också, som genereras.
00:29:28
Just det, och så genererar jag någon statisk sida som man kan browsa dokumentationen i.
00:29:33
Det är smidigt ändå. Jag gillar att ha saker...
00:29:36
Mycket plain text.
00:29:38
Ja.
00:29:40
Men också när saker är markdown.
00:29:42
Man börjar få det i fingrets spetsarna.
00:29:44
Hur gör jag det här?
00:29:46
Är det en kodsnutt som jag vill lägga här i?
00:29:49
Hur gör jag den här biten?
00:29:51
Jag kan länka till de här delarna.
00:29:53
Just nu sitter jag faktiskt också och dokumenterar
00:29:55
men jag gör det i Storybook.
00:29:57
Men använder MDX.
00:29:59
Markdown också.
00:30:01
Och det är väldigt smidigt.
00:30:03
också få ut det på ett fint presenterat sätt.
00:30:07
Det tycker jag om.
00:30:08
Ja men gud, alltså MDX skulle vi kunna prata om i sig.
00:30:12
Älskar MDX.
00:30:13
Min blogg är ju MDX.
00:30:16
Så alla bloggartiklar. Och bara att kunna köra inline-komponenter, vad jag vill, i det här.
00:30:21
Underbart.
00:30:22
Känns som att det där var
00:30:27
the end of it.
00:30:29
Ja, jag tror vi bara
00:30:32
- Vi zonade ut. - Vi zonade ut lite grann från ämnet.
00:30:34
Jag hoppas att det var nånting vettigt.
00:30:36
Som aldrig igång.
00:30:38
Hoppas att man får ut fem minuter vettigt
00:30:40
av de här 30 minuterna när vi pratar blä.
00:30:42
Då har vi gjort det bra.
00:30:44
- Ja, men man får ju jävla toppskämt ändå.
00:30:46
- Jag tänker att det är ju första 30 sekunderna
00:30:48
av de här fem minuterna.
00:30:50
- Ja, det är ju också.
00:30:52
Att vi ska prata om nåt, det är väl en minut kvar.
00:30:54
- Ja, exakt.
00:30:56
Som vanligt, vill man nåt
00:30:58
så finns det flytter. Länkarna ligger
00:31:00
Lägg en liten beskrivning här under och vi ses så.
00:31:03
Det gör vi.
00:31:04
Bye bye!
00:31:05
Ciao!
00:31:10
Hej då!
Tillbaka upp