Artikel top billede

Ola Bini letter på hatten og ønsker bedre programmeringssprog, der ikke er rettet mod kompileren, men giver bedre kommunikation mellem udviklere og domæneeksperter. Foto: Mai Skou Nielsen, Thoughtworks

Topudvikler: Programmeringssprog er meget dårlige

En af Nordens fremmeste udviklere retter en bredside mod programmeringssprog anno 2009.

"Programmeringssprog er meget dårlige, nogle er ekstremt dårlige, men de fleste er bare meget dårlige."

Hårde ord om programmeringssprog anno 2009, hvor man måske troede, at mere end 50 års forskning i og udvikling af programmeringssprog ville give et lidt bedre skudsmål.

Bedømmelsen kommer fra Ola Bini, der med tungepiercing, sortlakerede negle, Goth-look og nok metal i ørerne til at sætte metaldetektorerne i lufthavnene på overarbejde, skiller sig ud fra de øvrige deltagere på QCon-konferencen i London.

De nye sprog i enterprise-IT

Han er vært på sporet med titlen "Emerging languages in the Enterprise", hvor der er indlæg om programmeringssprog som Clojure, Ironpython og Ruby.

Har man været med i it-verdenen i mange år, kan man måske undre sig over, at det til stadighed er nødvendigt at introducere nye programmeringssprog.

Men det skyldes, at de eksisterende sprog ikke er gode nok - eller med Ola Binis ord simpelthen er meget dårlige.

"Hvorfor nye sprog? Fordi de eksisterende sprog er meget dårlige, nogle er ekstremt dårlige, men de fleste er meget dårlige. Sprog handler om kommunikation. Vi glemmer, at sprog skal kommunikere med mange stakeholders. Det skal kommunikere med computeren, men også domæneeksperter, ligesom det skal kommunikere med folk fem år fremme i tiden. Udviklingssproget er en udviklers vigtigste værktøj," siger Ola Bini.

Derved læner han sig op af kritikpunkterne, som man også hører fra fortalere for de domænespecifikke sprog. Der er for stor afstand mellem måden, domæneeksperter, eksempelvis forsikringsfolk, udtrykker sig på og så det sprog, som udviklere anvender til at implementere systemer, eksempelvis forsikringssystemer.

Java sucks

Som en af kerneudviklerne af JRuby, som implementerer Ruby programmeringssproget på Java-platformen, har Ola Bini et indgående kendskab til Java og Ruby. Han er ikke glad for Java-sproget.

"Java sucks," lyder det bramfrit fra Ola Bini, der uddyber:

"Java er et lavniveausprog, hvilket er meget dårligt. Du skal kode en masse ting, som ikke har noget med forretningsdomænet at gøre. Hvis du skal løse et domæneproblem og det meste af din kode ikke er rettet mod domæneproblemet, men er der for at tilfredsstille kompileren, så er der noget galt med dit sprog. Du bruger for meget tid på at tale med kompileren fremfor at tale med dine domæneeksperter," mener Ola Bini.

Til gengæld er Ola Bina glad for selve Java-platformen. Derfor er det en rigtig god idé at implementere Ruby-sproget på Java-platformen.

"Platformen og libraries er gode. Platformen er meget moden," siger Ola Bini, der også lægger vægt på, at JRuby minimerer de rent praktiske udfordringer ved at indføre et nyt programmeringssprog i organisationer, der allerede har et veletableret it-miljø.

"Det er nemmere at overbevise it-afdelingen og driftsfolk om at anvende JRuby, fordi det udnytter den eksisterende Java-platform. Det er sværere med ren Ruby, da de ikke ved, hvordan deployment og lignende skal foretages," forklarer Ola Bini.

Syv-årig programmør, Ioke og post-punk

Ola Bini startede med at programmere på sin fars Apple IIc-maskine, da han var omkring syv-otte år. Siden da har han haft en "usund interesse for programmeringssprog og kunstig intelligens", som han blandt andet skriver på sin blog.

Interessen for programmeringssprog førte ham ind på en it-uddannelse, men den sprang Ola Bini fra, "da han ikke lærte noget".

I stedet begyndte han at arbejde som programmør, da han var 18 år. Siden har han været involveret i en række open source-projekter, hvoraf JRuby er den mest højprofilerede.

