Nu skrev jeg lige få øjeblikke siden om spilfirmaet Bioware, som Electonic Arts opkøbte, og det får mig til at tænke på en ting, jeg ser igen og igen på Facebook. Folk klapper helt automatisk, når et firma bliver opkøbt. Som om, det er helt automatisk bliver godt for lokalsamfundet. Det er lidt som at pisse i bukserne i frostvejr. Det varmer i starten, men...

Skulle vi ikke i det mindste vente, til vi ser, hvad resultatet bliver? 

I bedste fald udvidelser og jobsikkerhed for personalet. I værste fald er virksomheden tabt for byen, fordi den efter en årrække rykker væk. Det er som regel "chefen for det hele", der vinder uanset. Men efter at have læst utallige bøger om IT-industrien, kan jeg nævne, at de tidligere ejere ofte siver lige så stille ud, fordi de ikke kan komme sig overens med kulturen i det selskab, de fusionerede med.

Jeg elsker pizza, og var stamkunde hos pizzariaerne på Just-Eat. Nem bestilling. Gigantisk success herhjemme i årevis. Flere tusinde ordrer om dagen. Opkøbte konkurrenten Hungry. Nu - ingenting, fordi strategiskifte betød, at den europæiske ejer efter fusionen ikke synes, Danmark var et rentabelt marked. I forhold til hvad, kan man så spørge? Det kommer vel an på ens vision.

 Jeg bor i Randers, og selvom jeg ikke ynder at dvæle ved fortiden, den er immervæk fortid, så har kommunen været vidne til en trist udvikling tidligere. Kommunen var op til 00'erne velkendt for sine store produktionsvirksomheder. Vi havde Colon/SCA, Thor Bryggeriet, Scandia, NEG Micron - alle opkøbt og lukket efter fusioner. Hostingudbyderen DanDomain eksisterer endnu, men er flyttet til Skanderborg, så den lokale forankring er væk.

Man kan sådan meget forfladigende sige "at sådan er udviklingen", at alt går mod, at alt skal være større og vildere - jeg synes bare alt for tit, danske virksomheder bliver taberne i det store fusionsspil. Og det er møghamrende ærgerligt, for det går ud over lokalsamfundet.

EA (Electronic Arts) har - til min store ærgelse - valgt at lukke BioWare, som skabte Mass Effect og en masse andre gode computerspil, såsom Baldurs Gate og Dragon Age. De vil hellere satse på EA Sports Soccer FC og lignende spil, som de kan malke til ukendelighed. 

Jeg er ikke den store gamer længere, men en af de spilserier, der kan få mig til at støve den gamle PS4'er af, er scifi-klassikere, såsom Mass Effect-serien, som jeg har gennemført mere end en gang. 

Jeg synes spilbranchen er blevet umådelig kedelig med alle disse opkøb, som der er sket i den seneste tid. De nye giganter satser på alt det sikre, fordi udvikling af spil er blevet umådelig dyrt. Det er de store økonomiske udfordringer, AAA-virksomhederne forsvarer sig med, når de bliver spurgt ind til, hvorfor vi får alle de "sikre" titler, og meget lidt eksperimenteren. Men det er samtidig dem, der skal bryde den onde cirkel, hvis spil skal være mangfoldige og interessante igen.

Men det kan være, vi står overfor et reboot af hele branchen? Jeg spår en gylden fremtid for mindre indie-udviklere, der tør skabe noget nyt. De har allerede været i gang i noget tid. Der er allerede en bunke indie-spil, som jeg har haft gevaldigt mange timer med, og det fede ved dem er, at de kan køre på aldrende hardware: Super Meat Boy, Firewatch, Hollow Knight og Celeste.

Et spilfirma, der har en høj stjerne hos mig er Hello Games, der laver "No Mans Sky". De har lidt af den gamle aura omkring sig, som var kendetegnende for spilfirmaer, da jeg voksede op. EA var allerede store dengang, men spredt ud over mange flere genrer. Hello Games er en håndfuld mennesker, som har fede idéer. De har vendt en negativ start til noget positivt, og No Mans Sky har fået ikke mindre end 40(!) gratis udvidelser. Det er jo uhørt i dag, hvor andre mener, der skal kapitaliseres på alt. Hello Games tjener penge på simpelthen at sælge meget og så være på enhver platform, der eksisterer. 

Nå, tilbage til Mass Effect. Jeg håber, at spilserien finder en ny ejer, for der er lige så meget dybde i det spilunivers, som der i Star Wars. Amazon skulle efter sigende stadig være i gang med en TV-serie, så det kan være. at det bidrager med noget positivt. Og så må man jo ikke glemme at BioWare/ME-fans i stor grad er i gang med at lade EA vide, at de har taget en forkert beslutning.

