<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hållbarhet |</title><link>https://clementgodbarge.com/sv/tag/hallbarhet/</link><atom:link href="https://clementgodbarge.com/sv/tag/hallbarhet/index.xml" rel="self" type="application/rss+xml"/><description>Hållbarhet</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>sv-se</language><lastBuildDate>Thu, 01 Oct 2026 00:00:00 +0000</lastBuildDate><image><url>https://clementgodbarge.com/media/icon_hu_64a6c3bec25b3d7b.png</url><title>Hållbarhet</title><link>https://clementgodbarge.com/sv/tag/hallbarhet/</link></image><item><title>Skyrails, återuppbyggt ur skärmdumpar</title><link>https://clementgodbarge.com/sv/post/skyrails/</link><pubDate>Thu, 01 Oct 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/sv/post/skyrails/</guid><description>&lt;p&gt;Omkring 2007 skapade Yose Widjaja, då student vid University of New South Wales, Skyrails, ett anmärkningsvärt program för att utforska nätverk i tre dimensioner. Man färdades genom själva nätverket, från nod till nod längs glödande räls, som om man befann sig inne i datan. Det såg ut som ett tv-spel i en tid då de flesta forskningsverktyg var platta och grå. Bakom ytan fanns ett verkligt djup: Skyrails hade ett eget skriptspråk för att formge och analysera grafer, och menyer skrivna i samma språk, så att även den som inte kunde programmera kunde använda det. Allt detta var en enda students verk. Jag såg en demo på YouTube för många år sedan och har aldrig glömt den.&lt;/p&gt;
&lt;h2 id="ett-program-som-försvann"&gt;Ett program som försvann&lt;/h2&gt;
&lt;p&gt;Skyrails underhölls aldrig. Det kördes på Windows, dess hemsida vid universitetet försvann, och varje länk jag följde ledde ingenstans. Det som fanns kvar var spår: ett
och en handfull blogginlägg från 2007, på
, på Tim Lamberts
och på
.&lt;/p&gt;
&lt;p&gt;Skärmdumparna är förvånansvärt talande. De visar en nattblå himmel strimmad av moln, länkar ritade som animerade chevroner, noder formade som ikoner eller cirkeldiagram, och en radiell meny som öppnar sig kring en nod när man håller ned höger musknapp. De visar namnen på de skript som drev varje demonstration (&lt;code&gt;labs.van&lt;/code&gt;, &lt;code&gt;macaque.van&lt;/code&gt;, &lt;code&gt;worldtrade.van&lt;/code&gt;), menyerna som skripten skapade och fyra teman med namnen &lt;em&gt;normal&lt;/em&gt;, &lt;em&gt;desert&lt;/em&gt;, &lt;em&gt;valley&lt;/em&gt; och &lt;em&gt;openspace&lt;/em&gt;. På en av skärmdumparna syns till och med en enda rad av skriptspråket, inskriven i konsolen högst upp på skärmen:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;with all nodes do nodeplane x 1 -1 end
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="rekonstruktion-ur-spåren"&gt;Rekonstruktion ur spåren&lt;/h2&gt;
&lt;p&gt;Utifrån detta material byggde Claude upp Skyrails igen på en natt. Den nya versionen körs i en webbläsare med
och borde i princip fungera i ett VR-headset. Den kopierar himlen, chevronrälsen, de glödande noderna med sina ikoner, cirkeldiagram och ringar, den stora etiketten för noden under muspekaren, den radiella menyn och de fyra temana. Den har också ett litet skriptspråk, uppbyggt kring den enda rad som skärmdumparna bevarar, så att &lt;code&gt;with … do … end&lt;/code&gt;-satser formger grafen och definierar menyerna.&lt;/p&gt;
&lt;p&gt;För att pröva den laddade jag in tre klassiska dataset: John Padgetts nätverk av florentinska släkter, med deras äktenskaps- och affärsband; Wayne Zacharys karateklubb; och Donald Knuths nätverk av gestalterna i &lt;em&gt;Samhällets olycksbarn&lt;/em&gt;, där två gestalter förbinds när de förekommer i samma kapitel. Videon nedan färdas genom det sistnämnda, från Valjean till Javert, Fantine, Cosette och Marius. Varje räls tänds när kameran följer den.&lt;/p&gt;
&lt;video controls playsinline preload="metadata" poster="/post/skyrails/poster.jpg" style="width:100%; height:auto; border-radius:4px;"&gt;
&lt;source src="https://clementgodbarge.com/post/skyrails/skyrails-les-miserables.mp4" type="video/mp4"&gt;
Din webbläsare kan inte spela upp den här videon. Du kan &lt;a href="https://clementgodbarge.com/post/skyrails/skyrails-les-miserables.mp4"&gt;ladda ned den&lt;/a&gt; i stället.
&lt;/video&gt;
&lt;p&gt;Resultatet låg så nära skärmdumparna att jag genast misstänkte att modellen under träningen hade tagit upp spår av originalkoden.&lt;/p&gt;
&lt;h2 id="originalet-dyker-upp"&gt;Originalet dyker upp&lt;/h2&gt;
&lt;p&gt;Sedan tog det hela en vändning. Efter rekonstruktionen hittade jag originalprogrammet på GitHub. En forskare hade delat det 2015, med Yose Widjajas tillstånd, tillsammans med koden till ett föredrag om datavisualisering på säkerhetskonferensen ShmooCon (
, även kopierat i
). Där finns de körbara filerna för Windows, data, shaders och originalskripten, men inte källkoden till själva motorn.&lt;/p&gt;
&lt;p&gt;Vi kunde alltså jämföra de två. Till utseende och känsla kom rekonstruktionen nära originalet, men dess skriptspråk och shaders skiljer sig mycket från förlagans. Originalskripten ser ut så här:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;with all edges do (
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; if(#marriage == 1) then (
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; linkorigin &amp;lt;- marriage -&amp;gt; linktarget;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ) end;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;) end;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De definierar subrutiner med &lt;code&gt;sub&lt;/code&gt;, menyer med &lt;code&gt;menudef&lt;/code&gt; och &lt;code&gt;menulink&lt;/code&gt;, färger med &lt;code&gt;rgb: 130 0 0&lt;/code&gt; och länktyper med pilar. Inget av detta finns i rekonstruktionen, som bara delar formen &lt;code&gt;with … do … end&lt;/code&gt; som syns på skärmdumpen. Inte heller originalets shaders, med namn som &lt;code&gt;BloomFX&lt;/code&gt; och &lt;code&gt;RetinalBurnFX&lt;/code&gt;, har något gemensamt med de nya.&lt;/p&gt;
&lt;p&gt;Därmed är frågan om memorering inte avgjord. Originalskripten har varit offentliga sedan 2015 och kan mycket väl ha ingått i modellens träningsdata, och ingen, inte ens modellen själv, kan säga säkert vad den har sett. Men om modellen hade memorerat Skyrails skulle jag vänta mig att den åtminstone hade återgett språket. Skillnaderna tyder på att Claude utgick från det som skärmdumparna visade.&lt;/p&gt;
&lt;h2 id="digital-arkeologi-och-programvarans-hållbarhet"&gt;Digital arkeologi och programvarans hållbarhet&lt;/h2&gt;
&lt;p&gt;Jag ser experimentet som en form av digital arkeologi: att bygga upp ett förlorat föremål ur de spår det lämnat efter sig, för att sedan hitta originalet och mäta hur nära vi kom. Som varje rekonstruktion är det nya Skyrails en tolkning. Utseendet och beteendet vilar på källmaterialet, medan allt därunder är nytt.&lt;/p&gt;
&lt;p&gt;Det är också en fråga om hållbarhet. Programvara föråldras mycket snabbare än de data den byggdes för att läsa. När ett program dör blir filerna, skripten och visualiseringarna som gjorts med det svåra att öppna, även när de finns kvar. Mycket av 00-talets programvara existerar i dag bara som skärmdumpar, videor och gamla binärfiler som allt färre maskiner kan köra. Det ursprungliga Skyrails går kanske fortfarande att starta på en Windowsdator, eller i en emulator, men det kan inte längre underhållas, anpassas eller porteras, eftersom källkoden har gått förlorad.&lt;/p&gt;
&lt;p&gt;Som jag förutspådde för några år sedan håller AI på att bli ett praktiskt verktyg mot den här sortens föråldring. Den kan rekonstruera ett förlorat verktyg ur dess spår, och den kan bygga upp de läsprogram som håller gamla data användbara. Nästa självklara steg för projektet är att lära den nya motorn att läsa de ursprungliga &lt;code&gt;.van&lt;/code&gt;-skripten och datafilerna, så att de demonstrationer som Yose Widjaja skrev 2007 kan köras igen. För alla som bryr sig om hållbarheten hos data – inom forskningen, i arkiven eller inom digital humaniora – förtjänar detta uppmärksamhet.&lt;/p&gt;
&lt;p&gt;Skyrails var före sin tid och imponerar fortfarande, nästan tjugo år senare. All ära för idén och utformningen tillkommer Yose Widjaja, och jag hoppas att detta når honom.&lt;/p&gt;</description></item></channel></rss>