En af Nordens bedste

Forleden blev Ola Bini kåret som en af de mest betydningsfulde svenske udviklere, men Ola Bini vælger at nedtone betydningen af den kåring.

"Computersweden kårede de bedste programmører og jeg var nummer 6, men det var baseret på en rundringning og siger ikke rigtigt noget om kvalifikationer," mener Ola Bini.

Han ser selv op til udviklere som Guy Steel og Richard Gabriel, ligesom folk som Kent Beck og Martin Fowler aftvinger respekt.

"Kent Beck og Martin Fowler er meget gode kommunikatorer; de er gode til at lære folk, hvordan de skal gøre tingene. Det er meget svært, og jeg tror ikke folk påskønner det nok. Jeg har stor respekt for dem, men jeg ved ikke, hvor gode udviklere de er," siger Ola Bini.

Identificer dig med håndværket - ikke et sprog

En god udvikler formår, ifølge Ola Bini, at se udover et givent programmeringssprog.

"De fleste udviklere er for snævertsynede. Hvis man kalder sig selv javaprogrammør så gør man noget galt. Hvis man tilgår håndværket på den rigtige måde, så identificerer man sig med håndværket, ikke programmeringssproget. Hvis man identificerer sig som java-programmør, så begrænser man sig selv," mener Ola Bini.

Ioke - ikke en joke

Netop programmeringssprogenes begrænsninger er noget som Ola Bini udforsker i sit seneste projekt Ioke - Ioke med et "I", ikke "L" eller "J".

I stedet for at lægge begrænsninger på programmørens mulighed for at udtrykke sig, skal programmeringssproget hjælpe programmøren med at formulere og beskrive et givent domæne.

"Ioke er et eksperiment. Jeg undersøger, hvor udtryksfuldt et sprog kan blive, hvis man ser totalt bort fra performance," siger Ola Bini og uddyber:

"Jeg går efter det, jeg vil realisere i et sprog, fremfor at tænke over hvad det koster i performance. Ved udviklingen af alle sprog har man altid skelet til performance. Det vælger jeg at se bort fra i denne fase," siger Ola Bini.

Ioke er blandt andet inspireret af sproget IO og ligesom JRuby er Ioke rettet mod Java-platformen.




Brancheguiden
Brancheguide logo
Opdateres dagligt:
Den største og
mest komplette
oversigt
over danske
it-virksomheder
Hvad kan de? Hvor store er de? Hvor bor de?
Targit A/S
Udvikling og salg af software til business intelligence.

Nøgletal og mere info om virksomheden
Skal din virksomhed med i Guiden? Klik her

Kommende events
Industry 4.0 – sådan udnytter du AI og digitalisering til optimering af din produktion.

På denne konference fokuserer på en digitaliseret optimering af processer i produktions- og procesorienterede virksomheder. Herved bliver du f.eks. i stand til at kombinere maskiner med sales forecasting og derved planlægge anvendelsen af produktionsapparat og medarbejderallokering effektivt – samt begrænse materialespild og nedetid ved at optimere produktionsplanlægning og omstilling af produktionsmateriel.

04. september 2024 | Læs mere


Roundtable for sikkerhedsansvarlige: Hvordan opnår man en robust sikkerhedsposition?

For mange virksomheder har Zero Trust og dets principper transformeret traditionelle tilgange til netværkssikkerhed, hvilket har gjort det muligt for organisationer at opnå hidtil usete niveauer af detaljeret kontrol over deres brugere, enheder og netværk - men hvordan implementerer man bedst Zero Trust-arkitekturer i et enterprise set up? Og hvordan muliggør Zero Trust-arkitekturen, at organisationer opnår produktivitetsfordele med AI-værktøjer samtidig med, at de forbliver sikre i lyset af fremvoksende trusler?

18. september 2024 | Læs mere


CIO Trends 2024

På denne dag vil nogle af de nominerede til prisen som Årets CIO som keynotes, hvor de deler deres erfaringer og gode råd. Vi dykker desuden ned i de dynamiske ændringer, der præger it-leder rollen, hvor ledelse og strategi spiller en stadig større rolle i de komplekse it-organisationer.

24. september 2024 | Læs mere