Der er blevet lækket en intern video af ME: Universe, og nøj, hvor ser det godt ud. Du kan se traileren her hos IGN

Vi må se hvad fremtiden bringer (kig evt. på Exodus). I en lyserød verden skulle ubrugte rettigheder overgå til public domain, kode open sources osv. men sådan fungerer verden desværre ikke. 

Jeg husker med stor glæde, da jeg boede hjemme, og når jeg kom hjem fra skole, smed toasts i toasteren og kørte ind på mit værelse for at nørde computeren (C64 og Amiga.. woo!) med MTV eller TV2 Puls (musikprogram) i baggrunden (jeg har faktisk stadig en toaster - så street er jeg :-D)

TV2 Puls stoppede, MTV blev til reality-tv (tjekket pr. oktober 2026). 80'erne og 90'ernes kreative vildskab blev afløst af kedsomhed og konformitet. Der må helst ikke være farver, vi må ha' orden, lader designsproget os vide. Ja, Jeg kan godt se det superironiske i, at min blog har de samme kedsommelige farver - haha - men jeg skulle bare lige have en blog op. Den får en grafisk overhaling på et senere tidspunkt.

Den digitaliserede tidsalder gav os bl.a. Youtube. Yay! Så jeg har på en playliste samlet en ordentlig røvfuld af de musikvideoer, jeg kan huske navnene på - og andre har Youtubes algoritmer hjulpet mig med. Kvaliteten på nogle af numrene af dem bærer desværre præg af, at musikerne og deres udgivere har uploadet dem for længe siden, men det fungerer. Jeg synes musikvideoerne i kraft af billederne, giver en ekstra dimension til musikken, som alm. musikstreamingtjenester ikke kan hamle op med.

Du finder min kanal lige her:

https://youtube.com/@simonjustesen

Har jeg drømt om at starte noget selv? Always. 

Den tekniske side har jeg fod på, jeg har med stor succes leget med IceCast (Open Source <3) for noget tid siden. Det kunne være fedt at starte en streamingtjeneste med alle de gode gamle numre, for at de ikke går i glemmebogen. Men en kæmpe showstopper: Jeg har ikke rigtig lyst til bøvle med den administrative del - og jeg tror, det er dyrt i trafik og licenser at have en streamingserver kørende 24/7. Man kunne også starte lidt simplere - med indies? En af de første streamingtjenester, jeg nogensinde fandt - Digitally Imported - di.fm - er stadig i drift. Tjek den ud :)

MTVs første video var "Dire Straits - Money for Nothing (I want my MTV)" - den indkapsler æraen meget godt :)

Den gråskæggede mand her er lidt træt af Javascript-frameworks såsom React, som jeg synes "vil for meget", så jeg er gået tilbage til W3Cs WebComponents. API'en er lidt bøvlet, men så kan man føle sig som en l33t haX0r, når ens plugin virker ;) Webstandardiseringsorganet W3C er desværre ikke så kendt for at lave simple API'er, så det er på mange måder mere usexet end React. Kan du ikke undvære React, så er der også Vue og Preact, der er en slags "Light-udgave" af React.

Men altså, Web Components fjerner eksterne afhængigheder helt. Jo færre eksterne moduler, dit script er afhængig af, jo større er sandsynligheden for, at det også virker om 5 år. 

Nedenfor er et starter-eksempel på, hvordan man kan have et eksternt stylesheet ved siden af sin WebComponent. Du kan sagtens definere mere af nedenstående direkte i dit HTML-dokument, men jeg kan godt lide at have mest muligt samlet, for det gør det nemmere at genbruge og distribuere komponenten

