<?xml version="1.0" encoding="UTF-8"?>
<post>
  <body>P&#229; min arbejdsplads foreg&#229;r ofte regi&#248;se meningsudvekslinger om hvorvidt det ene programmeringssprog er bedre end det andet. Fra mit perspektiv er det totalt ligegyldigt hvilket programmeringssprog der benyttes bare man kan udtrykke og fastholde v&#230;rdi til kunden i form af applikationer. Det er *det* de unge vil ha! 

Jeg synes det er sjovt at mange holder meget fast p&#229; deres hammer, ogs&#229; selv om de ikke ved hvordan den bruges. Efter et par &#229;r med seri&#248;se programm&#248;rer har man et rod i ens kode, repeterende implementationer som l&#248;ser samme problem flere gange, en masse kode som ikke kan testes, alle komponenter bundnet samme med forskellige metoder og en l&#248;s kobling man m&#229; kigge i vejviseren efter mens de r&#229;ber om store omskrivninger af applikationen og alle eksterne komponenter. 

&lt;pre&gt;
Program&#248;rerne skal nok &quot;create a mess&quot;. 
&lt;/pre&gt;

Ligemeget hvilket programmeringssprog du v&#230;lger kan dine ansatte &#248;del&#230;gge enhver applikation med hvilket som helst programmeringssprog der findes. N&#229;r det drejer sig om programmeringssprog har jeg p&#229; mine mange arbejdespladser fundet to slags mennesker, ja m&#229;ske m&#229;ske tre, men heller overdrive lidt frem for at v&#230;re kedelig! 

Den ene type er Entreprise versionen med h&#229;r p&#229; ryggen og en masse projekter bag sig. Denne type f&#248;ler sig forpligtet til at f&#248;lge med i de sidste nye tiltag selv om alle ved det ingen vegne f&#248;re. Den dybe tro p&#229; egne evner er forankret i historien og nye principper og paradigmer tager &#229;r at udvikle i hans hoved. 

Den anden type er rebellen der er lynende skrap, ved n&#230;sten alt og har derfor en st&#229;lsat mening. En dyb tro p&#229; egne evner er forankret gennem andres succ&#233;s og resultere ofte i et ret firkantet perspektiv p&#229; selv de enkleste sp&#248;rgsm&#229;l. Nye teknologier bliver afkodet med lynes hast og gerne uden at bekymre sig om den dybere mening bag. 

De to typer er faktisk enige men holder gerne en eller to bullshit-bingo konkurrence hver uge hvor de forsikre hinanden om rigtigheden i deres l&#248;sninger. Det kan sammenlignes med en hanekamp hvor ingen kommer til skade for alvor. 

Under disse hanekampe tages problemstillinger som:

* Statisk typing kontra Dynamisk typing
* Open classes kontra Closed classes
* Funktionel kontra Klasse/Objektorienteret programmeringsmodel 
* Behavior-Driven Development kontra Test-Driven Development 
* Monolitisk struktur kontra Modulbaseret struktur 

De bliver altid enige om at det programmeringssprog de arbejder med for tiden er det bedste. I dette valg tages ikke h&#248;jde for virksomhedens bedste men udelukkende ens egene selvbestaltede ideer om hvad der er godt. F&#230;lles for dem er at deres ord ikke f&#248;lger deres handling. Eller er det omvendt, kan ikke huske det? 

For mit vedkommende er valg af programmeringssprog en meget mere personlig proces. For det f&#248;rste repr&#230;sentere valget den udviklingscyklus jeg befinder mig i og hvilke b&#248;ger jeg har presset mest ind i mit hoved de sidste m&#229;neder. Hvilken bringer mig tilbage til udgangspunktet. At skabe v&#230;rdi for kunden! Det er vel ligemeget med hvilket programmeringssprog der benyttes bare det lever op til de stillede krav?

Desv&#230;rre er valget af programmeringssprog ofte baseret p&#229; helt andre og langt mindre dokumenteret aspekter s&#229;som hvilken ledige kompetencer der findes eller den danske favorit &quot;vi vil bruge det samme som alle de andre&quot;. Det kan ogs&#229; en softwarearkitekt som kun kender ordret &quot;Refactoring&quot; og v&#230;lger programmeringssprog isoleret ud fra denne ene egenskab. En egenskab som for&#248;vrigt ikke er en del af selve programmeringssproget men betegnes som v&#230;rende en teknisk disciplin. 

Lige meget hvilket programmeringssprog der v&#230;lges, er det ikke programmeringssproget som er skyld i at projekter ofte ender i noget syntakstisk rod! Hvis man roder alting sammen med et bestemt programmeringssprog, er sandsynligheden for at man det samme rod med andre programmeringssprog usandsynlig stor!</body>
  <category-id type="integer" nil="true"></category-id>
  <created-at type="datetime">2009-06-01T09:31:18Z</created-at>
  <id type="integer">142</id>
  <published type="boolean">true</published>
  <title>Don't need a language to create a mess </title>
  <updated-at type="datetime">2009-06-03T21:19:17Z</updated-at>
</post>
