Modermodemet

Det blev ingen CD - eller någon podd. Men inte hindrar det oss från att försöka.

Leaving Rust gamedev after 3 years

Exercism

Hostingen av Modermodemet sponsras av Dekalfabriken

What is Modermodemet?

En techpodd om allt förutom tech

Patrik (00:00)
Jag är så trött på att Anders håller på... Kan du skärpa oss nu?

Bartek (00:04)
Välkomna till Modermodemet, podcasten där vi ibland får mail från lyssnarna. Det här trillade in för några dagar sedan från Ragnar Eklund. Jag tänkte inte läsa hela men jag tänkte i alla fall lyssna lite av det. Jag ställde frågan i ett föregående avsnitt. Vad håller vi ens på med? Varför lyssnar ni på Modermodemet?

Det tog Ragnar fasta på och hörde av sig.

Patrik (00:37)
En fråga bara innan du läser upp. Har du kläderat med honom att det är okej att du läser upp det? Okej, bra.

Bartek (00:41)
Ja, det gjorde jag. Vi vill inte begå GDPR -brott på den här podden. Inte medvetet i alla fall. Jag läser innan till. Efter att ha lyssnat på senaste avsnittet av Måner modemet så ställde jag mig frågar varför jag ens lyssnar på er. Det var såklart för att Bartik först ställde frågan i avsnittet och bad oss mail, alltså varför inte göra det.

Jag kommer inte läsa hela medvetet utan jag kommer läsa utvalda delar. Jag är en medelåldersvik man som livnar mig på att fixa kod om dagarna. Jag tror att mycket av mina livserfarenheter av vardag landar väldigt nära er. Inte helt precis, men tillräckligt. Ni tar upp de där intressanta sakerna som ligger halvbakade och ruttnar och sätter ord på dem på ett väldigt bra sätt.

Det är som en timmes riktigt bra fika -snack där man känner att man vill fortsätta snacket över en AV och sen längtar till nästa gång man får träffas och ta del av allt bra som sägs. Hur som helst, vad är det ni håller på med? Jag vet inte helt, men jag gillar det. Fortsätt snacka, sväva iväg, det är kul att få hänga med. Det värmer hela kroppen och speciellt runt hjärtat. Läs här, tack Ragnar för att du tog dig tid att skriva det här.

Patrik (01:59)
Du kanske borde kolla upp det där. Det ska inte värma kring hjärtat.

Bartek (02:04)
Det pirrar ut i vänsterarmen.

Patrik (02:08)
Allting snurrar.

Bartek (02:12)
Men jättefint mail, tusen tack. Vi vet inte heller riktigt vad vi håller på med men vi håller på att upptäcka så småningom vad det är som vi är ute efter här. Jag vill uppmana alla andra som lyssnar och som har... Om ni har några idéer på saker som vi kan prata om så tar vi jättegärna emot det för...

Ni hör inte det här i avsnitten men vi brukar panikart att försöka komma på någonting och prata om en halvtimme innan vi börjar spela in så gör livet lättare för oss och kommer lite tips på vad vi kan prata om.

Anders (02:53)
Det här är avsnitt 9 och vi har väl haft ungefär tre avsnitt om att webben var bättre förr redan så att uppenbarligen behövde lite input.

Patrik (02:54)
En liten...

Bartek (03:00)
Hahaha

Patrik (03:00)
Jag ser tre avsnitt till i Kristallkulan. En liten fotmål bara. Det där möjligt. Jag vet inte om ni gör det, men jag har en liten feel -good -mapp på min OneDrive. Så fort någon säger någonting snällt om något open source -projekt eller något jag gjort så screenshotar jag det och lägger det i min feel -good -mapp. När jag inte är på så bra humör brukar jag gå in och titta lite ibland och blir man alltid glad.

Bartek (03:23)
OOOH!

Patrik (03:29)
Det är en klassisk Feelgoodmaps -kandidat.

Bartek (03:36)
Det har varit jättebra tips. Det ska jag definitivt börja med också. Oj då!

Patrik (03:39)
Oj, nu ringer förskolan här. En sekund.

Anders (03:43)
Typiskt.

Bartek (03:44)
Det är mycket sjukdom för jag har också en...

Så vi får se om det blir någonting av det här avsnittet.

Anders (03:55)
Och jag har ont i halsen så att om Bartek och Patrik går så kan jag inte hålla en monolog i en timme vilket jag annars skulle kunna göra men tror att det är på gränsen för mig då.

Bartek (04:07)
Vi får se det. Jag älskar att vi aldrig klipper någonting för nu är vi bundna av vårt blodavtal och släpper det här avsnittet oavsett vad.

