Datanörderier

Jag kommer ju från andra hållet.

Jag hälsade på min kompis Daniel från barndomen i Marieholm lite då och då. Han hade fått en Atari 520STM då hans far var mycket teknikintresserad. Vi hade flyttat ifrån Marieholm när jag precis fyllt 9 men morsan slängde av mig där när vi åkte till mormor ibland. Vi spelade Dungeon Master, Elite, Arkanoid II och säkert något mer.

Datorer var direkt något jag såg som otroligt intressanta. En annan barndomskompis pappa vi träffade två gånger om året hade en 8086:a för sitt arbete. Där spelade vi Stugan och något primitivt bilspel. Det var bara någon enstaka gång men fick ändå se en ibm pc för första gången.

Jag lärde mig sen programmera basic på en kompis C64 hemma i Munka Ljungby när jag va 11 och vi skrev också av program från Svensk Hemdatornytt. Att programmera var mycket mer intressant än att spela spel, vilket mina kompisar inte höll med om. Dom där basic-programmen var mest POKE’s dvs man skrev värden till nåt register … vilket var helt obegripligt och på sätt och vis fortfarande är. Man måste ha hårdvarumanualen bredvid sig för att förstå vad som händer… POKE 53181, 8 … jaha? orange bakgrundsfärg. POKE 52180, 1 … vit text… Men skrev färgvärden 1-16 till en minnesaddress i RAM där systemet hämtade färginformation när den rensade skärmen. Helt obegripligt. Men det blev ju andra färger. Skitballt.

FOR I=0 TO 15:POKE 53281,I:FOR J=1 TO 200:NEXT:NEXT

Skitfräckt.

När jag va 13 år hade jag jobbat ihop och sparat alla mina pengar länge nog att jag fick råd med en dator. En Atari 520STFM (intern diskdrive!). Kopplade in den på familjens svartvita husvagns-TV. Förutom att jag piratkopierade spel till disketter man köpt för allt man jobbade ihop så hittade jag STOS som man kunde skriva basic-program i och rita sprites och göra lite enklare spel. Samtidigt gick jag på “fria timmen” eller vad det kallades på fredagarna en basic-kurs på skolan som matteläraren Bertil Piculell höll . Han hade skrivit många nyttoprogram och spel och var nog en utmärkt programmerare för sin tid. Lärde ut programmering på ett roligt sätt och man lärde sig i GW Basic på en 8086:a (eller den magiska 8088:a med färgskärm) som fanns i lektionssalen. Man satt sitt första grafikläge och började skriva ut pixlar på skärmen med PutPixel(x,y); Otroligt långsamt- men fantastiskt.


Så såg maskinen ut

Hemma fortsatte jag lite mer sporadiskt. Jag hade ingen kompis som programmerade så det blev att man fastnade i det lilla man kunde lära sig själv.

Skolands datorer byttes ut mot 80386:or när jag gick i åttonde klass. Jag läde mig känna en kille som heter Nils Ölmedal som nu är känd jazz-kontrabasist. Hans far var lärare och hade väl plockat upp ett och annat. Nils hade koll på powerbasic. Jag vill minnas att man kunde kompilera ut till binärfil och få upp hastigheten på exekveringen på detta. Man använde heller inga klassiska radnummer utan det var labels som användes vid goto. Om jag inte minns helt galet. Det var trots allt 33 år sen.

På något vis köpte familjen en Olivetti 80486-maskin. Farsan behövde lite till firman men det var mest jag som använde den:

Uppgraderas senare med ytterligare 4MB RAM och ett SoundBlaster ljudkort.

Till denna maskin gav Nils mig en kopia av Turbo Pascal och på biblioteket i Ängelholm lånade jag hem en bok om pascalprogrammering. En stor klumpig sak i storlek mellan A4 och A3. Läste från pärm till pärm och ihop med att jag köpte ett modem så jag kunde ringa BBS:er fick jag tag i programmerings-tutorials som jag laddade hem. Asphyxias VGA-trainer var en ögonöppnare för att kunna programmera grafik effektivt. Dvs mode 13h. 320x200 pixlar i 16 färgers palett. I Turbo Pascal kunde man skriva inline assember så det såg ut ungefär så här:

__asm {
    mov ax, 13h
    int 10h
}

Så hade man satt ett grafikläge och kunde börja skriva pixlar till minnesaddress $a000. Fantastiskt.

Det var ungefär i denna tid jag upptäckte demoscenen. Jag hade sett många demo på Atari men aldrig kopplat hur man kunde göra dom och ingen att fråga heller.

Unreal var det första demot jag såg på PC:

Finnarna i Future Crew var verkligen fantastiskt duktiga och det bevisas av det andra demot jag såg:

Efter det här var programmering det enda jag ville hålla på med. Satt jag vid en dator programmerade jag pascal och assembler.

Jag och en kompis hade drivit BBS i hans pojkrum i något år när vi beslutade oss för att åka på vårt första demoparty med en 512MB stor hårddisk för att få hem lite piratkopierade spel till BBS:en. Compusphere 95 i Helsingborg.
Väl där träffade jag min polare Anders som jag fortfarande programmerar ihop med. Anders hade en annan infallsvinkel till programmeringen och hade börjat med C men jag programmerade just då pascal och var fyra år äldre så han tänkte väl att jag kunde det där så vi började med pascal, men gick rätt snabbt över till C++ med Watcom-kompilatorn som erbjöd protected mode. Rent praktiskt ett sätt att erbjuda mer än chunks av allokerat minne större än 65536 bytes stort (16 bitar) och nu teoretiskt upp till 4GB (32 bit). Det gjorde att man enklare kunde använda grafiklägen med mer färger, t.ex 320x200x16 bit. Minnet som krävs för att lagra en skärm är helt enkelt större än 65536 bytes. Man hade också tillgång till 32-bitars register… dessutom exekverade koden ungefär dubbelt så snabbt så det var en naturlig övergång.
Innan vi bytte till c++ hade vi en pure ASM-period också där vi programmerade 32 bits assembler. Men det var lite “too much work”.