Prop dette i en .js-fil - kald den imgcard.js (beklager formateringen - eller mangel på samme, Bludits theme overskriver Rich text editor'ens stylesheet)

import stylesheet from "./imgcard.css" with { type: "css" }

class SJImageCard extends HTMLElement {

constructor() { super(); }

connectedCallback() { const shadow = this.attachShadow({ mode: "open" }); shadow.adoptedStyleSheets = [stylesheet];

const wrapper = document.createElement("div");
wrapper.setAttribute("class", "card shadow");
wrapper.textContent = this.textContent;
shadow.appendChild(wrapper);

}

disconnectedCallback() { console.log("Elementet blev fjernet"); } } customElements.define("sj-imagecard", SJImageCard);

Lidt om koden:

Det er ren boilerplatekode. Jeg starter lige i bunden på sidste linje, og hopper så tilbage: customElements.define-linjen registrerer dit element med browserens CustomElementRegistry. Den første parameter afgør, hvordan man kalder sit custom element i ens HTML-dokument. Så placer tagget <sj-imagecard></sj-imagecard> i dit HTML-dokument, næste parameter er navnet på klassen, hvor din komponentlogik lever.

Tilbage på linje 1 importerer jeg stylesheetet, bemærk den nye syntaks. Tidligere kunne du skrive assert istedet for with, men den notation er deprecated.

Så opretter jeg en klasse SJImageCard, der danner grundlag for min komponent. Klassen skal nedarve fra HTMLElement for at få de rigtige egenskaber. I constructor'en skal du huske at kalde super()-metoden, for ellers bliver constructor'en i HTMLElement ikke kaldt på rette tidspunkt.

ConnectedCallback-metoden kaldes så snart ens komponent indlæses af browseren, så det er der, du placerer hoveddelen af din kode. attachShadow-metoden laver en ShadowDOM for din komponent, der er separat fra browserens "hoved"-DOM, og det er her, du så laver din komponents indre logik. Jeg tror umiddelbart resten af koden er selvforklarende. Ellers imødeser jeg en sur besked på Mastodon ;)

Jeg opdagede lige, at podcasten "SaaS Købmænd" (fedt tiltag!) havde et interview med en af mine personlige OpenSource-superhelte, Niels Hartvig, som opbyggede CMS-systemet Umbraco. Jeg var selv en del af community'et i opstarten tilbage i 00'erne. Knapt så synlig, for min gode ven Karina og jeg havde travlt med at bygge firma, jeg var dog med på forummet i forhold til at prøve at hjælpe nye på plads.

Det var fedt at følge med i Umbracos udvikling på sidelinjen. Niels Hartvig brugte meget aktivt sin blog i starten, så man kunne følge med i rejsen og Umbracos første community-site afspejlede, at der var gang i udviklingen, for man kunne hele tiden følge med i uploadede community-pakker og generel forum-buzz.

Jeg synes Niels' og Umbracos historie er meget inspirerende og alt for overset af medie-Danmark, for det er en vild, men samtidig alt for stille succes, de har haft: Det er et millionmilliard-selskab i dag. Umbraco bruges af rigtig mange offentlige instanser og selskaber i Danmark og verden over. Det du'r! Det viser, at man godt kan tjene penge på Open Source, der mangler bare flere iværksætter-historier om, hvordan man gør.

Se podcasten og bliv inspireret :-D

Umbraco.org
SaaS Købmænd

Overskriften burde allerede afsløre min holdning til AI.

Lad mig tage det positive først: 

Det er fedt, at man kan skrive et spørgsmål i en AI-chat og den så forstår en, selvom man måske formulerer sit spørgmål upræcist. Jeg er vokset op med teksteventyr, der krævede, at man var meget præcis, hvis spillet skulle gøre, hvad man bad det om. Og jeg tror, LLM'er kan gøre rigtig meget for vores måde at interagere med computere på, så det bliver mere naturligt. Tale-til-tekst apps har nogle gange svært ved at forstå mit randrusianske, jeg ser frem til en fremtid med mindre barrierer der.

Et andet sted, der virker rigtig godt: AI bruges allerede til billedklassificering. Den startede med at lære at tolke krumninger på agurker, og vi er kommet et stykke videre: ESA bruger f.eks AI til at finde bestemte former for galakser udfra rumteleskopet James Webbs mange opdagelser.

Resten ved AI imponerer mig ikke rigtigt, det bliver oversolgt og den agentmæssige automatisering synes jeg, man skal holde sig langt fra. Man kan ikke overskue konsekvenserne af den. Du lægger beslutninger, der burde være dine, i hænderne på den, der har bygget AI'en.

Du kender ikke din vibekodede app til bunds

Jeg har observeret vibekodere, der siger, de er effektive, men når man når dybere ind i samtalen, så viser det sig, at de brændt en masse tokens af på ingenting, og brugt halve og hele dage på at "skændes" med en AI for at få deres program til at gøre præcist det, det skal. Det fremgår sjældent af den AI-lovprisning, der sker rundt omkring.

Hele måden, mange vibekodere strukturerer sin udvikling omkring brugen af AI er forkert. 

I "gamle dage" kendte du din kode, fordi du eller dit team havde bygget den selv fra bunden. Ikke altid det hele, men du havde et vist overblik. Nu får du serveret en massiv bunke kode, du ikke kender, som du så skal gennemgå for fejl. Det vel at mærke oven i den tredjepartskode, der bliver inviteret ind i din kodebase via andre folks kodebiblioteker udefra. Og i en tidsalder, hvor output og hastighed synes vigtigere end grundighed, så kan man sagtens forestille sig, at nogle vil springe let og elegant over kodegennemsyn - i højere grad nu end tidligere.