Anders (04:20)
Absolut, det får bli fem minuter, läsa upp ett brev och alla lägger på sen. Det är väl helt okej. Men jag kan försöka börja. Nu ska vi se om Patrik kommer tillbaka här. Nej, jo, kanske.

Bartek (04:27)
Mm.

Mm.

Håll i hatten.

Anders (04:37)
Det är allt under kontroll.

Bartek (04:37)
Måste du sticka?

Patrik (04:39)
Klo.

Bartek (04:40)
Hallå?

Anders (04:40)
Hallå?

Patrik (04:41)
Det var förskolan.

Anders (04:42)
är allt under kontroll.

Bartek (04:42)
Måste du.

Patrik (04:44)
Allting är inte under kontroll så jag måste sticka.

Anders (04:47)
Okej, vi anade att det var så.

Bartek (04:49)
Men det kanske får bli ett jättekort avsnitt så tar vi ämnet som vi skulle prata om nästa vecka istället. Då kan inte Patrik, så om två veckor får vi prata om rekrytering som vi hade tänkt prata om idag. Så här är det. Vi är inte bara vita medelålders men vi är pappor också som måste ta hand om sina barn. Då blir det sådana här avsnitt ibland.

Patrik (05:03)
Mm.

Så.

Anders (05:15)
Men chillar du, Patrik? Så... Han gör allt traos.

Bartek (05:18)
Mm.

Patrik (05:18)
Ja men jag har lite spicy take så ni sparar det. Okej tja.

Bartek (05:22)
Vi sparar. Vi sparar.

Anders (05:28)
Hejdå! Ja, ska du också gå Bartek så lägger vi på. Annars kan vi prata i 10 minuter till om du vill. Så blir det nästan ett avsnitt.

Bartek (05:32)
Ja, det vill... det vill jag...

Har vi något att prata om? Jag kan prata om att jag skulle boka biljetter till operan och blev ställd i en digital kö i en timme. Först var det Cloudflare -felsidan för det var biljetsläpp idag. Så då alla backslick -människor slänger sig på datorn och ska boka biljetter.

Jag har gjort ett bokningssystem för jättelänge sen och det är en ofrånkomlig del av att bokabilitet är att det tar tid att välja plats och betala och bestämma sig. Det tar ungefär tio minuter för att inte folk ska liksom...

Jag tar de här tre platserna och så bailar de och så ligger de där tre i limbo så är det nog en okej kompromiss. Från någon som har byggt ett sådant system, jag förstår även om det känns bakvänt när man sitter där i en digital köra.

Anders (06:48)
Just biljettbokning och platsbokning känns som ett av de ganska få scenarion där verkligheten har lite concurrencyproblem. Det är väldigt svårt att lösa det där digitalt utan att lägga in dem här. Ni får ställa er i kö den typen av begränsningar just för att man vill inte låta två personer kolla på samma plats samtidigt. Det är skönt att det finns några problem som är lite så där kladdiga.

Bartek (07:07)
Mm.

Mm.

Anders (07:18)
Men någonting jag tycker är väldigt mysigt på tal om det där med att jag står i kö till en bokning är ju... Skatter verkar ha det, jag tror att andra också har det, men att de har öppet tider på sin hemsida. Att tjänsterna är nere mellan vidnatt och kl. 6. Jag tycker att det är väldigt trevligt och fler borde göra det tror jag. Svårt om man inte bara har en population i ett visst land att betjäna då. Det känns som en enkel lösning på ett jobbigt problem annars.

Vi måste vara tillgängliga till att vara... Våra invånare måste kunna använda våra känslor i tiden och vi får inte ha nere tid, blablabla, men i praktiken så är det ju helt lugnt om man inte kan deklarera klockan tre på natten.

Bartek (07:59)
Mm, det är schematläggningens Internet Explorer 6. Kanske behöver vi inte stödja att man deklarerar mellan 0 -2 -0 -0 -3 -0 -0.

Anders (08:12)
Nej precis.

Bartek (08:13)
Ja,

Anders (08:13)
Ja, känner du dig stressad över familjesituationen hemma så kan vi säga hej då. Det är helt okej.

Bartek (08:18)
Ja, jag vet inte. Har du något spicy take, någonting som vi kan diskutera i fem minuter?

Anders (08:28)
Oj, fem minuter är väldigt kort tid för en utläggning.

Bartek (08:36)
Kan vi prata om...

Om att du håller på ska lära dig rust. Det pivåar ganska hårt från SQLight och Go och HTMX till rust.

Anders (08:44)
Ja men visst.

Ja, jag är i en utforskande stadium i mitt tekniska livmärke. Så det är ju mer någon slags känsla av att hitta hobbypillglädjen som man inte har så mycket längre av någon slags tidsprist. De flesta av oss tror inte ha det, så de går längre. Så där är jag väl lite av en sökare just nu.

Bartek (08:56)
Mm.