Vårt första demo. Saga. 320x200 i 256 färger.

Efter det har det blivit lite fler demo, gjorde en sajt för svenska demoscenen som hette Planet Zeus, började jobba med programmering. Slutade jobba med programmering. Blev plattsättare. Skrev en ny sajt för svenska scenen, scene.se. Byggt en egen CPU med diskreta kretsar (IC). Gick elprogrammet med inriktning elektronik så har byggt med Basic Stamps, Motorola 68HC11 och så vidare långt innan nymodigheter som Raspberry Pi och Arduino kom.

Givande kreativ hobby. Men inget att jobba med.
Trivs bättre under korkeken.

Har du programmerat web nånting? Lärt dig Angular eller react, lärt dig göra säkra backend och sånt?

Planetzeus var mitt första projekt med asp och accessdatabas.

Scene.se var mitt första projekt med php och mysql. Scene.se hade dessutom AJAX-kod för uppdatering av sidan on the fly. Det var bara google suggest som hade det på den tiden och prisjakt var väldigt tidiga med det också för sina sökresultat. Idag har ju alla sajter på ett eller annat sätt konstant uppkoppling till servern (inkl eaglegolf). Men då var det lite klurigt att lista ut hur XmlHttpRequest funkade :slight_smile:

Så ja, jag har petat på sånt. Typ först i sverige.

Men nej, jag har inte orkat lära mig alla ramverk som finns för modern webutveckling. Jag var där lite före dom. År 2004-5 ungefär.

Web är lika intressant som blött toapapper. Inte underligt vi använder färdig progamvara istället för att skriva eget till eaglegolf.

Ser det lite från sidan som den enda och rätt seniora testaren som kan mer programmering än de flesta testare… vi gör massor av web på jobbet och det är kul att se vad både frontendare och backendare kan åstadkomma. Ffa frontendgurun brinner verkligen för sina grejer och snackar dagligen med mej om hur grejer ska se ut (jag är väl lite produktledare, vet hur våra kunder vill ha sin utseenden), det är rätt fräckt att se hur han åstadkommer grejer.

3 gillningar

För mig platsar denna i Humorhörnan! Jag älskar den här typen av humor som flyger över huvudet på många men som blir så jäkla fyndig för insatta…

Ungefär som vuxenskämten i valfri “modern” animerad barnfilm.

Vibekodade ett tool på 2h (mesta av tiden tog faktiskt att få kompileringen rätt) som jag funderat över typ varje gång jag suttit och mätt med tumstock och multiplicerat med skalor på skärmen… Sätter en skala från inläst ritning och sen skriver den ut en låda med X*Y och Area till mig på det jag väljer sen.

Finns säkert nåt enterprise att köpa men det här täcker mina behov framöver.

… 30 minuter senare hade jag förflyttning av selection om jag råkat missa lite samt drag&drop av pdf till programmet för inläsning av ny fil.

Utan att skrivit ett endaste tecken kod. Makalöst. C++ / Linux.

Koden om nån vill kika.

2 gillningar

Gäller o va snäll mot robotarna

Inget om romarriket..


Satt och kollade på Matplotlib och Pandas. WTF?!? Vi gjorde ju detta nyss!
Jäkla teflonminne.

Har börjat fundera på vad man skall sysselsätta sig med som pensionär (om typ 20 år). Har inte programmerat på århundraden känns det som nu när jag gått första nybörjarkursen i Android programmering. Det är ett helt annat tankesätt nu för tiden. Får se om det är som att cykla, har ju faktiskt typ 100 högskolepoäng i programmering men de var på den gamla goda tiden då man kodade i Pascal och C, C++ var en modernitet :face_with_hand_over_mouth:

Men kul är det, och gråhårig är jag redan så det blir inte värre även om det tog en halvtimme att lyckas få två ikoner att hamna rakt under varandra.

Jag har å andra sidan inte frågat chatgpt om vikingar, medeltid och dinos heller.

AI… tycker det blir kul plötsligt.

På ett annat ställe på internet såg jag en Dino I duschen… :grin:

1 gillning

AI är fusk, men bra…Jag vill dock gärna förstå varför saker händer, inte bara få det att hända. Men visst har jag många konversationer med CoPilot

AI behöver inte alls vara fusk. Lite som att lära sig spanska via lärobok eller kolla på super easy spanish på youtube. Man får svaret givet. Sen är det upp till dig att analysera den kod som skapats. Tycker det är ett supersätt att lära sig. Och chatgpt eller copilot tröttnar aldrig på frågor typ “varför pilfunktioner istället för gammaldags subrutinanrop”, “är det verkligen mer lättläst för en oerfaren programmerare som senare skall underhålla koden” osv.

Nej att fråga AI om hur man löser saker och få exempel är ju som att fråga en lärare, att säga åt AI jag vill lösa följande och sedan få en massa kod, det är fusk :slight_smile:

Då fuskar jag glatt:)

En liten sidogrej som kanske inte alla tänker på. AI är jättebra på tråkiga/dryga saker. Strukturera/formatera data, sortera listor, generera SQL-satser utifrån listor osv osv. Bara fantasin sätter begränsningar. Då är det bara logiska och repetitiva grejer. Den gör i princip aldrig fel på sånt. Det är inte svårt utan det tar bara mycket tid om man ska göra det själv.

Det är så skönt att slippa fundera på sånt och bara be Claude om ett script eller färdig tabell.