Hvis ikke du nyder at pille kode fra hinanden, for at se hvad den gør - så skal du overveje om det er programmør, du vil være. For hvis du bare stoler på outputtet fra AI, så kommer du til at bygge løsninger, der er lige så stabile som vådt bølgepap.

RAD-værktøjer var 90'ernes effektivitetsdrug

Jeg kender hype, når jeg ser den.

I 90'erne var effektivitetsdrug'et for programmører såkaldte RAD-værktøjer, Rapid Application Development. Det var "klik og træk den her tekstboks ind i din applikation" og du har dit program. Ingen med sans for seriøs produktudvikling bruger dem i dag, og folk, der har arbejdet med vedligehold af kode, vil formentlig nikke genkendende.

RAD-værktøjer fungerede udmærket til prototyping og små husstandsløsninger. Koden blev hurtigt en bunke miskmask, så snart dit program nåede en vis kompleksitet, fordi RAD-værktøjerne producerede mere kode, end der egentlig var brug for, og til at overskue.

Det er akkurat samme sted, du ender, hvis du lukker AI ind i dit udviklingsmiljø, og de, der siger, at jeg er fuld af l*rt - lad os snakkes ved om et år. For selvom en AI foregiver at forstå din kode, så angriber den stadig løsningen uden at forstå konteksten. Vi hører bare aldrig om omfanget af korrigerende prompter.

Jeg ser et marked for "AI disaster recovery" i fremtiden.

"AI Agents gone rogue"

Så er der hele snakken om AI-agenter, der kan udføre handlinger for dig. Man har lavet lavpraktiske AI-agenter, de sidste 50 år. Det hed bare shell-scripts, en serie kommandoer, der fik computeren til at udføre programmerede operationer uden manuel menneskelig intervention. Det nye er, at med AI, så ligger muligheden nu i hænderne på almindelige mennesker uden scripting/programmeringserfaring... What could go wrong? Det er dybest set selvsamme scripting, bare pakket ind i et pænt chat-interface, med en AI, der giver dig visuel feedback i forhold til, hvad der foregår.

Hvor vi kendte resultatet af, hvad et script gjorde, så er der ingen, der kender resultatet af, hvad en AI agent laver under motorhjelmen. Den prøver at give dig en tekstmæssig opsummering af, hvad den har tænkt sig at gøre, og beder dig svare ja eller nej, men det er først, når du ser dens tilbagemelding, at du forstår, hvilke handlinger den har udført. Så ku' den i praksis have lænset din bankkonto, fordi den synes du sku' købe nogle aktier eller obligationer oveni overførslen til lillemor, som du egentlig bad den om.

Nej, jeg kommer ikke til at invitere AI-agenter ind i mit liv. Overhovedet.

Virksomheder bliver afhængige af AI

Der er en anden ting, jeg heller ikke forstår. Og det er at virksomheder uden at blinke vil outsource hele eller dele af deres forretning til en af de udenlandske AI-selskaber. Vil du virkelig satse hele virksomhedens eksistensgrundlag på en ekstern faktor?

Der er nok overraskende mange, der vil svare ja, men så har de ikke gidet at lave en risikoanalyse for deres virksomhed. Jeg gentager mig selv fra et tidligere afsnit: Jeg ser et marked for "AI disaster recovery" i fremtiden.

Tailwind, der er et populært CSS-layout framework, måtte fyre medarbejdere, og sælge sig selv til Shopify for stadig at kunne holde dørene åbne. Årsagen var at deres tokenforbrug blev så højt, at økonomien ikke hang sammen.

Tokenpriserne stiger i øvrigt heftigt, fordi hvedebrødsdagene er ovre AI-selskaberne mangler at påvise en forretningsmodel, der kan tjene dem penge.
Forbes skriver: "Virksomheder kæmper med hastigt stigende AI-udgifter, især på "tokens", men kæmper med at påvise et klart investeringsafkast. En OpenAI-rapport fandt ingen meningsfuld sammenhæng mellem medarbejdernes token-output og omsætning pr. medarbejder, på trods af at udgifterne steg kraftigt."

AI-revolutionen udebliver. Også selvom AI-selskaberne har gang i hype-maskinen. Og hvorfor var det, at grøn omstillingsdagsordenen røg sig en tur, da snakken faldt på AI? Hvis ikke du søger nul emission, så er du ikke innovativ nok.