Mm.

Anders (09:15)
Rust har jag petat på flera gånger förut och kan väl grunderna i det men bara i teorin. I praktiken springer man snabbt in i en vägg med speciellt det språket. Just för att det är så pass all komplexitet är frontloadad. På gott och ont såklart.

Bartek (09:35)
Mm.

Anders (09:38)
Man tvingas ta beslut om saker som man kanske inte bryr sig om egentligen, men då vet man att när det är väl gjort så kommer ditt och ditt att den inte kunna ske i framtiden. Så det är liksom en, det är ju inte liksom ett quick and dirty språk på något sätt och inte heller tror jag ett prototypsspråk från de flesta utan att det är ett sådant, liksom nu ska jag bygga en perfekt datamodell som ska vara typ säkrad och snabb, dessutom.

Men det är ett intressant språk. Jag som inte har den så djupt bakom inom C och C++ tycker alltid det är kul att få komma lite närmare metallen. Rust gör ju det på ett annat sätt. Med hela sin minnesmodell som är lite speciell. Den ska inte jag gå in på för jag kommer bara säga fel ord. Men det är bara att googla om den i fikan. Men det är ett intressant språk därför. Det har ju den här liksom...

För länge sen när jag jobbade med C -sharp, det är tidigt i min karriär, så tyckte jag om det här med domain -modellera, generics och typer och bygga smarta strukturer. Det är någonting jag har försökt gå bort från ganska mycket. I Go går det ju inte ens i jag, det man skulle vilja nästan. Men då var jag väldigt inne på det. Jag har också f -sharp och Haskell och många av de här ML -språken som har en syntax. Jag tycker om det väldigt mycket.

Bartek (10:39)
Mm.

Anders (10:55)
Rust har en rot i det funktionella systemet. Första versionen av Rust byggdes i OCaml. Det är väldigt kul att sitta med det igen. För mig är det väldigt bekvämt med optiontyper och inamms. Det är trevligt.

Rust har väl det som jag tycker om från Go i det här med att det är statiskt kompilerade binärer. Kan man få ut i alla fall. Och det är ganska lätt att korskompilera och så där. Så det är liksom därför jag gillar den aspekten också. Men ja, vi får väl se. Det är ju ett språk som liksom inte är gjort för att labba ihop en litet demo sådär på några minuter. Riktigt om man inte är väldigt varm i kläder när man är här. Så det är verkligen en medvetet lärande som krävs tror jag för att bli...

Bartek (11:43)
Mm.

Anders (11:48)
bekväver det språket även för någon som är ganska van vid att programmera generellt.

Bartek (11:52)
Jag ligger också i startgroparna och lär mig någonting nytt. Släppa .net, Sargen och C -Sharp. Min 11 -åring har börjat lära sig Godot. Jag har ju hjälpt honom en del. Jag kan inte Godot -skript för fem öre, men jag kan ju programmering. Så jag har ett humm om hur man kan felsöka saker. Och det ser så jävla roligt ut. Det är liksom...

Det är väldigt löst, knappt så att det är typat. Det är verkligen ett skript. Man sitter och skriptar och det är 400 rader ifällssatser och det är jättegaggigt. Men man gör ett litet spel. Det är ingenting som behöver förvaltas av ett team i tio år framöver utan man bara shuttar på lite.

Anders (12:45)
Det är väldigt mysigt. Jag har suttit typ tre dagar med gd -script och godoh men det är ju rätt likt pyton i syntax och även i hur löst det är i kanterna och så där. Och det står mig alltid i pyton var det språk jag lärde mig först av allt för jag vet inte hur många år sedan nu liksom när jag var ungtornåring men när jag sitter med det ibland så slås det av hur kul det är att skriva pyton. Just för att det är såhär det är sevdokod som funkar och det är ganska

Bartek (12:52)
Mm.

Anders (13:10)
Det är snabbt och lätt att uttrycka sina idéer. Det finns ju någonting där som verkligen tilltalar den. Så jag tycker det är svårt att bara vifta bort som att det är skitsamma när man ska ha riktiga program så måste det ändå vara så och så och så. Men jag tycker inte att det alltid behöver vara det. Och speciellt om du säger om spel så är det verkligen liksom...

Bartek (13:15)
Mm.

Jag skulle vilja samarbeta med någon och bygga någonting med gd -script eller för den delen Python. Men när man sitter själv och kan hålla allting i huvudet och man vet varför man lär upp saker på ett visst sätt så... Bara tut och köra.

Anders (13:44)
Det var uppe en artikel nyligen skriven av en spelutvecklare som har jobbat och släppt riktiga spel på Steam några år och har gjort det i Rust uteslutande. Titten var typ I'm leaving Rust for Game Dev ungefär 700 kommentarer på Hacker News och låg över sitt två dagar en dygn typ. En väldigt lång artikel väldigt ingående och personen märkte att hon var lite rädd för att bli hatad av Rust fans som är väldigt...

