Datamatikerskoler: Selvfølgelig skal vi prioritere Java og C#
De danske datamatikerskoler afviser enhver kritik af, at de ensretter de danske it-medarbejdere ved at koncentrere undervisningen om Java og C#.
Ifølge en undersøgelse, som Version2 har gennemført, er de to sprog altdominerende på datamatikerstudiet, og kritikere mener, at datamatikerne bør uddannes med bredere eller i hvert fald mere differentierede kompetencer.
Men datamatikere må ikke sammenlignes med de universitetsuddannede dataloger, understreger uddannelseskoordinator John Brunsborg fra Erhvervsakademi Midtjylland, som sidder i ledernetværket for datamatikeruddannelsen i Danmark.
»En datamatiker er en EDB-håndværker. Vi kan ikke lære dem alle de specialiserede færdigheder, som kunne være relevante,« siger han.
Sludder
Uddannelseschef Gert Simonsen fra Århus Købmandsskole giver ikke meget for de kritikere, som efterspørger maskinnære sprog som C og assembler.
»Det er noget sludder, for vi kan under ingen omstændigheder lære datamatikerne alle mulige sprog,« fastslår han.
»Mange dataloger har masser af gode ideer, men de har også fem år til at undervise i. Vi har kun to.«
Derudover er der pædagogiske årsager bag valget af Java og C#, fremhæver både John Brunsborg og Gert Simonsen.
»De to sprog er relativt let fordøjelige,« siger John Brunsborg.
Dækker erhvervslivets behov
Han lægger vægt på, at Erhvervsakademi Midtjylland er i dialog med virksomhederne i området, som aftager de fleste af skolens færdiguddannede datamatikere. De tæller blandt andre B&O, Bankernes EDB-Central og Jyske Bank, som alle er indforstået med satsningen på Java og C#.
»Det behov, vi har her i området, dækker vi bedst ved at undervise i Java og C#,« fastslår John Brunsborg.
Gert Simonsen koncentrerer sig også om det lokale erhvervslivs behov.
»Vi har det oppe og vende ca. en gang om året, hvor vi diskuterer, om det stadig er den rigtige måde at gøre det på,« fortæller han.
Det besvarer ikke spørgsmålet om, hvorfor der er så lille differentiering imellem de forskellige datamatikeruddannelser.
»Jeg tror, at de forskellige institutioner har en kontakt med erhvervslivet. De input, vi har fået, er, at vi underviser i det, som vi skal undervise i,« siger John Brunsborg.
Han gætter på, at andre institutioner har gjort det samme i deres område. Han mener, at vurderingen på landsplan er, at uddannelserne vælger de rigtige programmeringssprog.
Kommentarer (9)
»En datamatiker er en EDB-håndværker. Vi kan ikke lære dem alle de specialiserede færdigheder, som kunne være relevante,« siger han.
Uddannelseschef Gert Simonsen fra Århus Købmandsskole giver ikke meget for de kritikere, som efterspørger maskinnære sprog som C og assembler. »Det er noget sludder, for vi kan under ingen omstændigheder lære datamatikerne alle mulige sprog,« fastslår han.
En datamatiker er ganske rigtigt en håndværker. Det der burde være kendetegnende for håndværkere er, at de har lært håndværket "fra bunden". Når al undervisning foregår i Java og C# er det ikke at starte fra bunden.
Elever på datamatiker-uddannelsen bør ikke arbejde med assembler for at lære at programmere i det. Det er, med ganske få undtagelser, meget sjældent brugt i de virksomheder som datamatikere får ansættelse i. De studerende bør arbejde med assembler for at lære disciplineret programmering. Tænk før du koder og alt det der. Alt for ofte kan slamkode føres direkte tilbage til, at koderen aldrig har lært disciplineret arbejde.
Intet er vel mindre tilgivende end et assemblerprogram der ikke virker. Der kommer ikke nødvendigvis nogle compilerfejl og der kommer muligvis heller ingen programfejl - skidtet virker bare ikke. Se, det kræver evner og en disciplineret tilgang at få det til at virke og det er denne disciplin der er forskellen mellem en god programmør/udvikler/håndværker og en run-of-the-mill-trial-and-error slamkoder.
Datamatikeruddannelsen er en KVU. Disciplin kræver formentlig flere års træning end hvad der kan proppes ind i datamatikerstudiet. Og da virksomhederne, så vidt jeg forstår, er meget tilfredse med datamatikeruddannelsen, samt uddannelsen tilpasses til virksomhedernes behov, så er der ikke rigtig noget at brokke sig over.
Slamkodere er der også behov for, for i realiteten er der ikke noget alternativ til dem.
Flere års træning som dataloger heller ikke får. Disse bruger stadig 5 år på hele tiden at lære en vifte af teknologi og værktøjer. Datamatikere fokusere på java 3/4 af uddannelsen som også benyttes i samtlige andre fag. Min erfaring er at datamatikeres kode ofte er mere læsbar og der er lagt meget vægt på det pæne design. Hvor dataloger featurecreeper mere og bruger horder af akronymer.
Hvis jeg skulle ansætte en software konstruktør ville en datamatiker eller en anden specialist være mit foretrukne valg. Hvor jeg ville bruge dataloger til mere høj-niveaus udvikling, algoritme-pilleri og forskning. Med andre ord mener jeg at sandsynligheden for at en datalog er "slamkoder" er større en ved en datamatiker.
Men så igen vil jeg mene at det har mere med den enkelte programmør at gøre end hvad hun har læst.
Hvis det er slemt, at datamatikeruddannelsen på under 2½ år fokuserer på håndværk, teamarbejde, at kunne begå sig i en organisation m.v., så er det vel lige så slemt, at højtuddannede dataloger spilder tid med at kode administrative systemer og webapplikationer? De burde vel retteligt alle designe raketmotorer i stedet for at nedværdige sig til at lege faglærte håndværkere?
Lad os se det i øjnene: langt de fleste dataloger sidder efter endt uddannelse og laver nøjagtigt det samme som datamatikere. Nogle få får mulighed for at udnytte de ekstra færdigheder i praksis, men det ER altså de færreste. Så meget raketvidenskab er der bare ikke brug for i Danmark.
Selv om det umiddelbart kan virke som spild af godt liv, så vil jeg da alligevel foretrække at over-uddanne sig frem for det modsatte. Dataloger vil ALTID have flere strenge at spille på end datamatikere - i hvert fald de første par år efter endt uddannelse.
"... Og da virksomhederne, så vidt jeg forstår, er meget tilfredse med datamatikeruddannelsen, samt uddannelsen tilpasses til virksomhedernes behov, så er der ikke rigtig noget at brokke sig over... "
Jo! virksomhederne er tilfredse nu; men om 5 eller 10 år kan de ikke vælge andre måske overlegne programmeringsprog, da deres ansatte ikke kan andet end Java og/eller C#.
Der minder mig om mit tidligere arbejde, hvor man (før jeg blev ansat) havde oversat alt kode til C(++), for det var det, de nyuddannelde teknikum ingeniører kunne. Men samtidigt spurte teknikum virksomhederne, hvad de nye ingeniører skulle lære. Svaret var C.
Der er altså store fare i ovenstående tankegang: 1) Folk kan ikke omstilles, 2) valget af teknologi fastlåses i en ring-argumentation, hvor virksomheder vælger teknologi på baggrund af, hvad der undervises i, og der undervises i den teknologi, som virksomhederne bruger...
@Esben
Jeg ved ikke hvor du får dine ideer fra, men du ved tydeligvis ikke ret meget om, hvad datamatikere kan eller ikke kan. Det er en lettere elitær holdning at antage, at "bare" fordi man "kun" har 2 1/4 års uddannelse så kan man ikke omstille sig. Mage til vrøvl skal man da lede længe efter. Jeg har sjældent set generalisering af en gruppe som i diskussionen om, hvad datamatikere er værd.
"Jo! virksomhederne er tilfredse nu; men om 5 eller 10 år kan de ikke vælge andre måske overlegne programmeringsprog, da deres ansatte ikke kan andet end Java og/eller C#."
Du åbner selv op for usikkerhedsfaktoren: Hvilket sprog har virksomhederne gavn af om 5-10 år? Der sker formentlig en del på den tid alligevel. Netop på grund af det omskiftlige marked er det nødvendigt at undervise i programmeringsprincipperne frem for at ramme det/de "rigtige" sprog. Set i det lys, synes jeg kun, det bør være op til uddannelsesinstituionerne at vurdere hvilke sprog er mest fordelagtige for læringen. For mig at se, er Java et meget kvalificeret som springbræt.
"1) Folk kan ikke omstilles".
Jo, de kan - ikke altid noget de har lyst til, men hvis de vil være attraktiv arbejdskraft, så må de udvikle deres kompetencer. Desuden er det som regel er en organistorisk opgave, der skal finansieres af virksomhederne.
"2) valget af teknologi fastlåses i en ring-argumentation". Fra mit perspektiv er det ligegyldigt, medmindre man besidder et menneskesyn der siger, at mennesker IKKE KAN lære nye programmeringssprog, udover det de lærte på uddannelsen. Det mener jeg er noget vrøvl.
@Esben:
Sikke noget vrøvl.
Siden jeg læste har jeg overhovedet ikke rørt java.
Til gengæld har jeg under og efter studiet sat kode produktion skrevet i: Basic, Perl, PHP, Ruby, C, BASH (Hvis det gælder) og især PL/I.
Noget af det kører i kæmpe store offentlige it-systemer.
Det tager ikke mange dage at lære et nyt sprog. Men det tager selvfølgelig lang tid at blive rigtig god til et sprog.
Det er vel også et spørgsmål om at have en passende balance imellem hvad man bør vide og hvad man kan nå at få at vide på et studie af datamatikerens varighed.
Men "hvad man bør vide" har også vidt forskellig fokus - nogen mener, man bør vide alt om, hvordan en transistor og en XOR gate fungerer og se det i praksis, før man kan overhovedet sætte sig til en computer. Andre mener, at hvis ikke man har lavet et GUI indenfor 2 timer efter start, så er det for langt fra det praktiske.
En håndværker kan sagtens bore huller i en mur uden at vide præcis, hvordan boremaskinen virker. En anden kan sagtens bruge en hammer uden at have smedet den selv.
Men hvor meget er assembler-kodning praktisk anvendeligt og hvor meget er det "smeden af hammere"?
Kan man ikke have et fornuftigt forhold til performance og kode-optimering selvom man kun har programmeret i Java?

