Genialt prinsipp: Ordtenkning vs. Konsepttenkning

By | November 20, 2021

Jeg leste en gang om et interessant, oppfunnet ord: «foreldet».

Foreldet betyr «foreldet kunnskap». Det betyr at informasjon som pleide å være sann… Men på grunn av vår raskt skiftende verden, er ikke lenger sann. Og når vi ikke innser det, så får vi problemer – å ta valg basert på antakelser som VAR gyldige en gang, men som ikke er gyldige NÅ.

Nå er foreldelse et interessant ord. Men det er enda mer interessant når vi ser på “meta”-nivået.

For en gang i tiden fantes ikke det ordet. Noen har laget det, fordi det er en nyttig idé.

Jeg skrev om “foreldelse” i e-postnyhetsbrevet en gang, og fikk denne opprørte e-posten fra en ikke-abonnent:

“Da jeg så “bekreft abonnementet ditt for å lære det ene hemmelige ordet,” ble jeg bekymret for at denne siden var falsk. Jeg sjekket og fant ut at de så ut til å være anerkjente, så jeg bestemte meg for å fortsette. Da jeg fant ut at “ordet” var “obsoledge” (ikke et ord) var litt av en skuffelse.”

Dette uttrykker ett syn på virkeligheten:

At ordene på et språk allerede er definert. At nye ord blir lagt til et språk sjelden, om i det hele tatt.

Noen kan ha et vellykket liv med den måten å tenke på. Det fungerer. Over 90 % av alle mennesker tenker på denne måten i deres daglige liv.

Jeg har imidlertid lagt merke til at noen av de beste presterende innen programmering har en annen mental modell:

“Ord er merkelapper for konsepter. Nye konsepter kan skapes. Og vi kan lage nye ord for å gi tankene våre bedre grep om dem.”

Hvilken er mest “riktig”?

Hvem vet. Et mye bedre spørsmål:

“Hvilken måte å tenke på er mer NYTTIG?”

Vel, det avhenger av konteksten til personens liv – hva deres karriere er og hva de gjør.

Men for de av oss som koder for å leve, enten du er dataforsker eller nettutvikler eller noe annet…

Rammen “ord er etiketter” er LANGT kraftigere.

Hva er noen “oppfunnet” ord i Python?

Bare fra de reserverte søkeordene har vi await, def, elif, nonlocal, lambda.

Hva med oppfunne KONSEPT? For eksempel, når jeg trener folk i et “dypdykk” til å virkelig forstå Python-generatorer, gjør jeg en stor sak om skillet mellom “generatorfunksjoner” og “generatorobjekter”. Jeg gjør det av flere svært viktige grunner. Men det viktige poenget her er at det er to etiketter for to relaterte, men likevel distinkte konsepter:

  1. generator funksjon
  2. generatorobjekt

Ingen andre språk har noe nøyaktig som en Python-“generatorfunksjon”, og heller ikke akkurat som et Python-“generatorobjekt”. Så vi gir dem disse nye navnene. ETIKETTER. Som lar deg sette et håndtak på konseptet i tankene dine, mens du resonnerer om dem i koden din.

(Disse merkelappene er setninger, ikke enkeltord… men jeg håper det er tydelig at det ikke betyr noe i det hele tatt.)

Mens du tenker på alt dette… et spørsmål du kan stille deg selv:

Hvordan har du “funnet opp” ord for begreper mens du skrev kode, eller mens du LÆRTE å skrive kode?

Og: hvordan har det gagnet deg?

Leave a Reply