Bartek (13:55)
Mm -hmm.

Mm.

Anders (14:14)
drivna och inbita fans. Så han var väldigt sådär liksom, la fram sina kredenshals om och om igen. Jag har gjort allt det här, jag har gjort, bytt spel i Rust på riktigt, jag har gjort ci och ci och ci och ci men... Och det andra just i det här, du säger lite att... Rust är inte gjort för att labba och testa utan du måste liksom tänka på din minnesmodell från dag ett. Och när du bygger ett spel, du måste kunna stöva om spelets logik.

när som helst, för du gör en ny feature, kan man inte lägga två timmar på att ska det vara en pekar här, det är ju helt poänglöst för den aspekten, labbandet. Och kan man inte labba när man gör spel så kommer man inte komma någonstans. För det måste labbas, testas och kännas på.

Bartek (14:55)
Jag tänker osökt på memory -managern som Nintendo hade när de byggde NESen, alltså original 8 -biters Nintendo. Då var memory -manager, det var en person som hade ett stort ark över alla tillgängliga minnesadresser och behövde man minne till...

I sitt spel fick man gå till den personen fysiskt och säga att jag behöver den här minnes -range för mina sprites. Så Memory Mansion var en fysisk person.

Anders (15:31)
Underbart.

som med computers också var från början för länge sedan. Det är kul.

Bartek (15:40)
Just det, precis. Ja, viss, computer betyder väl typ, ja, beräknare.

Anders (15:47)
Ja, precis. Det var ju också ett kvinnligt dominerat yrke eftersom det var liksom det här telefonväxel sekreterade, computer, var liksom samma typ av den här kvinnliga administrationsyrken.

Bartek (15:54)
Hmm.

Mm.

Anders (16:02)
Så vi får se, jag vet inte om det kommer bli så mycket rust i praktiken, men det är skönt att sitta med någonting som är lite jobbigt. För Go är jag aldrig så jobbigt liksom, jag är aldrig så mycket knuggande utan det är mest bara skriva, skriva, skriva. Ser det kul?

Bartek (16:14)
Men har du kommit på vilket angreppssätt du vill ta för att lära dig? Ska du sitta och nöta Oilr Project eller ska du försöka bygga något?

Anders (16:28)
Ja, alltså jag vet inte. Just nu sitter jag och läser igenom officiella Rust -boken för nu tredje gången. Den är väldigt bra liksom, men... Och sen sitter jag och gör exorcism -övningar som jag gör sådär liksom, typ... Ja okej, det är väldigt bra sajt. Det borde alla kolla in om man vill läsa något språk. Och liksom kan något från början. Jag tror det är en fördel att man har lite koll på liksom, ja, hur man programmerar generellt. Men det är...

Bartek (16:33)
Mm.

Vad är det? Jag har sett flera nämna det, men...

Anders (16:58)
en site för att lära sig språk baserat på problemlösning och alla problemen kan du jämföra andras lösningar med och allra viktigast be om att få mentorskap på din lösning. Så man skriver en lösning, skickar in den och sen är det en mentor som ska kolla in den. Så får man svar ganska snabbt från glada, frivilliga, kunniga människor. Det är väldigt värdefullt just när det är som i Rust, när det är så här, ja den här lösningen funkar men...

Eftersom vi löser här, men det går inte. Hur ska jag tänka att man kan få någon som kan den här mer idiomatiska sättet att tänka i ett språk? Det är väldigt trevligt att gå från beräknad primtal till typ skriva en egen lista, en länkad lista liksom. Så det finns ganska mycket bredd där man vill labba och testa och lära sig. Så det är en väldigt bra tjänst och gratis.

Bartek (17:48)
Ja, det är spännande. Jag har faktiskt aldrig hört av det som en tidigare, så det är...

Man blir rörd av hur mycket folk ställer upp för varandra utan någon kompensation.

Anders (18:01)
Ja, man får känna sig snäll och hjälpsam och kunnig. Det är väl betalning om man får dem att hjälpa andra människor där. Men det är inte så illa. Men det var det tror jag.

Bartek (18:05)
Ja.

Ja, och jag måste nog springa så jag får tacka för mig den här gången. Så gör vi en ordentlig ansats. Inte nästa vecka, men om två veckor. Då ska vi prata.

Anders (18:21)
Nu är det två pytsningar i rad här, men det är så det blir ibland.

Bartek (18:25)
Ja, det är det man får med modemodemet.

Anders (18:28)
Ha det så bra så ses vi kanske nästa vecka. Hej då!

Bartek (18:32)
Det gör vi. Ha det fint. Hej!