Fork me on GitHub
#clojure-norway
<
2024-06-15
>
teodorlu17:06:20

Jeg digget https://clojurians.slack.com/archives/C061XGG1W/p1718177035235729, så her kommer en egen rant: https://play.teod.eu/i-dont-understand-it-therefore-its-bad/. Kanskje den faller i smak. Eller kanskje den bare gjør dere sinna! Vi får se. 🙃

magnars17:06:43

Etter min erfaring så er det ofte motsatt: Dette skjønner jeg ikke, men på overflaten ser det fett ut, så det er sikkert bra! Det er først når man skjønner noe at man ser på hvilken måte det er dårlig. 😅

1
magnars18:06:17

Klassisk eksempel: Hibernate. Ser fantastisk ut helt til du skjønner hvordan det grunnleggende undergraver koden din.

👍 2
magnars18:06:20

Det stemmer sikkert også som du skildrer i ranten din at noen blir frustrerte av å ikke forstå og dermed slår fra seg noe som er bra. Men har du opplevd i så stor grad at folk blir så veldig forbanna? Jeg ville liksom tro at de for det meste da ville bare droppet det og gått en annen vei.

teodorlu18:06:23

> Men har du opplevd i så stor grad at folk blir så veldig forbanna? Jeg ville liksom tro at de for det meste da ville bare droppet det og gått en annen vei. > Neeei, forbanna er kanskje en liten overdrivelse. Jeg var i en situasjon forrige uke hvor jeg og en utvikler så på et system jeg hadde laget mesteparten av. Utvikleren forsto ikke umiddelbart hvordan ting hang sammen, og ville diskutere hvordan lokale navn kunne vært endret. Jeg synes det hadde vært mer nyttig å bruke mer tid på helheten, la oss forstå hele systemet først, før vi begynner å endre på ting lokalt. "forbanna" var nok ingen av oss akkurat da. Kanskje "jeg forstår det ikke, så jeg ønsker å endre det på svært mange måter med en gang" er en bedre beskrivelse på situasjonen.

💯 2
teodorlu18:06:42

> Etter min erfaring så er det ofte motsatt: Dette skjønner jeg ikke, men på overflaten ser det fett ut, så det er sikkert bra! Det er først når man skjønner noe at man ser på hvilken måte det er dårlig. 😅 > > Klassisk eksempel: Hibernate. Ser fantastisk ut helt til du skjønner hvordan det grunnleggende undergraver koden din. > Godt poeng! Jeg tror også det finnes en positiv vinkling av det samme. "dette skjønner jeg ikke, og det er spennende at jeg ikke skjønner det". Det var litt sånn jeg følte det da jeg først møtte typesystemet til Haskell, og REPL-dreven utvikling i clojure. "her er det folk som får til ting som jeg vet at jeg ikke per nå får til selv, dette er spennende".

teodorlu18:06:04

Det har også hendt noen ganger at jeg prøver å bruke et bibliotek, finner noe som ikke funker som jeg forventer, jeg påstår at jeg har funnet en bug, så viser det seg at jeg ikke hadde skjønt hvordan biblioteket skulle brukes.

magnars18:06:57

"Jeg skjønner det ikke med en gang, så la oss skrive det om" er noe jeg har opplevd oftere, ja 😄

👍 2
😅 1
teodorlu18:06:59

Hva pleier du å gjøre når det skjer? Det finnes kanskje bedre tiltak en "bli sint selv" 😄

magnars18:06:17

Altså, @U9MKYDN4Q og jeg har jo i stor grad fjernet oss fra det problemet ved å 1) bare jobbe med erfarne folk som har samme verdigrunnlag når det kommer til utvikling, og 2) jobbe sammen om de vanskelige tingene.

👍 2
magnars18:06:31

Men ja, det er frustrerende å møte på. Kanskje noe av trikset er å ta praten om tilnærming og modellering før man setter seg ned med koden - helst før den koden skrives, til og med?

👍 1
teodorlu18:06:12

Høres lurt ut. > ta praten om tilnærming og modellering før man setter seg ned med koden > Jaaa. Problemet her er jo ikke koden. Problemet er at man ikke er omforent om tilnærming og modellering, men sitter sammen og tenker at det eneste man kan gjøre er å endre koden.

hypirion19:06:44

Tror ikke jeg har hørt om noen som sier at noe er dårlig om de ikke forstår det etter 5 minutter :thinking_face: Men jeg vil si at noe kan være dårlig fordi det er dårlig dokumentert. Det betyr ikke at prinsippene og selve koden nødvendigvis er dårlig, men om jeg ikke forstår hvordan skaperen av biblioteket/verktøyet ønsker at jeg skal bruke biblioteket er det stor sannsynlighet at jeg bruker det feil/ikke utnytter hele potensialet. Det er litt lett å open source noe og så ikke gidde å skrive en forklaring på hvorfor det ble laget og hvordan det fungerer.

👍 2
cjohansen19:06:37

> Utvikleren forsto ikke umiddelbart hvordan ting hang sammen, og ville diskutere hvordan lokale navn kunne vært endret. Dette vil jeg si er et klassisk tegn på umodenhet. Og det kan jeg si fordi jeg har "been there, done that" 😅 Jeg tror utviklere generelt er alt for raske til å skrive kode. "Dette skjønner jeg ikke, og hvis jeg ikke skjønner det med en gang er det sikkert ræva. Slitsomt å prøve å forstå, så la meg heller bare endre på noen lokale ting jeg er uenig i, basert på at jeg ikke gadd å forstå helheten"

👍 3
cjohansen19:06:29

> Tror ikke jeg har hørt om noen som sier at noe er dårlig om de ikke forstår det etter 5 minutter :thinking_face: Jeg har flere ganger observert folk i jobbsammenheng prøve å endre eller skrive om ting de ikke har satt seg godt inn i (og ofte satt seg svært lite inn i)

hypirion19:06:52

Ja, joda, har erfart at juniorutviklere (meg inkludert, sikkert) har lyst til å skrive om på en bedre måte, men føler at det tar mer enn 5 minutter før man kommer dit 😛 Men har vel overraskende nok ikke hørt "dårlig" før, kanskje heller "utdatert" eller lignende.

teodorlu20:06:50

> Men jeg vil si at noe kan være dårlig fordi det er dårlig dokumentert. Kjøper den, god dokumentasjon er det jeg oftest savner fra biblioteker.

leifericf23:06:39

Min opplevelse er at folk faller inn i én av to kategorier: De som deler alt inn i to kategorier, og de som ikke gjør det. Hehe, bare kødder. Litt mer seriøst: Noen blir skremt bort av ting som er nytt og annerledes og er ikke villige til å lære nye ting uten svært mye overbevisning og oppmuntring. Andre gleder seg over muligheten til å prøve noe nytt og kaster seg over en hver anledning til å lære. Jeg tror @U3X7174KS er inne på å beskrive den førstnevnte kategorien, og @U07FCNURX er inne på den sistnevnte.

leifericf23:06:11

"https://randalrauser.com/2014/02/peter-boghossians-manual-for-wasting-paper-part-7-doxastic-closure/" er også en greie. > "I use the term to mean that either a specific belief one holds, or that one’s entire belief system, is resistant to revision." Enkelte mennesker mangler evnen til å revidere sin egen tro og setter seg fast.

💡 1