← Back to feeds | Find edited posts

Tornevalls Blog

URLID: 10
Source URL: https://www.tornevalls.se
Categories: Tornevall

Log in to subscribe to heads-up notifications for this feed or its category via email, Slack, or Discord.

RSS endpoint: https://tools.tornevall.net/api/rss/feed/10
Ask about this feed (click to open)

Ask the AI anything about content, patterns, and edits for Tornevalls Blog. The AI will receive full version history including all edited articles. Open question history.

Use "Yearly" to include edit history for older articles.
Guest limits: 0/6 today, 0/12 this week.

Vad gör du när ditt konto raderas?

Permalink
Published: 2026-03-15 15:06:46
Discovered: 2026-03-22 16:07:12
Hash: 9af5301514de815aaa3a11dfcb8a19c1340ef821
https://www.tornevalls.se/vad-gor-du-nar-ditt-konto-raderas/
Description

Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...

Content

Vill du börja innan du läst klart? Klicka här!

Table of Contents Toggle Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet? Problemet med sociala medier

Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier.

Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta.

Därför behövs en plats utanför plattformarna.

Forumet “Tornis” är öppet för allmänheten!

Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen.

Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk.

Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet.

Besök oss på https://forum.tornevall.net

Hur gör man?

Hur gör man?

När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav.

För att registrera dig eller logga in

  1. Klicka på “Login or Sign Up”

Uppe till höger på sidan finns knappen Login or Sign Up.

När du klickar där öppnas inloggningsrutan.

  1. Välj vad du vill göra

I rutan kan du:

Logga in om du redan har ett konto

Klicka på Sign Up för att skapa ett konto

Logga in snabbt med Google längst ner

  1. Skapa konto

Om du väljer Sign Up kommer du till registreringssidan.

Där fyller du i:

användarnamn

lösenord

e‑postadress

Sedan godkänner du villkoren och klickar på Complete Signup.

Normalt skickas också ett verifieringsmail till din e‑postadress. Klicka på länken i mailet för att aktivera ditt konto.

Klart.

Snabbaste sättet?

Det enklaste är ofta att bara klicka på Log in with Google.

Då skapas kontot automatiskt och du kan börja använda forumet direkt.


History — 2 versions shown

Changes

From 2026-03-15 15:06:46 (discovered: 2026-03-19 12:04:13) hash: c51f755a14db780d42bfc7349e294d279bc0c48d
To 2026-03-15 15:06:46 (discovered: 2026-03-22 16:07:12) hash: 9af5301514de815aaa3a11dfcb8a19c1340ef821
Title
Vad gör du när ditt konto raderas?
Description
Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...
Content
Vill du börja innan du läst klart? Klicka här! Table of Contents Toggle Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet? Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta. Därför behövs en plats utanför plattformarna. Forumet “Tornis” är öppet för allmänheten! Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen. Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk. Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet. Besök oss på https://forum.tornevall.net Hur gör man? Hur gör man? När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav. För att registrera dig eller logga in 1. Klicka på “Login or Sign Up” Uppe till höger på sidan finns knappen Login or Sign Up. När du klickar där öppnas inloggningsrutan. 2. Välj vad du vill göra I rutan kan du: Logga in om du redan har ett konto Klicka på Sign Up för att skapa ett konto Logga in snabbt med Google längst ner 3. Skapa konto Om du väljer Sign Up kommer du till registreringssidan. Där fyller du i: användarnamn lösenord e-postadress e‑postadress Sedan godkänner du villkoren och klickar på Complete Signup. Normalt skickas också ett verifieringsmail till din e-postadress. e‑postadress. Klicka på länken i mailet för att aktivera ditt konto. Klart. Snabbaste sättet? Det enklaste är ofta att bara klicka på Log in with Google. Då skapas kontot automatiskt och du kan börja använda forumet direkt.
Old vs new
From
TITLE:
Vad gör du när ditt konto raderas?

DESCRIPTION:
Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...

CONTENT:
Vill du börja innan du läst klart? Klicka här!

Table of Contents
Toggle
Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet?
Problemet med sociala medier

Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier.

Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta.

Därför behövs en plats utanför plattformarna.

Forumet “Tornis” är öppet för allmänheten!

Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen.

Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk.

Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet.

Besök oss på https://forum.tornevall.net

Hur gör man?

Hur gör man?

När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav.

För att registrera dig eller logga in

1. Klicka på “Login or Sign Up”

Uppe till höger på sidan finns knappen Login or Sign Up.

När du klickar där öppnas inloggningsrutan.

2. Välj vad du vill göra

I rutan kan du:

Logga in om du redan har ett konto

Klicka på Sign Up för att skapa ett konto

Logga in snabbt med Google längst ner

3. Skapa konto

Om du väljer Sign Up kommer du till registreringssidan.

Där fyller du i:

användarnamn

lösenord

e-postadress

Sedan godkänner du villkoren och klickar på Complete Signup.

Normalt skickas också ett verifieringsmail till din e-postadress. Klicka på länken i mailet för att aktivera ditt konto.

Klart.

Snabbaste sättet?

Det enklaste är ofta att bara klicka på Log in with Google.

Då skapas kontot automatiskt och du kan börja använda forumet direkt.
To
TITLE:
Vad gör du när ditt konto raderas?

DESCRIPTION:
Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...

CONTENT:
Vill du börja innan du läst klart? Klicka här!

Table of Contents
Toggle
Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet?
Problemet med sociala medier

Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier.

Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta.

Därför behövs en plats utanför plattformarna.

Forumet “Tornis” är öppet för allmänheten!

Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen.

Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk.

Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet.

Besök oss på https://forum.tornevall.net

Hur gör man?

Hur gör man?

När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav.

För att registrera dig eller logga in

1. Klicka på “Login or Sign Up”

Uppe till höger på sidan finns knappen Login or Sign Up.

När du klickar där öppnas inloggningsrutan.

2. Välj vad du vill göra

I rutan kan du:

Logga in om du redan har ett konto

Klicka på Sign Up för att skapa ett konto

Logga in snabbt med Google längst ner

3. Skapa konto

Om du väljer Sign Up kommer du till registreringssidan.

Där fyller du i:

användarnamn

lösenord

e‑postadress

Sedan godkänner du villkoren och klickar på Complete Signup.

Normalt skickas också ett verifieringsmail till din e‑postadress. Klicka på länken i mailet för att aktivera ditt konto.

Klart.

Snabbaste sättet?

Det enklaste är ofta att bara klicka på Log in with Google.

Då skapas kontot automatiskt och du kan börja använda forumet direkt.

Versions

  1. 2026-03-15 15:06:46
    Discovered: 2026-03-22 16:07:12 Hash: 9af5301514de815aaa3a11dfcb8a19c1340ef821
    Title:
    Vad gör du när ditt konto raderas?
    Description:
    Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...
    Content
    Vill du börja innan du läst klart? Klicka här!

    Table of Contents
    Toggle
    Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet?
    Problemet med sociala medier

    Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier.

    Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta.

    Därför behövs en plats utanför plattformarna.

    Forumet “Tornis” är öppet för allmänheten!

    Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen.

    Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk.

    Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet.

    Besök oss på https://forum.tornevall.net

    Hur gör man?

    Hur gör man?

    När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav.

    För att registrera dig eller logga in

    1. Klicka på “Login or Sign Up”

    Uppe till höger på sidan finns knappen Login or Sign Up.

    När du klickar där öppnas inloggningsrutan.

    2. Välj vad du vill göra

    I rutan kan du:

    Logga in om du redan har ett konto

    Klicka på Sign Up för att skapa ett konto

    Logga in snabbt med Google längst ner

    3. Skapa konto

    Om du väljer Sign Up kommer du till registreringssidan.

    Där fyller du i:

    användarnamn

    lösenord

    e‑postadress

    Sedan godkänner du villkoren och klickar på Complete Signup.

    Normalt skickas också ett verifieringsmail till din e‑postadress. Klicka på länken i mailet för att aktivera ditt konto.

    Klart.

    Snabbaste sättet?

    Det enklaste är ofta att bara klicka på Log in with Google.

    Då skapas kontot automatiskt och du kan börja använda forumet direkt.
  2. 2026-03-15 15:06:46
    Discovered: 2026-03-19 12:04:13 Hash: c51f755a14db780d42bfc7349e294d279bc0c48d
    Title:
    Vad gör du när ditt konto raderas?
    Description:
    Vill du börja innan du läst klart? Klicka här! Problemet med sociala medier Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier. Under åren har vi sett vänner försvinna från Facebook och andra...
    Content
    Vill du börja innan du läst klart? Klicka här!

    Table of Contents
    Toggle
    Problemet med sociala medierForumet “Tornis” är öppet för allmänheten!Hur gör man?För att registrera dig eller logga in1. Klicka på “Login or Sign Up”2. Välj vad du vill göra3. Skapa kontoSnabbaste sättet?
    Problemet med sociala medier

    Vi är ett gäng som har insett att något mer behövs vid sidan av sociala medier.

    Under åren har vi sett vänner försvinna från Facebook och andra plattformar – ibland av egen vilja, ibland efter avstängningar, raderade konton eller rena trötthetsbrott. Och när någon väl försvinner därifrån är det ofta svårt att hitta tillbaka till varandra igen. Kontakter, samtal och sammanhang kan bara vara borta.

    Därför behövs en plats utanför plattformarna.

    Forumet “Tornis” är öppet för allmänheten!

    Forumet “Tornis” (dåvarande “Tornevalls Forum”) föddes en gång ur dokusåpa-världen. När dokusåpa-seriers säsonger avslutades och ingen visste var alla skulle ta vägen bjöds alla in till “Tornis” och vi samlade under många år upp entusiaster i den världen.

    Sedan tog Facebook över och forumen hamnade i skuggan när “alla ändå fanns där”. Men nu ser vi samma problem igen, i en annan form: Människor kastas ut från plattformar, lämnar dem självmant för att slippa stötta giganter eller försöker hitta andra vägar genom Threads, X, Instagram, TikTok och annat – men även där styr samma slags jättar, och modereringen är ofta både snäv och orättvis. Då bryts också kontakten med vänner och nätverk.

    Vi är allt från aktivister till vanliga människor som vill hålla kontakten. Med Jessica Granqvist i spetsen, som för en aktiv kamp på nätet mot orättvisor, föddes idén som landade hos oss i formen: “Vi behöver nåt där folk inte bara försvinner”. Därför försöker vi återupprätta något av den gamla forummodellens storhetstid – som en fristående plats där människor kan hitta tillbaka till varandra när sociala medier svajar, stänger av eller tappar all rimlighet.

    Besök oss på https://forum.tornevall.net

    Hur gör man?

    Hur gör man?

    När du besöker Tornis på mobil kan du ibland få erbjudande att installera forumet som en app. Det kan vara en bra idé, men det är inget krav.

    För att registrera dig eller logga in

    1. Klicka på “Login or Sign Up”

    Uppe till höger på sidan finns knappen Login or Sign Up.

    När du klickar där öppnas inloggningsrutan.

    2. Välj vad du vill göra

    I rutan kan du:

    Logga in om du redan har ett konto

    Klicka på Sign Up för att skapa ett konto

    Logga in snabbt med Google längst ner

    3. Skapa konto

    Om du väljer Sign Up kommer du till registreringssidan.

    Där fyller du i:

    användarnamn

    lösenord

    e-postadress

    Sedan godkänner du villkoren och klickar på Complete Signup.

    Normalt skickas också ett verifieringsmail till din e-postadress. Klicka på länken i mailet för att aktivera ditt konto.

    Klart.

    Snabbaste sättet?

    Det enklaste är ofta att bara klicka på Log in with Google.

    Då skapas kontot automatiskt och du kan börja använda forumet direkt.

Högern: “Yttrandefrihet är bra” – men bara när den kommer från rätt håll

Permalink
Published: 2026-01-31 15:56:03
Discovered: 2026-03-19 13:50:20
Hash: 7e73e55a0004279dfb6023031988c1105c05cdbc
https://www.tornevalls.se/hogern-yttrandefrihet-ar-bra-men-bara-nar-den-kommer-fran-ratt-hall/
Description

Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot...

Content

Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot oliktänkande i deras egna forum. Den här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till något groteskt – av ren avundsjuka och sossehat.

Table of Contents Toggle När modereringen slocknar – trollen tar överFrihet för hatet – eller frihet från hatet?Censur och ryggdunkarklubbar När modereringen slocknar – trollen tar över

Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte Lars Ahlström – var tänkt som en mötesplats för likasinnade (och LO-anslutna). Men när administratören slutade moderera aktivt, föll gruppen snabbt i händerna på oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. Resultatet? En digital vilda västern där allt kunde postas ostört, utan repressalier och utan moderering.

Lars Ahlström stod länge kvar som gruppens enda administratör, och rykten började spridas kring vad som hade hänt, eftersom han slutade agera. Ingen visste säkert vad som hänt, men mycket pekade senare på att han blivit sjuk – men redan tidigare trodde flera att han redan hade gått bort. Det skrevs väldigt mycket om det i gruppen, men då var det mest spekulationer. Så småningom dök det upp spår efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade att han hade gått bort. Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för att konvertera en profil till minnessida, så borttagningen bekräftade indirekt att han hade gått bort. Flera av hans konton stängdes ned samtidigt.

Den gamla gruppen anmäldes återkommande under flera års tid – även så sent som 2026 – utan att något gehör kom från Facebook. Flera svenska instanser, däribland PTS, informerades men hänvisade bara vidare utan åtgärd. Samtidigt höll gruppen på att fullständigt haverera, vilket till slut ledde till att seriösa debattörer gav upp.

En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt efter ett demokratiskt parti behövde en “version 2.0” för att hålla rent från antidemokratiskt skräp gick inte förlorad på oss som följde spektaklet. Händelsen är dessvärre bara ett exempel på ett mönster. Det är ofta just när moderering uteblir som högljudda extremröster tar chansen att dominera samtalet. Samma människor som senare skriker om “censur” passar gärna på att spy galla när ingen håller koll. Och när kaoset blivit totalt används det som intäkt för att håna motståndarsidan: “Se hur oordnat det är hos dem!” och “Se, nu försöker dom tysta oss”. Det de glömmer att nämna är att oordningen uppstod på grund av att ingen faktiskt utövade det de själva föraktar – moderering och ansvar.

Frihet för hatet – eller frihet från hatet?

Ett annat talande exempel hittar vi i svallvågorna efter den ökända gruppen “Stå upp för Sverige”. Gruppen startades 2017 som “Stå upp för Peter Springare” (till stöd för en polis som klagat över invandring, Peter Springare på Wikipedia) och bytte senare namn – men innehållet blev snabbt ett sammelsurium av hatfulla inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över 160 000 medlemmar flödade där kommentarer som jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att någon tog bort dem. Att administratören Patrik Markström lät rasistiska inlägg stå kvar ledde till sist till en unik dom: han dömdes till villkorlig dom och böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända sedan 1998, vilket också Aftonbladet belyste. Ändå utbrast förvånade rop om “censur” när Markström ställdes till svars. Att lagen krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning – i synnerhet för dem som aldrig brytt sig om att kolla upp den.

Skärmdump av Facebook-gruppen “Stå upp för Sverige”. Gruppen bildades som ett stödforum men fylldes snabbt av rasistiskt innehåll när modereringen lyste med sin frånvaro.

I kölvattnet av detta – eller möjligen som ett svar på den allmänna kaossituation som rådde – skapades motreaktionen Stå upp för Sverige – ANTIRASIST. Gruppen är dokumenterat skapad 2017, vilket räknat från 2026 innebär cirka nio år sedan, och kan sammanfalla med flera av “Stå upp För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hålls inflödet rent från rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och våldsuppmaningar i sitt flöde?

När Socialdemokrater 2.0 skapades började högeraktiva från den gamla gruppen genast gnälla över att de “inte får plats” och att de blir tystade. 2.0 blev per deras definition en ryggdunkarklubb. Naturligtvis beror deras frånvaro där på att de bryter mot gruppens mycket tydliga regler mot hat och sabotage. Ändå framställs det som att de blir censurerade av en förtryckande åsiktsmaffia. I praktiken handlar det om att många av dem faktiskt blivit utkastade, eftersom de försökt använda samma aggressiva och gränslösa ton i Socialdemokrater 2.0 som de tidigare gjort i den gamla gruppen

Notera också att “Stå upp för Sverige” under sin storhetstid var något av ett flaggskepp för hat på nätet. En granskning från Expo visade att just den gruppen toppade listan över forum där hetsiga kommentarer (sådana som fällts för hets mot folkgrupp) förekom flest gånger. Den paradoxala följdfrågan blir: Var det verkligen yttrandefrihet som försvarades i det forumet – eller var det bara rätten att vräka ur sig hat utan konsekvens? För många av oss andra framstod det snarare som att andras yttrandefrihet kvävdes där, under tyngden av hat och hot. Att starta en antirasistisk version av gruppen var inte censur, utan ett försök att skapa ett utrymme för sansade röster utan att bli överröstade av hatretorik. Att Markström dömdes är inte särskilt förvånande egentligen, men antagligen var det ganska lyckosamt med tanke på att många andra som ställs inför Hets mot Folkgrupp även frias (Jomshof exempelvis).

Censur och ryggdunkarklubbar

Det här mönstret går igen på plattform efter plattform. När grundläggande trivselregler införs – inga personangrepp, ingen rasism, ingen spam – ropas det snabbt om diktatur och åsiktskorridor. Yttrandefrihet reduceras till ett slagord som betyder “jag ska få säga vad jag vill utan konsekvenser”, medan intresset för andras yttrandefrihet är obefintligt. Försök att problematisera detta i högerdominerade forum, och uteslutning följer ofta omedelbart. Samma forum beskrivs samtidigt som motståndarsidan som “ryggdunkarklubbar”, trots att den egna homogeniteten är minst lika total. När regler saknas är allt tillåtet. När regler införs är det plötsligt förtryck. Det är inget nytt fenomen, men det säger en hel del om hur begreppet yttrandefrihet i praktiken används som ett verktyg för egen bekvämlighet snarare än som en princip man faktiskt vill värna.


History — 2 versions shown

Changes

From 2026-01-31 15:56:03 (discovered: 2026-02-05 14:24:02) hash: 3bd65a7c6f10c22ae948c0708163d83f551c361c
To 2026-01-31 15:56:03 (discovered: 2026-03-19 13:50:20) hash: 7e73e55a0004279dfb6023031988c1105c05cdbc
Title
Högern: Högern: “Yttrandefrihet är är bra” – men bara när när den kommer frÃ¥n rätt hÃ¥ll från rätt håll
Description
Högern hävdar Högern hävdar ofta att de stÃ¥r står upp för för yttrandefriheten – Ã¥tminstone åtminstone tills de själva fÃ¥r själva får chansen att tysta meningsmotstÃ¥ndare. meningsmotståndare. I sociala medier ser vi ett Ã¥terkommande mönster: återkommande mönster: det som kallas “censur” när när det drabbar dem förvandlas förvandlas snabbt till nolltolerans mot...
Content
Högern hävdar Högern hävdar ofta att de stÃ¥r står upp för för yttrandefriheten – Ã¥tminstone åtminstone tills de själva fÃ¥r själva får chansen att tysta meningsmotstÃ¥ndare. meningsmotståndare. I sociala medier ser vi ett Ã¥terkommande mönster: återkommande mönster: det som kallas “censur” när när det drabbar dem förvandlas förvandlas snabbt till nolltolerans mot oliktänkande oliktänkande i deras egna forum. Den här här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till nÃ¥got något groteskt – av ren avundsjuka och sossehat. Table of Contents Toggle När När modereringen slocknar – trollen tar överFrihet för överFrihet för hatet – eller frihet frÃ¥n från hatet?Censur och ryggdunkarklubbar När När modereringen slocknar – trollen tar över över Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte S-märkte Lars Ahlström Ahlström – var tänkt tänkt som en mötesplats för mötesplats för likasinnade (och LO-anslutna). Men när administratören när administratören slutade moderera aktivt, föll föll gruppen snabbt i händerna pÃ¥ oseriösa aktörer. Diskussionsflödet händerna oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. högerprovokatörer. Resultatet? En digital vilda västern där västern där allt kunde postas ostört, ostört, utan repressalier och utan moderering. Lars Ahlström Ahlström stod länge länge kvar som gruppens enda administratör, administratör, och rykten började började spridas kring vad som hade hänt, hänt, eftersom han slutade agera. Ingen visste säkert säkert vad som hänt, hänt, men mycket pekade senare pÃ¥ att han blivit sjuk – men redan tidigare trodde flera att han redan hade gÃ¥tt gått bort. Det skrevs väldigt väldigt mycket om det i gruppen, men dÃ¥ var det mest spekulationer. SÃ¥ smÃ¥ningom dök småningom dök det upp spÃ¥r spår efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade bekräftade att han hade gÃ¥tt gått bort. Plötsligt försvann administratörskontot Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för kräver dödsattest för att konvertera en profil till minnessida, sÃ¥ borttagningen bekräftade bekräftade indirekt att han hade gÃ¥tt gått bort. Flera av hans konton stängdes stängdes ned samtidigt. Den gamla gruppen anmäldes Ã¥terkommande anmäldes återkommande under flera Ã¥rs års tid – även sÃ¥ även sent som 2026 – utan att nÃ¥got gehör något gehör kom frÃ¥n från Facebook. Flera svenska instanser, däribland däribland PTS, informerades men hänvisade hänvisade bara vidare utan Ã¥tgärd. åtgärd. Samtidigt höll höll gruppen pÃ¥ att fullständigt fullständigt haverera, vilket till slut ledde till att seriösa debattörer seriösa debattörer gav upp. En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt döpt efter ett demokratiskt parti behövde behövde en “version 2.0” för för att hÃ¥lla hålla rent frÃ¥n från antidemokratiskt skräp skräp gick inte förlorad pÃ¥ förlorad oss som följde följde spektaklet. Händelsen är dessvärre Händelsen är dessvärre bara ett exempel pÃ¥ ett mönster. mönster. Det är är ofta just när när moderering uteblir som högljudda extremröster högljudda extremröster tar chansen att dominera samtalet. Samma människor människor som senare skriker om “censur” passar gärna pÃ¥ gärna att spy galla när när ingen hÃ¥ller håller koll. Och när när kaoset blivit totalt används används det som intäkt för intäkt för att hÃ¥na motstÃ¥ndarsidan: håna motståndarsidan: “Se hur oordnat det är är hos dem!” och “Se, nu försöker försöker dom tysta oss”. Det de glömmer glömmer att nämna är nämna är att oordningen uppstod pÃ¥ grund av att ingen faktiskt utövade utövade det de själva föraktar själva föraktar – moderering och ansvar. Frihet för för hatet – eller frihet frÃ¥n från hatet? Ett annat talande exempel hittar vi i svallvÃ¥gorna svallvågorna efter den ökända ökända gruppen “StÃ¥ “Stå upp för för Sverige”. Gruppen startades 2017 som “StÃ¥ “Stå upp för för Peter Springare” (till stöd för stöd för en polis som klagat över över invandring, Peter Springare pÃ¥ Wikipedia) och bytte senare namn – men innehÃ¥llet innehållet blev snabbt ett sammelsurium av hatfulla inlägg inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över över 160 000 medlemmar flödade där flödade där kommentarer som jämförde jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att nÃ¥gon någon tog bort dem. Att administratören administratören Patrik Markström lät Markström lät rasistiska inlägg stÃ¥ inlägg stå kvar ledde till sist till en unik dom: han dömdes dömdes till villkorlig dom och böter för böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända ända sedan 1998, vilket ocksÃ¥ också Aftonbladet belyste. ÄndÃ¥ Ändå utbrast förvÃ¥nade förvånade rop om “censur” när Markström ställdes när Markström ställdes till svars. Att lagen krävde krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning överraskning – i synnerhet för för dem som aldrig brytt sig om att kolla upp den. Skärmdump Skärmdump av Facebook-gruppen “StÃ¥ “Stå upp för för Sverige”. Gruppen bildades som ett stödforum stödforum men fylldes snabbt av rasistiskt innehÃ¥ll när innehåll när modereringen lyste med sin frÃ¥nvaro. frånvaro. I kölvattnet kölvattnet av detta – eller möjligen möjligen som ett svar pÃ¥ den allmänna allmänna kaossituation som rÃ¥dde rådde – skapades motreaktionen StÃ¥ Stå upp för för Sverige – ANTIRASIST. Gruppen är är dokumenterat skapad 2017, vilket räknat frÃ¥n räknat från 2026 innebär innebär cirka nio Ã¥r år sedan, och kan sammanfalla med flera av “StÃ¥ “Stå upp För”-gruppers tillväxt. För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hÃ¥lls inflödet här hålls inflödet rent frÃ¥n från rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och vÃ¥ldsuppmaningar våldsuppmaningar i sitt flöde? När flöde? När Socialdemokrater 2.0 skapades började högeraktiva frÃ¥n började högeraktiva från den gamla gruppen genast gnälla över gnälla över att de “inte fÃ¥r får plats” och att de blir tystade. 2.0
Old vs new
From
TITLE:
Högern: “Yttrandefrihet är bra” – men bara när den kommer frÃ¥n rätt hÃ¥ll

DESCRIPTION:
Högern hävdar ofta att de stÃ¥r upp för yttrandefriheten – Ã¥tminstone tills de själva fÃ¥r chansen att tysta meningsmotstÃ¥ndare. I sociala medier ser vi ett Ã¥terkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot...

CONTENT:
Högern hävdar ofta att de stÃ¥r upp för yttrandefriheten – Ã¥tminstone tills de själva fÃ¥r chansen att tysta meningsmotstÃ¥ndare. I sociala medier ser vi ett Ã¥terkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot oliktänkande i deras egna forum. Den här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till nÃ¥got groteskt – av ren avundsjuka och sossehat.

Table of Contents
Toggle
När modereringen slocknar – trollen tar överFrihet för hatet – eller frihet frÃ¥n hatet?Censur och ryggdunkarklubbar
När modereringen slocknar – trollen tar över

Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte Lars Ahlström – var tänkt som en mötesplats för likasinnade (och LO-anslutna). Men när administratören slutade moderera aktivt, föll gruppen snabbt i händerna pÃ¥ oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. Resultatet? En digital vilda västern där allt kunde postas ostört, utan repressalier och utan moderering.

Lars Ahlström stod länge kvar som gruppens enda administratör, och rykten började spridas kring vad som hade hänt, eftersom han slutade agera. Ingen visste säkert vad som hänt, men mycket pekade senare pÃ¥ att han blivit sjuk – men redan tidigare trodde flera att han redan hade gÃ¥tt bort. Det skrevs väldigt mycket om det i gruppen, men dÃ¥ var det mest spekulationer. SÃ¥ smÃ¥ningom dök det upp spÃ¥r efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade att han hade gÃ¥tt bort. Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för att konvertera en profil till minnessida, sÃ¥ borttagningen bekräftade indirekt att han hade gÃ¥tt bort. Flera av hans konton stängdes ned samtidigt.

Den gamla gruppen anmäldes Ã¥terkommande under flera Ã¥rs tid – även sÃ¥ sent som 2026 – utan att nÃ¥got gehör kom frÃ¥n Facebook. Flera svenska instanser, däribland PTS, informerades men hänvisade bara vidare utan Ã¥tgärd. Samtidigt höll gruppen pÃ¥ att fullständigt haverera, vilket till slut ledde till att seriösa debattörer gav upp.

En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt efter ett demokratiskt parti behövde en “version 2.0” för att hÃ¥lla rent frÃ¥n antidemokratiskt skräp gick inte förlorad pÃ¥ oss som följde spektaklet. Händelsen är dessvärre bara ett exempel pÃ¥ ett mönster. Det är ofta just när moderering uteblir som högljudda extremröster tar chansen att dominera samtalet. Samma människor som senare skriker om “censur” passar gärna pÃ¥ att spy galla när ingen hÃ¥ller koll. Och när kaoset blivit totalt används det som intäkt för att hÃ¥na motstÃ¥ndarsidan: “Se hur oordnat det är hos dem!” och “Se, nu försöker dom tysta oss”. Det de glömmer att nämna är att oordningen uppstod pÃ¥ grund av att ingen faktiskt utövade det de själva föraktar – moderering och ansvar.

Frihet för hatet – eller frihet frÃ¥n hatet?

Ett annat talande exempel hittar vi i svallvÃ¥gorna efter den ökända gruppen “StÃ¥ upp för Sverige”. Gruppen startades 2017 som “StÃ¥ upp för Peter Springare” (till stöd för en polis som klagat över invandring, Peter Springare pÃ¥ Wikipedia) och bytte senare namn – men innehÃ¥llet blev snabbt ett sammelsurium av hatfulla inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över 160 000 medlemmar flödade där kommentarer som jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att nÃ¥gon tog bort dem. Att administratören Patrik Markström lät rasistiska inlägg stÃ¥ kvar ledde till sist till en unik dom: han dömdes till villkorlig dom och böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända sedan 1998, vilket ocksÃ¥ Aftonbladet belyste. ÄndÃ¥ utbrast förvÃ¥nade rop om “censur” när Markström ställdes till svars. Att lagen krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning – i synnerhet för dem som aldrig brytt sig om att kolla upp den.

Skärmdump av Facebook-gruppen “StÃ¥ upp för Sverige”. Gruppen bildades som ett stödforum men fylldes snabbt av rasistiskt innehÃ¥ll när modereringen lyste med sin frÃ¥nvaro.

I kölvattnet av detta – eller möjligen som ett svar pÃ¥ den allmänna kaossituation som rÃ¥dde – skapades motreaktionen StÃ¥ upp för Sverige – ANTIRASIST. Gruppen är dokumenterat skapad 2017, vilket räknat frÃ¥n 2026 innebär cirka nio Ã¥r sedan, och kan sammanfalla med flera av “StÃ¥ upp För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hÃ¥lls inflödet rent frÃ¥n rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och vÃ¥ldsuppmaningar i sitt flöde?

När Socialdemokrater 2.0 skapades började högeraktiva frÃ¥n den gamla gruppen genast gnälla över att de “inte fÃ¥r plats” och att de blir tystade. 2.0 blev per deras definition en ryggdunkarklubb. Naturligtvis beror deras frÃ¥nvaro där pÃ¥ att de bryter mot gruppens mycket tydliga regler mot hat och sabotage. ÄndÃ¥ framställs det som att de blir censurerade av en förtryckande Ã¥siktsmaffia. I praktiken handlar det om att mÃ¥nga av dem faktiskt blivit utkastade, eftersom de försökt använda samma aggressiva och gränslösa ton i Socialdemokrater 2.0 som de tidigare gjort i den gamla gruppen

Notera ocksÃ¥ att “StÃ¥ upp för Sverige” under sin storhetstid var nÃ¥got av ett flaggskepp för hat pÃ¥ nätet. En granskning frÃ¥n Expo visade att just den gruppen toppade listan över forum där hetsiga kommentarer (sÃ¥dana som fällts för hets mot folkgrupp) förekom flest gÃ¥nger. Den paradoxala följdfrÃ¥gan blir: Var det verkligen yttrandefrihet som försvarades i det forumet – eller var det bara rätten att vräka ur sig hat utan konsekvens? För mÃ¥nga av oss andra framstod det snarare som att andras yttrandefrihet kvävdes där, under tyngden av hat och hot. Att starta en antirasistisk version av gruppen var inte censur, utan ett försök att skapa ett utrymme för sansade röster utan att bli överröstade av hatretorik. Att Markström dömdes är inte särskilt förvÃ¥nande egentligen, men antagligen var det ganska lyckosamt med tanke pÃ¥ att mÃ¥nga andra som ställs inför Hets mot Folkgrupp även frias (Jomshof exempelvis).

Censur och ryggdunkarklubbar

Det här mönstret gÃ¥r igen pÃ¥ plattform efter plattform. När grundläggande trivselregler införs – inga personangrepp, ingen rasism, ingen spam – ropas det snabbt om diktatur och Ã¥siktskorridor. Yttrandefrihet reduceras till ett slagord som betyder “jag ska fÃ¥ säga vad jag vill utan konsekvenser”, medan intresset för andras yttrandefrihet är obefintligt. Försök att problematisera detta i högerdominerade forum, och uteslutning följer ofta omedelbart. Samma forum beskrivs samtidigt som motstÃ¥ndarsidan som “ryggdunkarklubbar”, trots att den egna homogeniteten är minst lika total. När regler saknas är allt tillÃ¥tet. När regler införs är det plötsligt förtryck. Det är inget nytt fenomen, men det säger en hel del om hur begreppet yttrandefrihet i praktiken används som ett verktyg för egen bekvämlighet snarare än som en princip man faktiskt vill värna.
To
TITLE:
Högern: “Yttrandefrihet är bra” – men bara när den kommer från rätt håll

DESCRIPTION:
Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot...

CONTENT:
Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot oliktänkande i deras egna forum. Den här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till något groteskt – av ren avundsjuka och sossehat.

Table of Contents
Toggle
När modereringen slocknar – trollen tar överFrihet för hatet – eller frihet från hatet?Censur och ryggdunkarklubbar
När modereringen slocknar – trollen tar över

Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte Lars Ahlström – var tänkt som en mötesplats för likasinnade (och LO-anslutna). Men när administratören slutade moderera aktivt, föll gruppen snabbt i händerna på oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. Resultatet? En digital vilda västern där allt kunde postas ostört, utan repressalier och utan moderering.

Lars Ahlström stod länge kvar som gruppens enda administratör, och rykten började spridas kring vad som hade hänt, eftersom han slutade agera. Ingen visste säkert vad som hänt, men mycket pekade senare på att han blivit sjuk – men redan tidigare trodde flera att han redan hade gått bort. Det skrevs väldigt mycket om det i gruppen, men då var det mest spekulationer. Så småningom dök det upp spår efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade att han hade gått bort. Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för att konvertera en profil till minnessida, så borttagningen bekräftade indirekt att han hade gått bort. Flera av hans konton stängdes ned samtidigt.

Den gamla gruppen anmäldes återkommande under flera års tid – även så sent som 2026 – utan att något gehör kom från Facebook. Flera svenska instanser, däribland PTS, informerades men hänvisade bara vidare utan åtgärd. Samtidigt höll gruppen på att fullständigt haverera, vilket till slut ledde till att seriösa debattörer gav upp.

En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt efter ett demokratiskt parti behövde en “version 2.0” för att hålla rent från antidemokratiskt skräp gick inte förlorad på oss som följde spektaklet. Händelsen är dessvärre bara ett exempel på ett mönster. Det är ofta just när moderering uteblir som högljudda extremröster tar chansen att dominera samtalet. Samma människor som senare skriker om “censur” passar gärna på att spy galla när ingen håller koll. Och när kaoset blivit totalt används det som intäkt för att håna motståndarsidan: “Se hur oordnat det är hos dem!” och “Se, nu försöker dom tysta oss”. Det de glömmer att nämna är att oordningen uppstod på grund av att ingen faktiskt utövade det de själva föraktar – moderering och ansvar.

Frihet för hatet – eller frihet från hatet?

Ett annat talande exempel hittar vi i svallvågorna efter den ökända gruppen “Stå upp för Sverige”. Gruppen startades 2017 som “Stå upp för Peter Springare” (till stöd för en polis som klagat över invandring, Peter Springare på Wikipedia) och bytte senare namn – men innehållet blev snabbt ett sammelsurium av hatfulla inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över 160 000 medlemmar flödade där kommentarer som jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att någon tog bort dem. Att administratören Patrik Markström lät rasistiska inlägg stå kvar ledde till sist till en unik dom: han dömdes till villkorlig dom och böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända sedan 1998, vilket också Aftonbladet belyste. Ändå utbrast förvånade rop om “censur” när Markström ställdes till svars. Att lagen krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning – i synnerhet för dem som aldrig brytt sig om att kolla upp den.

Skärmdump av Facebook-gruppen “Stå upp för Sverige”. Gruppen bildades som ett stödforum men fylldes snabbt av rasistiskt innehåll när modereringen lyste med sin frånvaro.

I kölvattnet av detta – eller möjligen som ett svar på den allmänna kaossituation som rådde – skapades motreaktionen Stå upp för Sverige – ANTIRASIST. Gruppen är dokumenterat skapad 2017, vilket räknat från 2026 innebär cirka nio år sedan, och kan sammanfalla med flera av “Stå upp För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hålls inflödet rent från rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och våldsuppmaningar i sitt flöde?

När Socialdemokrater 2.0 skapades började högeraktiva från den gamla gruppen genast gnälla över att de “inte får plats” och att de blir tystade. 2.0 blev per deras definition en ryggdunkarklubb. Naturligtvis beror deras frånvaro där på att de bryter mot gruppens mycket tydliga regler mot hat och sabotage. Ändå framställs det som att de blir censurerade av en förtryckande åsiktsmaffia. I praktiken handlar det om att många av dem faktiskt blivit utkastade, eftersom de försökt använda samma aggressiva och gränslösa ton i Socialdemokrater 2.0 som de tidigare gjort i den gamla gruppen

Notera också att “Stå upp för Sverige” under sin storhetstid var något av ett flaggskepp för hat på nätet. En granskning från Expo visade att just den gruppen toppade listan över forum där hetsiga kommentarer (sådana som fällts för hets mot folkgrupp) förekom flest gånger. Den paradoxala följdfrågan blir: Var det verkligen yttrandefrihet som försvarades i det forumet – eller var det bara rätten att vräka ur sig hat utan konsekvens? För många av oss andra framstod det snarare som att andras yttrandefrihet kvävdes där, under tyngden av hat och hot. Att starta en antirasistisk version av gruppen var inte censur, utan ett försök att skapa ett utrymme för sansade röster utan att bli överröstade av hatretorik. Att Markström dömdes är inte särskilt förvånande egentligen, men antagligen var det ganska lyckosamt med tanke på att många andra som ställs inför Hets mot Folkgrupp även frias (Jomshof exempelvis).

Censur och ryggdunkarklubbar

Det här mönstret går igen på plattform efter plattform. När grundläggande trivselregler införs – inga personangrepp, ingen rasism, ingen spam – ropas det snabbt om diktatur och åsiktskorridor. Yttrandefrihet reduceras till ett slagord som betyder “jag ska få säga vad jag vill utan konsekvenser”, medan intresset för andras yttrandefrihet är obefintligt. Försök att problematisera detta i högerdominerade forum, och uteslutning följer ofta omedelbart. Samma forum beskrivs samtidigt som motståndarsidan som “ryggdunkarklubbar”, trots att den egna homogeniteten är minst lika total. När regler saknas är allt tillåtet. När regler införs är det plötsligt förtryck. Det är inget nytt fenomen, men det säger en hel del om hur begreppet yttrandefrihet i praktiken används som ett verktyg för egen bekvämlighet snarare än som en princip man faktiskt vill värna.

Versions

  1. 2026-01-31 15:56:03
    Discovered: 2026-03-19 13:50:20 Hash: 7e73e55a0004279dfb6023031988c1105c05cdbc
    Title:
    Högern: “Yttrandefrihet är bra” – men bara när den kommer från rätt håll
    Description:
    Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot...
    Content
    Högern hävdar ofta att de står upp för yttrandefriheten – åtminstone tills de själva får chansen att tysta meningsmotståndare. I sociala medier ser vi ett återkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot oliktänkande i deras egna forum. Den här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till något groteskt – av ren avundsjuka och sossehat.

    Table of Contents
    Toggle
    När modereringen slocknar – trollen tar överFrihet för hatet – eller frihet från hatet?Censur och ryggdunkarklubbar
    När modereringen slocknar – trollen tar över

    Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte Lars Ahlström – var tänkt som en mötesplats för likasinnade (och LO-anslutna). Men när administratören slutade moderera aktivt, föll gruppen snabbt i händerna på oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. Resultatet? En digital vilda västern där allt kunde postas ostört, utan repressalier och utan moderering.

    Lars Ahlström stod länge kvar som gruppens enda administratör, och rykten började spridas kring vad som hade hänt, eftersom han slutade agera. Ingen visste säkert vad som hänt, men mycket pekade senare på att han blivit sjuk – men redan tidigare trodde flera att han redan hade gått bort. Det skrevs väldigt mycket om det i gruppen, men då var det mest spekulationer. Så småningom dök det upp spår efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade att han hade gått bort. Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för att konvertera en profil till minnessida, så borttagningen bekräftade indirekt att han hade gått bort. Flera av hans konton stängdes ned samtidigt.

    Den gamla gruppen anmäldes återkommande under flera års tid – även så sent som 2026 – utan att något gehör kom från Facebook. Flera svenska instanser, däribland PTS, informerades men hänvisade bara vidare utan åtgärd. Samtidigt höll gruppen på att fullständigt haverera, vilket till slut ledde till att seriösa debattörer gav upp.

    En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt efter ett demokratiskt parti behövde en “version 2.0” för att hålla rent från antidemokratiskt skräp gick inte förlorad på oss som följde spektaklet. Händelsen är dessvärre bara ett exempel på ett mönster. Det är ofta just när moderering uteblir som högljudda extremröster tar chansen att dominera samtalet. Samma människor som senare skriker om “censur” passar gärna på att spy galla när ingen håller koll. Och när kaoset blivit totalt används det som intäkt för att håna motståndarsidan: “Se hur oordnat det är hos dem!” och “Se, nu försöker dom tysta oss”. Det de glömmer att nämna är att oordningen uppstod på grund av att ingen faktiskt utövade det de själva föraktar – moderering och ansvar.

    Frihet för hatet – eller frihet från hatet?

    Ett annat talande exempel hittar vi i svallvågorna efter den ökända gruppen “Stå upp för Sverige”. Gruppen startades 2017 som “Stå upp för Peter Springare” (till stöd för en polis som klagat över invandring, Peter Springare på Wikipedia) och bytte senare namn – men innehållet blev snabbt ett sammelsurium av hatfulla inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över 160 000 medlemmar flödade där kommentarer som jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att någon tog bort dem. Att administratören Patrik Markström lät rasistiska inlägg stå kvar ledde till sist till en unik dom: han dömdes till villkorlig dom och böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända sedan 1998, vilket också Aftonbladet belyste. Ändå utbrast förvånade rop om “censur” när Markström ställdes till svars. Att lagen krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning – i synnerhet för dem som aldrig brytt sig om att kolla upp den.

    Skärmdump av Facebook-gruppen “Stå upp för Sverige”. Gruppen bildades som ett stödforum men fylldes snabbt av rasistiskt innehåll när modereringen lyste med sin frånvaro.

    I kölvattnet av detta – eller möjligen som ett svar på den allmänna kaossituation som rådde – skapades motreaktionen Stå upp för Sverige – ANTIRASIST. Gruppen är dokumenterat skapad 2017, vilket räknat från 2026 innebär cirka nio år sedan, och kan sammanfalla med flera av “Stå upp För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hålls inflödet rent från rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och våldsuppmaningar i sitt flöde?

    När Socialdemokrater 2.0 skapades började högeraktiva från den gamla gruppen genast gnälla över att de “inte får plats” och att de blir tystade. 2.0 blev per deras definition en ryggdunkarklubb. Naturligtvis beror deras frånvaro där på att de bryter mot gruppens mycket tydliga regler mot hat och sabotage. Ändå framställs det som att de blir censurerade av en förtryckande åsiktsmaffia. I praktiken handlar det om att många av dem faktiskt blivit utkastade, eftersom de försökt använda samma aggressiva och gränslösa ton i Socialdemokrater 2.0 som de tidigare gjort i den gamla gruppen

    Notera också att “Stå upp för Sverige” under sin storhetstid var något av ett flaggskepp för hat på nätet. En granskning från Expo visade att just den gruppen toppade listan över forum där hetsiga kommentarer (sådana som fällts för hets mot folkgrupp) förekom flest gånger. Den paradoxala följdfrågan blir: Var det verkligen yttrandefrihet som försvarades i det forumet – eller var det bara rätten att vräka ur sig hat utan konsekvens? För många av oss andra framstod det snarare som att andras yttrandefrihet kvävdes där, under tyngden av hat och hot. Att starta en antirasistisk version av gruppen var inte censur, utan ett försök att skapa ett utrymme för sansade röster utan att bli överröstade av hatretorik. Att Markström dömdes är inte särskilt förvånande egentligen, men antagligen var det ganska lyckosamt med tanke på att många andra som ställs inför Hets mot Folkgrupp även frias (Jomshof exempelvis).

    Censur och ryggdunkarklubbar

    Det här mönstret går igen på plattform efter plattform. När grundläggande trivselregler införs – inga personangrepp, ingen rasism, ingen spam – ropas det snabbt om diktatur och åsiktskorridor. Yttrandefrihet reduceras till ett slagord som betyder “jag ska få säga vad jag vill utan konsekvenser”, medan intresset för andras yttrandefrihet är obefintligt. Försök att problematisera detta i högerdominerade forum, och uteslutning följer ofta omedelbart. Samma forum beskrivs samtidigt som motståndarsidan som “ryggdunkarklubbar”, trots att den egna homogeniteten är minst lika total. När regler saknas är allt tillåtet. När regler införs är det plötsligt förtryck. Det är inget nytt fenomen, men det säger en hel del om hur begreppet yttrandefrihet i praktiken används som ett verktyg för egen bekvämlighet snarare än som en princip man faktiskt vill värna.
  2. 2026-01-31 15:56:03
    Discovered: 2026-02-05 14:24:02 Hash: 3bd65a7c6f10c22ae948c0708163d83f551c361c
    Title:
    Högern: “Yttrandefrihet är bra” – men bara när den kommer frÃ¥n rätt hÃ¥ll
    Description:
    Högern hävdar ofta att de stÃ¥r upp för yttrandefriheten – Ã¥tminstone tills de själva fÃ¥r chansen att tysta meningsmotstÃ¥ndare. I sociala medier ser vi ett Ã¥terkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot...
    Content
    Högern hävdar ofta att de stÃ¥r upp för yttrandefriheten – Ã¥tminstone tills de själva fÃ¥r chansen att tysta meningsmotstÃ¥ndare. I sociala medier ser vi ett Ã¥terkommande mönster: det som kallas “censur” när det drabbar dem förvandlas snabbt till nolltolerans mot oliktänkande i deras egna forum. Den här texten handlar i grunden om bildandet av Socialdemokrater 2.0 och hur hyckleriet i den gamla gruppen utvecklades till nÃ¥got groteskt – av ren avundsjuka och sossehat.

    Table of Contents
    Toggle
    När modereringen slocknar – trollen tar överFrihet för hatet – eller frihet frÃ¥n hatet?Censur och ryggdunkarklubbar
    När modereringen slocknar – trollen tar över

    Facebookgruppen Socialdemokrater – ursprungligen startad av S-märkte Lars Ahlström – var tänkt som en mötesplats för likasinnade (och LO-anslutna). Men när administratören slutade moderera aktivt, föll gruppen snabbt i händerna pÃ¥ oseriösa aktörer. Diskussionsflödet blev okontrollerat, och i praktiken kapades gruppens narrativ av troll och högerprovokatörer. Resultatet? En digital vilda västern där allt kunde postas ostört, utan repressalier och utan moderering.

    Lars Ahlström stod länge kvar som gruppens enda administratör, och rykten började spridas kring vad som hade hänt, eftersom han slutade agera. Ingen visste säkert vad som hänt, men mycket pekade senare pÃ¥ att han blivit sjuk – men redan tidigare trodde flera att han redan hade gÃ¥tt bort. Det skrevs väldigt mycket om det i gruppen, men dÃ¥ var det mest spekulationer. SÃ¥ smÃ¥ningom dök det upp spÃ¥r efter en minnessida och liknande tecken (runt den 1 april 2025) som bekräftade att han hade gÃ¥tt bort. Plötsligt försvann administratörskontot – dock inte det konto som var kopplat till minnessidan, utan ett annat. Facebook kräver dödsattest för att konvertera en profil till minnessida, sÃ¥ borttagningen bekräftade indirekt att han hade gÃ¥tt bort. Flera av hans konton stängdes ned samtidigt.

    Den gamla gruppen anmäldes Ã¥terkommande under flera Ã¥rs tid – även sÃ¥ sent som 2026 – utan att nÃ¥got gehör kom frÃ¥n Facebook. Flera svenska instanser, däribland PTS, informerades men hänvisade bara vidare utan Ã¥tgärd. Samtidigt höll gruppen pÃ¥ att fullständigt haverera, vilket till slut ledde till att seriösa debattörer gav upp.

    En ny grupp vid namn Socialdemokrater 2.0 grundades som en fristad med fungerande moderering. Ironin i att en grupp döpt efter ett demokratiskt parti behövde en “version 2.0” för att hÃ¥lla rent frÃ¥n antidemokratiskt skräp gick inte förlorad pÃ¥ oss som följde spektaklet. Händelsen är dessvärre bara ett exempel pÃ¥ ett mönster. Det är ofta just när moderering uteblir som högljudda extremröster tar chansen att dominera samtalet. Samma människor som senare skriker om “censur” passar gärna pÃ¥ att spy galla när ingen hÃ¥ller koll. Och när kaoset blivit totalt används det som intäkt för att hÃ¥na motstÃ¥ndarsidan: “Se hur oordnat det är hos dem!” och “Se, nu försöker dom tysta oss”. Det de glömmer att nämna är att oordningen uppstod pÃ¥ grund av att ingen faktiskt utövade det de själva föraktar – moderering och ansvar.

    Frihet för hatet – eller frihet frÃ¥n hatet?

    Ett annat talande exempel hittar vi i svallvÃ¥gorna efter den ökända gruppen “StÃ¥ upp för Sverige”. Gruppen startades 2017 som “StÃ¥ upp för Peter Springare” (till stöd för en polis som klagat över invandring, Peter Springare pÃ¥ Wikipedia) och bytte senare namn – men innehÃ¥llet blev snabbt ett sammelsurium av hatfulla inlägg riktade mot minoriteter, som Aftonbladet rapporterade. Med över 160 000 medlemmar flödade där kommentarer som jämförde invandrare med skadedjur och hyllade nazistisk imagery – utan att nÃ¥gon tog bort dem. Att administratören Patrik Markström lät rasistiska inlägg stÃ¥ kvar ledde till sist till en unik dom: han dömdes till villkorlig dom och böter för att inte ha raderat uppenbart olagliga kommentarer, enligt Expo. Lagen om ansvar för elektroniska anslagstavlor (BBS-lagen) har faktiskt funnits ända sedan 1998, vilket ocksÃ¥ Aftonbladet belyste. ÄndÃ¥ utbrast förvÃ¥nade rop om “censur” när Markström ställdes till svars. Att lagen krävde att man tar bort hets mot folkgrupp ur en Facebook-grupp kom tydligen som en överraskning – i synnerhet för dem som aldrig brytt sig om att kolla upp den.

    Skärmdump av Facebook-gruppen “StÃ¥ upp för Sverige”. Gruppen bildades som ett stödforum men fylldes snabbt av rasistiskt innehÃ¥ll när modereringen lyste med sin frÃ¥nvaro.

    I kölvattnet av detta – eller möjligen som ett svar pÃ¥ den allmänna kaossituation som rÃ¥dde – skapades motreaktionen StÃ¥ upp för Sverige – ANTIRASIST. Gruppen är dokumenterat skapad 2017, vilket räknat frÃ¥n 2026 innebär cirka nio Ã¥r sedan, och kan sammanfalla med flera av “StÃ¥ upp För”-gruppers tillväxt. Den nya gruppen har en snarlik titel men diametralt motsatt policy: här hÃ¥lls inflödet rent frÃ¥n rasism och fascism, precis som namnet utlovar. Man kan tycka att detta borde vara okontroversiellt – vem vill inte slippa se hakkors och vÃ¥ldsuppmaningar i sitt flöde?

    När Socialdemokrater 2.0 skapades började högeraktiva frÃ¥n den gamla gruppen genast gnälla över att de “inte fÃ¥r plats” och att de blir tystade. 2.0 blev per deras definition en ryggdunkarklubb. Naturligtvis beror deras frÃ¥nvaro där pÃ¥ att de bryter mot gruppens mycket tydliga regler mot hat och sabotage. ÄndÃ¥ framställs det som att de blir censurerade av en förtryckande Ã¥siktsmaffia. I praktiken handlar det om att mÃ¥nga av dem faktiskt blivit utkastade, eftersom de försökt använda samma aggressiva och gränslösa ton i Socialdemokrater 2.0 som de tidigare gjort i den gamla gruppen

    Notera ocksÃ¥ att “StÃ¥ upp för Sverige” under sin storhetstid var nÃ¥got av ett flaggskepp för hat pÃ¥ nätet. En granskning frÃ¥n Expo visade att just den gruppen toppade listan över forum där hetsiga kommentarer (sÃ¥dana som fällts för hets mot folkgrupp) förekom flest gÃ¥nger. Den paradoxala följdfrÃ¥gan blir: Var det verkligen yttrandefrihet som försvarades i det forumet – eller var det bara rätten att vräka ur sig hat utan konsekvens? För mÃ¥nga av oss andra framstod det snarare som att andras yttrandefrihet kvävdes där, under tyngden av hat och hot. Att starta en antirasistisk version av gruppen var inte censur, utan ett försök att skapa ett utrymme för sansade röster utan att bli överröstade av hatretorik. Att Markström dömdes är inte särskilt förvÃ¥nande egentligen, men antagligen var det ganska lyckosamt med tanke pÃ¥ att mÃ¥nga andra som ställs inför Hets mot Folkgrupp även frias (Jomshof exempelvis).

    Censur och ryggdunkarklubbar

    Det här mönstret gÃ¥r igen pÃ¥ plattform efter plattform. När grundläggande trivselregler införs – inga personangrepp, ingen rasism, ingen spam – ropas det snabbt om diktatur och Ã¥siktskorridor. Yttrandefrihet reduceras till ett slagord som betyder “jag ska fÃ¥ säga vad jag vill utan konsekvenser”, medan intresset för andras yttrandefrihet är obefintligt. Försök att problematisera detta i högerdominerade forum, och uteslutning följer ofta omedelbart. Samma forum beskrivs samtidigt som motstÃ¥ndarsidan som “ryggdunkarklubbar”, trots att den egna homogeniteten är minst lika total. När regler saknas är allt tillÃ¥tet. När regler införs är det plötsligt förtryck. Det är inget nytt fenomen, men det säger en hel del om hur begreppet yttrandefrihet i praktiken används som ett verktyg för egen bekvämlighet snarare än som en princip man faktiskt vill värna.

Antifascista – background and context

Permalink
Published: 2026-01-25 12:55:07
Discovered: 2026-03-19 13:50:20
Hash: dfca2d0a22ec09b3cf51e3cc5a93b9d884e8ecfd
https://www.tornevalls.se/antifascista-background-and-context/
Description

Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...

Content

Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December.

The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard.

Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression.

All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production.

The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.


History — 2 versions shown

Changes

From 2026-01-25 12:55:07 (discovered: 2026-02-05 14:24:02) hash: 5a862d7655d94ef77a3d1e11211882ee79051e88
To 2026-01-25 12:55:07 (discovered: 2026-03-19 13:50:20) hash: dfca2d0a22ec09b3cf51e3cc5a93b9d884e8ecfd
Title
Antifascista – background and context
Description
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...
Content
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard. Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression. All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production. The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.
Old vs new
From
TITLE:
Antifascista – background and context

DESCRIPTION:
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...

CONTENT:
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December.

The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard.

Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression.

All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production.

The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.
To
TITLE:
Antifascista – background and context

DESCRIPTION:
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...

CONTENT:
Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December.

The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard.

Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression.

All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production.

The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.

Versions

  1. 2026-01-25 12:55:07
    Discovered: 2026-03-19 13:50:20 Hash: dfca2d0a22ec09b3cf51e3cc5a93b9d884e8ecfd
    Title:
    Antifascista – background and context
    Description:
    Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...
    Content
    Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December.

    The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard.

    Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression.

    All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production.

    The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.
  2. 2026-01-25 12:55:07
    Discovered: 2026-02-05 14:24:02 Hash: 5a862d7655d94ef77a3d1e11211882ee79051e88
    Title:
    Antifascista – background and context
    Description:
    Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December. The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between...
    Content
    Antifascista is an experimental music piece rooted in a concrete real-world incident in Salem, Sweden, in December.

    The background is video footage from a 2025 attempt to restart the Salem march – a neo-Nazi demonstration that previously took place between 2000 and 2010 and was met, during those years, by widespread counter-protests across Sweden. In the footage, a clear counter-voice can once again be heard.

    Hearing this chant – “Antifascista, Alarma, Alarma” – became the trigger for the idea behind the track. The project began as a pure experiment. Initially, AI-generated voice material was used, but the result quickly became too distorted and uncanny. As a result, the voice was re-recorded and reinterpreted manually, with full control over the expression.

    All music, structure, and sound design were produced in a DAW. The focus was on shaping a coherent composition rather than documenting an event. I am personally opposed to AI-generated music, which is why the material was completely reworked and finalized through traditional, manual production.

    The release was approached with some caution. The content may provoke reactions, and the project was not originally intended for release at all but now, I has been published at submithub to “test its wings”. At its core, this is an experiment – to see whether the material works in its context and whether it has a place to exist.

Andras fri- och rättigheter – Ett snårigt näste när man bara bryr sig om sig själv

Permalink
Published: 2026-01-07 10:18:15
Discovered: 2026-03-19 13:50:20
Hash: 11b429f1e247a4040c16925e3bb4f50ae7a35846
https://www.tornevalls.se/andras-fri-och-rattigheter-ett-snarigt-naste-nar-man-bara-bryr-sig-om-sig-sjalv/
Description

I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform....

Content

I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!”

Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform. De menar att deras demokratiska rättigheter kränks när de inte får sprida sin åsikt precis var de vill. Fenomenet är särskilt vanligt inom högerextrema kretsar och liknande grupper, där man gärna åberopar yttrandefrihet och demokrati för egna syften, samtidigt som man ignorerar andras rättigheter. I synnerhet rätten att få slippa korkade extremister.

Vad innebär egentligen yttrandefrihet enligt lagen, och var går gränsen mellan offentligt och privat forum? Missförstånden kring demokratiska fri- och rättigheter – och hur de ibland missbrukas av högerextrema röster i Sverige behöver kanske redas ut, inte minst för de röster som inte förstår bättre. Det finns trots allt väsentliga skillnader mellan offentliga samtal och privata plattformar.

Det kan vara en god idé att belysa hur vissa försöker flytta gränserna för det som anses acceptabelt att säga offentligt, genom att hävda att de är “tystade” av etablissemanget – även i privata forum, där det till och med kan sakna relevans helt. Exempelvis: Någon har laddat upp ett foto på sig själv – en vilse högerextremist tycker att det är viktigt att få prata om sina egna rättigheter att prata om allt annat, förnedra personen på personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. Lite som om det var en dåligt konfigurerad modell av ChatGPT 3.5.

De som väljer att ignorera andras grundläggande fri- och rättigheter, bör inte förvänta sig att få någon särskilt bra respons på det – och kanske i stället räkna med att bli utslängd från offentliga samtal. I rena korta ordalag: Håll käften om du inte är intresserad. Din åsikt är inte värd ett skit. 

Table of Contents Toggle Yttrandefrihet i Sverige – stark men inte gränslösLessons learned?Privata plattformar där värdens regler gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för minoriteten)Lessons learned?Högerextremas missbruk av yttrandefrihetens principNär det extrema blir mainstream med förskjutna gränser i debattenRättigheter med ansvar, frihet med gränser Yttrandefrihet i Sverige – stark men inte gränslös

Yttrandefriheten är grundlagsskyddad i Sverige och utgör en hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § har varje medborgare rätt att fritt uttrycka sina tankar, åsikter och känslor offentligt, vilket förklaras tydligt i Internetstiftelsens genomgång av vad man faktiskt får säga på nätet. Detta skydd syftar till att möjliggöra en fri samhällsdebatt och åsiktsbildning. Det innebär dock inte att man får säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten får begränsas genom lag av hänsyn till till exempel rikets säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket också framgår av Internetstiftelsens genomgång av yttrandefrihetens juridiska gränser på nätet. Med andra ord är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden i samhället.

Flera typer av yttranden är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, uppvigling samt vissa andra yttranden är förbjudna enligt lag, vilket framgår av Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär att yttrandefriheten där har en laglig gräns. Likaså är direkta hot eller förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltså att man inte har rätt att yttra vad som helst, utan att det finns tydliga gränser för vad som får spridas offentligt, vilket även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier.

Det är också viktigt att förstå vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter får inte stoppa ett yttrande innan det publicerats. Däremot kan ett yttrande som redan gjorts bedömas i efterhand och leda till rättsliga påföljder om det bryter mot lagen (till exempel om det utgör hets mot folkgrupp eller liknande). När någon påstår att den utsatts för censur för att ett inlägg tagits bort, är det oftast en felaktig användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, inte att ett inlägg raderas i efterhand, vilket Lawline förklarar i sin juridiska genomgång av yttrandefrihet och censur på internet. Om en tidningsredaktion eller webbplats modererar innehåll efter publicering rör det sig alltså inte om censur i grundlagens mening, vilket också framgår av Lawlines förklaring av skillnaden mellan censur och moderering i privat regi.

Lessons learned?

Är du högerextrem är det inte troligt att du lärt dig något. Det är inte heller särskilt troligt att du överlevt så här mycket faktatext på en och samma gång.

Yttrandefriheten ger dig rätten att uttrycka din åsikt offentligt utan förhandscensur från staten, men den skyddar dig inte från alla konsekvenser. Du är fortfarande ansvarig för vad du säger – yttrandefriheten är ingen fribiljett att sprida hat eller hot utan reaktion. Som juristen Ängla Eklund uttrycker det: samma regler gäller på gatan som på internet; man får tycka och säga mycket, men inte allt, vilket också förklaras i Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Yttrandefrihet innebär heller inte att det du säger måste accepteras av andra i social mening. Inte ens de gånger du skrattar ut dom med argumentet “Nu försöker vänstern tysta mig igen, så typiskt, HAHA!” – det är snarare i det läget du bör “dra åt helvete” på ren akademiskt hövlig svenska.

Det finns mycket man får säga rent lagligt som ändå kan vara olämpligt eller få mothugg. Att någon invänder mot eller kritiserar ditt yttrande är inte ett brott mot din yttrandefrihet – det är andras yttrandefrihet i arbete. Men sitter du redan i kommentarsfälten och gafflar, är det inte säkert att du begriper det här. Och det ska vi prata mer om nu.

Privata plattformar där värdens regler gäller

En avgörande skillnad som ofta missförstås är den mellan offentliga rum och privata plattformar eller forum. Yttrandefrihetslagarna skyddar oss mot ingrepp från det allmänna – det vill säga staten får inte hindra oss från att uttrycka oss, såvida vi inte bryter mot lagen. Men dessa lagar ger oss inte rätt att kräva utrymme på någon annans arena. Att någon har en öppen Facebook-profil eller en publik debattgrupp innebär inte att den blir allmän egendom där alla kan agera fritt utan restriktioner. På privata plattformar och sidor är det ägaren eller värden som sätter reglerna.

När du går in på en social medie-plattform eller en privatägd sajt, godkänner du deras användarvillkor. Privata aktörer har frihet att själva kontrollera innehållet på sina plattformar, vilket Lawline förklarar i sin genomgång av yttrandefrihet och privata plattformars rätt att moderera innehåll. Det betyder att Facebook, Instagram, ett diskussionsforum eller en blogg har rätt att moderera innehåll enligt sina regler. Bryter man mot användarvillkoren kan företaget ta bort inlägget eller stänga av kontot, vilket också framgår av Lawlines förklaring av hur privata aktörer får sätta och upprätthålla egna regler. Händer det, kan du börja med att inte bli upprörd. Du får skylla dig själv och har i princip ingenting att säga till om. Man har samtyckt till detta när man gick med på villkoren. Det må kännas frustrerande för den som drabbas, men juridiskt är det helt i sin ordning. Trots att du fortfarande sitter och skrattar åt vänstervridna. Som Lawline klargör: din yttrandefrihet har inte blivit kränkt när en privat aktör tar bort ditt inlägg eller begränsar dig, eftersom det rör sig om en privat plattform som tillämpar sina regler – inte staten som utövar censur.

“Yttrandefriheten innebär inte heller att alla har rätt att uttrycka sin åsikt var som helst.”, vilket Hjärnfonden tydliggör i sin genomgång av hur och varför de modererar sina kommentarsfält i sociala medier.

Ett belysande exempel kommer från Hjärnfonden, en svensk organisation, som i sin sociala medie-policy påpekar att det inte finns någon motsägelse mot yttrandefriheten i att de modererar sina kommentarsfält, vilket de själva förklarar i sin policy för hur och varför innehåll modereras i deras sociala medier. Yttrandefriheten innebär ingen absolut rätt att alltid få uttala sig, och den innebär särskilt inte att man har rätt att uttala sig var som helst. På Hjärnfondens egna sidor gäller deras regler; om någon bryter mot dem, till exempel genom hatiska uttalanden, tar de bort inlägget och kan blockera användaren, vilket framgår av samma genomgång av hur Hjärnfonden tillämpar sina kommentarsregler i praktiken. Den principen gäller alla privata forum – den som driver sidan bestämmer vad som tolereras där.

Det är alltså en avgörande skillnad mellan att tala på torget och att tala på någons privata webbsida eller profil. På det fysiska torget – ett offentligt rum – kan du utnyttja din yttrandefrihet (inom lagens gränser) och exempelvis hålla ett spontant anförande. Ingen myndighet får på förhand förbjuda dig så länge du följer lagen. Men om du kliver in i någons vardagsrum, eller för den delen in på en persons Facebook-vägg eller en privatägd diskussionsgrupp, då har du ingen absolut rätt att yttra dig där mot värdens vilja. Det är värden som avgör vad som är okej i den miljön. Precis som du i ditt hem kan be en gäst gå om hen uppför sig illa, kan en forumadministratör radera inlägg eller utesluta medlemmar som bryter mot forumets regler.

Ett vanligt klagomål från högljudda debattörer på högerkanten är att deras inlägg raderas i till exempel tidningars kommentarsfält eller att de blir blockade av meningsmotståndare på sociala medier – och att detta skulle kränka deras yttrandefrihet. Här behöver vi slå fast: Att få kommentera på en tidnings webbplats eller hos en privatperson är ingen demokratisk eller lagstadgad rättighet. Ingen enskild medborgare har en skyldighet att upplåta sin plattform åt någon annans åsikter. Tidningar har ansvar för sitt innehåll och har kommentarsregler; de kan plocka bort sådant som bryter mot reglerna eller riskerar att vara brottsligt. En privat Facebook-användare har ingen plikt att låta alla tala fritt på den egna sidan – det är faktiskt snarare en del av den personens egen frihet att få välja bort oönskade kommentarer. Som ett tankeexperiment: Om yttrandefrihet innebar att alla fick säga vad de ville i alla sammanhang, då skulle du i princip inte kunna stoppa någon från att ställa sig i ditt vardagsrum och förolämpa dig. Så är det lyckligtvis inte – din hemfrid och din rätt att välja ditt umgänge väger tyngre i privata sammanhang än en utomståendes “rätt” att bli hörd där.

Det offentliga samtalet i stort mår bra av många röster, även obekväma. Men forum och grupper som drivs privat kan ha egna syften – exempelvis att främja ett visst slags diskussion eller hålla god ton – och då måste de kunna avvisa troll, mobbare eller irrelevanta inlägg utan att det ropas om diktatur. Det är värt att notera att även lagen ger stöd åt moderering: den svenska BBS-lagen (Lagen om ansvar för elektroniska anslagstavlor) ålägger den som driver ett forum att ta bort inlägg som uppenbart innehåller vissa typer av olagligt material, såsom hets mot folkgrupp, olaga hot och annan allvarlig brottslighet, vilket Hjärnfonden tydligt beskriver i sin policy om hur de följer BBS-lagen och modererar sina kommentarsfält. Så långt ifrån att vara censur kan moderering vara en skyldighet i vissa fall.

Till och med regeringen har konstaterat den privata plattformens rätt. I ett svar till riksdagen betonade dåvarande kultur- och demokratiministern Amanda Lind att stora digitala plattformar i grunden har frihet att sätta upp egna villkor för sina tjänster – men att dessa bör utövas ansvarsfullt med tydliga och transparenta regler, vilket framgår av hennes svar på riksdagens fråga om yttrandefriheten på internet. Just eftersom Facebook, Twitter med flera har blivit så inflytelserika i det offentliga samtalet pågår parallellt diskussioner inom EU om att kräva ökad transparens och konsekvens i hur sådana plattformar tillämpar sina regler, vilket också behandlas i samma riksdagsdokumentation om EU:s arbete kring digitala plattformars ansvar. Men även i den debatten utgår man från att ja, de har rätt att ha regler; frågan är hur de använder den makt det innebär. I Sverige finns idag ingen lag som tvingar en plattform eller privat aktör att publicera allt som inte är brottsligt – de kan ha strängare regler än lagen, och ofta har de det (till exempel förbjuder Facebook även sådant som är lagligt men bryter mot deras community-regler).

Kort sagt

Yttrandefriheten skyddar dig mot staten – inte mot konsekvenserna av att andra utövar sina egna rättigheter. Och att bli borttagen från någons privata plattform är inte att bli “grundlagscensurerad”. Du är fri att tala, men inte nödvändigtvis på deras bekostnad eller i deras utrymme.

Har du lärt dig något än? Nej, jag trodde nog inte det heller.

Demokrati = majoritetsstyre (med rättssäkerhet för minoriteten)

En annan fundamental aspekt som ibland förvanskas i dessa diskussioner är själva demokratins spelregler. I en demokrati gäller majoritetsprincipen: beslut fattas enligt vad flertalet (majoriteten) röstar för, antingen direkt eller genom valda ombud. Den svenska statsskicket bygger på detta – “All offentlig makt i Sverige utgår från folket” som det står i Regeringsformens portalparagraf, och folkviljan kommer till uttryck via riksdagen där majoriteter avgör, vilket utvecklas i Svensk Juristtidnings genomgång av majoritetsprincipen som demokratins grund. Gustaf Petrén, en framstående jurist, formulerade det så här: “Demokratin bygger på majoritetsprincipen. Den utgår från att de som är flest bestämmer hur den offentliga makten ska utövas.”, vilket han själv utvecklar i samma analys i Svensk Juristtidning om hur majoritetsstyre fungerar i praktiken. De som hamnar utanför majoritetens ståndpunkt i en viss fråga utgör en minoritet, och de får acceptera att majoritetens beslut gäller, vilket också framgår av Svensk Juristtidnings resonemang om minoriteters ställning i ett majoritetsstyrt system.

Det betyder inte att minoriteter är rättslösa – demokrati handlar också om att skydda individens grundläggande fri- och rättigheter, oavsett om man tillhör majoriteten eller inte. Sverige har till exempel grundlagsskydd för att även opopulära åsikter ska få uttryckas, och minoriteter (som etniska eller religiösa grupper) har särskilt skydd mot diskriminering och hat. Men skyddet för minoriteten är inte detsamma som att minoriteten skulle kunna styra över majoriteten. När det gäller offentliga beslut – lagar, regler, myndighetsåtgärder – så är det i slutändan den demokratiska processens utfall som gäller, alltså majoritetens beslut. Den som då befinner sig i minoritet i samhället får rätta sig efter de gemensamma reglerna (så länge de inte kränker grundläggande mänskliga rättigheter). Petrén skriver träffande att “de enskilda som kommer i mindre tal har inte annat att göra än att böja sig för den ordning som flertalet beslutat ska gälla”, vilket han utvecklar i Svensk Juristtidning i sin analys av minoriteters ställning i ett majoritetsstyrt system. Med andra ord, ogillar man en lag eller regel har man möjligheten att försöka övertyga fler, delta i debatten, kanske rösta fram andra representanter – men tills dess gäller lagen för alla.

Varför är detta viktigt i vårt sammanhang? Jo, för att många av de som klagar på att de blir “tystade” egentligen utgör en mycket liten minoritet i fråga om sina åsikter eller sätt att uttrycka dem. De kan uppleva att “systemet” är emot dem när deras beteenden får mothugg eller stoppas – men det beror på att systemet (dvs. den demokratiska rättsordningen och den sociala normen) drivs av majoritetens värderingar, vilka oftast inte stämmer överens med de extrema ståndpunkter minoriteten har. I Sverige har till exempel en majoritet av folkets valda ombud beslutat om lagar som kriminaliserar hets mot folkgrupp, vilket bottnar i en demokratisk värdering att skydda minoriteter från hat. Om då en högerextrem person – som representerar en minoritetsåsikt – vill sprida hets mot minoriteter, så kommer lagen (majoritetens beslut) att krocka med den personens önskan. Att lagen då sätter gränser är inte förtryck, utan just demokrati i funktion. Majoritetssamhället har sagt sitt: viss typ av retorik accepteras inte. Minoriteten i det här fallet får finna sig i detta, eller försöka ändra opinionen på demokratisk väg (vilket de ibland försöker genom att hävda “vi får inte säga sanningen” etc., se mer nedan).

Det är värt att understryka att demokrati också innebär rättssäkerhet och skydd mot godtycke. Majoriteten kan inte göra vad som helst mot en minoritet – det finns grundlagar, domstolar och internationella konventioner som sätter ramar. Till exempel kan inte ens en enhällig riksdagsmajoritet bara så där avskaffa oppositionens rätt att yttra sig; sådana ändringar kräver grundlagsändringar över tid. Det finns alltså inbyggda skydd för att inte majoriteten ska förtrycka minoriteten hur som helst. Men i den vardagliga tillämpningen – i en Facebook-tråd eller på en nyhetssajt – så är det faktiskt inte “oddemokratiskt” att den som är i klar minoritet med en extrem åsikt märker att flertalet andra eller moderatorerna säger stopp. Det är snarare en spegling av hur samhällsnormen ser ut. Demokrati betyder inte att alla får som de vill, utan att alla får säga sitt men majoritetens linje väger tyngst i gemensamma beslut.

För att ge ett konkret scenario: En person på yttersta högerkanten hävdar kanske att en viss konspirationsteori är sann och kräver att media och folk ska ge det utrymme. Medias redaktioner (som visserligen är privata aktörer men ändå en del av det offentliga samtalet) kanske väljer att inte sprida dessa påståenden, för de anses grundlösa eller hatiska. Personen ropar då att “min yttrandefrihet kränks, demokratin sätts ur spel!” I realiteten har personen rätt att tycka och yttra sin teori – hen kan skriva på sin blogg, demonstrera fredligt, ge ut flygblad – inget av detta kommer staten hindra så länge det inte bryter mot lag. Men ingen demokratisk princip garanterar honom en publik i bästa sändningstid eller fri lejd in i andras plattformar. Och om allmänheten i majoritet tar avstånd från idéerna, är det just majoritetens fria val. Demokrati kan ibland vara hårt för den som har en impopulär uppfattning: man kan få prata, men man kan inte tvinga någon att lyssna eller hålla med.

Lessons learned?

I en demokrati styr majoritetens beslut den gemensamma spelplanen, medan minoriteten har rätt att existera, tycka annorlunda och försöka vinna gehör – men inte rätt att köra över majoriteten på eget bevåg. Den som påstår sig försvara “demokratin” genom att kräva ensidig frihet för sin egen minoritetsåsikt på andras bekostnad, har missförstått konceptet. Demokratiska rättigheter handlar både om rätten att uttrycka sig och andras rätt att säga ifrån eller slippa lyssna. Rätten att säga nej, att välja bort nonsens och extremism från sin egen sfär, är faktiskt också en del av det demokratiska ramverket, vilket Aftonbladets ledartext om hur politiska angrepp på medier riskerar att underminera det fria ordet tydliggör i analysen av hur yttrandefrihet också innefattar rätten att avvisa extremism.

Högerextremas missbruk av yttrandefrihetens princip

Med bakgrund av ovanstående blir det tydligt hur vissa grupper på yttersta högerkanten försöker vända på begreppen för att gynna sig själva. Det finns en lång historia av att extremistiska rörelser utnyttjar det öppna samhällets principer för att underminera samma öppenhet. Nazisterna i Tyskland på 1930-talet deltog till exempel i demokratiska val och utnyttjade yttrandefriheten för sin propaganda – men så snart de fick makten avskaffade de yttrande- och pressfriheten brutalt. Dagens svenska högerextremister är förstås inte i närheten av den maktpositionen, men retoriken liknar på sina håll en spegelbild av detta mönster: “Frihet åt mig, men inte åt dig.”

Ett utmärkande drag är offerretoriken. Högerextrema debattörer kliver ofta in i en diskussion aggressivt – med personangrepp, epitet och ibland rent hatiska uttalanden – i syfte att dominera eller provocera. Men om de möter motstånd, eller blir avstängda på grund av sitt beteende, intar de genast rollen som martyrer. De påstår att de “tystas” för att deras meningsmotståndare är “rädda för sanningen” eller att det råder “åsiktsförtryck” mot dem. Som en observatör torrt kommenterade: många av dessa personer kräver friheter för sig själva som de inte vill ge till andra – de vill få häva ur sig förolämpningar och konspirationer, men så fort någon annan säger emot eller utesluter dem, skriker de om censur och diktatur. Mönstret känns igen av många som deltagit i internetforum: först delar de ut smädelser och avbryter saklig debatt, sedan skriker de “YTTRANDEFRIHET!” när moderatorn ingriper. Förutsägbart – och paradoxalt.

Retoriken om att vara “tystad” eller utsatt för “åsiktskorridoren” (ett populärt begrepp i svensk debatt) har också ett strategiskt syfte. Genom att framställa sig som en underdog som makten vill kväsa, hoppas extrema opinionsbildare väcka sympati och rekrytera anhängare. Om man inte faktakollar kan det låta trovärdigt: “Varför får inte X framföra sin åsikt? Lever vi i en diktatur?”

I själva verket får X framföra sin åsikt – hen får bara inte göra det precis var som helst eller utan att mötas av mothugg. Att ett samhälle reagerar negativt på hatiska eller antidemokratiska uttryck är inte ett tecken på diktatur, utan ett tecken på att samhället försvarar sina demokratiska värden (som allas lika värde, respekt och sanning) och fortfarande är skapligt friskt (till skillnad från extremisten). Som jag skrev i en kommentar angående denna typ av högeraktivister: de har aldrig varit intresserade av något annat än sina egna fri- och rättigheter. Hade de själva makten skulle de troligen inskränka just de friheter de nu kräver (inklusive denna texten, fakta är ju trots allt irrelevant i såna här kretsar). Det har historien lärt oss från åtskilliga exempel på högerledare som spårat ur maktmässigt.

Man kan se tendenser i vår närtid också. I exempelvis Ungern, som styrs av det högernationalistiska Fidesz-partiet, har regeringen gradvis monterat ned mediefriheten och domstolarnas oberoende, vilket beskrivs i Aftonbladets analys av hur angrepp på medier blivit ett kännetecken för auktoritär politik i artikeln om hur mediernas ställning urholkas i Ungern. De använder en demokratisk retorik men agerar på sätt som försvårar oppositionens möjligheter att göra sin röst hörd. I Sverige har vi en livlig debatt om public service och medias roll; vissa inom den nationalistiska högern har anklagat public service för att vara “vänstervridet” och har föreslagit minskad frihet för dessa medier. Angreppen på etablerade medier – att kalla journalister för “folkets fiender” eller antyda att kritiska frågor är förräderi – ligger farligt nära att undergräva det fria ordet. Yttrandefrihetsexperten Nils Funcke har varnat för dessa tendenser och menar att de återkommande attackerna på media från ledande politiker är ett oroväckande tecken, vilket han utvecklar i Aftonbladets ledartext om hur medieangrepp hotar yttrandefriheten.

Högerextrem retorik handlar ofta om att flytta fokus. Istället för att bemöta sakargument eller följa normala debattregler, sätter de en etikett på motparten (“kommunist”, “kulturmarxist”, “imbecill”) för att tysta eller förminska. Om motparten eller moderatorn sedan tröttnar och avbryter diskussionen, tar de detta som bevis på att de själva hade rätt hela tiden (“se, de klarar inte sanningen, de censurerar mig!”). Det blir en slags självuppfyllande strategi för dem: stöka till debatten så mycket att ingen vill ha kvar dem, och använd sedan uteslutningen som propaganda för att de är de enda som vågar “stå upp mot PK-maffian”. För en utomstående är logiken skev, men inom den egna kretsen kan martyrskapet ge status.

Det är viktigt att syna denna bluff. Att samhället sätter gränser för hat och lögn är inte att “tysta oliktänkande” i odemokratisk mening – det är att upprätthålla demokratins grundläggande respekt. Högerextrema har all rätt att tycka vad de vill. De kan starta egna tidningar, bloggar, partier och YouTube-kanaler. Och de gör det också – det finns en flora av alternativa medier till höger om den etablerade mittenfåran, just för att internet ger dem möjligheten. Där kan de framföra även konspirationsteorier och främlingsfientliga budskap, inom lagens råmärken. Men vad de inte kan kräva är att få sprida samma budskap oemotsagda i andras kanaler eller att slippa bli ifrågasatta. Ändå är det precis det de ofta gör anspråk på: en slags ensidig yttrandefrihet där de får härja fritt, medan de vill slippa konsekvensen av att andra utövar sin rätt att säga emot eller välja bort dem.

Notera ironin: Många av dessa högljudda “yttrandefrihetskämpar” på ytterkanten lever i ett av världens mest yttrandefria länder. De kan i princip säga nästan vad som helst lagligt, så länge de inte hotar eller hetsar. De kan demonstrera, ge ut skrifter, kandidera i val (vi har till och med nazistiska småpartier som ställer upp i Sverige – yttersta beviset på vår demokratiska tolerans). Ändå hävdar de att de är “tystade”. I själva verket handlar det om att deras idéer saknar brett stöd – folk i gemen vill inte lyssna på dem, medier vill inte ge dem utrymme eftersom de bryter mot grundläggande pressetiska principer, och privatpersoner vill inte ha dem i sina flöden. Det är inte en konspiration – det är det demokratiska samhället som utövar sin kollektiva valfrihet.

När det extrema blir mainstream med förskjutna gränser i debatten

Under de senaste decennierna har vi dessutom bevittnat hur vissa extrema idéer gradvis flyttat fram sina positioner i det offentliga samtalet. Detta sker inte öppet genom tvång, utan subtilt genom normalisering. Sverigedemokraternas intåg i riksdagen 2010 innebar till exempel att åsikter som tidigare betraktats som extrema eller rent av rasistiska fick en plattform inom parlamentarisk debatt. Sedan dess har gränsen för vad som anses acceptabel retorik förskjutits märkbart. Forskaren Jesper Strömbäck konstaterar att i takt med att SD:s problemformuleringar normaliserats och legitimerats har det som förr betraktades som rasistiskt blivit nästintill regeringspolitik idag, vilket han utvecklar i Dagens Arenas intervju om hur tidigare rasistiska positioner gradvis blivit politiskt accepterade. Han syftar på att invandringsfientliga tongångar som tidigare var otänkbara för etablerade partier numera uttrycks av regeringsföreträdare utan större chockeffekt. Tidöavtalets politik, med SD som stödparti, förs i mångt och mycket med en retorik som för bara ett decennium sedan skulle ha kallats invandringsfientlig rakt av, vilket också framgår av Strömbäcks analys i samma genomgång av hur normaliseringen påverkat svensk regeringspolitik.

Denna förskjutning – ibland kallad ”Overton-fönstrets” förflyttning – beror delvis på att högerpopulister skickligt spelat på yttrandefrihetsargumentet för att tänja på vad man får säga. Minns debatten om “åsiktskorridoren” i Sverige: det påstods från högerhåll att man “inte fick prata om” invandringens problem, att etablissemanget tystade sådana diskussioner. I realiteten var ämnet känsligt men inte förbjudet – det var många som ogillade generaliserande eller främlingsfientliga uttalanden, så de bemöttes med skarp kritik. SD och liknande aktörer vände detta till sin fördel och sa: “Se, vi blir tystade – alltså måste vi skrika ännu högre.” Och efterhand började andra partier anamma en del av deras retorik för att inte förlora väljarstöd. Gränserna flyttades.

Det finns en risk i detta. När språket och ideologin hos extrema grupper normaliseras kan själva grundvärderingarna i samhället förskjutas. Det som tidigare sågs som uppenbart kränkande eller odemokratiskt kan börja ses som “en åsikt bland andra”. Som Strömbäck påpekar tävlar i dag till och med traditionella partier om att vara “hårdast” i exempelvis kriminalpolitik och migrationspolitik, där retoriken blivit betydligt mer sträng och strafforienterad än förr, vilket han utvecklar i Dagens Arenas analys av hur migrations- och kriminalpolitisk retorik förskjutits i svensk politik. Det demokratiska samtalet tål mycket, men vi bör vara medvetna om när vi rör oss mot farligt vatten. Att fler vågar säga saker öppet är i grunden bra – om det handlar om sakliga åsikter. Men när det som sprids är förenklade syndabockstankar eller hat mot vissa grupper, då är det inte enbart oskyldig “vidgning av debatten”. Det kan vara början på att demokratins kultur eroderar, precis det som våra lagar om hets och hat syftar till att förhindra.

Samtidigt måste man erkänna att åsiktsklimatet är bredare nu än förut. Människor får idag uttrycka invandringskritik öppnare utan att automatiskt stämplas ut – vilket många framhåller som något positivt, att tabu brutits. Kritik mot sådant som hedersförtryck, integrationsproblem eller volymen av flyktingmottagande har fått en legitim plats i debatten, till stor del tack vare att partier som SD drev upp frågorna på dagordningen. Det demokratiska systemet ska kunna absorbera nya frågor och perspektiv. Men skillnaden mellan legitim saklig kritik och intolerant retorik är avgörande. Det förstnämnda stärker demokratin (genom att relevanta problem diskuteras öppet), det sistnämnda undergräver demokratin (genom att vissa grupper demoniseras och samhällsklyftor ökar).

Högerextrema aktörer har emellertid ofta svårt att hålla sig till saklig kritik – deras ideologi bygger i regel på att utse fiender (etablerade politiker, minoriteter, medier) som man menar förstör nationen. Och när deras språkbruk letar sig in i mainstream riskerar det offentliga samtalet att förgiftas. Vi ser tyvärr exempel på detta i sociala medier dagligen: tonläget har hårdnat, normalisering av personangrepp och misstro mot demokratins institutioner breder ut sig. Plattformar som tidigare var till för meningsutbyte blir ibland slagfält av hat. Twitter (numera X) beskrivs i Aftonbladets ledartext om hur politiska angrepp på medier och digitala plattformar bidrar till ett allt mer polariserat klimat som ett träsk där högerextrema narrativ och trollfabriker dominerar, vilket analyseras i artikeln om hur extremism och botar präglar debattklimatet på X. Ju mer sådant tolereras i “mainstream”, desto mer flyttas ribban för vad som anses okej.

Det fria samhället måste därför göra en ständig avvägning: Vara öppet nog att alla röster får försöka göra sig hörda – men starkt nog att stå emot de röster som medvetet vill sabotera öppenheten. Det är här diskussionen om ”den tysta högern” eller ”cancel culture” etc. kommer in. Högern (i sin mer extrema form) anser ofta att deras åsikter hålls nere av en vänsterliberal hegemoni. I viss mån har de använt detta narrativ för att ta sig upp och in i riksdagen och därefter påverkat samtalet (som vi sett). Men att de nu faktiskt har en megafon (SD är näst största parti) motsäger ju påståendet att de skulle ha varit genuint tystade. Processen visar snarare att demokratin fungerade – ett tidigare marginellt perspektiv fick stöd av tillräckligt många väljare och kom in i värmen. Det ironiska är att trots detta fortsätter retoriken hos en del att låta som om de vore utanför och förtryckta. Det tyder på att offerrollen är svår att släppa, kanske för att den varit så framgångsrik retoriskt.

Rättigheter med ansvar, frihet med gränser

Den röda tråden i allt ovan är förståelsen att demokratiska rättigheter kommer med ansvar och är inskrivna i ett sammanhang av lag och etik. Yttrandefrihet är fundamentalt, men den kräver ett ansvarsfullt handhavande – både av individer och plattformar. Demokrati handlar om frihet, men också om respekt för majoritetsbeslut och andras friheter. Samtidigt är det nog viktigt att förstå att det inte finns förståelse alls här. Eller snarare är det så att folk med den här retoriska grunden skiter i alla andra.

De som skriker högst om att de “inte får höras” i Sverige idag är i praktiken ofta de som hörs mest i den digitala miljön – men de är frustrerade över att folk inte längre tiger och samtycker, eller över att bli modererade när de spårar ur. Att värna yttrandefrihet innebär att alla ska få tala inom rimliga ramar, inte att vissa ska få dominera utan gensvar. Det innebär också rätten att säga ifrån när någon går över gränsen.

Som samhälle behöver vi fortsätta vara tydliga med följande:

Yttrandefriheten skyddar mot staten, inte mot kritik eller moderation. Alltså: du får tycka och säga, men du får tåla att andra utövar sin rätt att säga emot eller stänga sin dörr, vilket Hjärnfonden tydliggör i sin policy om hur privata aktörer har rätt att moderera sina egna kanaler och kommentarsfält i genomgången av varför moderering inte står i motsättning till yttrandefriheten.

Demokrati betyder majoritetsstyre under lagarna. Att följa gemensamma regler är inte förtryck, utan just vad samhället kommit överens om. Minoritetsåsikter får finnas, men kan inte diktera villkoren för majoriteten hur som helst, vilket utvecklas i Svensk Juristtidnings genomgång av hur majoritetsprincipen utgör demokratins grund och hur minoriteter i ett majoritetsstyrt system har att underordna sig gemensamma beslut.

Privata forum har egna trösklar. Den som blir utkastad ur ett Facebook-forum p.g.a. sitt beteende har inte “fått munnen igentejpad av staten”. Man kan starta ett eget forum om man vill prata fritt på sina villkor.

Fri åsiktsbildning kräver respekt. Om vi vill ha högt i tak i debatten, måste vi också ta ansvar för tonen. Att kallprata med hårda fakta är en sak – att häva ur sig skällsord och personangrepp en annan. Yttrandefriheten ger utrymme för hård kritik, ja, men ett demokratiskt samhälle bygger på idén att man bemöter argument med argument, inte med förakt.

I slutänden handlar det om att förstå skillnaden mellan att bli sakligt emotsagd och att bli orättfärdigt tystad. De högerextrema som misströstar över att “de inte får säga sin sanning” blandar oftast ihop dessa (läs: skiter i det). Deras rätt att tala finns där – men de saknar kanske allmänhetens gillande, och det kan inte tvingas fram genom att åberopa yttrandefrihet. Den måste förtjänas genom trovärdighet och respekt.

Demokratin är jäkligt intressant, just för att den ständigt prövas av sådana här gränsfall: Hur hanterar vi de som vill utnyttja friheten för att sabotera friheten? Svaret hittills har varit: med ännu mer demokrati, vilket inkluderar modet att sätta gränser när det behövs. Att säga “nej, du får inte använda min plattform för hat” eller “nej, din rätt kan inte trampas på alla andras rättigheter” är i sig ett demokratiskt försvar. Yttrandefriheten och demokratin mår inte dåligt av att vi står upp mot dem som missbrukar systemet – tvärtom, de mår bra av att vi förstår dem rätt och vårdar dem klokt.


History — 2 versions shown

Changes

From 2026-01-07 10:18:15 (discovered: 2026-02-05 14:24:02) hash: 28f41c1cb14e013fe64a9327af07eee1c379bcd4
To 2026-01-07 10:18:15 (discovered: 2026-03-19 13:50:20) hash: 11b429f1e247a4040c16925e3bb4f50ae7a35846
Title
Andras fri- och rättigheter rättigheter – Ett snÃ¥rigt näste när snårigt näste när man bara bryr sig om sig själv själv
Description
I dagens digitala debattklimat hör hör man ofta människor människor utropa: “Jag fÃ¥r får faktiskt säga säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan sällan i samband med att nÃ¥gon fÃ¥tt någon fått sin kommentar raderad eller blivit blockerad pÃ¥ en privat plattform....
Content
I dagens digitala debattklimat hör hör man ofta människor människor utropa: “Jag fÃ¥r får faktiskt säga säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan sällan i samband med att nÃ¥gon fÃ¥tt någon fått sin kommentar raderad eller blivit blockerad pÃ¥ en privat plattform. De menar att deras demokratiska rättigheter kränks när rättigheter kränks när de inte fÃ¥r får sprida sin Ã¥sikt åsikt precis var de vill. Fenomenet är särskilt är särskilt vanligt inom högerextrema högerextrema kretsar och liknande grupper, där där man gärna Ã¥beropar gärna åberopar yttrandefrihet och demokrati för för egna syften, samtidigt som man ignorerar andras rättigheter. rättigheter. I synnerhet rätten rätten att fÃ¥ slippa korkade extremister. Vad innebär innebär egentligen yttrandefrihet enligt lagen, och var gÃ¥r gränsen går gränsen mellan offentligt och privat forum? MissförstÃ¥nden Missförstånden kring demokratiska fri- och rättigheter rättigheter – och hur de ibland missbrukas av högerextrema röster högerextrema röster i Sverige behöver behöver kanske redas ut, inte minst för för de röster röster som inte förstÃ¥r bättre. förstår bättre. Det finns trots allt väsentliga väsentliga skillnader mellan offentliga samtal och privata plattformar. Det kan vara en god idé idé att belysa hur vissa försöker försöker flytta gränserna för gränserna för det som anses acceptabelt att säga säga offentligt, genom att hävda hävda att de är är “tystade” av etablissemanget – även även i privata forum, där där det till och med kan sakna relevans helt. Exempelvis: NÃ¥gon Någon har laddat upp ett foto pÃ¥ sig själv själv – en vilse högerextremist högerextremist tycker att det är är viktigt att fÃ¥ prata om sina egna rättigheter rättigheter att prata om allt annat, förnedra förnedra personen pÃ¥ personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. kommentarsfältet. Lite som om det var en dÃ¥ligt dåligt konfigurerad modell av ChatGPT 3.5. De som väljer väljer att ignorera andras grundläggande grundläggande fri- och rättigheter, bör rättigheter, bör inte förvänta förvänta sig att fÃ¥ nÃ¥gon särskilt någon särskilt bra respons pÃ¥ det – och kanske i stället räkna stället räkna med att bli utslängd frÃ¥n utslängd från offentliga samtal. I rena korta ordalag: HÃ¥ll käften Håll käften om du inte är är intresserad. Din Ã¥sikt är åsikt är inte värd värd ett skit.  skit.  Table of Contents Toggle Yttrandefrihet i Sverige – stark men inte gränslösLessons gränslösLessons learned?Privata plattformar där värdens där värdens regler gällerKort gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för rättssäkerhet för minoriteten)Lessons learned?Högerextremas learned?Högerextremas missbruk av yttrandefrihetens principNär principNär det extrema blir mainstream med förskjutna gränser förskjutna gränser i debattenRättigheter debattenRättigheter med ansvar, frihet med gränser gränser Yttrandefrihet i Sverige – stark men inte gränslös gränslös Yttrandefriheten är är grundlagsskyddad i Sverige och utgör utgör en hörnsten hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § § har varje medborgare rätt rätt att fritt uttrycka sina tankar, Ã¥sikter åsikter och känslor känslor offentligt, vilket förklaras förklaras tydligt i Internetstiftelsens genomgÃ¥ng genomgång av vad man faktiskt fÃ¥r säga pÃ¥ nätet. får säga nätet. Detta skydd syftar till att möjliggöra möjliggöra en fri samhällsdebatt samhällsdebatt och Ã¥siktsbildning. åsiktsbildning. Det innebär innebär dock inte att man fÃ¥r säga får säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten fÃ¥r begränsas får begränsas genom lag av hänsyn hänsyn till till exempel rikets säkerhet, allmän säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket ocksÃ¥ framgÃ¥r också framgår av Internetstiftelsens genomgÃ¥ng genomgång av yttrandefrihetens juridiska gränser pÃ¥ nätet. gränser nätet. Med andra ord är är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden skyddsvärden i samhället. samhället. Flera typer av yttranden är är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, förtal, uppvigling samt vissa andra yttranden är förbjudna är förbjudna enligt lag, vilket framgÃ¥r framgår av Internetstiftelsens genomgÃ¥ng genomgång av vilka yttranden som är är straffbara även även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär innebär att yttrandefriheten där där har en laglig gräns. LikasÃ¥ är gräns. Likaså är direkta hot eller förtalsfulla lögner förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltsÃ¥ alltså att man inte har rätt rätt att yttra vad som helst, utan att det finns tydliga gränser för gränser för vad som fÃ¥r får spridas offentligt, vilket även Hjärnfonden klargör även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier. Det är ocksÃ¥ är också viktigt att förstÃ¥ förstå vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter fÃ¥r får inte stoppa ett yttrande innan det publicerats. Däremot Däremot kan ett yttrande som redan gjorts bedömas bedömas i efterhand och leda till rättsliga pÃ¥följder rättsliga påföljder om det bryter mot lagen (till exempel om det utgör utgör hets mot folkgrupp eller liknande). När nÃ¥gon pÃ¥stÃ¥r När någon påstår att den utsatts för för censur för för att ett inlägg inlägg tagits bort, är är det oftast en felaktig användning användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, förhandskontroll, inte att ett inlägg inlägg raderas i efterhand, vilket Lawline förklarar förklarar i sin juridiska genomgÃ¥ng genomgång av yttrandefrihet och censur pÃ¥ internet. Om en tidningsredaktion eller webbplats modererar innehÃ¥ll innehåll efter publicering rör rör det sig alltsÃ¥ alltså inte om censur i grundlagens mening, vilket ocksÃ¥ framgÃ¥r också framgår av Lawlines förklaring förklaring av skillnaden mellan censur och moderering i privat regi. Lessons learned? Är Är du högerextrem är högerextrem är det inte troligt att du lärt lärt dig nÃ¥got. något. Det är är inte heller särskilt särskilt troligt att du överlevt sÃ¥ här överlevt här mycket faktatext pÃ¥ en och samma gÃ¥ng. gång. Yttrandefriheten ger dig rätten rätten att uttrycka din Ã¥sikt åsikt offentligt utan förhandscensur frÃ¥n förhandscensur från staten, men den
Old vs new
From
TITLE:
Andras fri- och rättigheter – Ett snÃ¥rigt näste när man bara bryr sig om sig själv

DESCRIPTION:
I dagens digitala debattklimat hör man ofta människor utropa: “Jag fÃ¥r faktiskt säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan i samband med att nÃ¥gon fÃ¥tt sin kommentar raderad eller blivit blockerad pÃ¥ en privat plattform....

CONTENT:
I dagens digitala debattklimat hör man ofta människor utropa: “Jag fÃ¥r faktiskt säga vad jag vill – vi har yttrandefrihet!”

Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform. De menar att deras demokratiska rättigheter kränks när de inte får sprida sin åsikt precis var de vill. Fenomenet är särskilt vanligt inom högerextrema kretsar och liknande grupper, där man gärna åberopar yttrandefrihet och demokrati för egna syften, samtidigt som man ignorerar andras rättigheter. I synnerhet rätten att få slippa korkade extremister.

Vad innebär egentligen yttrandefrihet enligt lagen, och var gÃ¥r gränsen mellan offentligt och privat forum? MissförstÃ¥nden kring demokratiska fri- och rättigheter – och hur de ibland missbrukas av högerextrema röster i Sverige behöver kanske redas ut, inte minst för de röster som inte förstÃ¥r bättre. Det finns trots allt väsentliga skillnader mellan offentliga samtal och privata plattformar.

Det kan vara en god idé att belysa hur vissa försöker flytta gränserna för det som anses acceptabelt att säga offentligt, genom att hävda att de är “tystade” av etablissemanget – även i privata forum, där det till och med kan sakna relevans helt. Exempelvis: NÃ¥gon har laddat upp ett foto pÃ¥ sig själv – en vilse högerextremist tycker att det är viktigt att fÃ¥ prata om sina egna rättigheter att prata om allt annat, förnedra personen pÃ¥ personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. Lite som om det var en dÃ¥ligt konfigurerad modell av ChatGPT 3.5.

De som väljer att ignorera andras grundläggande fri- och rättigheter, bör inte förvänta sig att fÃ¥ nÃ¥gon särskilt bra respons pÃ¥ det – och kanske i stället räkna med att bli utslängd frÃ¥n offentliga samtal. I rena korta ordalag: HÃ¥ll käften om du inte är intresserad. Din Ã¥sikt är inte värd ett skit. 

Table of Contents
Toggle
Yttrandefrihet i Sverige – stark men inte gränslösLessons learned?Privata plattformar där värdens regler gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för minoriteten)Lessons learned?Högerextremas missbruk av yttrandefrihetens principNär det extrema blir mainstream med förskjutna gränser i debattenRättigheter med ansvar, frihet med gränser
Yttrandefrihet i Sverige – stark men inte gränslös

Yttrandefriheten är grundlagsskyddad i Sverige och utgör en hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § har varje medborgare rätt att fritt uttrycka sina tankar, Ã¥sikter och känslor offentligt, vilket förklaras tydligt i Internetstiftelsens genomgÃ¥ng av vad man faktiskt fÃ¥r säga pÃ¥ nätet. Detta skydd syftar till att möjliggöra en fri samhällsdebatt och Ã¥siktsbildning. Det innebär dock inte att man fÃ¥r säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten fÃ¥r begränsas genom lag av hänsyn till till exempel rikets säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket ocksÃ¥ framgÃ¥r av Internetstiftelsens genomgÃ¥ng av yttrandefrihetens juridiska gränser pÃ¥ nätet. Med andra ord är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden i samhället.

Flera typer av yttranden är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, uppvigling samt vissa andra yttranden är förbjudna enligt lag, vilket framgår av Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär att yttrandefriheten där har en laglig gräns. Likaså är direkta hot eller förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltså att man inte har rätt att yttra vad som helst, utan att det finns tydliga gränser för vad som får spridas offentligt, vilket även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier.

Det är ocksÃ¥ viktigt att förstÃ¥ vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter fÃ¥r inte stoppa ett yttrande innan det publicerats. Däremot kan ett yttrande som redan gjorts bedömas i efterhand och leda till rättsliga pÃ¥följder om det bryter mot lagen (till exempel om det utgör hets mot folkgrupp eller liknande). När nÃ¥gon pÃ¥stÃ¥r att den utsatts för censur för att ett inlägg tagits bort, är det oftast en felaktig användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, inte att ett inlägg raderas i efterhand, vilket Lawline förklarar i sin juridiska genomgÃ¥ng av yttrandefrihet och censur pÃ¥ internet. Om en tidningsredaktion eller webbplats modererar innehÃ¥ll efter publicering rör det sig alltsÃ¥ inte om censur i grundlagens mening, vilket ocksÃ¥ framgÃ¥r av Lawlines förklaring av skillnaden mellan censur och moderering i privat regi.

Lessons learned?

Är du högerextrem är det inte troligt att du lärt dig något. Det är inte heller särskilt troligt att du överlevt så här mycket faktatext på en och samma gång.

Yttrandefriheten ger dig rätten att uttrycka din Ã¥sikt offentligt utan förhandscensur frÃ¥n staten, men den skyddar dig inte frÃ¥n alla konsekvenser. Du är fortfarande ansvarig för vad du säger – yttrandefriheten är ingen fribiljett att sprida hat eller hot utan reaktion. Som juristen Ängla Eklund uttrycker det: samma regler gäller pÃ¥ gatan som pÃ¥ internet; man fÃ¥r tycka och säga mycket, men inte allt, vilket ocksÃ¥ förklaras i Internetstiftelsens genomgÃ¥ng av vilka yttranden som är straffbara även i offentliga sammanhang. Yttrandefrihet innebär heller inte att det du säger mÃ¥ste accepteras av andra i social mening. Inte ens de gÃ¥nger du skrattar ut dom med argumentet “Nu försöker vänstern tysta mig igen, sÃ¥ typiskt, HAHA!” – det är snarare i det läget du bör “dra Ã¥t helvete” pÃ¥ ren akademiskt hövlig svenska.

Det finns mycket man fÃ¥r säga rent lagligt som ändÃ¥ kan vara olämpligt eller fÃ¥ mothugg. Att nÃ¥gon invänder mot eller kritiserar ditt yttrande är inte ett brott mot din yttrandefrihet – det är andras yttrandefrihet i arbete. Men sitter du redan i kommentarsfälten och gafflar, är det inte säkert att du begriper det här. Och det ska vi prata mer om nu.

Privata plattformar där värdens regler gäller

En avgörande skillnad som ofta missförstÃ¥s är den mellan offentliga rum och privata plattformar eller forum. Yttrandefrihetslagarna skyddar oss mot ingrepp frÃ¥n det allmänna – det vill säga staten fÃ¥r inte hindra oss frÃ¥n att uttrycka oss, sÃ¥vida vi inte bryter mot lagen. Men dessa lagar ger oss inte rätt att kräva utrymme pÃ¥ nÃ¥gon annans arena. Att nÃ¥gon har en öppen Facebook-profil eller en publik debattgrupp innebär inte att den blir allmän egendom där alla kan agera fritt utan restriktioner. PÃ¥ privata plattformar och sidor är det ägaren eller värden som sätter reglerna.

När du gÃ¥r in pÃ¥ en social medie-plattform eller en privatägd sajt, godkänner du deras användarvillkor. Privata aktörer har frihet att själva kontrollera innehÃ¥llet pÃ¥ sina plattformar, vilket Lawline förklarar i sin genomgÃ¥ng av yttrandefrihet och privata plattformars rätt att moderera innehÃ¥ll. Det betyder att Facebook, Instagram, ett diskussionsforum eller en blogg har rätt att moderera innehÃ¥ll enligt sina regler. Bryter man mot användarvillkoren kan företaget ta bort inlägget eller stänga av kontot, vilket ocksÃ¥ framgÃ¥r av Lawlines förklaring av hur privata aktörer fÃ¥r sätta och upprätthÃ¥lla egna regler. Händer det, kan du börja med att inte bli upprörd. Du fÃ¥r skylla dig själv och har i princip ingenting att säga till om. Man har samtyckt till detta när man gick med pÃ¥ villkoren. Det mÃ¥ kännas frustrerande för den som drabbas, men juridiskt är det helt i sin ordning. Trots att du fortfarande sitter och skrattar Ã¥t vänstervridna. Som Lawline klargör: din yttrandefrihet har inte blivit kränkt när en privat aktör tar bort ditt inlägg eller begränsar dig, eftersom det rör sig om en privat plattform som tillämpar sina regler – inte staten som utövar censur.

“Yttrandefriheten innebär inte heller att alla har rätt att uttrycka sin Ã¥sikt var som helst.”, vilket Hjärnfonden tydliggör i sin genomgÃ¥ng av hur och varför de modererar sina kommentarsfält i sociala medier.

Ett belysande exempel kommer frÃ¥n Hjärnfonden, en svensk organisation, som i sin sociala medie-policy pÃ¥pekar att det inte finns nÃ¥gon motsägelse mot yttrandefriheten i att de modererar sina kommentarsfält, vilket de själva förklarar i sin policy för hur och varför innehÃ¥ll modereras i deras sociala medier. Yttrandefriheten innebär ingen absolut rätt att alltid fÃ¥ uttala sig, och den innebär särskilt inte att man har rätt att uttala sig var som helst. PÃ¥ Hjärnfondens egna sidor gäller deras regler; om nÃ¥gon bryter mot dem, till exempel genom hatiska uttalanden, tar de bort inlägget och kan blockera användaren, vilket framgÃ¥r av samma genomgÃ¥ng av hur Hjärnfonden tillämpar sina kommentarsregler i praktiken. Den principen gäller alla privata forum – den som driver sidan bestämmer vad som tolereras där.

Det är alltsÃ¥ en avgörande skillnad mellan att tala pÃ¥ torget och att tala pÃ¥ nÃ¥gons privata webbsida eller profil. PÃ¥ det fysiska torget – ett offentligt rum – kan du utnyttja din yttrandefrihet (inom lagens gränser) och exempelvis hÃ¥lla ett spontant anförande. Ingen myndighet fÃ¥r pÃ¥ förhand förbjuda dig sÃ¥ länge du följer lagen. Men om du kliver in i nÃ¥gons vardagsrum, eller för den delen in pÃ¥ en persons Facebook-vägg eller en privatägd diskussionsgrupp, dÃ¥ har du ingen absolut rätt att yttra dig där mot värdens vilja. Det är värden som avgör vad som är okej i den miljön. Precis som du i ditt hem kan be en gäst gÃ¥ om hen uppför sig illa, kan en forumadministratör radera inlägg eller utesluta medlemmar som bryter mot forumets regler.

Ett vanligt klagomÃ¥l frÃ¥n högljudda debattörer pÃ¥ högerkanten är att deras inlägg raderas i till exempel tidningars kommentarsfält eller att de blir blockade av meningsmotstÃ¥ndare pÃ¥ sociala medier – och att detta skulle kränka deras yttrandefrihet. Här behöver vi slÃ¥ fast: Att fÃ¥ kommentera pÃ¥ en tidnings webbplats eller hos en privatperson är ingen demokratisk eller lagstadgad rättighet. Ingen enskild medborgare har en skyldighet att upplÃ¥ta sin plattform Ã¥t nÃ¥gon annans Ã¥sikter. Tidningar har ansvar för sitt innehÃ¥ll och har kommentarsregler; de kan plocka bort sÃ¥dant som bryter mot reglerna eller riskerar att vara brottsligt. En privat Facebook-användare har ingen plikt att lÃ¥ta alla tala fritt pÃ¥ den egna sidan – det är faktiskt snarare en del av den personens egen frihet att fÃ¥ välja bort oönskade kommentarer. Som ett tankeexperiment: Om yttrandefrihet innebar att alla fick säga vad de ville i alla sammanhang, dÃ¥ skulle du i princip inte kunna stoppa nÃ¥gon frÃ¥n att ställa sig i ditt vardagsrum och förolämpa dig. SÃ¥ är det lyckligtvis inte – din hemfrid och din rätt att välja ditt umgänge väger tyngre i privata sammanhang än en utomstÃ¥endes “rätt” att bli hörd där.

Det offentliga samtalet i stort mÃ¥r bra av mÃ¥nga röster, även obekväma. Men forum och grupper som drivs privat kan ha egna syften – exempelvis att främja ett visst slags diskussion eller hÃ¥lla god ton – och dÃ¥ mÃ¥ste de kunna avvisa troll, mobbare eller irrelevanta inlägg utan att det ropas om diktatur. Det är värt att notera att även lagen ger stöd Ã¥t moderering: den svenska BBS-lagen (Lagen om ansvar för elektroniska anslagstavlor) Ã¥lägger den som driver ett forum att ta bort inlägg som uppenbart innehÃ¥ller vissa typer av olagligt material, sÃ¥som hets mot folkgrupp, olaga hot och annan allvarlig brottslighet, vilket Hjärnfonden tydligt beskriver i sin policy om hur de följer BBS-lagen och modererar sina kommentarsfält. SÃ¥ lÃ¥ngt ifrÃ¥n att vara censur kan moderering vara en skyldighet i vissa fall.

Till och med regeringen har konstaterat den privata plattformens rätt. I ett svar till riksdagen betonade dÃ¥varande kultur- och demokratiministern Amanda Lind att stora digitala plattformar i grunden har frihet att sätta upp egna villkor för sina tjänster – men att dessa bör utövas ansvarsfullt med tydliga och transparenta regler, vilket framgÃ¥r av hennes svar pÃ¥ riksdagens frÃ¥ga om yttrandefriheten pÃ¥ internet. Just eftersom Facebook, Twitter med flera har blivit sÃ¥ inflytelserika i det offentliga samtalet pÃ¥gÃ¥r parallellt diskussioner inom EU om att kräva ökad transparens och konsekvens i hur sÃ¥dana plattformar tillämpar sina regler, vilket ocksÃ¥ behandlas i samma riksdagsdokumentation om EU:s arbete kring digitala plattformars ansvar. Men även i den debatten utgÃ¥r man frÃ¥n att ja, de har rätt att ha regler; frÃ¥gan är hur de använder den makt det innebär. I Sverige finns idag ingen lag som tvingar en plattform eller privat aktör att publicera allt som inte är brottsligt – de kan ha strängare regler än lagen, och ofta har de det (till exempel förbjuder Facebook även sÃ¥dant som är lagligt men bryter mot deras community-regler).

Kort sagt

Yttrandefriheten skyddar dig mot staten – inte mot konsekvenserna av att andra utövar sina egna rättigheter. Och att bli borttagen frÃ¥n nÃ¥gons privata plattform är inte att bli “grundlagscensurerad”. Du är fri att tala, men inte nödvändigtvis pÃ¥ deras bekostnad eller i deras utrymme.

Har du lärt dig något än? Nej, jag trodde nog inte det heller.

Demokrati = majoritetsstyre (med rättssäkerhet för minoriteten)

En annan fundamental aspekt som ibland förvanskas i dessa diskussioner är själva demokratins spelregler. I en demokrati gäller majoritetsprincipen: beslut fattas enligt vad flertalet (majoriteten) röstar för, antingen direkt eller genom valda ombud. Den svenska statsskicket bygger pÃ¥ detta – “All offentlig makt i Sverige utgÃ¥r frÃ¥n folket” som det stÃ¥r i Regeringsformens portalparagraf, och folkviljan kommer till uttryck via riksdagen där majoriteter avgör, vilket utvecklas i Svensk Juristtidnings genomgÃ¥ng av majoritetsprincipen som demokratins grund. Gustaf Petrén, en framstÃ¥ende jurist, formulerade det sÃ¥ här: “Demokratin bygger pÃ¥ majoritetsprincipen. Den utgÃ¥r frÃ¥n att de som är flest bestämmer hur den offentliga makten ska utövas.”, vilket han själv utvecklar i samma analys i Svensk Juristtidning om hur majoritetsstyre fungerar i praktiken. De som hamnar utanför majoritetens stÃ¥ndpunkt i en viss frÃ¥ga utgör en minoritet, och de fÃ¥r acceptera att majoritetens beslut gäller, vilket ocksÃ¥ framgÃ¥r av Svensk Juristtidnings resonemang om minoriteters ställning i ett majoritetsstyrt system.

Det betyder inte att minoriteter är rättslösa – demokrati handlar ocksÃ¥ om att skydda individens grundläggande fri- och rättigheter, oavsett om man tillhör majoriteten eller inte. Sverige har till exempel grundlagsskydd för att även opopulära Ã¥sikter ska fÃ¥ uttryckas, och minoriteter (som etniska eller religiösa grupper) har särskilt skydd mot diskriminering och hat. Men skyddet för minoriteten är inte detsamma som att minoriteten skulle kunna styra över majoriteten. När det gäller offentliga beslut – lagar, regler, myndighetsÃ¥tgärder – sÃ¥ är det i slutändan den demokratiska processens utfall som gäller, alltsÃ¥ majoritetens beslut. Den som dÃ¥ befinner sig i minoritet i samhället fÃ¥r rätta sig efter de gemensamma reglerna (sÃ¥ länge de inte kränker grundläggande mänskliga rättigheter). Petrén skriver träffande att “de enskilda som kommer i mindre tal har inte annat att göra än att böja sig för den ordning som flertalet beslutat ska gälla”, vilket han utvecklar i Svensk Juristtidning i sin analys av minoriteters ställning i ett majoritetsstyrt system. Med andra ord, ogillar man en lag eller regel har man möjligheten att försöka övertyga fler, delta i debatten, kanske rösta fram andra representanter – men tills dess gäller lagen för alla.

Varför är detta viktigt i vÃ¥rt sammanhang? Jo, för att mÃ¥nga av de som klagar pÃ¥ att de blir “tystade” egentligen utgör en mycket liten minoritet i frÃ¥ga om sina Ã¥sikter eller sätt att uttrycka dem. De kan uppleva att “systemet” är emot dem när deras beteenden fÃ¥r mothugg eller stoppas – men det beror pÃ¥ att systemet (dvs. den demokratiska rättsordningen och den sociala normen) drivs av majoritetens värderingar, vilka oftast inte stämmer överens med de extrema stÃ¥ndpunkter minoriteten har. I Sverige har till exempel en majoritet av folkets valda ombud beslutat om lagar som kriminaliserar hets mot folkgrupp, vilket bottnar i en demokratisk värdering att skydda minoriteter frÃ¥n hat. Om dÃ¥ en högerextrem person – som representerar en minoritetsÃ¥sikt – vill sprida hets mot minoriteter, sÃ¥ kommer lagen (majoritetens beslut) att krocka med den personens önskan. Att lagen dÃ¥ sätter gränser är inte förtryck, utan just demokrati i funktion. Majoritetssamhället har sagt sitt: viss typ av retorik accepteras inte. Minoriteten i det här fallet fÃ¥r finna sig i detta, eller försöka ändra opinionen pÃ¥ demokratisk väg (vilket de ibland försöker genom att hävda “vi fÃ¥r inte säga sanningen” etc., se mer nedan).

Det är värt att understryka att demokrati ocksÃ¥ innebär rättssäkerhet och skydd mot godtycke. Majoriteten kan inte göra vad som helst mot en minoritet – det finns grundlagar, domstolar och internationella konventioner som sätter ramar. Till exempel kan inte ens en enhällig riksdagsmajoritet bara sÃ¥ där avskaffa oppositionens rätt att yttra sig; sÃ¥dana ändringar kräver grundlagsändringar över tid. Det finns alltsÃ¥ inbyggda skydd för att inte majoriteten ska förtrycka minoriteten hur som helst. Men i den vardagliga tillämpningen – i en Facebook-trÃ¥d eller pÃ¥ en nyhetssajt – sÃ¥ är det faktiskt inte “oddemokratiskt” att den som är i klar minoritet med en extrem Ã¥sikt märker att flertalet andra eller moderatorerna säger stopp. Det är snarare en spegling av hur samhällsnormen ser ut. Demokrati betyder inte att alla fÃ¥r som de vill, utan att alla fÃ¥r säga sitt men majoritetens linje väger tyngst i gemensamma beslut.

För att ge ett konkret scenario: En person pÃ¥ yttersta högerkanten hävdar kanske att en viss konspirationsteori är sann och kräver att media och folk ska ge det utrymme. Medias redaktioner (som visserligen är privata aktörer men ändÃ¥ en del av det offentliga samtalet) kanske väljer att inte sprida dessa pÃ¥stÃ¥enden, för de anses grundlösa eller hatiska. Personen ropar dÃ¥ att “min yttrandefrihet kränks, demokratin sätts ur spel!” I realiteten har personen rätt att tycka och yttra sin teori – hen kan skriva pÃ¥ sin blogg, demonstrera fredligt, ge ut flygblad – inget av detta kommer staten hindra sÃ¥ länge det inte bryter mot lag. Men ingen demokratisk princip garanterar honom en publik i bästa sändningstid eller fri lejd in i andras plattformar. Och om allmänheten i majoritet tar avstÃ¥nd frÃ¥n idéerna, är det just majoritetens fria val. Demokrati kan ibland vara hÃ¥rt för den som har en impopulär uppfattning: man kan fÃ¥ prata, men man kan inte tvinga nÃ¥gon att lyssna eller hÃ¥lla med.

Lessons learned?

I en demokrati styr majoritetens beslut den gemensamma spelplanen, medan minoriteten har rätt att existera, tycka annorlunda och försöka vinna gehör – men inte rätt att köra över majoriteten pÃ¥ eget bevÃ¥g. Den som pÃ¥stÃ¥r sig försvara “demokratin” genom att kräva ensidig frihet för sin egen minoritetsÃ¥sikt pÃ¥ andras bekostnad, har missförstÃ¥tt konceptet. Demokratiska rättigheter handlar bÃ¥de om rätten att uttrycka sig och andras rätt att säga ifrÃ¥n eller slippa lyssna. Rätten att säga nej, att välja bort nonsens och extremism frÃ¥n sin egen sfär, är faktiskt ocksÃ¥ en del av det demokratiska ramverket, vilket Aftonbladets ledartext om hur politiska angrepp pÃ¥ medier riskerar att underminera det fria ordet tydliggör i analysen av hur yttrandefrihet ocksÃ¥ innefattar rätten att avvisa extremism.

Högerextremas missbruk av yttrandefrihetens princip

Med bakgrund av ovanstÃ¥ende blir det tydligt hur vissa grupper pÃ¥ yttersta högerkanten försöker vända pÃ¥ begreppen för att gynna sig själva. Det finns en lÃ¥ng historia av att extremistiska rörelser utnyttjar det öppna samhällets principer för att underminera samma öppenhet. Nazisterna i Tyskland pÃ¥ 1930-talet deltog till exempel i demokratiska val och utnyttjade yttrandefriheten för sin propaganda – men sÃ¥ snart de fick makten avskaffade de yttrande- och pressfriheten brutalt. Dagens svenska högerextremister är förstÃ¥s inte i närheten av den maktpositionen, men retoriken liknar pÃ¥ sina hÃ¥ll en spegelbild av detta mönster: “Frihet Ã¥t mig, men inte Ã¥t dig.”

Ett utmärkande drag är offerretoriken. Högerextrema debattörer kliver ofta in i en diskussion aggressivt – med personangrepp, epitet och ibland rent hatiska uttalanden – i syfte att dominera eller provocera. Men om de möter motstÃ¥nd, eller blir avstängda pÃ¥ grund av sitt beteende, intar de genast rollen som martyrer. De pÃ¥stÃ¥r att de “tystas” för att deras meningsmotstÃ¥ndare är “rädda för sanningen” eller att det rÃ¥der “Ã¥siktsförtryck” mot dem. Som en observatör torrt kommenterade: mÃ¥nga av dessa personer kräver friheter för sig själva som de inte vill ge till andra – de vill fÃ¥ häva ur sig förolämpningar och konspirationer, men sÃ¥ fort nÃ¥gon annan säger emot eller utesluter dem, skriker de om censur och diktatur. Mönstret känns igen av mÃ¥nga som deltagit i internetforum: först delar de ut smädelser och avbryter saklig debatt, sedan skriker de “YTTRANDEFRIHET!” när moderatorn ingriper. Förutsägbart – och paradoxalt.

Retoriken om att vara “tystad” eller utsatt för “Ã¥siktskorridoren” (ett populärt begrepp i svensk debatt) har ocksÃ¥ ett strategiskt syfte. Genom att framställa sig som en underdog som makten vill kväsa, hoppas extrema opinionsbildare väcka sympati och rekrytera anhängare. Om man inte faktakollar kan det lÃ¥ta trovärdigt: “Varför fÃ¥r inte X framföra sin Ã¥sikt? Lever vi i en diktatur?”

I själva verket fÃ¥r X framföra sin Ã¥sikt – hen fÃ¥r bara inte göra det precis var som helst eller utan att mötas av mothugg. Att ett samhälle reagerar negativt pÃ¥ hatiska eller antidemokratiska uttryck är inte ett tecken pÃ¥ diktatur, utan ett tecken pÃ¥ att samhället försvarar sina demokratiska värden (som allas lika värde, respekt och sanning) och fortfarande är skapligt friskt (till skillnad frÃ¥n extremisten). Som jag skrev i en kommentar angÃ¥ende denna typ av högeraktivister: de har aldrig varit intresserade av nÃ¥got annat än sina egna fri- och rättigheter. Hade de själva makten skulle de troligen inskränka just de friheter de nu kräver (inklusive denna texten, fakta är ju trots allt irrelevant i sÃ¥na här kretsar). Det har historien lärt oss frÃ¥n Ã¥tskilliga exempel pÃ¥ högerledare som spÃ¥rat ur maktmässigt.

Man kan se tendenser i vÃ¥r närtid ocksÃ¥. I exempelvis Ungern, som styrs av det högernationalistiska Fidesz-partiet, har regeringen gradvis monterat ned mediefriheten och domstolarnas oberoende, vilket beskrivs i Aftonbladets analys av hur angrepp pÃ¥ medier blivit ett kännetecken för auktoritär politik i artikeln om hur mediernas ställning urholkas i Ungern. De använder en demokratisk retorik men agerar pÃ¥ sätt som försvÃ¥rar oppositionens möjligheter att göra sin röst hörd. I Sverige har vi en livlig debatt om public service och medias roll; vissa inom den nationalistiska högern har anklagat public service för att vara “vänstervridet” och har föreslagit minskad frihet för dessa medier. Angreppen pÃ¥ etablerade medier – att kalla journalister för “folkets fiender” eller antyda att kritiska frÃ¥gor är förräderi – ligger farligt nära att undergräva det fria ordet. Yttrandefrihetsexperten Nils Funcke har varnat för dessa tendenser och menar att de Ã¥terkommande attackerna pÃ¥ media frÃ¥n ledande politiker är ett oroväckande tecken, vilket han utvecklar i Aftonbladets ledartext om hur medieangrepp hotar yttrandefriheten.

Högerextrem retorik handlar ofta om att flytta fokus. Istället för att bemöta sakargument eller följa normala debattregler, sätter de en etikett pÃ¥ motparten (“kommunist”, “kulturmarxist”, “imbecill”) för att tysta eller förminska. Om motparten eller moderatorn sedan tröttnar och avbryter diskussionen, tar de detta som bevis pÃ¥ att de själva hade rätt hela tiden (“se, de klarar inte sanningen, de censurerar mig!”). Det blir en slags självuppfyllande strategi för dem: stöka till debatten sÃ¥ mycket att ingen vill ha kvar dem, och använd sedan uteslutningen som propaganda för att de är de enda som vÃ¥gar “stÃ¥ upp mot PK-maffian”. För en utomstÃ¥ende är logiken skev, men inom den egna kretsen kan martyrskapet ge status.

Det är viktigt att syna denna bluff. Att samhället sätter gränser för hat och lögn är inte att “tysta oliktänkande” i odemokratisk mening – det är att upprätthÃ¥lla demokratins grundläggande respekt. Högerextrema har all rätt att tycka vad de vill. De kan starta egna tidningar, bloggar, partier och YouTube-kanaler. Och de gör det ocksÃ¥ – det finns en flora av alternativa medier till höger om den etablerade mittenfÃ¥ran, just för att internet ger dem möjligheten. Där kan de framföra även konspirationsteorier och främlingsfientliga budskap, inom lagens rÃ¥märken. Men vad de inte kan kräva är att fÃ¥ sprida samma budskap oemotsagda i andras kanaler eller att slippa bli ifrÃ¥gasatta. ÄndÃ¥ är det precis det de ofta gör ansprÃ¥k pÃ¥: en slags ensidig yttrandefrihet där de fÃ¥r härja fritt, medan de vill slippa konsekvensen av att andra utövar sin rätt att säga emot eller välja bort dem.

Notera ironin: MÃ¥nga av dessa högljudda “yttrandefrihetskämpar” pÃ¥ ytterkanten lever i ett av världens mest yttrandefria länder. De kan i princip säga nästan vad som helst lagligt, sÃ¥ länge de inte hotar eller hetsar. De kan demonstrera, ge ut skrifter, kandidera i val (vi har till och med nazistiska smÃ¥partier som ställer upp i Sverige – yttersta beviset pÃ¥ vÃ¥r demokratiska tolerans). ÄndÃ¥ hävdar de att de är “tystade”. I själva verket handlar det om att deras idéer saknar brett stöd – folk i gemen vill inte lyssna pÃ¥ dem, medier vill inte ge dem utrymme eftersom de bryter mot grundläggande pressetiska principer, och privatpersoner vill inte ha dem i sina flöden. Det är inte en konspiration – det är det demokratiska samhället som utövar sin kollektiva valfrihet.

När det extrema blir mainstream med förskjutna gränser i debatten

Under de senaste decennierna har vi dessutom bevittnat hur vissa extrema idéer gradvis flyttat fram sina positioner i det offentliga samtalet. Detta sker inte öppet genom tvång, utan subtilt genom normalisering. Sverigedemokraternas intåg i riksdagen 2010 innebar till exempel att åsikter som tidigare betraktats som extrema eller rent av rasistiska fick en plattform inom parlamentarisk debatt. Sedan dess har gränsen för vad som anses acceptabel retorik förskjutits märkbart. Forskaren Jesper Strömbäck konstaterar att i takt med att SD:s problemformuleringar normaliserats och legitimerats har det som förr betraktades som rasistiskt blivit nästintill regeringspolitik idag, vilket han utvecklar i Dagens Arenas intervju om hur tidigare rasistiska positioner gradvis blivit politiskt accepterade. Han syftar på att invandringsfientliga tongångar som tidigare var otänkbara för etablerade partier numera uttrycks av regeringsföreträdare utan större chockeffekt. Tidöavtalets politik, med SD som stödparti, förs i mångt och mycket med en retorik som för bara ett decennium sedan skulle ha kallats invandringsfientlig rakt av, vilket också framgår av Strömbäcks analys i samma genomgång av hur normaliseringen påverkat svensk regeringspolitik.

Denna förskjutning – ibland kallad ”Overton-fönstrets” förflyttning – beror delvis pÃ¥ att högerpopulister skickligt spelat pÃ¥ yttrandefrihetsargumentet för att tänja pÃ¥ vad man fÃ¥r säga. Minns debatten om “Ã¥siktskorridoren” i Sverige: det pÃ¥stods frÃ¥n högerhÃ¥ll att man “inte fick prata om” invandringens problem, att etablissemanget tystade sÃ¥dana diskussioner. I realiteten var ämnet känsligt men inte förbjudet – det var mÃ¥nga som ogillade generaliserande eller främlingsfientliga uttalanden, sÃ¥ de bemöttes med skarp kritik. SD och liknande aktörer vände detta till sin fördel och sa: “Se, vi blir tystade – alltsÃ¥ mÃ¥ste vi skrika ännu högre.” Och efterhand började andra partier anamma en del av deras retorik för att inte förlora väljarstöd. Gränserna flyttades.

Det finns en risk i detta. När sprÃ¥ket och ideologin hos extrema grupper normaliseras kan själva grundvärderingarna i samhället förskjutas. Det som tidigare sÃ¥gs som uppenbart kränkande eller odemokratiskt kan börja ses som “en Ã¥sikt bland andra”. Som Strömbäck pÃ¥pekar tävlar i dag till och med traditionella partier om att vara “hÃ¥rdast” i exempelvis kriminalpolitik och migrationspolitik, där retoriken blivit betydligt mer sträng och strafforienterad än förr, vilket han utvecklar i Dagens Arenas analys av hur migrations- och kriminalpolitisk retorik förskjutits i svensk politik. Det demokratiska samtalet tÃ¥l mycket, men vi bör vara medvetna om när vi rör oss mot farligt vatten. Att fler vÃ¥gar säga saker öppet är i grunden bra – om det handlar om sakliga Ã¥sikter. Men när det som sprids är förenklade syndabockstankar eller hat mot vissa grupper, dÃ¥ är det inte enbart oskyldig “vidgning av debatten”. Det kan vara början pÃ¥ att demokratins kultur eroderar, precis det som vÃ¥ra lagar om hets och hat syftar till att förhindra.

Samtidigt mÃ¥ste man erkänna att Ã¥siktsklimatet är bredare nu än förut. Människor fÃ¥r idag uttrycka invandringskritik öppnare utan att automatiskt stämplas ut – vilket mÃ¥nga framhÃ¥ller som nÃ¥got positivt, att tabu brutits. Kritik mot sÃ¥dant som hedersförtryck, integrationsproblem eller volymen av flyktingmottagande har fÃ¥tt en legitim plats i debatten, till stor del tack vare att partier som SD drev upp frÃ¥gorna pÃ¥ dagordningen. Det demokratiska systemet ska kunna absorbera nya frÃ¥gor och perspektiv. Men skillnaden mellan legitim saklig kritik och intolerant retorik är avgörande. Det förstnämnda stärker demokratin (genom att relevanta problem diskuteras öppet), det sistnämnda undergräver demokratin (genom att vissa grupper demoniseras och samhällsklyftor ökar).

Högerextrema aktörer har emellertid ofta svÃ¥rt att hÃ¥lla sig till saklig kritik – deras ideologi bygger i regel pÃ¥ att utse fiender (etablerade politiker, minoriteter, medier) som man menar förstör nationen. Och när deras sprÃ¥kbruk letar sig in i mainstream riskerar det offentliga samtalet att förgiftas. Vi ser tyvärr exempel pÃ¥ detta i sociala medier dagligen: tonläget har hÃ¥rdnat, normalisering av personangrepp och misstro mot demokratins institutioner breder ut sig. Plattformar som tidigare var till för meningsutbyte blir ibland slagfält av hat. Twitter (numera X) beskrivs i Aftonbladets ledartext om hur politiska angrepp pÃ¥ medier och digitala plattformar bidrar till ett allt mer polariserat klimat som ett träsk där högerextrema narrativ och trollfabriker dominerar, vilket analyseras i artikeln om hur extremism och botar präglar debattklimatet pÃ¥ X. Ju mer sÃ¥dant tolereras i “mainstream”, desto mer flyttas ribban för vad som anses okej.

Det fria samhället mÃ¥ste därför göra en ständig avvägning: Vara öppet nog att alla röster fÃ¥r försöka göra sig hörda – men starkt nog att stÃ¥ emot de röster som medvetet vill sabotera öppenheten. Det är här diskussionen om ”den tysta högern” eller ”cancel culture” etc. kommer in. Högern (i sin mer extrema form) anser ofta att deras Ã¥sikter hÃ¥lls nere av en vänsterliberal hegemoni. I viss mÃ¥n har de använt detta narrativ för att ta sig upp och in i riksdagen och därefter pÃ¥verkat samtalet (som vi sett). Men att de nu faktiskt har en megafon (SD är näst största parti) motsäger ju pÃ¥stÃ¥endet att de skulle ha varit genuint tystade. Processen visar snarare att demokratin fungerade – ett tidigare marginellt perspektiv fick stöd av tillräckligt mÃ¥nga väljare och kom in i värmen. Det ironiska är att trots detta fortsätter retoriken hos en del att lÃ¥ta som om de vore utanför och förtryckta. Det tyder pÃ¥ att offerrollen är svÃ¥r att släppa, kanske för att den varit sÃ¥ framgÃ¥ngsrik retoriskt.

Rättigheter med ansvar, frihet med gränser

Den röda trÃ¥den i allt ovan är förstÃ¥elsen att demokratiska rättigheter kommer med ansvar och är inskrivna i ett sammanhang av lag och etik. Yttrandefrihet är fundamentalt, men den kräver ett ansvarsfullt handhavande – bÃ¥de av individer och plattformar. Demokrati handlar om frihet, men ocksÃ¥ om respekt för majoritetsbeslut och andras friheter. Samtidigt är det nog viktigt att förstÃ¥ att det inte finns förstÃ¥else alls här. Eller snarare är det sÃ¥ att folk med den här retoriska grunden skiter i alla andra.

De som skriker högst om att de “inte fÃ¥r höras” i Sverige idag är i praktiken ofta de som hörs mest i den digitala miljön – men de är frustrerade över att folk inte längre tiger och samtycker, eller över att bli modererade när de spÃ¥rar ur. Att värna yttrandefrihet innebär att alla ska fÃ¥ tala inom rimliga ramar, inte att vissa ska fÃ¥ dominera utan gensvar. Det innebär ocksÃ¥ rätten att säga ifrÃ¥n när nÃ¥gon gÃ¥r över gränsen.

Som samhälle behöver vi fortsätta vara tydliga med följande:

Yttrandefriheten skyddar mot staten, inte mot kritik eller moderation. Alltså: du får tycka och säga, men du får tåla att andra utövar sin rätt att säga emot eller stänga sin dörr, vilket Hjärnfonden tydliggör i sin policy om hur privata aktörer har rätt att moderera sina egna kanaler och kommentarsfält i genomgången av varför moderering inte står i motsättning till yttrandefriheten.

Demokrati betyder majoritetsstyre under lagarna. Att följa gemensamma regler är inte förtryck, utan just vad samhället kommit överens om. Minoritetsåsikter får finnas, men kan inte diktera villkoren för majoriteten hur som helst, vilket utvecklas i Svensk Juristtidnings genomgång av hur majoritetsprincipen utgör demokratins grund och hur minoriteter i ett majoritetsstyrt system har att underordna sig gemensamma beslut.

Privata forum har egna trösklar. Den som blir utkastad ur ett Facebook-forum p.g.a. sitt beteende har inte “fÃ¥tt munnen igentejpad av staten”. Man kan starta ett eget forum om man vill prata fritt pÃ¥ sina villkor.

Fri Ã¥siktsbildning kräver respekt. Om vi vill ha högt i tak i debatten, mÃ¥ste vi ocksÃ¥ ta ansvar för tonen. Att kallprata med hÃ¥rda fakta är en sak – att häva ur sig skällsord och personangrepp en annan. Yttrandefriheten ger utrymme för hÃ¥rd kritik, ja, men ett demokratiskt samhälle bygger pÃ¥ idén att man bemöter argument med argument, inte med förakt.

I slutänden handlar det om att förstÃ¥ skillnaden mellan att bli sakligt emotsagd och att bli orättfärdigt tystad. De högerextrema som misströstar över att “de inte fÃ¥r säga sin sanning” blandar oftast ihop dessa (läs: skiter i det). Deras rätt att tala finns där – men de saknar kanske allmänhetens gillande, och det kan inte tvingas fram genom att Ã¥beropa yttrandefrihet. Den mÃ¥ste förtjänas genom trovärdighet och respekt.

Demokratin är jäkligt intressant, just för att den ständigt prövas av sÃ¥dana här gränsfall: Hur hanterar vi de som vill utnyttja friheten för att sabotera friheten? Svaret hittills har varit: med ännu mer demokrati, vilket inkluderar modet att sätta gränser när det behövs. Att säga “nej, du fÃ¥r inte använda min plattform för hat” eller “nej, din rätt kan inte trampas pÃ¥ alla andras rättigheter” är i sig ett demokratiskt försvar. Yttrandefriheten och demokratin mÃ¥r inte dÃ¥ligt av att vi stÃ¥r upp mot dem som missbrukar systemet – tvärtom, de mÃ¥r bra av att vi förstÃ¥r dem rätt och vÃ¥rdar dem klokt.
To
TITLE:
Andras fri- och rättigheter – Ett snårigt näste när man bara bryr sig om sig själv

DESCRIPTION:
I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform....

CONTENT:
I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!”

Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform. De menar att deras demokratiska rättigheter kränks när de inte får sprida sin åsikt precis var de vill. Fenomenet är särskilt vanligt inom högerextrema kretsar och liknande grupper, där man gärna åberopar yttrandefrihet och demokrati för egna syften, samtidigt som man ignorerar andras rättigheter. I synnerhet rätten att få slippa korkade extremister.

Vad innebär egentligen yttrandefrihet enligt lagen, och var går gränsen mellan offentligt och privat forum? Missförstånden kring demokratiska fri- och rättigheter – och hur de ibland missbrukas av högerextrema röster i Sverige behöver kanske redas ut, inte minst för de röster som inte förstår bättre. Det finns trots allt väsentliga skillnader mellan offentliga samtal och privata plattformar.

Det kan vara en god idé att belysa hur vissa försöker flytta gränserna för det som anses acceptabelt att säga offentligt, genom att hävda att de är “tystade” av etablissemanget – även i privata forum, där det till och med kan sakna relevans helt. Exempelvis: Någon har laddat upp ett foto på sig själv – en vilse högerextremist tycker att det är viktigt att få prata om sina egna rättigheter att prata om allt annat, förnedra personen på personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. Lite som om det var en dåligt konfigurerad modell av ChatGPT 3.5.

De som väljer att ignorera andras grundläggande fri- och rättigheter, bör inte förvänta sig att få någon särskilt bra respons på det – och kanske i stället räkna med att bli utslängd från offentliga samtal. I rena korta ordalag: Håll käften om du inte är intresserad. Din åsikt är inte värd ett skit. 

Table of Contents
Toggle
Yttrandefrihet i Sverige – stark men inte gränslösLessons learned?Privata plattformar där värdens regler gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för minoriteten)Lessons learned?Högerextremas missbruk av yttrandefrihetens principNär det extrema blir mainstream med förskjutna gränser i debattenRättigheter med ansvar, frihet med gränser
Yttrandefrihet i Sverige – stark men inte gränslös

Yttrandefriheten är grundlagsskyddad i Sverige och utgör en hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § har varje medborgare rätt att fritt uttrycka sina tankar, åsikter och känslor offentligt, vilket förklaras tydligt i Internetstiftelsens genomgång av vad man faktiskt får säga på nätet. Detta skydd syftar till att möjliggöra en fri samhällsdebatt och åsiktsbildning. Det innebär dock inte att man får säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten får begränsas genom lag av hänsyn till till exempel rikets säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket också framgår av Internetstiftelsens genomgång av yttrandefrihetens juridiska gränser på nätet. Med andra ord är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden i samhället.

Flera typer av yttranden är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, uppvigling samt vissa andra yttranden är förbjudna enligt lag, vilket framgår av Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär att yttrandefriheten där har en laglig gräns. Likaså är direkta hot eller förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltså att man inte har rätt att yttra vad som helst, utan att det finns tydliga gränser för vad som får spridas offentligt, vilket även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier.

Det är också viktigt att förstå vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter får inte stoppa ett yttrande innan det publicerats. Däremot kan ett yttrande som redan gjorts bedömas i efterhand och leda till rättsliga påföljder om det bryter mot lagen (till exempel om det utgör hets mot folkgrupp eller liknande). När någon påstår att den utsatts för censur för att ett inlägg tagits bort, är det oftast en felaktig användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, inte att ett inlägg raderas i efterhand, vilket Lawline förklarar i sin juridiska genomgång av yttrandefrihet och censur på internet. Om en tidningsredaktion eller webbplats modererar innehåll efter publicering rör det sig alltså inte om censur i grundlagens mening, vilket också framgår av Lawlines förklaring av skillnaden mellan censur och moderering i privat regi.

Lessons learned?

Är du högerextrem är det inte troligt att du lärt dig något. Det är inte heller särskilt troligt att du överlevt så här mycket faktatext på en och samma gång.

Yttrandefriheten ger dig rätten att uttrycka din åsikt offentligt utan förhandscensur från staten, men den skyddar dig inte från alla konsekvenser. Du är fortfarande ansvarig för vad du säger – yttrandefriheten är ingen fribiljett att sprida hat eller hot utan reaktion. Som juristen Ängla Eklund uttrycker det: samma regler gäller på gatan som på internet; man får tycka och säga mycket, men inte allt, vilket också förklaras i Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Yttrandefrihet innebär heller inte att det du säger måste accepteras av andra i social mening. Inte ens de gånger du skrattar ut dom med argumentet “Nu försöker vänstern tysta mig igen, så typiskt, HAHA!” – det är snarare i det läget du bör “dra åt helvete” på ren akademiskt hövlig svenska.

Det finns mycket man får säga rent lagligt som ändå kan vara olämpligt eller få mothugg. Att någon invänder mot eller kritiserar ditt yttrande är inte ett brott mot din yttrandefrihet – det är andras yttrandefrihet i arbete. Men sitter du redan i kommentarsfälten och gafflar, är det inte säkert att du begriper det här. Och det ska vi prata mer om nu.

Privata plattformar där värdens regler gäller

En avgörande skillnad som ofta missförstås är den mellan offentliga rum och privata plattformar eller forum. Yttrandefrihetslagarna skyddar oss mot ingrepp från det allmänna – det vill säga staten får inte hindra oss från att uttrycka oss, såvida vi inte bryter mot lagen. Men dessa lagar ger oss inte rätt att kräva utrymme på någon annans arena. Att någon har en öppen Facebook-profil eller en publik debattgrupp innebär inte att den blir allmän egendom där alla kan agera fritt utan restriktioner. På privata plattformar och sidor är det ägaren eller värden som sätter reglerna.

När du går in på en social medie-plattform eller en privatägd sajt, godkänner du deras användarvillkor. Privata aktörer har frihet att själva kontrollera innehållet på sina plattformar, vilket Lawline förklarar i sin genomgång av yttrandefrihet och privata plattformars rätt att moderera innehåll. Det betyder att Facebook, Instagram, ett diskussionsforum eller en blogg har rätt att moderera innehåll enligt sina regler. Bryter man mot användarvillkoren kan företaget ta bort inlägget eller stänga av kontot, vilket också framgår av Lawlines förklaring av hur privata aktörer får sätta och upprätthålla egna regler. Händer det, kan du börja med att inte bli upprörd. Du får skylla dig själv och har i princip ingenting att säga till om. Man har samtyckt till detta när man gick med på villkoren. Det må kännas frustrerande för den som drabbas, men juridiskt är det helt i sin ordning. Trots att du fortfarande sitter och skrattar åt vänstervridna. Som Lawline klargör: din yttrandefrihet har inte blivit kränkt när en privat aktör tar bort ditt inlägg eller begränsar dig, eftersom det rör sig om en privat plattform som tillämpar sina regler – inte staten som utövar censur.

“Yttrandefriheten innebär inte heller att alla har rätt att uttrycka sin åsikt var som helst.”, vilket Hjärnfonden tydliggör i sin genomgång av hur och varför de modererar sina kommentarsfält i sociala medier.

Ett belysande exempel kommer från Hjärnfonden, en svensk organisation, som i sin sociala medie-policy påpekar att det inte finns någon motsägelse mot yttrandefriheten i att de modererar sina kommentarsfält, vilket de själva förklarar i sin policy för hur och varför innehåll modereras i deras sociala medier. Yttrandefriheten innebär ingen absolut rätt att alltid få uttala sig, och den innebär särskilt inte att man har rätt att uttala sig var som helst. På Hjärnfondens egna sidor gäller deras regler; om någon bryter mot dem, till exempel genom hatiska uttalanden, tar de bort inlägget och kan blockera användaren, vilket framgår av samma genomgång av hur Hjärnfonden tillämpar sina kommentarsregler i praktiken. Den principen gäller alla privata forum – den som driver sidan bestämmer vad som tolereras där.

Det är alltså en avgörande skillnad mellan att tala på torget och att tala på någons privata webbsida eller profil. På det fysiska torget – ett offentligt rum – kan du utnyttja din yttrandefrihet (inom lagens gränser) och exempelvis hålla ett spontant anförande. Ingen myndighet får på förhand förbjuda dig så länge du följer lagen. Men om du kliver in i någons vardagsrum, eller för den delen in på en persons Facebook-vägg eller en privatägd diskussionsgrupp, då har du ingen absolut rätt att yttra dig där mot värdens vilja. Det är värden som avgör vad som är okej i den miljön. Precis som du i ditt hem kan be en gäst gå om hen uppför sig illa, kan en forumadministratör radera inlägg eller utesluta medlemmar som bryter mot forumets regler.

Ett vanligt klagomål från högljudda debattörer på högerkanten är att deras inlägg raderas i till exempel tidningars kommentarsfält eller att de blir blockade av meningsmotståndare på sociala medier – och att detta skulle kränka deras yttrandefrihet. Här behöver vi slå fast: Att få kommentera på en tidnings webbplats eller hos en privatperson är ingen demokratisk eller lagstadgad rättighet. Ingen enskild medborgare har en skyldighet att upplåta sin plattform åt någon annans åsikter. Tidningar har ansvar för sitt innehåll och har kommentarsregler; de kan plocka bort sådant som bryter mot reglerna eller riskerar att vara brottsligt. En privat Facebook-användare har ingen plikt att låta alla tala fritt på den egna sidan – det är faktiskt snarare en del av den personens egen frihet att få välja bort oönskade kommentarer. Som ett tankeexperiment: Om yttrandefrihet innebar att alla fick säga vad de ville i alla sammanhang, då skulle du i princip inte kunna stoppa någon från att ställa sig i ditt vardagsrum och förolämpa dig. Så är det lyckligtvis inte – din hemfrid och din rätt att välja ditt umgänge väger tyngre i privata sammanhang än en utomståendes “rätt” att bli hörd där.

Det offentliga samtalet i stort mår bra av många röster, även obekväma. Men forum och grupper som drivs privat kan ha egna syften – exempelvis att främja ett visst slags diskussion eller hålla god ton – och då måste de kunna avvisa troll, mobbare eller irrelevanta inlägg utan att det ropas om diktatur. Det är värt att notera att även lagen ger stöd åt moderering: den svenska BBS-lagen (Lagen om ansvar för elektroniska anslagstavlor) ålägger den som driver ett forum att ta bort inlägg som uppenbart innehåller vissa typer av olagligt material, såsom hets mot folkgrupp, olaga hot och annan allvarlig brottslighet, vilket Hjärnfonden tydligt beskriver i sin policy om hur de följer BBS-lagen och modererar sina kommentarsfält. Så långt ifrån att vara censur kan moderering vara en skyldighet i vissa fall.

Till och med regeringen har konstaterat den privata plattformens rätt. I ett svar till riksdagen betonade dåvarande kultur- och demokratiministern Amanda Lind att stora digitala plattformar i grunden har frihet att sätta upp egna villkor för sina tjänster – men att dessa bör utövas ansvarsfullt med tydliga och transparenta regler, vilket framgår av hennes svar på riksdagens fråga om yttrandefriheten på internet. Just eftersom Facebook, Twitter med flera har blivit så inflytelserika i det offentliga samtalet pågår parallellt diskussioner inom EU om att kräva ökad transparens och konsekvens i hur sådana plattformar tillämpar sina regler, vilket också behandlas i samma riksdagsdokumentation om EU:s arbete kring digitala plattformars ansvar. Men även i den debatten utgår man från att ja, de har rätt att ha regler; frågan är hur de använder den makt det innebär. I Sverige finns idag ingen lag som tvingar en plattform eller privat aktör att publicera allt som inte är brottsligt – de kan ha strängare regler än lagen, och ofta har de det (till exempel förbjuder Facebook även sådant som är lagligt men bryter mot deras community-regler).

Kort sagt

Yttrandefriheten skyddar dig mot staten – inte mot konsekvenserna av att andra utövar sina egna rättigheter. Och att bli borttagen från någons privata plattform är inte att bli “grundlagscensurerad”. Du är fri att tala, men inte nödvändigtvis på deras bekostnad eller i deras utrymme.

Har du lärt dig något än? Nej, jag trodde nog inte det heller.

Demokrati = majoritetsstyre (med rättssäkerhet för minoriteten)

En annan fundamental aspekt som ibland förvanskas i dessa diskussioner är själva demokratins spelregler. I en demokrati gäller majoritetsprincipen: beslut fattas enligt vad flertalet (majoriteten) röstar för, antingen direkt eller genom valda ombud. Den svenska statsskicket bygger på detta – “All offentlig makt i Sverige utgår från folket” som det står i Regeringsformens portalparagraf, och folkviljan kommer till uttryck via riksdagen där majoriteter avgör, vilket utvecklas i Svensk Juristtidnings genomgång av majoritetsprincipen som demokratins grund. Gustaf Petrén, en framstående jurist, formulerade det så här: “Demokratin bygger på majoritetsprincipen. Den utgår från att de som är flest bestämmer hur den offentliga makten ska utövas.”, vilket han själv utvecklar i samma analys i Svensk Juristtidning om hur majoritetsstyre fungerar i praktiken. De som hamnar utanför majoritetens ståndpunkt i en viss fråga utgör en minoritet, och de får acceptera att majoritetens beslut gäller, vilket också framgår av Svensk Juristtidnings resonemang om minoriteters ställning i ett majoritetsstyrt system.

Det betyder inte att minoriteter är rättslösa – demokrati handlar också om att skydda individens grundläggande fri- och rättigheter, oavsett om man tillhör majoriteten eller inte. Sverige har till exempel grundlagsskydd för att även opopulära åsikter ska få uttryckas, och minoriteter (som etniska eller religiösa grupper) har särskilt skydd mot diskriminering och hat. Men skyddet för minoriteten är inte detsamma som att minoriteten skulle kunna styra över majoriteten. När det gäller offentliga beslut – lagar, regler, myndighetsåtgärder – så är det i slutändan den demokratiska processens utfall som gäller, alltså majoritetens beslut. Den som då befinner sig i minoritet i samhället får rätta sig efter de gemensamma reglerna (så länge de inte kränker grundläggande mänskliga rättigheter). Petrén skriver träffande att “de enskilda som kommer i mindre tal har inte annat att göra än att böja sig för den ordning som flertalet beslutat ska gälla”, vilket han utvecklar i Svensk Juristtidning i sin analys av minoriteters ställning i ett majoritetsstyrt system. Med andra ord, ogillar man en lag eller regel har man möjligheten att försöka övertyga fler, delta i debatten, kanske rösta fram andra representanter – men tills dess gäller lagen för alla.

Varför är detta viktigt i vårt sammanhang? Jo, för att många av de som klagar på att de blir “tystade” egentligen utgör en mycket liten minoritet i fråga om sina åsikter eller sätt att uttrycka dem. De kan uppleva att “systemet” är emot dem när deras beteenden får mothugg eller stoppas – men det beror på att systemet (dvs. den demokratiska rättsordningen och den sociala normen) drivs av majoritetens värderingar, vilka oftast inte stämmer överens med de extrema ståndpunkter minoriteten har. I Sverige har till exempel en majoritet av folkets valda ombud beslutat om lagar som kriminaliserar hets mot folkgrupp, vilket bottnar i en demokratisk värdering att skydda minoriteter från hat. Om då en högerextrem person – som representerar en minoritetsåsikt – vill sprida hets mot minoriteter, så kommer lagen (majoritetens beslut) att krocka med den personens önskan. Att lagen då sätter gränser är inte förtryck, utan just demokrati i funktion. Majoritetssamhället har sagt sitt: viss typ av retorik accepteras inte. Minoriteten i det här fallet får finna sig i detta, eller försöka ändra opinionen på demokratisk väg (vilket de ibland försöker genom att hävda “vi får inte säga sanningen” etc., se mer nedan).

Det är värt att understryka att demokrati också innebär rättssäkerhet och skydd mot godtycke. Majoriteten kan inte göra vad som helst mot en minoritet – det finns grundlagar, domstolar och internationella konventioner som sätter ramar. Till exempel kan inte ens en enhällig riksdagsmajoritet bara så där avskaffa oppositionens rätt att yttra sig; sådana ändringar kräver grundlagsändringar över tid. Det finns alltså inbyggda skydd för att inte majoriteten ska förtrycka minoriteten hur som helst. Men i den vardagliga tillämpningen – i en Facebook-tråd eller på en nyhetssajt – så är det faktiskt inte “oddemokratiskt” att den som är i klar minoritet med en extrem åsikt märker att flertalet andra eller moderatorerna säger stopp. Det är snarare en spegling av hur samhällsnormen ser ut. Demokrati betyder inte att alla får som de vill, utan att alla får säga sitt men majoritetens linje väger tyngst i gemensamma beslut.

För att ge ett konkret scenario: En person på yttersta högerkanten hävdar kanske att en viss konspirationsteori är sann och kräver att media och folk ska ge det utrymme. Medias redaktioner (som visserligen är privata aktörer men ändå en del av det offentliga samtalet) kanske väljer att inte sprida dessa påståenden, för de anses grundlösa eller hatiska. Personen ropar då att “min yttrandefrihet kränks, demokratin sätts ur spel!” I realiteten har personen rätt att tycka och yttra sin teori – hen kan skriva på sin blogg, demonstrera fredligt, ge ut flygblad – inget av detta kommer staten hindra så länge det inte bryter mot lag. Men ingen demokratisk princip garanterar honom en publik i bästa sändningstid eller fri lejd in i andras plattformar. Och om allmänheten i majoritet tar avstånd från idéerna, är det just majoritetens fria val. Demokrati kan ibland vara hårt för den som har en impopulär uppfattning: man kan få prata, men man kan inte tvinga någon att lyssna eller hålla med.

Lessons learned?

I en demokrati styr majoritetens beslut den gemensamma spelplanen, medan minoriteten har rätt att existera, tycka annorlunda och försöka vinna gehör – men inte rätt att köra över majoriteten på eget bevåg. Den som påstår sig försvara “demokratin” genom att kräva ensidig frihet för sin egen minoritetsåsikt på andras bekostnad, har missförstått konceptet. Demokratiska rättigheter handlar både om rätten att uttrycka sig och andras rätt att säga ifrån eller slippa lyssna. Rätten att säga nej, att välja bort nonsens och extremism från sin egen sfär, är faktiskt också en del av det demokratiska ramverket, vilket Aftonbladets ledartext om hur politiska angrepp på medier riskerar att underminera det fria ordet tydliggör i analysen av hur yttrandefrihet också innefattar rätten att avvisa extremism.

Högerextremas missbruk av yttrandefrihetens princip

Med bakgrund av ovanstående blir det tydligt hur vissa grupper på yttersta högerkanten försöker vända på begreppen för att gynna sig själva. Det finns en lång historia av att extremistiska rörelser utnyttjar det öppna samhällets principer för att underminera samma öppenhet. Nazisterna i Tyskland på 1930-talet deltog till exempel i demokratiska val och utnyttjade yttrandefriheten för sin propaganda – men så snart de fick makten avskaffade de yttrande- och pressfriheten brutalt. Dagens svenska högerextremister är förstås inte i närheten av den maktpositionen, men retoriken liknar på sina håll en spegelbild av detta mönster: “Frihet åt mig, men inte åt dig.”

Ett utmärkande drag är offerretoriken. Högerextrema debattörer kliver ofta in i en diskussion aggressivt – med personangrepp, epitet och ibland rent hatiska uttalanden – i syfte att dominera eller provocera. Men om de möter motstånd, eller blir avstängda på grund av sitt beteende, intar de genast rollen som martyrer. De påstår att de “tystas” för att deras meningsmotståndare är “rädda för sanningen” eller att det råder “åsiktsförtryck” mot dem. Som en observatör torrt kommenterade: många av dessa personer kräver friheter för sig själva som de inte vill ge till andra – de vill få häva ur sig förolämpningar och konspirationer, men så fort någon annan säger emot eller utesluter dem, skriker de om censur och diktatur. Mönstret känns igen av många som deltagit i internetforum: först delar de ut smädelser och avbryter saklig debatt, sedan skriker de “YTTRANDEFRIHET!” när moderatorn ingriper. Förutsägbart – och paradoxalt.

Retoriken om att vara “tystad” eller utsatt för “åsiktskorridoren” (ett populärt begrepp i svensk debatt) har också ett strategiskt syfte. Genom att framställa sig som en underdog som makten vill kväsa, hoppas extrema opinionsbildare väcka sympati och rekrytera anhängare. Om man inte faktakollar kan det låta trovärdigt: “Varför får inte X framföra sin åsikt? Lever vi i en diktatur?”

I själva verket får X framföra sin åsikt – hen får bara inte göra det precis var som helst eller utan att mötas av mothugg. Att ett samhälle reagerar negativt på hatiska eller antidemokratiska uttryck är inte ett tecken på diktatur, utan ett tecken på att samhället försvarar sina demokratiska värden (som allas lika värde, respekt och sanning) och fortfarande är skapligt friskt (till skillnad från extremisten). Som jag skrev i en kommentar angående denna typ av högeraktivister: de har aldrig varit intresserade av något annat än sina egna fri- och rättigheter. Hade de själva makten skulle de troligen inskränka just de friheter de nu kräver (inklusive denna texten, fakta är ju trots allt irrelevant i såna här kretsar). Det har historien lärt oss från åtskilliga exempel på högerledare som spårat ur maktmässigt.

Man kan se tendenser i vår närtid också. I exempelvis Ungern, som styrs av det högernationalistiska Fidesz-partiet, har regeringen gradvis monterat ned mediefriheten och domstolarnas oberoende, vilket beskrivs i Aftonbladets analys av hur angrepp på medier blivit ett kännetecken för auktoritär politik i artikeln om hur mediernas ställning urholkas i Ungern. De använder en demokratisk retorik men agerar på sätt som försvårar oppositionens möjligheter att göra sin röst hörd. I Sverige har vi en livlig debatt om public service och medias roll; vissa inom den nationalistiska högern har anklagat public service för att vara “vänstervridet” och har föreslagit minskad frihet för dessa medier. Angreppen på etablerade medier – att kalla journalister för “folkets fiender” eller antyda att kritiska frågor är förräderi – ligger farligt nära att undergräva det fria ordet. Yttrandefrihetsexperten Nils Funcke har varnat för dessa tendenser och menar att de återkommande attackerna på media från ledande politiker är ett oroväckande tecken, vilket han utvecklar i Aftonbladets ledartext om hur medieangrepp hotar yttrandefriheten.

Högerextrem retorik handlar ofta om att flytta fokus. Istället för att bemöta sakargument eller följa normala debattregler, sätter de en etikett på motparten (“kommunist”, “kulturmarxist”, “imbecill”) för att tysta eller förminska. Om motparten eller moderatorn sedan tröttnar och avbryter diskussionen, tar de detta som bevis på att de själva hade rätt hela tiden (“se, de klarar inte sanningen, de censurerar mig!”). Det blir en slags självuppfyllande strategi för dem: stöka till debatten så mycket att ingen vill ha kvar dem, och använd sedan uteslutningen som propaganda för att de är de enda som vågar “stå upp mot PK-maffian”. För en utomstående är logiken skev, men inom den egna kretsen kan martyrskapet ge status.

Det är viktigt att syna denna bluff. Att samhället sätter gränser för hat och lögn är inte att “tysta oliktänkande” i odemokratisk mening – det är att upprätthålla demokratins grundläggande respekt. Högerextrema har all rätt att tycka vad de vill. De kan starta egna tidningar, bloggar, partier och YouTube-kanaler. Och de gör det också – det finns en flora av alternativa medier till höger om den etablerade mittenfåran, just för att internet ger dem möjligheten. Där kan de framföra även konspirationsteorier och främlingsfientliga budskap, inom lagens råmärken. Men vad de inte kan kräva är att få sprida samma budskap oemotsagda i andras kanaler eller att slippa bli ifrågasatta. Ändå är det precis det de ofta gör anspråk på: en slags ensidig yttrandefrihet där de får härja fritt, medan de vill slippa konsekvensen av att andra utövar sin rätt att säga emot eller välja bort dem.

Notera ironin: Många av dessa högljudda “yttrandefrihetskämpar” på ytterkanten lever i ett av världens mest yttrandefria länder. De kan i princip säga nästan vad som helst lagligt, så länge de inte hotar eller hetsar. De kan demonstrera, ge ut skrifter, kandidera i val (vi har till och med nazistiska småpartier som ställer upp i Sverige – yttersta beviset på vår demokratiska tolerans). Ändå hävdar de att de är “tystade”. I själva verket handlar det om att deras idéer saknar brett stöd – folk i gemen vill inte lyssna på dem, medier vill inte ge dem utrymme eftersom de bryter mot grundläggande pressetiska principer, och privatpersoner vill inte ha dem i sina flöden. Det är inte en konspiration – det är det demokratiska samhället som utövar sin kollektiva valfrihet.

När det extrema blir mainstream med förskjutna gränser i debatten

Under de senaste decennierna har vi dessutom bevittnat hur vissa extrema idéer gradvis flyttat fram sina positioner i det offentliga samtalet. Detta sker inte öppet genom tvång, utan subtilt genom normalisering. Sverigedemokraternas intåg i riksdagen 2010 innebar till exempel att åsikter som tidigare betraktats som extrema eller rent av rasistiska fick en plattform inom parlamentarisk debatt. Sedan dess har gränsen för vad som anses acceptabel retorik förskjutits märkbart. Forskaren Jesper Strömbäck konstaterar att i takt med att SD:s problemformuleringar normaliserats och legitimerats har det som förr betraktades som rasistiskt blivit nästintill regeringspolitik idag, vilket han utvecklar i Dagens Arenas intervju om hur tidigare rasistiska positioner gradvis blivit politiskt accepterade. Han syftar på att invandringsfientliga tongångar som tidigare var otänkbara för etablerade partier numera uttrycks av regeringsföreträdare utan större chockeffekt. Tidöavtalets politik, med SD som stödparti, förs i mångt och mycket med en retorik som för bara ett decennium sedan skulle ha kallats invandringsfientlig rakt av, vilket också framgår av Strömbäcks analys i samma genomgång av hur normaliseringen påverkat svensk regeringspolitik.

Denna förskjutning – ibland kallad ”Overton-fönstrets” förflyttning – beror delvis på att högerpopulister skickligt spelat på yttrandefrihetsargumentet för att tänja på vad man får säga. Minns debatten om “åsiktskorridoren” i Sverige: det påstods från högerhåll att man “inte fick prata om” invandringens problem, att etablissemanget tystade sådana diskussioner. I realiteten var ämnet känsligt men inte förbjudet – det var många som ogillade generaliserande eller främlingsfientliga uttalanden, så de bemöttes med skarp kritik. SD och liknande aktörer vände detta till sin fördel och sa: “Se, vi blir tystade – alltså måste vi skrika ännu högre.” Och efterhand började andra partier anamma en del av deras retorik för att inte förlora väljarstöd. Gränserna flyttades.

Det finns en risk i detta. När språket och ideologin hos extrema grupper normaliseras kan själva grundvärderingarna i samhället förskjutas. Det som tidigare sågs som uppenbart kränkande eller odemokratiskt kan börja ses som “en åsikt bland andra”. Som Strömbäck påpekar tävlar i dag till och med traditionella partier om att vara “hårdast” i exempelvis kriminalpolitik och migrationspolitik, där retoriken blivit betydligt mer sträng och strafforienterad än förr, vilket han utvecklar i Dagens Arenas analys av hur migrations- och kriminalpolitisk retorik förskjutits i svensk politik. Det demokratiska samtalet tål mycket, men vi bör vara medvetna om när vi rör oss mot farligt vatten. Att fler vågar säga saker öppet är i grunden bra – om det handlar om sakliga åsikter. Men när det som sprids är förenklade syndabockstankar eller hat mot vissa grupper, då är det inte enbart oskyldig “vidgning av debatten”. Det kan vara början på att demokratins kultur eroderar, precis det som våra lagar om hets och hat syftar till att förhindra.

Samtidigt måste man erkänna att åsiktsklimatet är bredare nu än förut. Människor får idag uttrycka invandringskritik öppnare utan att automatiskt stämplas ut – vilket många framhåller som något positivt, att tabu brutits. Kritik mot sådant som hedersförtryck, integrationsproblem eller volymen av flyktingmottagande har fått en legitim plats i debatten, till stor del tack vare att partier som SD drev upp frågorna på dagordningen. Det demokratiska systemet ska kunna absorbera nya frågor och perspektiv. Men skillnaden mellan legitim saklig kritik och intolerant retorik är avgörande. Det förstnämnda stärker demokratin (genom att relevanta problem diskuteras öppet), det sistnämnda undergräver demokratin (genom att vissa grupper demoniseras och samhällsklyftor ökar).

Högerextrema aktörer har emellertid ofta svårt att hålla sig till saklig kritik – deras ideologi bygger i regel på att utse fiender (etablerade politiker, minoriteter, medier) som man menar förstör nationen. Och när deras språkbruk letar sig in i mainstream riskerar det offentliga samtalet att förgiftas. Vi ser tyvärr exempel på detta i sociala medier dagligen: tonläget har hårdnat, normalisering av personangrepp och misstro mot demokratins institutioner breder ut sig. Plattformar som tidigare var till för meningsutbyte blir ibland slagfält av hat. Twitter (numera X) beskrivs i Aftonbladets ledartext om hur politiska angrepp på medier och digitala plattformar bidrar till ett allt mer polariserat klimat som ett träsk där högerextrema narrativ och trollfabriker dominerar, vilket analyseras i artikeln om hur extremism och botar präglar debattklimatet på X. Ju mer sådant tolereras i “mainstream”, desto mer flyttas ribban för vad som anses okej.

Det fria samhället måste därför göra en ständig avvägning: Vara öppet nog att alla röster får försöka göra sig hörda – men starkt nog att stå emot de röster som medvetet vill sabotera öppenheten. Det är här diskussionen om ”den tysta högern” eller ”cancel culture” etc. kommer in. Högern (i sin mer extrema form) anser ofta att deras åsikter hålls nere av en vänsterliberal hegemoni. I viss mån har de använt detta narrativ för att ta sig upp och in i riksdagen och därefter påverkat samtalet (som vi sett). Men att de nu faktiskt har en megafon (SD är näst största parti) motsäger ju påståendet att de skulle ha varit genuint tystade. Processen visar snarare att demokratin fungerade – ett tidigare marginellt perspektiv fick stöd av tillräckligt många väljare och kom in i värmen. Det ironiska är att trots detta fortsätter retoriken hos en del att låta som om de vore utanför och förtryckta. Det tyder på att offerrollen är svår att släppa, kanske för att den varit så framgångsrik retoriskt.

Rättigheter med ansvar, frihet med gränser

Den röda tråden i allt ovan är förståelsen att demokratiska rättigheter kommer med ansvar och är inskrivna i ett sammanhang av lag och etik. Yttrandefrihet är fundamentalt, men den kräver ett ansvarsfullt handhavande – både av individer och plattformar. Demokrati handlar om frihet, men också om respekt för majoritetsbeslut och andras friheter. Samtidigt är det nog viktigt att förstå att det inte finns förståelse alls här. Eller snarare är det så att folk med den här retoriska grunden skiter i alla andra.

De som skriker högst om att de “inte får höras” i Sverige idag är i praktiken ofta de som hörs mest i den digitala miljön – men de är frustrerade över att folk inte längre tiger och samtycker, eller över att bli modererade när de spårar ur. Att värna yttrandefrihet innebär att alla ska få tala inom rimliga ramar, inte att vissa ska få dominera utan gensvar. Det innebär också rätten att säga ifrån när någon går över gränsen.

Som samhälle behöver vi fortsätta vara tydliga med följande:

Yttrandefriheten skyddar mot staten, inte mot kritik eller moderation. Alltså: du får tycka och säga, men du får tåla att andra utövar sin rätt att säga emot eller stänga sin dörr, vilket Hjärnfonden tydliggör i sin policy om hur privata aktörer har rätt att moderera sina egna kanaler och kommentarsfält i genomgången av varför moderering inte står i motsättning till yttrandefriheten.

Demokrati betyder majoritetsstyre under lagarna. Att följa gemensamma regler är inte förtryck, utan just vad samhället kommit överens om. Minoritetsåsikter får finnas, men kan inte diktera villkoren för majoriteten hur som helst, vilket utvecklas i Svensk Juristtidnings genomgång av hur majoritetsprincipen utgör demokratins grund och hur minoriteter i ett majoritetsstyrt system har att underordna sig gemensamma beslut.

Privata forum har egna trösklar. Den som blir utkastad ur ett Facebook-forum p.g.a. sitt beteende har inte “fått munnen igentejpad av staten”. Man kan starta ett eget forum om man vill prata fritt på sina villkor.

Fri åsiktsbildning kräver respekt. Om vi vill ha högt i tak i debatten, måste vi också ta ansvar för tonen. Att kallprata med hårda fakta är en sak – att häva ur sig skällsord och personangrepp en annan. Yttrandefriheten ger utrymme för hård kritik, ja, men ett demokratiskt samhälle bygger på idén att man bemöter argument med argument, inte med förakt.

I slutänden handlar det om att förstå skillnaden mellan att bli sakligt emotsagd och att bli orättfärdigt tystad. De högerextrema som misströstar över att “de inte får säga sin sanning” blandar oftast ihop dessa (läs: skiter i det). Deras rätt att tala finns där – men de saknar kanske allmänhetens gillande, och det kan inte tvingas fram genom att åberopa yttrandefrihet. Den måste förtjänas genom trovärdighet och respekt.

Demokratin är jäkligt intressant, just för att den ständigt prövas av sådana här gränsfall: Hur hanterar vi de som vill utnyttja friheten för att sabotera friheten? Svaret hittills har varit: med ännu mer demokrati, vilket inkluderar modet att sätta gränser när det behövs. Att säga “nej, du får inte använda min plattform för hat” eller “nej, din rätt kan inte trampas på alla andras rättigheter” är i sig ett demokratiskt försvar. Yttrandefriheten och demokratin mår inte dåligt av att vi står upp mot dem som missbrukar systemet – tvärtom, de mår bra av att vi förstår dem rätt och vårdar dem klokt.

Versions

  1. 2026-01-07 10:18:15
    Discovered: 2026-03-19 13:50:20 Hash: 11b429f1e247a4040c16925e3bb4f50ae7a35846
    Title:
    Andras fri- och rättigheter – Ett snårigt näste när man bara bryr sig om sig själv
    Description:
    I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform....
    Content
    I dagens digitala debattklimat hör man ofta människor utropa: “Jag får faktiskt säga vad jag vill – vi har yttrandefrihet!”

    Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform. De menar att deras demokratiska rättigheter kränks när de inte får sprida sin åsikt precis var de vill. Fenomenet är särskilt vanligt inom högerextrema kretsar och liknande grupper, där man gärna åberopar yttrandefrihet och demokrati för egna syften, samtidigt som man ignorerar andras rättigheter. I synnerhet rätten att få slippa korkade extremister.

    Vad innebär egentligen yttrandefrihet enligt lagen, och var går gränsen mellan offentligt och privat forum? Missförstånden kring demokratiska fri- och rättigheter – och hur de ibland missbrukas av högerextrema röster i Sverige behöver kanske redas ut, inte minst för de röster som inte förstår bättre. Det finns trots allt väsentliga skillnader mellan offentliga samtal och privata plattformar.

    Det kan vara en god idé att belysa hur vissa försöker flytta gränserna för det som anses acceptabelt att säga offentligt, genom att hävda att de är “tystade” av etablissemanget – även i privata forum, där det till och med kan sakna relevans helt. Exempelvis: Någon har laddat upp ett foto på sig själv – en vilse högerextremist tycker att det är viktigt att få prata om sina egna rättigheter att prata om allt annat, förnedra personen på personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. Lite som om det var en dåligt konfigurerad modell av ChatGPT 3.5.

    De som väljer att ignorera andras grundläggande fri- och rättigheter, bör inte förvänta sig att få någon särskilt bra respons på det – och kanske i stället räkna med att bli utslängd från offentliga samtal. I rena korta ordalag: Håll käften om du inte är intresserad. Din åsikt är inte värd ett skit. 

    Table of Contents
    Toggle
    Yttrandefrihet i Sverige – stark men inte gränslösLessons learned?Privata plattformar där värdens regler gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för minoriteten)Lessons learned?Högerextremas missbruk av yttrandefrihetens principNär det extrema blir mainstream med förskjutna gränser i debattenRättigheter med ansvar, frihet med gränser
    Yttrandefrihet i Sverige – stark men inte gränslös

    Yttrandefriheten är grundlagsskyddad i Sverige och utgör en hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § har varje medborgare rätt att fritt uttrycka sina tankar, åsikter och känslor offentligt, vilket förklaras tydligt i Internetstiftelsens genomgång av vad man faktiskt får säga på nätet. Detta skydd syftar till att möjliggöra en fri samhällsdebatt och åsiktsbildning. Det innebär dock inte att man får säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten får begränsas genom lag av hänsyn till till exempel rikets säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket också framgår av Internetstiftelsens genomgång av yttrandefrihetens juridiska gränser på nätet. Med andra ord är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden i samhället.

    Flera typer av yttranden är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, uppvigling samt vissa andra yttranden är förbjudna enligt lag, vilket framgår av Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär att yttrandefriheten där har en laglig gräns. Likaså är direkta hot eller förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltså att man inte har rätt att yttra vad som helst, utan att det finns tydliga gränser för vad som får spridas offentligt, vilket även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier.

    Det är också viktigt att förstå vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter får inte stoppa ett yttrande innan det publicerats. Däremot kan ett yttrande som redan gjorts bedömas i efterhand och leda till rättsliga påföljder om det bryter mot lagen (till exempel om det utgör hets mot folkgrupp eller liknande). När någon påstår att den utsatts för censur för att ett inlägg tagits bort, är det oftast en felaktig användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, inte att ett inlägg raderas i efterhand, vilket Lawline förklarar i sin juridiska genomgång av yttrandefrihet och censur på internet. Om en tidningsredaktion eller webbplats modererar innehåll efter publicering rör det sig alltså inte om censur i grundlagens mening, vilket också framgår av Lawlines förklaring av skillnaden mellan censur och moderering i privat regi.

    Lessons learned?

    Är du högerextrem är det inte troligt att du lärt dig något. Det är inte heller särskilt troligt att du överlevt så här mycket faktatext på en och samma gång.

    Yttrandefriheten ger dig rätten att uttrycka din åsikt offentligt utan förhandscensur från staten, men den skyddar dig inte från alla konsekvenser. Du är fortfarande ansvarig för vad du säger – yttrandefriheten är ingen fribiljett att sprida hat eller hot utan reaktion. Som juristen Ängla Eklund uttrycker det: samma regler gäller på gatan som på internet; man får tycka och säga mycket, men inte allt, vilket också förklaras i Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Yttrandefrihet innebär heller inte att det du säger måste accepteras av andra i social mening. Inte ens de gånger du skrattar ut dom med argumentet “Nu försöker vänstern tysta mig igen, så typiskt, HAHA!” – det är snarare i det läget du bör “dra åt helvete” på ren akademiskt hövlig svenska.

    Det finns mycket man får säga rent lagligt som ändå kan vara olämpligt eller få mothugg. Att någon invänder mot eller kritiserar ditt yttrande är inte ett brott mot din yttrandefrihet – det är andras yttrandefrihet i arbete. Men sitter du redan i kommentarsfälten och gafflar, är det inte säkert att du begriper det här. Och det ska vi prata mer om nu.

    Privata plattformar där värdens regler gäller

    En avgörande skillnad som ofta missförstås är den mellan offentliga rum och privata plattformar eller forum. Yttrandefrihetslagarna skyddar oss mot ingrepp från det allmänna – det vill säga staten får inte hindra oss från att uttrycka oss, såvida vi inte bryter mot lagen. Men dessa lagar ger oss inte rätt att kräva utrymme på någon annans arena. Att någon har en öppen Facebook-profil eller en publik debattgrupp innebär inte att den blir allmän egendom där alla kan agera fritt utan restriktioner. På privata plattformar och sidor är det ägaren eller värden som sätter reglerna.

    När du går in på en social medie-plattform eller en privatägd sajt, godkänner du deras användarvillkor. Privata aktörer har frihet att själva kontrollera innehållet på sina plattformar, vilket Lawline förklarar i sin genomgång av yttrandefrihet och privata plattformars rätt att moderera innehåll. Det betyder att Facebook, Instagram, ett diskussionsforum eller en blogg har rätt att moderera innehåll enligt sina regler. Bryter man mot användarvillkoren kan företaget ta bort inlägget eller stänga av kontot, vilket också framgår av Lawlines förklaring av hur privata aktörer får sätta och upprätthålla egna regler. Händer det, kan du börja med att inte bli upprörd. Du får skylla dig själv och har i princip ingenting att säga till om. Man har samtyckt till detta när man gick med på villkoren. Det må kännas frustrerande för den som drabbas, men juridiskt är det helt i sin ordning. Trots att du fortfarande sitter och skrattar åt vänstervridna. Som Lawline klargör: din yttrandefrihet har inte blivit kränkt när en privat aktör tar bort ditt inlägg eller begränsar dig, eftersom det rör sig om en privat plattform som tillämpar sina regler – inte staten som utövar censur.

    “Yttrandefriheten innebär inte heller att alla har rätt att uttrycka sin åsikt var som helst.”, vilket Hjärnfonden tydliggör i sin genomgång av hur och varför de modererar sina kommentarsfält i sociala medier.

    Ett belysande exempel kommer från Hjärnfonden, en svensk organisation, som i sin sociala medie-policy påpekar att det inte finns någon motsägelse mot yttrandefriheten i att de modererar sina kommentarsfält, vilket de själva förklarar i sin policy för hur och varför innehåll modereras i deras sociala medier. Yttrandefriheten innebär ingen absolut rätt att alltid få uttala sig, och den innebär särskilt inte att man har rätt att uttala sig var som helst. På Hjärnfondens egna sidor gäller deras regler; om någon bryter mot dem, till exempel genom hatiska uttalanden, tar de bort inlägget och kan blockera användaren, vilket framgår av samma genomgång av hur Hjärnfonden tillämpar sina kommentarsregler i praktiken. Den principen gäller alla privata forum – den som driver sidan bestämmer vad som tolereras där.

    Det är alltså en avgörande skillnad mellan att tala på torget och att tala på någons privata webbsida eller profil. På det fysiska torget – ett offentligt rum – kan du utnyttja din yttrandefrihet (inom lagens gränser) och exempelvis hålla ett spontant anförande. Ingen myndighet får på förhand förbjuda dig så länge du följer lagen. Men om du kliver in i någons vardagsrum, eller för den delen in på en persons Facebook-vägg eller en privatägd diskussionsgrupp, då har du ingen absolut rätt att yttra dig där mot värdens vilja. Det är värden som avgör vad som är okej i den miljön. Precis som du i ditt hem kan be en gäst gå om hen uppför sig illa, kan en forumadministratör radera inlägg eller utesluta medlemmar som bryter mot forumets regler.

    Ett vanligt klagomål från högljudda debattörer på högerkanten är att deras inlägg raderas i till exempel tidningars kommentarsfält eller att de blir blockade av meningsmotståndare på sociala medier – och att detta skulle kränka deras yttrandefrihet. Här behöver vi slå fast: Att få kommentera på en tidnings webbplats eller hos en privatperson är ingen demokratisk eller lagstadgad rättighet. Ingen enskild medborgare har en skyldighet att upplåta sin plattform åt någon annans åsikter. Tidningar har ansvar för sitt innehåll och har kommentarsregler; de kan plocka bort sådant som bryter mot reglerna eller riskerar att vara brottsligt. En privat Facebook-användare har ingen plikt att låta alla tala fritt på den egna sidan – det är faktiskt snarare en del av den personens egen frihet att få välja bort oönskade kommentarer. Som ett tankeexperiment: Om yttrandefrihet innebar att alla fick säga vad de ville i alla sammanhang, då skulle du i princip inte kunna stoppa någon från att ställa sig i ditt vardagsrum och förolämpa dig. Så är det lyckligtvis inte – din hemfrid och din rätt att välja ditt umgänge väger tyngre i privata sammanhang än en utomståendes “rätt” att bli hörd där.

    Det offentliga samtalet i stort mår bra av många röster, även obekväma. Men forum och grupper som drivs privat kan ha egna syften – exempelvis att främja ett visst slags diskussion eller hålla god ton – och då måste de kunna avvisa troll, mobbare eller irrelevanta inlägg utan att det ropas om diktatur. Det är värt att notera att även lagen ger stöd åt moderering: den svenska BBS-lagen (Lagen om ansvar för elektroniska anslagstavlor) ålägger den som driver ett forum att ta bort inlägg som uppenbart innehåller vissa typer av olagligt material, såsom hets mot folkgrupp, olaga hot och annan allvarlig brottslighet, vilket Hjärnfonden tydligt beskriver i sin policy om hur de följer BBS-lagen och modererar sina kommentarsfält. Så långt ifrån att vara censur kan moderering vara en skyldighet i vissa fall.

    Till och med regeringen har konstaterat den privata plattformens rätt. I ett svar till riksdagen betonade dåvarande kultur- och demokratiministern Amanda Lind att stora digitala plattformar i grunden har frihet att sätta upp egna villkor för sina tjänster – men att dessa bör utövas ansvarsfullt med tydliga och transparenta regler, vilket framgår av hennes svar på riksdagens fråga om yttrandefriheten på internet. Just eftersom Facebook, Twitter med flera har blivit så inflytelserika i det offentliga samtalet pågår parallellt diskussioner inom EU om att kräva ökad transparens och konsekvens i hur sådana plattformar tillämpar sina regler, vilket också behandlas i samma riksdagsdokumentation om EU:s arbete kring digitala plattformars ansvar. Men även i den debatten utgår man från att ja, de har rätt att ha regler; frågan är hur de använder den makt det innebär. I Sverige finns idag ingen lag som tvingar en plattform eller privat aktör att publicera allt som inte är brottsligt – de kan ha strängare regler än lagen, och ofta har de det (till exempel förbjuder Facebook även sådant som är lagligt men bryter mot deras community-regler).

    Kort sagt

    Yttrandefriheten skyddar dig mot staten – inte mot konsekvenserna av att andra utövar sina egna rättigheter. Och att bli borttagen från någons privata plattform är inte att bli “grundlagscensurerad”. Du är fri att tala, men inte nödvändigtvis på deras bekostnad eller i deras utrymme.

    Har du lärt dig något än? Nej, jag trodde nog inte det heller.

    Demokrati = majoritetsstyre (med rättssäkerhet för minoriteten)

    En annan fundamental aspekt som ibland förvanskas i dessa diskussioner är själva demokratins spelregler. I en demokrati gäller majoritetsprincipen: beslut fattas enligt vad flertalet (majoriteten) röstar för, antingen direkt eller genom valda ombud. Den svenska statsskicket bygger på detta – “All offentlig makt i Sverige utgår från folket” som det står i Regeringsformens portalparagraf, och folkviljan kommer till uttryck via riksdagen där majoriteter avgör, vilket utvecklas i Svensk Juristtidnings genomgång av majoritetsprincipen som demokratins grund. Gustaf Petrén, en framstående jurist, formulerade det så här: “Demokratin bygger på majoritetsprincipen. Den utgår från att de som är flest bestämmer hur den offentliga makten ska utövas.”, vilket han själv utvecklar i samma analys i Svensk Juristtidning om hur majoritetsstyre fungerar i praktiken. De som hamnar utanför majoritetens ståndpunkt i en viss fråga utgör en minoritet, och de får acceptera att majoritetens beslut gäller, vilket också framgår av Svensk Juristtidnings resonemang om minoriteters ställning i ett majoritetsstyrt system.

    Det betyder inte att minoriteter är rättslösa – demokrati handlar också om att skydda individens grundläggande fri- och rättigheter, oavsett om man tillhör majoriteten eller inte. Sverige har till exempel grundlagsskydd för att även opopulära åsikter ska få uttryckas, och minoriteter (som etniska eller religiösa grupper) har särskilt skydd mot diskriminering och hat. Men skyddet för minoriteten är inte detsamma som att minoriteten skulle kunna styra över majoriteten. När det gäller offentliga beslut – lagar, regler, myndighetsåtgärder – så är det i slutändan den demokratiska processens utfall som gäller, alltså majoritetens beslut. Den som då befinner sig i minoritet i samhället får rätta sig efter de gemensamma reglerna (så länge de inte kränker grundläggande mänskliga rättigheter). Petrén skriver träffande att “de enskilda som kommer i mindre tal har inte annat att göra än att böja sig för den ordning som flertalet beslutat ska gälla”, vilket han utvecklar i Svensk Juristtidning i sin analys av minoriteters ställning i ett majoritetsstyrt system. Med andra ord, ogillar man en lag eller regel har man möjligheten att försöka övertyga fler, delta i debatten, kanske rösta fram andra representanter – men tills dess gäller lagen för alla.

    Varför är detta viktigt i vårt sammanhang? Jo, för att många av de som klagar på att de blir “tystade” egentligen utgör en mycket liten minoritet i fråga om sina åsikter eller sätt att uttrycka dem. De kan uppleva att “systemet” är emot dem när deras beteenden får mothugg eller stoppas – men det beror på att systemet (dvs. den demokratiska rättsordningen och den sociala normen) drivs av majoritetens värderingar, vilka oftast inte stämmer överens med de extrema ståndpunkter minoriteten har. I Sverige har till exempel en majoritet av folkets valda ombud beslutat om lagar som kriminaliserar hets mot folkgrupp, vilket bottnar i en demokratisk värdering att skydda minoriteter från hat. Om då en högerextrem person – som representerar en minoritetsåsikt – vill sprida hets mot minoriteter, så kommer lagen (majoritetens beslut) att krocka med den personens önskan. Att lagen då sätter gränser är inte förtryck, utan just demokrati i funktion. Majoritetssamhället har sagt sitt: viss typ av retorik accepteras inte. Minoriteten i det här fallet får finna sig i detta, eller försöka ändra opinionen på demokratisk väg (vilket de ibland försöker genom att hävda “vi får inte säga sanningen” etc., se mer nedan).

    Det är värt att understryka att demokrati också innebär rättssäkerhet och skydd mot godtycke. Majoriteten kan inte göra vad som helst mot en minoritet – det finns grundlagar, domstolar och internationella konventioner som sätter ramar. Till exempel kan inte ens en enhällig riksdagsmajoritet bara så där avskaffa oppositionens rätt att yttra sig; sådana ändringar kräver grundlagsändringar över tid. Det finns alltså inbyggda skydd för att inte majoriteten ska förtrycka minoriteten hur som helst. Men i den vardagliga tillämpningen – i en Facebook-tråd eller på en nyhetssajt – så är det faktiskt inte “oddemokratiskt” att den som är i klar minoritet med en extrem åsikt märker att flertalet andra eller moderatorerna säger stopp. Det är snarare en spegling av hur samhällsnormen ser ut. Demokrati betyder inte att alla får som de vill, utan att alla får säga sitt men majoritetens linje väger tyngst i gemensamma beslut.

    För att ge ett konkret scenario: En person på yttersta högerkanten hävdar kanske att en viss konspirationsteori är sann och kräver att media och folk ska ge det utrymme. Medias redaktioner (som visserligen är privata aktörer men ändå en del av det offentliga samtalet) kanske väljer att inte sprida dessa påståenden, för de anses grundlösa eller hatiska. Personen ropar då att “min yttrandefrihet kränks, demokratin sätts ur spel!” I realiteten har personen rätt att tycka och yttra sin teori – hen kan skriva på sin blogg, demonstrera fredligt, ge ut flygblad – inget av detta kommer staten hindra så länge det inte bryter mot lag. Men ingen demokratisk princip garanterar honom en publik i bästa sändningstid eller fri lejd in i andras plattformar. Och om allmänheten i majoritet tar avstånd från idéerna, är det just majoritetens fria val. Demokrati kan ibland vara hårt för den som har en impopulär uppfattning: man kan få prata, men man kan inte tvinga någon att lyssna eller hålla med.

    Lessons learned?

    I en demokrati styr majoritetens beslut den gemensamma spelplanen, medan minoriteten har rätt att existera, tycka annorlunda och försöka vinna gehör – men inte rätt att köra över majoriteten på eget bevåg. Den som påstår sig försvara “demokratin” genom att kräva ensidig frihet för sin egen minoritetsåsikt på andras bekostnad, har missförstått konceptet. Demokratiska rättigheter handlar både om rätten att uttrycka sig och andras rätt att säga ifrån eller slippa lyssna. Rätten att säga nej, att välja bort nonsens och extremism från sin egen sfär, är faktiskt också en del av det demokratiska ramverket, vilket Aftonbladets ledartext om hur politiska angrepp på medier riskerar att underminera det fria ordet tydliggör i analysen av hur yttrandefrihet också innefattar rätten att avvisa extremism.

    Högerextremas missbruk av yttrandefrihetens princip

    Med bakgrund av ovanstående blir det tydligt hur vissa grupper på yttersta högerkanten försöker vända på begreppen för att gynna sig själva. Det finns en lång historia av att extremistiska rörelser utnyttjar det öppna samhällets principer för att underminera samma öppenhet. Nazisterna i Tyskland på 1930-talet deltog till exempel i demokratiska val och utnyttjade yttrandefriheten för sin propaganda – men så snart de fick makten avskaffade de yttrande- och pressfriheten brutalt. Dagens svenska högerextremister är förstås inte i närheten av den maktpositionen, men retoriken liknar på sina håll en spegelbild av detta mönster: “Frihet åt mig, men inte åt dig.”

    Ett utmärkande drag är offerretoriken. Högerextrema debattörer kliver ofta in i en diskussion aggressivt – med personangrepp, epitet och ibland rent hatiska uttalanden – i syfte att dominera eller provocera. Men om de möter motstånd, eller blir avstängda på grund av sitt beteende, intar de genast rollen som martyrer. De påstår att de “tystas” för att deras meningsmotståndare är “rädda för sanningen” eller att det råder “åsiktsförtryck” mot dem. Som en observatör torrt kommenterade: många av dessa personer kräver friheter för sig själva som de inte vill ge till andra – de vill få häva ur sig förolämpningar och konspirationer, men så fort någon annan säger emot eller utesluter dem, skriker de om censur och diktatur. Mönstret känns igen av många som deltagit i internetforum: först delar de ut smädelser och avbryter saklig debatt, sedan skriker de “YTTRANDEFRIHET!” när moderatorn ingriper. Förutsägbart – och paradoxalt.

    Retoriken om att vara “tystad” eller utsatt för “åsiktskorridoren” (ett populärt begrepp i svensk debatt) har också ett strategiskt syfte. Genom att framställa sig som en underdog som makten vill kväsa, hoppas extrema opinionsbildare väcka sympati och rekrytera anhängare. Om man inte faktakollar kan det låta trovärdigt: “Varför får inte X framföra sin åsikt? Lever vi i en diktatur?”

    I själva verket får X framföra sin åsikt – hen får bara inte göra det precis var som helst eller utan att mötas av mothugg. Att ett samhälle reagerar negativt på hatiska eller antidemokratiska uttryck är inte ett tecken på diktatur, utan ett tecken på att samhället försvarar sina demokratiska värden (som allas lika värde, respekt och sanning) och fortfarande är skapligt friskt (till skillnad från extremisten). Som jag skrev i en kommentar angående denna typ av högeraktivister: de har aldrig varit intresserade av något annat än sina egna fri- och rättigheter. Hade de själva makten skulle de troligen inskränka just de friheter de nu kräver (inklusive denna texten, fakta är ju trots allt irrelevant i såna här kretsar). Det har historien lärt oss från åtskilliga exempel på högerledare som spårat ur maktmässigt.

    Man kan se tendenser i vår närtid också. I exempelvis Ungern, som styrs av det högernationalistiska Fidesz-partiet, har regeringen gradvis monterat ned mediefriheten och domstolarnas oberoende, vilket beskrivs i Aftonbladets analys av hur angrepp på medier blivit ett kännetecken för auktoritär politik i artikeln om hur mediernas ställning urholkas i Ungern. De använder en demokratisk retorik men agerar på sätt som försvårar oppositionens möjligheter att göra sin röst hörd. I Sverige har vi en livlig debatt om public service och medias roll; vissa inom den nationalistiska högern har anklagat public service för att vara “vänstervridet” och har föreslagit minskad frihet för dessa medier. Angreppen på etablerade medier – att kalla journalister för “folkets fiender” eller antyda att kritiska frågor är förräderi – ligger farligt nära att undergräva det fria ordet. Yttrandefrihetsexperten Nils Funcke har varnat för dessa tendenser och menar att de återkommande attackerna på media från ledande politiker är ett oroväckande tecken, vilket han utvecklar i Aftonbladets ledartext om hur medieangrepp hotar yttrandefriheten.

    Högerextrem retorik handlar ofta om att flytta fokus. Istället för att bemöta sakargument eller följa normala debattregler, sätter de en etikett på motparten (“kommunist”, “kulturmarxist”, “imbecill”) för att tysta eller förminska. Om motparten eller moderatorn sedan tröttnar och avbryter diskussionen, tar de detta som bevis på att de själva hade rätt hela tiden (“se, de klarar inte sanningen, de censurerar mig!”). Det blir en slags självuppfyllande strategi för dem: stöka till debatten så mycket att ingen vill ha kvar dem, och använd sedan uteslutningen som propaganda för att de är de enda som vågar “stå upp mot PK-maffian”. För en utomstående är logiken skev, men inom den egna kretsen kan martyrskapet ge status.

    Det är viktigt att syna denna bluff. Att samhället sätter gränser för hat och lögn är inte att “tysta oliktänkande” i odemokratisk mening – det är att upprätthålla demokratins grundläggande respekt. Högerextrema har all rätt att tycka vad de vill. De kan starta egna tidningar, bloggar, partier och YouTube-kanaler. Och de gör det också – det finns en flora av alternativa medier till höger om den etablerade mittenfåran, just för att internet ger dem möjligheten. Där kan de framföra även konspirationsteorier och främlingsfientliga budskap, inom lagens råmärken. Men vad de inte kan kräva är att få sprida samma budskap oemotsagda i andras kanaler eller att slippa bli ifrågasatta. Ändå är det precis det de ofta gör anspråk på: en slags ensidig yttrandefrihet där de får härja fritt, medan de vill slippa konsekvensen av att andra utövar sin rätt att säga emot eller välja bort dem.

    Notera ironin: Många av dessa högljudda “yttrandefrihetskämpar” på ytterkanten lever i ett av världens mest yttrandefria länder. De kan i princip säga nästan vad som helst lagligt, så länge de inte hotar eller hetsar. De kan demonstrera, ge ut skrifter, kandidera i val (vi har till och med nazistiska småpartier som ställer upp i Sverige – yttersta beviset på vår demokratiska tolerans). Ändå hävdar de att de är “tystade”. I själva verket handlar det om att deras idéer saknar brett stöd – folk i gemen vill inte lyssna på dem, medier vill inte ge dem utrymme eftersom de bryter mot grundläggande pressetiska principer, och privatpersoner vill inte ha dem i sina flöden. Det är inte en konspiration – det är det demokratiska samhället som utövar sin kollektiva valfrihet.

    När det extrema blir mainstream med förskjutna gränser i debatten

    Under de senaste decennierna har vi dessutom bevittnat hur vissa extrema idéer gradvis flyttat fram sina positioner i det offentliga samtalet. Detta sker inte öppet genom tvång, utan subtilt genom normalisering. Sverigedemokraternas intåg i riksdagen 2010 innebar till exempel att åsikter som tidigare betraktats som extrema eller rent av rasistiska fick en plattform inom parlamentarisk debatt. Sedan dess har gränsen för vad som anses acceptabel retorik förskjutits märkbart. Forskaren Jesper Strömbäck konstaterar att i takt med att SD:s problemformuleringar normaliserats och legitimerats har det som förr betraktades som rasistiskt blivit nästintill regeringspolitik idag, vilket han utvecklar i Dagens Arenas intervju om hur tidigare rasistiska positioner gradvis blivit politiskt accepterade. Han syftar på att invandringsfientliga tongångar som tidigare var otänkbara för etablerade partier numera uttrycks av regeringsföreträdare utan större chockeffekt. Tidöavtalets politik, med SD som stödparti, förs i mångt och mycket med en retorik som för bara ett decennium sedan skulle ha kallats invandringsfientlig rakt av, vilket också framgår av Strömbäcks analys i samma genomgång av hur normaliseringen påverkat svensk regeringspolitik.

    Denna förskjutning – ibland kallad ”Overton-fönstrets” förflyttning – beror delvis på att högerpopulister skickligt spelat på yttrandefrihetsargumentet för att tänja på vad man får säga. Minns debatten om “åsiktskorridoren” i Sverige: det påstods från högerhåll att man “inte fick prata om” invandringens problem, att etablissemanget tystade sådana diskussioner. I realiteten var ämnet känsligt men inte förbjudet – det var många som ogillade generaliserande eller främlingsfientliga uttalanden, så de bemöttes med skarp kritik. SD och liknande aktörer vände detta till sin fördel och sa: “Se, vi blir tystade – alltså måste vi skrika ännu högre.” Och efterhand började andra partier anamma en del av deras retorik för att inte förlora väljarstöd. Gränserna flyttades.

    Det finns en risk i detta. När språket och ideologin hos extrema grupper normaliseras kan själva grundvärderingarna i samhället förskjutas. Det som tidigare sågs som uppenbart kränkande eller odemokratiskt kan börja ses som “en åsikt bland andra”. Som Strömbäck påpekar tävlar i dag till och med traditionella partier om att vara “hårdast” i exempelvis kriminalpolitik och migrationspolitik, där retoriken blivit betydligt mer sträng och strafforienterad än förr, vilket han utvecklar i Dagens Arenas analys av hur migrations- och kriminalpolitisk retorik förskjutits i svensk politik. Det demokratiska samtalet tål mycket, men vi bör vara medvetna om när vi rör oss mot farligt vatten. Att fler vågar säga saker öppet är i grunden bra – om det handlar om sakliga åsikter. Men när det som sprids är förenklade syndabockstankar eller hat mot vissa grupper, då är det inte enbart oskyldig “vidgning av debatten”. Det kan vara början på att demokratins kultur eroderar, precis det som våra lagar om hets och hat syftar till att förhindra.

    Samtidigt måste man erkänna att åsiktsklimatet är bredare nu än förut. Människor får idag uttrycka invandringskritik öppnare utan att automatiskt stämplas ut – vilket många framhåller som något positivt, att tabu brutits. Kritik mot sådant som hedersförtryck, integrationsproblem eller volymen av flyktingmottagande har fått en legitim plats i debatten, till stor del tack vare att partier som SD drev upp frågorna på dagordningen. Det demokratiska systemet ska kunna absorbera nya frågor och perspektiv. Men skillnaden mellan legitim saklig kritik och intolerant retorik är avgörande. Det förstnämnda stärker demokratin (genom att relevanta problem diskuteras öppet), det sistnämnda undergräver demokratin (genom att vissa grupper demoniseras och samhällsklyftor ökar).

    Högerextrema aktörer har emellertid ofta svårt att hålla sig till saklig kritik – deras ideologi bygger i regel på att utse fiender (etablerade politiker, minoriteter, medier) som man menar förstör nationen. Och när deras språkbruk letar sig in i mainstream riskerar det offentliga samtalet att förgiftas. Vi ser tyvärr exempel på detta i sociala medier dagligen: tonläget har hårdnat, normalisering av personangrepp och misstro mot demokratins institutioner breder ut sig. Plattformar som tidigare var till för meningsutbyte blir ibland slagfält av hat. Twitter (numera X) beskrivs i Aftonbladets ledartext om hur politiska angrepp på medier och digitala plattformar bidrar till ett allt mer polariserat klimat som ett träsk där högerextrema narrativ och trollfabriker dominerar, vilket analyseras i artikeln om hur extremism och botar präglar debattklimatet på X. Ju mer sådant tolereras i “mainstream”, desto mer flyttas ribban för vad som anses okej.

    Det fria samhället måste därför göra en ständig avvägning: Vara öppet nog att alla röster får försöka göra sig hörda – men starkt nog att stå emot de röster som medvetet vill sabotera öppenheten. Det är här diskussionen om ”den tysta högern” eller ”cancel culture” etc. kommer in. Högern (i sin mer extrema form) anser ofta att deras åsikter hålls nere av en vänsterliberal hegemoni. I viss mån har de använt detta narrativ för att ta sig upp och in i riksdagen och därefter påverkat samtalet (som vi sett). Men att de nu faktiskt har en megafon (SD är näst största parti) motsäger ju påståendet att de skulle ha varit genuint tystade. Processen visar snarare att demokratin fungerade – ett tidigare marginellt perspektiv fick stöd av tillräckligt många väljare och kom in i värmen. Det ironiska är att trots detta fortsätter retoriken hos en del att låta som om de vore utanför och förtryckta. Det tyder på att offerrollen är svår att släppa, kanske för att den varit så framgångsrik retoriskt.

    Rättigheter med ansvar, frihet med gränser

    Den röda tråden i allt ovan är förståelsen att demokratiska rättigheter kommer med ansvar och är inskrivna i ett sammanhang av lag och etik. Yttrandefrihet är fundamentalt, men den kräver ett ansvarsfullt handhavande – både av individer och plattformar. Demokrati handlar om frihet, men också om respekt för majoritetsbeslut och andras friheter. Samtidigt är det nog viktigt att förstå att det inte finns förståelse alls här. Eller snarare är det så att folk med den här retoriska grunden skiter i alla andra.

    De som skriker högst om att de “inte får höras” i Sverige idag är i praktiken ofta de som hörs mest i den digitala miljön – men de är frustrerade över att folk inte längre tiger och samtycker, eller över att bli modererade när de spårar ur. Att värna yttrandefrihet innebär att alla ska få tala inom rimliga ramar, inte att vissa ska få dominera utan gensvar. Det innebär också rätten att säga ifrån när någon går över gränsen.

    Som samhälle behöver vi fortsätta vara tydliga med följande:

    Yttrandefriheten skyddar mot staten, inte mot kritik eller moderation. Alltså: du får tycka och säga, men du får tåla att andra utövar sin rätt att säga emot eller stänga sin dörr, vilket Hjärnfonden tydliggör i sin policy om hur privata aktörer har rätt att moderera sina egna kanaler och kommentarsfält i genomgången av varför moderering inte står i motsättning till yttrandefriheten.

    Demokrati betyder majoritetsstyre under lagarna. Att följa gemensamma regler är inte förtryck, utan just vad samhället kommit överens om. Minoritetsåsikter får finnas, men kan inte diktera villkoren för majoriteten hur som helst, vilket utvecklas i Svensk Juristtidnings genomgång av hur majoritetsprincipen utgör demokratins grund och hur minoriteter i ett majoritetsstyrt system har att underordna sig gemensamma beslut.

    Privata forum har egna trösklar. Den som blir utkastad ur ett Facebook-forum p.g.a. sitt beteende har inte “fått munnen igentejpad av staten”. Man kan starta ett eget forum om man vill prata fritt på sina villkor.

    Fri åsiktsbildning kräver respekt. Om vi vill ha högt i tak i debatten, måste vi också ta ansvar för tonen. Att kallprata med hårda fakta är en sak – att häva ur sig skällsord och personangrepp en annan. Yttrandefriheten ger utrymme för hård kritik, ja, men ett demokratiskt samhälle bygger på idén att man bemöter argument med argument, inte med förakt.

    I slutänden handlar det om att förstå skillnaden mellan att bli sakligt emotsagd och att bli orättfärdigt tystad. De högerextrema som misströstar över att “de inte får säga sin sanning” blandar oftast ihop dessa (läs: skiter i det). Deras rätt att tala finns där – men de saknar kanske allmänhetens gillande, och det kan inte tvingas fram genom att åberopa yttrandefrihet. Den måste förtjänas genom trovärdighet och respekt.

    Demokratin är jäkligt intressant, just för att den ständigt prövas av sådana här gränsfall: Hur hanterar vi de som vill utnyttja friheten för att sabotera friheten? Svaret hittills har varit: med ännu mer demokrati, vilket inkluderar modet att sätta gränser när det behövs. Att säga “nej, du får inte använda min plattform för hat” eller “nej, din rätt kan inte trampas på alla andras rättigheter” är i sig ett demokratiskt försvar. Yttrandefriheten och demokratin mår inte dåligt av att vi står upp mot dem som missbrukar systemet – tvärtom, de mår bra av att vi förstår dem rätt och vårdar dem klokt.
  2. 2026-01-07 10:18:15
    Discovered: 2026-02-05 14:24:02 Hash: 28f41c1cb14e013fe64a9327af07eee1c379bcd4
    Title:
    Andras fri- och rättigheter – Ett snÃ¥rigt näste när man bara bryr sig om sig själv
    Description:
    I dagens digitala debattklimat hör man ofta människor utropa: “Jag fÃ¥r faktiskt säga vad jag vill – vi har yttrandefrihet!” Detta sker inte sällan i samband med att nÃ¥gon fÃ¥tt sin kommentar raderad eller blivit blockerad pÃ¥ en privat plattform....
    Content
    I dagens digitala debattklimat hör man ofta människor utropa: “Jag fÃ¥r faktiskt säga vad jag vill – vi har yttrandefrihet!”

    Detta sker inte sällan i samband med att någon fått sin kommentar raderad eller blivit blockerad på en privat plattform. De menar att deras demokratiska rättigheter kränks när de inte får sprida sin åsikt precis var de vill. Fenomenet är särskilt vanligt inom högerextrema kretsar och liknande grupper, där man gärna åberopar yttrandefrihet och demokrati för egna syften, samtidigt som man ignorerar andras rättigheter. I synnerhet rätten att få slippa korkade extremister.

    Vad innebär egentligen yttrandefrihet enligt lagen, och var gÃ¥r gränsen mellan offentligt och privat forum? MissförstÃ¥nden kring demokratiska fri- och rättigheter – och hur de ibland missbrukas av högerextrema röster i Sverige behöver kanske redas ut, inte minst för de röster som inte förstÃ¥r bättre. Det finns trots allt väsentliga skillnader mellan offentliga samtal och privata plattformar.

    Det kan vara en god idé att belysa hur vissa försöker flytta gränserna för det som anses acceptabelt att säga offentligt, genom att hävda att de är “tystade” av etablissemanget – även i privata forum, där det till och med kan sakna relevans helt. Exempelvis: NÃ¥gon har laddat upp ett foto pÃ¥ sig själv – en vilse högerextremist tycker att det är viktigt att fÃ¥ prata om sina egna rättigheter att prata om allt annat, förnedra personen pÃ¥ personens egen profilsida – och samtidigt svamla runt om Donald Trumps invasion av Venezuela i kommentarsfältet. Lite som om det var en dÃ¥ligt konfigurerad modell av ChatGPT 3.5.

    De som väljer att ignorera andras grundläggande fri- och rättigheter, bör inte förvänta sig att fÃ¥ nÃ¥gon särskilt bra respons pÃ¥ det – och kanske i stället räkna med att bli utslängd frÃ¥n offentliga samtal. I rena korta ordalag: HÃ¥ll käften om du inte är intresserad. Din Ã¥sikt är inte värd ett skit. 

    Table of Contents
    Toggle
    Yttrandefrihet i Sverige – stark men inte gränslösLessons learned?Privata plattformar där värdens regler gällerKort sagtDemokrati = majoritetsstyre (med rättssäkerhet för minoriteten)Lessons learned?Högerextremas missbruk av yttrandefrihetens principNär det extrema blir mainstream med förskjutna gränser i debattenRättigheter med ansvar, frihet med gränser
    Yttrandefrihet i Sverige – stark men inte gränslös

    Yttrandefriheten är grundlagsskyddad i Sverige och utgör en hörnsten i demokratin. Enligt Regeringsformen 2 kap. 1 § har varje medborgare rätt att fritt uttrycka sina tankar, Ã¥sikter och känslor offentligt, vilket förklaras tydligt i Internetstiftelsens genomgÃ¥ng av vad man faktiskt fÃ¥r säga pÃ¥ nätet. Detta skydd syftar till att möjliggöra en fri samhällsdebatt och Ã¥siktsbildning. Det innebär dock inte att man fÃ¥r säga precis vad som helst. Redan i grundlagen anges att yttrandefriheten fÃ¥r begränsas genom lag av hänsyn till till exempel rikets säkerhet, allmän ordning, enskildas anseende och liknande intressen, vilket ocksÃ¥ framgÃ¥r av Internetstiftelsens genomgÃ¥ng av yttrandefrihetens juridiska gränser pÃ¥ nätet. Med andra ord är yttrandefriheten inte absolut – den balanseras mot andra skyddsvärden i samhället.

    Flera typer av yttranden är uttryckligen olagliga i Sverige, trots den generella yttrandefriheten. Hatbrott och hets mot folkgrupp, olaga hot, förtal, uppvigling samt vissa andra yttranden är förbjudna enligt lag, vilket framgår av Internetstiftelsens genomgång av vilka yttranden som är straffbara även i offentliga sammanhang. Att uttrycka exempelvis rasistiska grova förolämpningar kan falla under brottet hets mot folkgrupp, vilket innebär att yttrandefriheten där har en laglig gräns. Likaså är direkta hot eller förtalsfulla lögner om en namngiven person inte skyddade av yttrandefriheten. Lagen reglerar alltså att man inte har rätt att yttra vad som helst, utan att det finns tydliga gränser för vad som får spridas offentligt, vilket även Hjärnfonden klargör i sin policy om moderering och ansvar i sociala medier.

    Det är ocksÃ¥ viktigt att förstÃ¥ vad censur betyder i ett demokratiskt samhälle. Förhandsgranskning av yttranden av staten – censur – är förbjuden i Sverige enligt grundlag (Tryckfrihetsförordningen och Yttrandefrihetsgrundlagen). Staten eller myndigheter fÃ¥r inte stoppa ett yttrande innan det publicerats. Däremot kan ett yttrande som redan gjorts bedömas i efterhand och leda till rättsliga pÃ¥följder om det bryter mot lagen (till exempel om det utgör hets mot folkgrupp eller liknande). När nÃ¥gon pÃ¥stÃ¥r att den utsatts för censur för att ett inlägg tagits bort, är det oftast en felaktig användning av ordet. Censur i egentlig mening avser statlig förhandskontroll, inte att ett inlägg raderas i efterhand, vilket Lawline förklarar i sin juridiska genomgÃ¥ng av yttrandefrihet och censur pÃ¥ internet. Om en tidningsredaktion eller webbplats modererar innehÃ¥ll efter publicering rör det sig alltsÃ¥ inte om censur i grundlagens mening, vilket ocksÃ¥ framgÃ¥r av Lawlines förklaring av skillnaden mellan censur och moderering i privat regi.

    Lessons learned?

    Är du högerextrem är det inte troligt att du lärt dig något. Det är inte heller särskilt troligt att du överlevt så här mycket faktatext på en och samma gång.

    Yttrandefriheten ger dig rätten att uttrycka din Ã¥sikt offentligt utan förhandscensur frÃ¥n staten, men den skyddar dig inte frÃ¥n alla konsekvenser. Du är fortfarande ansvarig för vad du säger – yttrandefriheten är ingen fribiljett att sprida hat eller hot utan reaktion. Som juristen Ängla Eklund uttrycker det: samma regler gäller pÃ¥ gatan som pÃ¥ internet; man fÃ¥r tycka och säga mycket, men inte allt, vilket ocksÃ¥ förklaras i Internetstiftelsens genomgÃ¥ng av vilka yttranden som är straffbara även i offentliga sammanhang. Yttrandefrihet innebär heller inte att det du säger mÃ¥ste accepteras av andra i social mening. Inte ens de gÃ¥nger du skrattar ut dom med argumentet “Nu försöker vänstern tysta mig igen, sÃ¥ typiskt, HAHA!” – det är snarare i det läget du bör “dra Ã¥t helvete” pÃ¥ ren akademiskt hövlig svenska.

    Det finns mycket man fÃ¥r säga rent lagligt som ändÃ¥ kan vara olämpligt eller fÃ¥ mothugg. Att nÃ¥gon invänder mot eller kritiserar ditt yttrande är inte ett brott mot din yttrandefrihet – det är andras yttrandefrihet i arbete. Men sitter du redan i kommentarsfälten och gafflar, är det inte säkert att du begriper det här. Och det ska vi prata mer om nu.

    Privata plattformar där värdens regler gäller

    En avgörande skillnad som ofta missförstÃ¥s är den mellan offentliga rum och privata plattformar eller forum. Yttrandefrihetslagarna skyddar oss mot ingrepp frÃ¥n det allmänna – det vill säga staten fÃ¥r inte hindra oss frÃ¥n att uttrycka oss, sÃ¥vida vi inte bryter mot lagen. Men dessa lagar ger oss inte rätt att kräva utrymme pÃ¥ nÃ¥gon annans arena. Att nÃ¥gon har en öppen Facebook-profil eller en publik debattgrupp innebär inte att den blir allmän egendom där alla kan agera fritt utan restriktioner. PÃ¥ privata plattformar och sidor är det ägaren eller värden som sätter reglerna.

    När du gÃ¥r in pÃ¥ en social medie-plattform eller en privatägd sajt, godkänner du deras användarvillkor. Privata aktörer har frihet att själva kontrollera innehÃ¥llet pÃ¥ sina plattformar, vilket Lawline förklarar i sin genomgÃ¥ng av yttrandefrihet och privata plattformars rätt att moderera innehÃ¥ll. Det betyder att Facebook, Instagram, ett diskussionsforum eller en blogg har rätt att moderera innehÃ¥ll enligt sina regler. Bryter man mot användarvillkoren kan företaget ta bort inlägget eller stänga av kontot, vilket ocksÃ¥ framgÃ¥r av Lawlines förklaring av hur privata aktörer fÃ¥r sätta och upprätthÃ¥lla egna regler. Händer det, kan du börja med att inte bli upprörd. Du fÃ¥r skylla dig själv och har i princip ingenting att säga till om. Man har samtyckt till detta när man gick med pÃ¥ villkoren. Det mÃ¥ kännas frustrerande för den som drabbas, men juridiskt är det helt i sin ordning. Trots att du fortfarande sitter och skrattar Ã¥t vänstervridna. Som Lawline klargör: din yttrandefrihet har inte blivit kränkt när en privat aktör tar bort ditt inlägg eller begränsar dig, eftersom det rör sig om en privat plattform som tillämpar sina regler – inte staten som utövar censur.

    “Yttrandefriheten innebär inte heller att alla har rätt att uttrycka sin Ã¥sikt var som helst.”, vilket Hjärnfonden tydliggör i sin genomgÃ¥ng av hur och varför de modererar sina kommentarsfält i sociala medier.

    Ett belysande exempel kommer frÃ¥n Hjärnfonden, en svensk organisation, som i sin sociala medie-policy pÃ¥pekar att det inte finns nÃ¥gon motsägelse mot yttrandefriheten i att de modererar sina kommentarsfält, vilket de själva förklarar i sin policy för hur och varför innehÃ¥ll modereras i deras sociala medier. Yttrandefriheten innebär ingen absolut rätt att alltid fÃ¥ uttala sig, och den innebär särskilt inte att man har rätt att uttala sig var som helst. PÃ¥ Hjärnfondens egna sidor gäller deras regler; om nÃ¥gon bryter mot dem, till exempel genom hatiska uttalanden, tar de bort inlägget och kan blockera användaren, vilket framgÃ¥r av samma genomgÃ¥ng av hur Hjärnfonden tillämpar sina kommentarsregler i praktiken. Den principen gäller alla privata forum – den som driver sidan bestämmer vad som tolereras där.

    Det är alltsÃ¥ en avgörande skillnad mellan att tala pÃ¥ torget och att tala pÃ¥ nÃ¥gons privata webbsida eller profil. PÃ¥ det fysiska torget – ett offentligt rum – kan du utnyttja din yttrandefrihet (inom lagens gränser) och exempelvis hÃ¥lla ett spontant anförande. Ingen myndighet fÃ¥r pÃ¥ förhand förbjuda dig sÃ¥ länge du följer lagen. Men om du kliver in i nÃ¥gons vardagsrum, eller för den delen in pÃ¥ en persons Facebook-vägg eller en privatägd diskussionsgrupp, dÃ¥ har du ingen absolut rätt att yttra dig där mot värdens vilja. Det är värden som avgör vad som är okej i den miljön. Precis som du i ditt hem kan be en gäst gÃ¥ om hen uppför sig illa, kan en forumadministratör radera inlägg eller utesluta medlemmar som bryter mot forumets regler.

    Ett vanligt klagomÃ¥l frÃ¥n högljudda debattörer pÃ¥ högerkanten är att deras inlägg raderas i till exempel tidningars kommentarsfält eller att de blir blockade av meningsmotstÃ¥ndare pÃ¥ sociala medier – och att detta skulle kränka deras yttrandefrihet. Här behöver vi slÃ¥ fast: Att fÃ¥ kommentera pÃ¥ en tidnings webbplats eller hos en privatperson är ingen demokratisk eller lagstadgad rättighet. Ingen enskild medborgare har en skyldighet att upplÃ¥ta sin plattform Ã¥t nÃ¥gon annans Ã¥sikter. Tidningar har ansvar för sitt innehÃ¥ll och har kommentarsregler; de kan plocka bort sÃ¥dant som bryter mot reglerna eller riskerar att vara brottsligt. En privat Facebook-användare har ingen plikt att lÃ¥ta alla tala fritt pÃ¥ den egna sidan – det är faktiskt snarare en del av den personens egen frihet att fÃ¥ välja bort oönskade kommentarer. Som ett tankeexperiment: Om yttrandefrihet innebar att alla fick säga vad de ville i alla sammanhang, dÃ¥ skulle du i princip inte kunna stoppa nÃ¥gon frÃ¥n att ställa sig i ditt vardagsrum och förolämpa dig. SÃ¥ är det lyckligtvis inte – din hemfrid och din rätt att välja ditt umgänge väger tyngre i privata sammanhang än en utomstÃ¥endes “rätt” att bli hörd där.

    Det offentliga samtalet i stort mÃ¥r bra av mÃ¥nga röster, även obekväma. Men forum och grupper som drivs privat kan ha egna syften – exempelvis att främja ett visst slags diskussion eller hÃ¥lla god ton – och dÃ¥ mÃ¥ste de kunna avvisa troll, mobbare eller irrelevanta inlägg utan att det ropas om diktatur. Det är värt att notera att även lagen ger stöd Ã¥t moderering: den svenska BBS-lagen (Lagen om ansvar för elektroniska anslagstavlor) Ã¥lägger den som driver ett forum att ta bort inlägg som uppenbart innehÃ¥ller vissa typer av olagligt material, sÃ¥som hets mot folkgrupp, olaga hot och annan allvarlig brottslighet, vilket Hjärnfonden tydligt beskriver i sin policy om hur de följer BBS-lagen och modererar sina kommentarsfält. SÃ¥ lÃ¥ngt ifrÃ¥n att vara censur kan moderering vara en skyldighet i vissa fall.

    Till och med regeringen har konstaterat den privata plattformens rätt. I ett svar till riksdagen betonade dÃ¥varande kultur- och demokratiministern Amanda Lind att stora digitala plattformar i grunden har frihet att sätta upp egna villkor för sina tjänster – men att dessa bör utövas ansvarsfullt med tydliga och transparenta regler, vilket framgÃ¥r av hennes svar pÃ¥ riksdagens frÃ¥ga om yttrandefriheten pÃ¥ internet. Just eftersom Facebook, Twitter med flera har blivit sÃ¥ inflytelserika i det offentliga samtalet pÃ¥gÃ¥r parallellt diskussioner inom EU om att kräva ökad transparens och konsekvens i hur sÃ¥dana plattformar tillämpar sina regler, vilket ocksÃ¥ behandlas i samma riksdagsdokumentation om EU:s arbete kring digitala plattformars ansvar. Men även i den debatten utgÃ¥r man frÃ¥n att ja, de har rätt att ha regler; frÃ¥gan är hur de använder den makt det innebär. I Sverige finns idag ingen lag som tvingar en plattform eller privat aktör att publicera allt som inte är brottsligt – de kan ha strängare regler än lagen, och ofta har de det (till exempel förbjuder Facebook även sÃ¥dant som är lagligt men bryter mot deras community-regler).

    Kort sagt

    Yttrandefriheten skyddar dig mot staten – inte mot konsekvenserna av att andra utövar sina egna rättigheter. Och att bli borttagen frÃ¥n nÃ¥gons privata plattform är inte att bli “grundlagscensurerad”. Du är fri att tala, men inte nödvändigtvis pÃ¥ deras bekostnad eller i deras utrymme.

    Har du lärt dig något än? Nej, jag trodde nog inte det heller.

    Demokrati = majoritetsstyre (med rättssäkerhet för minoriteten)

    En annan fundamental aspekt som ibland förvanskas i dessa diskussioner är själva demokratins spelregler. I en demokrati gäller majoritetsprincipen: beslut fattas enligt vad flertalet (majoriteten) röstar för, antingen direkt eller genom valda ombud. Den svenska statsskicket bygger pÃ¥ detta – “All offentlig makt i Sverige utgÃ¥r frÃ¥n folket” som det stÃ¥r i Regeringsformens portalparagraf, och folkviljan kommer till uttryck via riksdagen där majoriteter avgör, vilket utvecklas i Svensk Juristtidnings genomgÃ¥ng av majoritetsprincipen som demokratins grund. Gustaf Petrén, en framstÃ¥ende jurist, formulerade det sÃ¥ här: “Demokratin bygger pÃ¥ majoritetsprincipen. Den utgÃ¥r frÃ¥n att de som är flest bestämmer hur den offentliga makten ska utövas.”, vilket han själv utvecklar i samma analys i Svensk Juristtidning om hur majoritetsstyre fungerar i praktiken. De som hamnar utanför majoritetens stÃ¥ndpunkt i en viss frÃ¥ga utgör en minoritet, och de fÃ¥r acceptera att majoritetens beslut gäller, vilket ocksÃ¥ framgÃ¥r av Svensk Juristtidnings resonemang om minoriteters ställning i ett majoritetsstyrt system.

    Det betyder inte att minoriteter är rättslösa – demokrati handlar ocksÃ¥ om att skydda individens grundläggande fri- och rättigheter, oavsett om man tillhör majoriteten eller inte. Sverige har till exempel grundlagsskydd för att även opopulära Ã¥sikter ska fÃ¥ uttryckas, och minoriteter (som etniska eller religiösa grupper) har särskilt skydd mot diskriminering och hat. Men skyddet för minoriteten är inte detsamma som att minoriteten skulle kunna styra över majoriteten. När det gäller offentliga beslut – lagar, regler, myndighetsÃ¥tgärder – sÃ¥ är det i slutändan den demokratiska processens utfall som gäller, alltsÃ¥ majoritetens beslut. Den som dÃ¥ befinner sig i minoritet i samhället fÃ¥r rätta sig efter de gemensamma reglerna (sÃ¥ länge de inte kränker grundläggande mänskliga rättigheter). Petrén skriver träffande att “de enskilda som kommer i mindre tal har inte annat att göra än att böja sig för den ordning som flertalet beslutat ska gälla”, vilket han utvecklar i Svensk Juristtidning i sin analys av minoriteters ställning i ett majoritetsstyrt system. Med andra ord, ogillar man en lag eller regel har man möjligheten att försöka övertyga fler, delta i debatten, kanske rösta fram andra representanter – men tills dess gäller lagen för alla.

    Varför är detta viktigt i vÃ¥rt sammanhang? Jo, för att mÃ¥nga av de som klagar pÃ¥ att de blir “tystade” egentligen utgör en mycket liten minoritet i frÃ¥ga om sina Ã¥sikter eller sätt att uttrycka dem. De kan uppleva att “systemet” är emot dem när deras beteenden fÃ¥r mothugg eller stoppas – men det beror pÃ¥ att systemet (dvs. den demokratiska rättsordningen och den sociala normen) drivs av majoritetens värderingar, vilka oftast inte stämmer överens med de extrema stÃ¥ndpunkter minoriteten har. I Sverige har till exempel en majoritet av folkets valda ombud beslutat om lagar som kriminaliserar hets mot folkgrupp, vilket bottnar i en demokratisk värdering att skydda minoriteter frÃ¥n hat. Om dÃ¥ en högerextrem person – som representerar en minoritetsÃ¥sikt – vill sprida hets mot minoriteter, sÃ¥ kommer lagen (majoritetens beslut) att krocka med den personens önskan. Att lagen dÃ¥ sätter gränser är inte förtryck, utan just demokrati i funktion. Majoritetssamhället har sagt sitt: viss typ av retorik accepteras inte. Minoriteten i det här fallet fÃ¥r finna sig i detta, eller försöka ändra opinionen pÃ¥ demokratisk väg (vilket de ibland försöker genom att hävda “vi fÃ¥r inte säga sanningen” etc., se mer nedan).

    Det är värt att understryka att demokrati ocksÃ¥ innebär rättssäkerhet och skydd mot godtycke. Majoriteten kan inte göra vad som helst mot en minoritet – det finns grundlagar, domstolar och internationella konventioner som sätter ramar. Till exempel kan inte ens en enhällig riksdagsmajoritet bara sÃ¥ där avskaffa oppositionens rätt att yttra sig; sÃ¥dana ändringar kräver grundlagsändringar över tid. Det finns alltsÃ¥ inbyggda skydd för att inte majoriteten ska förtrycka minoriteten hur som helst. Men i den vardagliga tillämpningen – i en Facebook-trÃ¥d eller pÃ¥ en nyhetssajt – sÃ¥ är det faktiskt inte “oddemokratiskt” att den som är i klar minoritet med en extrem Ã¥sikt märker att flertalet andra eller moderatorerna säger stopp. Det är snarare en spegling av hur samhällsnormen ser ut. Demokrati betyder inte att alla fÃ¥r som de vill, utan att alla fÃ¥r säga sitt men majoritetens linje väger tyngst i gemensamma beslut.

    För att ge ett konkret scenario: En person pÃ¥ yttersta högerkanten hävdar kanske att en viss konspirationsteori är sann och kräver att media och folk ska ge det utrymme. Medias redaktioner (som visserligen är privata aktörer men ändÃ¥ en del av det offentliga samtalet) kanske väljer att inte sprida dessa pÃ¥stÃ¥enden, för de anses grundlösa eller hatiska. Personen ropar dÃ¥ att “min yttrandefrihet kränks, demokratin sätts ur spel!” I realiteten har personen rätt att tycka och yttra sin teori – hen kan skriva pÃ¥ sin blogg, demonstrera fredligt, ge ut flygblad – inget av detta kommer staten hindra sÃ¥ länge det inte bryter mot lag. Men ingen demokratisk princip garanterar honom en publik i bästa sändningstid eller fri lejd in i andras plattformar. Och om allmänheten i majoritet tar avstÃ¥nd frÃ¥n idéerna, är det just majoritetens fria val. Demokrati kan ibland vara hÃ¥rt för den som har en impopulär uppfattning: man kan fÃ¥ prata, men man kan inte tvinga nÃ¥gon att lyssna eller hÃ¥lla med.

    Lessons learned?

    I en demokrati styr majoritetens beslut den gemensamma spelplanen, medan minoriteten har rätt att existera, tycka annorlunda och försöka vinna gehör – men inte rätt att köra över majoriteten pÃ¥ eget bevÃ¥g. Den som pÃ¥stÃ¥r sig försvara “demokratin” genom att kräva ensidig frihet för sin egen minoritetsÃ¥sikt pÃ¥ andras bekostnad, har missförstÃ¥tt konceptet. Demokratiska rättigheter handlar bÃ¥de om rätten att uttrycka sig och andras rätt att säga ifrÃ¥n eller slippa lyssna. Rätten att säga nej, att välja bort nonsens och extremism frÃ¥n sin egen sfär, är faktiskt ocksÃ¥ en del av det demokratiska ramverket, vilket Aftonbladets ledartext om hur politiska angrepp pÃ¥ medier riskerar att underminera det fria ordet tydliggör i analysen av hur yttrandefrihet ocksÃ¥ innefattar rätten att avvisa extremism.

    Högerextremas missbruk av yttrandefrihetens princip

    Med bakgrund av ovanstÃ¥ende blir det tydligt hur vissa grupper pÃ¥ yttersta högerkanten försöker vända pÃ¥ begreppen för att gynna sig själva. Det finns en lÃ¥ng historia av att extremistiska rörelser utnyttjar det öppna samhällets principer för att underminera samma öppenhet. Nazisterna i Tyskland pÃ¥ 1930-talet deltog till exempel i demokratiska val och utnyttjade yttrandefriheten för sin propaganda – men sÃ¥ snart de fick makten avskaffade de yttrande- och pressfriheten brutalt. Dagens svenska högerextremister är förstÃ¥s inte i närheten av den maktpositionen, men retoriken liknar pÃ¥ sina hÃ¥ll en spegelbild av detta mönster: “Frihet Ã¥t mig, men inte Ã¥t dig.”

    Ett utmärkande drag är offerretoriken. Högerextrema debattörer kliver ofta in i en diskussion aggressivt – med personangrepp, epitet och ibland rent hatiska uttalanden – i syfte att dominera eller provocera. Men om de möter motstÃ¥nd, eller blir avstängda pÃ¥ grund av sitt beteende, intar de genast rollen som martyrer. De pÃ¥stÃ¥r att de “tystas” för att deras meningsmotstÃ¥ndare är “rädda för sanningen” eller att det rÃ¥der “Ã¥siktsförtryck” mot dem. Som en observatör torrt kommenterade: mÃ¥nga av dessa personer kräver friheter för sig själva som de inte vill ge till andra – de vill fÃ¥ häva ur sig förolämpningar och konspirationer, men sÃ¥ fort nÃ¥gon annan säger emot eller utesluter dem, skriker de om censur och diktatur. Mönstret känns igen av mÃ¥nga som deltagit i internetforum: först delar de ut smädelser och avbryter saklig debatt, sedan skriker de “YTTRANDEFRIHET!” när moderatorn ingriper. Förutsägbart – och paradoxalt.

    Retoriken om att vara “tystad” eller utsatt för “Ã¥siktskorridoren” (ett populärt begrepp i svensk debatt) har ocksÃ¥ ett strategiskt syfte. Genom att framställa sig som en underdog som makten vill kväsa, hoppas extrema opinionsbildare väcka sympati och rekrytera anhängare. Om man inte faktakollar kan det lÃ¥ta trovärdigt: “Varför fÃ¥r inte X framföra sin Ã¥sikt? Lever vi i en diktatur?”

    I själva verket fÃ¥r X framföra sin Ã¥sikt – hen fÃ¥r bara inte göra det precis var som helst eller utan att mötas av mothugg. Att ett samhälle reagerar negativt pÃ¥ hatiska eller antidemokratiska uttryck är inte ett tecken pÃ¥ diktatur, utan ett tecken pÃ¥ att samhället försvarar sina demokratiska värden (som allas lika värde, respekt och sanning) och fortfarande är skapligt friskt (till skillnad frÃ¥n extremisten). Som jag skrev i en kommentar angÃ¥ende denna typ av högeraktivister: de har aldrig varit intresserade av nÃ¥got annat än sina egna fri- och rättigheter. Hade de själva makten skulle de troligen inskränka just de friheter de nu kräver (inklusive denna texten, fakta är ju trots allt irrelevant i sÃ¥na här kretsar). Det har historien lärt oss frÃ¥n Ã¥tskilliga exempel pÃ¥ högerledare som spÃ¥rat ur maktmässigt.

    Man kan se tendenser i vÃ¥r närtid ocksÃ¥. I exempelvis Ungern, som styrs av det högernationalistiska Fidesz-partiet, har regeringen gradvis monterat ned mediefriheten och domstolarnas oberoende, vilket beskrivs i Aftonbladets analys av hur angrepp pÃ¥ medier blivit ett kännetecken för auktoritär politik i artikeln om hur mediernas ställning urholkas i Ungern. De använder en demokratisk retorik men agerar pÃ¥ sätt som försvÃ¥rar oppositionens möjligheter att göra sin röst hörd. I Sverige har vi en livlig debatt om public service och medias roll; vissa inom den nationalistiska högern har anklagat public service för att vara “vänstervridet” och har föreslagit minskad frihet för dessa medier. Angreppen pÃ¥ etablerade medier – att kalla journalister för “folkets fiender” eller antyda att kritiska frÃ¥gor är förräderi – ligger farligt nära att undergräva det fria ordet. Yttrandefrihetsexperten Nils Funcke har varnat för dessa tendenser och menar att de Ã¥terkommande attackerna pÃ¥ media frÃ¥n ledande politiker är ett oroväckande tecken, vilket han utvecklar i Aftonbladets ledartext om hur medieangrepp hotar yttrandefriheten.

    Högerextrem retorik handlar ofta om att flytta fokus. Istället för att bemöta sakargument eller följa normala debattregler, sätter de en etikett pÃ¥ motparten (“kommunist”, “kulturmarxist”, “imbecill”) för att tysta eller förminska. Om motparten eller moderatorn sedan tröttnar och avbryter diskussionen, tar de detta som bevis pÃ¥ att de själva hade rätt hela tiden (“se, de klarar inte sanningen, de censurerar mig!”). Det blir en slags självuppfyllande strategi för dem: stöka till debatten sÃ¥ mycket att ingen vill ha kvar dem, och använd sedan uteslutningen som propaganda för att de är de enda som vÃ¥gar “stÃ¥ upp mot PK-maffian”. För en utomstÃ¥ende är logiken skev, men inom den egna kretsen kan martyrskapet ge status.

    Det är viktigt att syna denna bluff. Att samhället sätter gränser för hat och lögn är inte att “tysta oliktänkande” i odemokratisk mening – det är att upprätthÃ¥lla demokratins grundläggande respekt. Högerextrema har all rätt att tycka vad de vill. De kan starta egna tidningar, bloggar, partier och YouTube-kanaler. Och de gör det ocksÃ¥ – det finns en flora av alternativa medier till höger om den etablerade mittenfÃ¥ran, just för att internet ger dem möjligheten. Där kan de framföra även konspirationsteorier och främlingsfientliga budskap, inom lagens rÃ¥märken. Men vad de inte kan kräva är att fÃ¥ sprida samma budskap oemotsagda i andras kanaler eller att slippa bli ifrÃ¥gasatta. ÄndÃ¥ är det precis det de ofta gör ansprÃ¥k pÃ¥: en slags ensidig yttrandefrihet där de fÃ¥r härja fritt, medan de vill slippa konsekvensen av att andra utövar sin rätt att säga emot eller välja bort dem.

    Notera ironin: MÃ¥nga av dessa högljudda “yttrandefrihetskämpar” pÃ¥ ytterkanten lever i ett av världens mest yttrandefria länder. De kan i princip säga nästan vad som helst lagligt, sÃ¥ länge de inte hotar eller hetsar. De kan demonstrera, ge ut skrifter, kandidera i val (vi har till och med nazistiska smÃ¥partier som ställer upp i Sverige – yttersta beviset pÃ¥ vÃ¥r demokratiska tolerans). ÄndÃ¥ hävdar de att de är “tystade”. I själva verket handlar det om att deras idéer saknar brett stöd – folk i gemen vill inte lyssna pÃ¥ dem, medier vill inte ge dem utrymme eftersom de bryter mot grundläggande pressetiska principer, och privatpersoner vill inte ha dem i sina flöden. Det är inte en konspiration – det är det demokratiska samhället som utövar sin kollektiva valfrihet.

    När det extrema blir mainstream med förskjutna gränser i debatten

    Under de senaste decennierna har vi dessutom bevittnat hur vissa extrema idéer gradvis flyttat fram sina positioner i det offentliga samtalet. Detta sker inte öppet genom tvång, utan subtilt genom normalisering. Sverigedemokraternas intåg i riksdagen 2010 innebar till exempel att åsikter som tidigare betraktats som extrema eller rent av rasistiska fick en plattform inom parlamentarisk debatt. Sedan dess har gränsen för vad som anses acceptabel retorik förskjutits märkbart. Forskaren Jesper Strömbäck konstaterar att i takt med att SD:s problemformuleringar normaliserats och legitimerats har det som förr betraktades som rasistiskt blivit nästintill regeringspolitik idag, vilket han utvecklar i Dagens Arenas intervju om hur tidigare rasistiska positioner gradvis blivit politiskt accepterade. Han syftar på att invandringsfientliga tongångar som tidigare var otänkbara för etablerade partier numera uttrycks av regeringsföreträdare utan större chockeffekt. Tidöavtalets politik, med SD som stödparti, förs i mångt och mycket med en retorik som för bara ett decennium sedan skulle ha kallats invandringsfientlig rakt av, vilket också framgår av Strömbäcks analys i samma genomgång av hur normaliseringen påverkat svensk regeringspolitik.

    Denna förskjutning – ibland kallad ”Overton-fönstrets” förflyttning – beror delvis pÃ¥ att högerpopulister skickligt spelat pÃ¥ yttrandefrihetsargumentet för att tänja pÃ¥ vad man fÃ¥r säga. Minns debatten om “Ã¥siktskorridoren” i Sverige: det pÃ¥stods frÃ¥n högerhÃ¥ll att man “inte fick prata om” invandringens problem, att etablissemanget tystade sÃ¥dana diskussioner. I realiteten var ämnet känsligt men inte förbjudet – det var mÃ¥nga som ogillade generaliserande eller främlingsfientliga uttalanden, sÃ¥ de bemöttes med skarp kritik. SD och liknande aktörer vände detta till sin fördel och sa: “Se, vi blir tystade – alltsÃ¥ mÃ¥ste vi skrika ännu högre.” Och efterhand började andra partier anamma en del av deras retorik för att inte förlora väljarstöd. Gränserna flyttades.

    Det finns en risk i detta. När sprÃ¥ket och ideologin hos extrema grupper normaliseras kan själva grundvärderingarna i samhället förskjutas. Det som tidigare sÃ¥gs som uppenbart kränkande eller odemokratiskt kan börja ses som “en Ã¥sikt bland andra”. Som Strömbäck pÃ¥pekar tävlar i dag till och med traditionella partier om att vara “hÃ¥rdast” i exempelvis kriminalpolitik och migrationspolitik, där retoriken blivit betydligt mer sträng och strafforienterad än förr, vilket han utvecklar i Dagens Arenas analys av hur migrations- och kriminalpolitisk retorik förskjutits i svensk politik. Det demokratiska samtalet tÃ¥l mycket, men vi bör vara medvetna om när vi rör oss mot farligt vatten. Att fler vÃ¥gar säga saker öppet är i grunden bra – om det handlar om sakliga Ã¥sikter. Men när det som sprids är förenklade syndabockstankar eller hat mot vissa grupper, dÃ¥ är det inte enbart oskyldig “vidgning av debatten”. Det kan vara början pÃ¥ att demokratins kultur eroderar, precis det som vÃ¥ra lagar om hets och hat syftar till att förhindra.

    Samtidigt mÃ¥ste man erkänna att Ã¥siktsklimatet är bredare nu än förut. Människor fÃ¥r idag uttrycka invandringskritik öppnare utan att automatiskt stämplas ut – vilket mÃ¥nga framhÃ¥ller som nÃ¥got positivt, att tabu brutits. Kritik mot sÃ¥dant som hedersförtryck, integrationsproblem eller volymen av flyktingmottagande har fÃ¥tt en legitim plats i debatten, till stor del tack vare att partier som SD drev upp frÃ¥gorna pÃ¥ dagordningen. Det demokratiska systemet ska kunna absorbera nya frÃ¥gor och perspektiv. Men skillnaden mellan legitim saklig kritik och intolerant retorik är avgörande. Det förstnämnda stärker demokratin (genom att relevanta problem diskuteras öppet), det sistnämnda undergräver demokratin (genom att vissa grupper demoniseras och samhällsklyftor ökar).

    Högerextrema aktörer har emellertid ofta svÃ¥rt att hÃ¥lla sig till saklig kritik – deras ideologi bygger i regel pÃ¥ att utse fiender (etablerade politiker, minoriteter, medier) som man menar förstör nationen. Och när deras sprÃ¥kbruk letar sig in i mainstream riskerar det offentliga samtalet att förgiftas. Vi ser tyvärr exempel pÃ¥ detta i sociala medier dagligen: tonläget har hÃ¥rdnat, normalisering av personangrepp och misstro mot demokratins institutioner breder ut sig. Plattformar som tidigare var till för meningsutbyte blir ibland slagfält av hat. Twitter (numera X) beskrivs i Aftonbladets ledartext om hur politiska angrepp pÃ¥ medier och digitala plattformar bidrar till ett allt mer polariserat klimat som ett träsk där högerextrema narrativ och trollfabriker dominerar, vilket analyseras i artikeln om hur extremism och botar präglar debattklimatet pÃ¥ X. Ju mer sÃ¥dant tolereras i “mainstream”, desto mer flyttas ribban för vad som anses okej.

    Det fria samhället mÃ¥ste därför göra en ständig avvägning: Vara öppet nog att alla röster fÃ¥r försöka göra sig hörda – men starkt nog att stÃ¥ emot de röster som medvetet vill sabotera öppenheten. Det är här diskussionen om ”den tysta högern” eller ”cancel culture” etc. kommer in. Högern (i sin mer extrema form) anser ofta att deras Ã¥sikter hÃ¥lls nere av en vänsterliberal hegemoni. I viss mÃ¥n har de använt detta narrativ för att ta sig upp och in i riksdagen och därefter pÃ¥verkat samtalet (som vi sett). Men att de nu faktiskt har en megafon (SD är näst största parti) motsäger ju pÃ¥stÃ¥endet att de skulle ha varit genuint tystade. Processen visar snarare att demokratin fungerade – ett tidigare marginellt perspektiv fick stöd av tillräckligt mÃ¥nga väljare och kom in i värmen. Det ironiska är att trots detta fortsätter retoriken hos en del att lÃ¥ta som om de vore utanför och förtryckta. Det tyder pÃ¥ att offerrollen är svÃ¥r att släppa, kanske för att den varit sÃ¥ framgÃ¥ngsrik retoriskt.

    Rättigheter med ansvar, frihet med gränser

    Den röda trÃ¥den i allt ovan är förstÃ¥elsen att demokratiska rättigheter kommer med ansvar och är inskrivna i ett sammanhang av lag och etik. Yttrandefrihet är fundamentalt, men den kräver ett ansvarsfullt handhavande – bÃ¥de av individer och plattformar. Demokrati handlar om frihet, men ocksÃ¥ om respekt för majoritetsbeslut och andras friheter. Samtidigt är det nog viktigt att förstÃ¥ att det inte finns förstÃ¥else alls här. Eller snarare är det sÃ¥ att folk med den här retoriska grunden skiter i alla andra.

    De som skriker högst om att de “inte fÃ¥r höras” i Sverige idag är i praktiken ofta de som hörs mest i den digitala miljön – men de är frustrerade över att folk inte längre tiger och samtycker, eller över att bli modererade när de spÃ¥rar ur. Att värna yttrandefrihet innebär att alla ska fÃ¥ tala inom rimliga ramar, inte att vissa ska fÃ¥ dominera utan gensvar. Det innebär ocksÃ¥ rätten att säga ifrÃ¥n när nÃ¥gon gÃ¥r över gränsen.

    Som samhälle behöver vi fortsätta vara tydliga med följande:

    Yttrandefriheten skyddar mot staten, inte mot kritik eller moderation. Alltså: du får tycka och säga, men du får tåla att andra utövar sin rätt att säga emot eller stänga sin dörr, vilket Hjärnfonden tydliggör i sin policy om hur privata aktörer har rätt att moderera sina egna kanaler och kommentarsfält i genomgången av varför moderering inte står i motsättning till yttrandefriheten.

    Demokrati betyder majoritetsstyre under lagarna. Att följa gemensamma regler är inte förtryck, utan just vad samhället kommit överens om. Minoritetsåsikter får finnas, men kan inte diktera villkoren för majoriteten hur som helst, vilket utvecklas i Svensk Juristtidnings genomgång av hur majoritetsprincipen utgör demokratins grund och hur minoriteter i ett majoritetsstyrt system har att underordna sig gemensamma beslut.

    Privata forum har egna trösklar. Den som blir utkastad ur ett Facebook-forum p.g.a. sitt beteende har inte “fÃ¥tt munnen igentejpad av staten”. Man kan starta ett eget forum om man vill prata fritt pÃ¥ sina villkor.

    Fri Ã¥siktsbildning kräver respekt. Om vi vill ha högt i tak i debatten, mÃ¥ste vi ocksÃ¥ ta ansvar för tonen. Att kallprata med hÃ¥rda fakta är en sak – att häva ur sig skällsord och personangrepp en annan. Yttrandefriheten ger utrymme för hÃ¥rd kritik, ja, men ett demokratiskt samhälle bygger pÃ¥ idén att man bemöter argument med argument, inte med förakt.

    I slutänden handlar det om att förstÃ¥ skillnaden mellan att bli sakligt emotsagd och att bli orättfärdigt tystad. De högerextrema som misströstar över att “de inte fÃ¥r säga sin sanning” blandar oftast ihop dessa (läs: skiter i det). Deras rätt att tala finns där – men de saknar kanske allmänhetens gillande, och det kan inte tvingas fram genom att Ã¥beropa yttrandefrihet. Den mÃ¥ste förtjänas genom trovärdighet och respekt.

    Demokratin är jäkligt intressant, just för att den ständigt prövas av sÃ¥dana här gränsfall: Hur hanterar vi de som vill utnyttja friheten för att sabotera friheten? Svaret hittills har varit: med ännu mer demokrati, vilket inkluderar modet att sätta gränser när det behövs. Att säga “nej, du fÃ¥r inte använda min plattform för hat” eller “nej, din rätt kan inte trampas pÃ¥ alla andras rättigheter” är i sig ett demokratiskt försvar. Yttrandefriheten och demokratin mÃ¥r inte dÃ¥ligt av att vi stÃ¥r upp mot dem som missbrukar systemet – tvärtom, de mÃ¥r bra av att vi förstÃ¥r dem rätt och vÃ¥rdar dem klokt.

My kids lie about the internet when they argue

Permalink
Published: 2025-12-30 16:30:00
Discovered: 2026-03-19 13:50:20
Hash: 4896163eb964d9ae1c1cf87229d39be0219192dc
https://www.tornevalls.se/my-kids-lie-about-the-internet-when-they-argue/
Description

Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.

Content

Warning! This is techy mumbo jumbo linux-howto-article!

To get a translation of this text, hide the swedish version and click on the english version.

Svensk Version

Det enda som verkligen tycks betyda något i barnens liv, bortsett från de gånger de faktiskt uppskattar att träffa vänner och gå ut, är internet. Därför har jag under lång tid använt internet som ett tydligt styrmedel: sköter man sina åtaganden är internet öppet. Sköter man inget alls är internet helt stängt.

Det fungerar för det mesta. Problemet uppstår när det blir bråk.

I de lägena dyker det ofta upp påståenden om att internet absolut behövs för skolarbete. Det är inte särskilt troligt mitt under ett lov, men det händer faktiskt att skolarbeten måste göras även då. Ibland handlar det inte ens om skola, utan om något så basalt som att någon behöver kunna somna med ljud i hörlurarna.

Table of Contents Toggle Så hur gör man då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner som ska kunna blockas3. Resolver som gör om domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables) Så hur gör man då?

Den enkla lösningen är inte att antingen stänga allt eller släppa allt. Lösningen är att begränsa internet på personnivå.

Problemet är att de flesta färdiga brandväggslösningar och föräldrakontroller som klarar detta på riktigt ofta är dyra, inlåsta eller alldeles för grova. DNS-baserade lösningar räcker inte heller i ett hushåll där flera personer delar samma uppkoppling. Då måste man kunna begränsa per individ, inte per nätverk.

Det var här behovet uppstod på riktigt. Inte minst eftersom Emily aktivt försökte hitta kryphål till internet.

Vad jag faktiskt har byggt

Jag har byggt ett system där varje person i hushållet behandlas individuellt på nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. Utifrån det kan internet styras i tre tydliga lägen:

Full tillgång: allt är öppet

Avstängt: all trafik stoppas helt

Begränsat: internet är på, men utvalda tjänster blockeras

Den begränsade nivån är den intressanta. I stället för att försöka filtrera innehåll via DNS eller appar används brandväggsregler som blockerar hela nätblock (CIDR-ranges) för specifika tjänster som spelplattformar och streaming. Det gör det betydligt svårare att kringgå, eftersom det inte räcker att byta DNS, app eller domän.

För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slå på, stänga av eller begränsa internet för en specifik person eller till och med en specifik enhet. Status går alltid att se, och systemet överlever både omstarter och nätverksändringar.

Resultatet är att argumenten om “jag behöver internet till skolan” inte längre automatiskt innebär fritt spelrum. Internet kan vara öppet där det faktiskt behövs, samtidigt som det som orsakar konflikterna hålls borta.

Det här är ingen kommersiell produkt och inget universallösning. Det är ett tekniskt svar på ett väldigt vardagligt problem i ett hushåll där internet blivit en central del av allt.

Hur ser det ut?

Här är en förenklad bild av hur det fungerar i praktiken. Inget är magiskt: allt bygger på fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger iptables-regler.

  1. Fasta IP per enhet (DHCP)

Varje relevant enhet får en fast adress i DHCP (MAC -> fixed-address). Exempel:

host Emily { hardware ethernet ; fixed-address 10.1.1.53; }

host SkolEmily { hardware ethernet ; fixed-address 10.1.1.51; }

host SkolEmily2 { hardware ethernet ; fixed-address 10.1.1.52; }

  1. En konfigurationsfil med domäner som ska kunna blockas

Filen /var/tornevall/system/etc/resolver/iplist.conf innehåller bara hostnames/domäner, en per rad:

roblox.com www.roblox.com youtube.com www.youtube.com steamcommunity.com store.steampowered.com

  1. Resolver som gör om domäner till CIDR-ranges

Resolvern är ett separat hjälpscript som heter resolvecidr. Dess enda uppgift är att ta en lista med domäner och översätta dem till hela nätblock (CIDR-ranges).

Detta är nödvändigt eftersom stora tjänster använder många IP-adresser för redundans och lastbalansering. Att blockera en enskild IP-adress är i praktiken meningslöst; man måste blockera hela det nät som tjänsten är tilldelad.

Resolvern arbetar i tre steg:

Slår upp en eller flera IPv4-adresser för varje domän

Kör whois på varje IP-adress

Plockar ut hela CIDR-rangen från registry-datat

En förenklad version av scriptet ser ut så här:

#!/bin/bash set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf" OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do [ -z "$host" ] && continue [[ "$host" =~ ^# ]] && continue

for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do whois "$ip" | awk '/^CIDR:/ {print $2}' done done < "$CONF" | tr ',' ' ' | sort -u > "$tmp"

mv "$tmp" "$OUT"

Resultatet skrivs till /var/tornevall/system/etc/resolver/iplist.resolved och innehåller enbart CIDR-ranges:

128.116.0.0/17 142.250.0.0/15 172.217.0.0/16 216.58.192.0/19 23.0.0.0/12

Det är den här listan som kopieras in i personens state-fil när man aktiverar strict.

  1. State per person

Varje person har en state-fil:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

Tom fil = full tillgång. Thomas = Test-state. Man bör inte blocka sig själv dock.

När man kör strict kopieras iplist.resolved in i personens state-fil.

  1. Styrning med ett kommando

Scriptet kan slå av/på per person eller per enhet:

Status

nethandle

Stäng allt internet för Emily

nethandle emily off

Släpp på internet men blocka valda tjänster (CIDR-listan)

nethandle emily on strict

Bara en enhet (Antilopen) får strict, övriga kan få andra lägen

nethandle emily-antilopen on strict

Full tillgång igen (tömmer state)

nethandle emily on

  1. Apply-fasen (iptables)

En separat apply-komponent körs efter varje ändring och vid boot. Den läser state-filerna och skapar:

en kedja per person, t.ex. NH_EMILY

en JUMP-regel i FORWARD per intern IP som ska styras

DROP-regler i kedjan för varje CIDR i state-filen

Förenklat ser det ut så här:

Chain FORWARD NH_EMILY all -- 10.1.1.23 0.0.0.0/0 NH_EMILY all -- 10.1.1.52 0.0.0.0/0 NH_EMILY all -- 10.1.1.51 0.0.0.0/0 NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY DROP all -- 0.0.0.0/0 128.116.0.0/17 DROP all -- 0.0.0.0/0 142.250.0.0/15 ...

Poängen är att blocken blir “per person” eftersom bara just de interna IP-adresserna hoppar in i kedjan.

English version The only thing that really seems to matter in my children’s lives, apart from the times when they actually appreciate meeting friends and going out, is the internet. Because of that, for a long time I have used internet access as a clear tool for control: if you take care of your responsibilities, the internet is open. If you take care of nothing at all, the internet is completely shut off.

This works most of the time. The problem arises when arguments happen.

In those situations, claims often appear that the internet is absolutely necessary for schoolwork. That is not particularly likely in the middle of a school break, but it does in fact happen that school assignments need to be done even then. Sometimes it is not even about school, but about something as basic as someone needing to be able to fall asleep with audio in their headphones.

So how do you deal with it?

The simple solution is not to either shut everything down or let everything through. The solution is to limit internet access on a per-person basis.

The problem is that most off-the-shelf firewall solutions and parental control systems that can actually do this properly are often expensive, locked down, or far too coarse. DNS-based solutions are not sufficient either in a household where several people share the same connection. In that case, you need to be able to limit per individual, not per network.

That was where the need truly emerged. Not least because Emily actively tried to find loopholes to get internet access.

What I have actually built

I have built a system where each person in the household is handled individually at the network level. Each device has a fixed internal IP address and is tied to a person. Based on that, internet access can be controlled in three clear modes:

Full access: everything is open

Off: all traffic is completely blocked

Limited: the internet is on, but selected services are blocked

The limited mode is the interesting one. Instead of trying to filter content via DNS or apps, firewall rules are used to block entire network blocks (CIDR ranges) for specific services such as gaming platforms and streaming. This makes it significantly harder to circumvent, because it is not enough to change DNS, an app, or a domain.

To make this manageable in practice, I have built my own control script. With a single command, I can turn internet access on, off, or limit it for a specific person or even a specific device. Status is always visible, and the system survives both reboots and network changes.

The result is that arguments like “I need the internet for school” no longer automatically mean free rein. The internet can be open where it is actually needed, while what causes the conflicts is kept out.

This is not a commercial product and not a universal solution. It is a technical response to a very everyday problem in a household where the internet has become a central part of everything.

What does it look like?

Here is a simplified picture of how it works in practice. Nothing is magical: everything is based on fixed internal IPs per device, a small state file per person, and an apply loop that installs iptables rules.

  1. Fixed IPs per device (DHCP)

Each relevant device gets a fixed address in DHCP (MAC -> fixed-address). Example:

host Emily { hardware ethernet ; fixed-address 10.1.1.53; }

host SchoolEmily { hardware ethernet ; fixed-address 10.1.1.51; }

host SchoolEmily2 { hardware ethernet ; fixed-address 10.1.1.52; }

  1. A configuration file with domains that can be blocked

The file /var/tornevall/system/etc/resolver/iplist.conf contains only hostnames/domains, one per line:

roblox.com www.roblox.com youtube.com www.youtube.com steamcommunity.com store.steampowered.com

  1. Resolver that turns domains into CIDR ranges

The resolver is a separate helper script called resolvecidr. Its sole purpose is to take a list of domains and translate them into entire network blocks (CIDR ranges).

This is necessary because large services use many IP addresses for redundancy and load balancing. Blocking a single IP address is practically meaningless; you have to block the entire network that the service is assigned.

The resolver works in three steps:

Looks up one or more IPv4 addresses for each domain

Runs whois on each IP address

Extracts the full CIDR range from the registry data

A simplified version of the script looks like this:

#!/bin/bash set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf" OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do [ -z "$host" ] && continue [[ "$host" =~ ^# ]] && continue

for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do whois "$ip" | awk '/^CIDR:/ {print $2}' done done < "$CONF" | tr ',' '\n' | sort -u > "$tmp"

mv "$tmp" "$OUT"

The result is written to /var/tornevall/system/etc/resolver/iplist.resolved and contains only CIDR ranges:

128.116.0.0/17 142.250.0.0/15 172.217.0.0/16 216.58.192.0/19 23.0.0.0/12

This is the list that is copied into a person’s state file when strict is activated.

  1. State per person

Each person has a state file:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

An empty file means full access. Thomas = test state. You should not block yourself.

When strict is used, iplist.resolved is copied into the person’s state file.

  1. Control with a single command

The script can turn access on or off per person or per device:

Status

nethandle

Shut down all internet for Emily

nethandle emily off

Allow internet but block selected services (CIDR list)

nethandle emily on strict

Only one device (Antilopen) gets strict, others can have different modes

nethandle emily-antilopen on strict

Full access again (clears state)

nethandle emily on

  1. Apply phase (iptables)

A separate apply component runs after every change and at boot. It reads the state files and creates:

one chain per person, for example NH_EMILY

a JUMP rule in FORWARD per internal IP that should be controlled

DROP rules in the chain for each CIDR in the state file

Simplified, it looks like this:

Chain FORWARD NH_EMILY all -- 10.1.1.23 0.0.0.0/0 NH_EMILY all -- 10.1.1.52 0.0.0.0/0 NH_EMILY all -- 10.1.1.51 0.0.0.0/0 NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY DROP all -- 0.0.0.0/0 128.116.0.0/17 DROP all -- 0.0.0.0/0 142.250.0.0/15 ...

The point is that the blocks become “per person” because only those specific internal IP addresses jump into the chain.


History — 2 versions shown

Changes

From 2025-12-30 16:30:00 (discovered: 2026-02-05 14:24:02) hash: 8f20e4a085f7a1980f371bb88d4b935d7346ba62
To 2025-12-30 16:30:00 (discovered: 2026-03-19 13:50:20) hash: 4896163eb964d9ae1c1cf87229d39be0219192dc
Title
My kids lie about the internet when they argue
Description
Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.
Content
Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version. Svensk Version Det enda som verkligen tycks betyda nÃ¥got något i barnens liv, bortsett frÃ¥n från de gÃ¥nger gånger de faktiskt uppskattar att träffa vänner träffa vänner och gÃ¥ ut, är är internet. Därför Därför har jag under lÃ¥ng lång tid använt använt internet som ett tydligt styrmedel: sköter sköter man sina Ã¥taganden är åtaganden är internet öppet. Sköter öppet. Sköter man inget alls är är internet helt stängt. stängt. Det fungerar för för det mesta. Problemet uppstÃ¥r när uppstår när det blir brÃ¥k. bråk. I de lägena lägena dyker det ofta upp pÃ¥stÃ¥enden påståenden om att internet absolut behövs för behövs för skolarbete. Det är är inte särskilt särskilt troligt mitt under ett lov, men det händer händer faktiskt att skolarbeten mÃ¥ste göras även dÃ¥. måste göras även då. Ibland handlar det inte ens om skola, utan om nÃ¥got sÃ¥ något basalt som att nÃ¥gon behöver någon behöver kunna somna med ljud i hörlurarna. hörlurarna. Table of Contents Toggle SÃ¥ hur gör gör man dÃ¥?Vad då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner domäner som ska kunna blockas3. Resolver som gör gör om domäner domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables) SÃ¥ hur gör gör man dÃ¥? då? Den enkla lösningen är lösningen är inte att antingen stänga stänga allt eller släppa släppa allt. Lösningen är Lösningen är att begränsa begränsa internet pÃ¥ personnivÃ¥. personnivå. Problemet är är att de flesta färdiga brandväggslösningar färdiga brandväggslösningar och föräldrakontroller föräldrakontroller som klarar detta pÃ¥ riktigt ofta är är dyra, inlÃ¥sta inlåsta eller alldeles för för grova. DNS-baserade lösningar räcker lösningar räcker inte heller i ett hushÃ¥ll där hushåll där flera personer delar samma uppkoppling. DÃ¥ mÃ¥ste måste man kunna begränsa begränsa per individ, inte per nätverk. nätverk. Det var här här behovet uppstod pÃ¥ riktigt. Inte minst eftersom Emily aktivt försökte försökte hitta kryphÃ¥l kryphål till internet. Vad jag faktiskt har byggt Jag har byggt ett system där där varje person i hushÃ¥llet hushållet behandlas individuellt pÃ¥ nätverksnivÃ¥. nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. UtifrÃ¥n Utifrån det kan internet styras i tre tydliga lägen: lägen: Full tillgÃ¥ng: tillgång: allt är öppet Avstängt: är öppet Avstängt: all trafik stoppas helt Begränsat: Begränsat: internet är pÃ¥, är på, men utvalda tjänster tjänster blockeras Den begränsade nivÃ¥n är begränsade nivån är den intressanta. I stället för stället för att försöka försöka filtrera innehÃ¥ll innehåll via DNS eller appar används brandväggsregler används brandväggsregler som blockerar hela nätblock nätblock (CIDR-ranges) för för specifika tjänster tjänster som spelplattformar och streaming. Det gör gör det betydligt svÃ¥rare svårare att kringgÃ¥, kringgå, eftersom det inte räcker räcker att byta DNS, app eller domän. För domän. För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slÃ¥ pÃ¥, stänga slå på, stänga av eller begränsa begränsa internet för för en specifik person eller till och med en specifik enhet. Status gÃ¥r går alltid att se, och systemet överlever bÃ¥de överlever både omstarter och nätverksändringar. nätverksändringar. Resultatet är är att argumenten om “jag behöver behöver internet till skolan” inte längre längre automatiskt innebär innebär fritt spelrum. Internet kan vara öppet där öppet där det faktiskt behövs, behövs, samtidigt som det som orsakar konflikterna hÃ¥lls hålls borta. Det här är här är ingen kommersiell produkt och inget universallösning. universallösning. Det är är ett tekniskt svar pÃ¥ ett väldigt väldigt vardagligt problem i ett hushÃ¥ll där hushåll där internet blivit en central del av allt. Hur ser det ut? Här är Här är en förenklad förenklad bild av hur det fungerar i praktiken. Inget är är magiskt: allt bygger pÃ¥ fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger lägger iptables-regler. 1. Fasta IP per enhet (DHCP) Varje relevant enhet fÃ¥r får en fast adress i DHCP (MAC -> fixed-address). Exempel: host Emily { hardware ethernet ; fixed-address 10.1.1.53; } host SkolEmily { hardware ethernet ; fixed-address 10.1.1.51; } host SkolEmily2 { hardware ethernet ; fixed-address 10.1.1.52; } 2. En konfigurationsfil med domäner domäner som ska kunna blockas Filen /var/tornevall/system/etc/resolver/iplist.conf innehÃ¥ller innehåller bara hostnames/domäner, hostnames/domäner, en per rad: roblox.com www.roblox.com youtube.com www.youtube.com steamcommunity.com store.steampowered.com 3. Resolver som gör gör om domäner domäner till CIDR-ranges Resolvern är är ett separat hjälpscript hjälpscript som heter resolvecidr. Dess enda uppgift är är att ta en lista med domäner domäner och översätta översätta dem till hela nätblock nätblock (CIDR-ranges). Detta är nödvändigt är nödvändigt eftersom stora tjänster använder mÃ¥nga tjänster använder många IP-adresser för för redundans och lastbalansering. Att blockera en enskild IP-adress är är i praktiken meningslöst; meningslöst; man mÃ¥ste måste blockera hela det nät nät som tjänsten är tjänsten är tilldelad. Resolvern arbetar i tre steg: SlÃ¥r Slår upp en eller flera IPv4-adresser för för varje domän Kör domän Kör whois pÃ¥ varje IP-adress Plockar ut hela CIDR-rangen frÃ¥n från registry-datat En förenklad förenklad version av scriptet ser ut sÃ¥ här: här: #!/bin/bash set -e CONF="/var/tornevall/system/etc/resolver/iplist.conf" OUT="/var/tornevall/system/etc/resolver/iplist.resolved" tmp=$(mktemp) while read -r host; do [ -z "$host" ] && continue [[ "$host" =~ ^# ]] && continue for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do whois "$ip" | awk '/^CIDR:/ {print $2}' done done < "$CONF" | tr ',' ' ' | sort -u
Old vs new
From
TITLE:
My kids lie about the internet when they argue

DESCRIPTION:
Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.

CONTENT:
Warning! This is techy mumbo jumbo linux-howto-article!

To get a translation of this text, hide the swedish version and click on the english version.

Svensk Version

Det enda som verkligen tycks betyda något i barnens liv, bortsett från de gånger de faktiskt uppskattar att träffa vänner och gå ut, är internet. Därför har jag under lång tid använt internet som ett tydligt styrmedel: sköter man sina åtaganden är internet öppet. Sköter man inget alls är internet helt stängt.

Det fungerar för det mesta. Problemet uppstår när det blir bråk.

I de lägena dyker det ofta upp påståenden om att internet absolut behövs för skolarbete. Det är inte särskilt troligt mitt under ett lov, men det händer faktiskt att skolarbeten måste göras även då. Ibland handlar det inte ens om skola, utan om något så basalt som att någon behöver kunna somna med ljud i hörlurarna.

Table of Contents
Toggle
Så hur gör man då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner som ska kunna blockas3. Resolver som gör om domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables)
Så hur gör man då?

Den enkla lösningen är inte att antingen stänga allt eller släppa allt. Lösningen är att begränsa internet på personnivå.

Problemet är att de flesta färdiga brandväggslösningar och föräldrakontroller som klarar detta på riktigt ofta är dyra, inlåsta eller alldeles för grova. DNS-baserade lösningar räcker inte heller i ett hushåll där flera personer delar samma uppkoppling. Då måste man kunna begränsa per individ, inte per nätverk.

Det var här behovet uppstod på riktigt. Inte minst eftersom Emily aktivt försökte hitta kryphål till internet.

Vad jag faktiskt har byggt

Jag har byggt ett system där varje person i hushållet behandlas individuellt på nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. Utifrån det kan internet styras i tre tydliga lägen:

Full tillgång: allt är öppet

Avstängt: all trafik stoppas helt

Begränsat: internet är på, men utvalda tjänster blockeras

Den begränsade nivån är den intressanta. I stället för att försöka filtrera innehåll via DNS eller appar används brandväggsregler som blockerar hela nätblock (CIDR-ranges) för specifika tjänster som spelplattformar och streaming. Det gör det betydligt svårare att kringgå, eftersom det inte räcker att byta DNS, app eller domän.

För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slå på, stänga av eller begränsa internet för en specifik person eller till och med en specifik enhet. Status går alltid att se, och systemet överlever både omstarter och nätverksändringar.

Resultatet är att argumenten om “jag behöver internet till skolan” inte längre automatiskt innebär fritt spelrum. Internet kan vara öppet där det faktiskt behövs, samtidigt som det som orsakar konflikterna hÃ¥lls borta.

Det här är ingen kommersiell produkt och inget universallösning. Det är ett tekniskt svar på ett väldigt vardagligt problem i ett hushåll där internet blivit en central del av allt.

Hur ser det ut?

Här är en förenklad bild av hur det fungerar i praktiken. Inget är magiskt: allt bygger på fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger iptables-regler.

1. Fasta IP per enhet (DHCP)

Varje relevant enhet får en fast adress i DHCP (MAC -> fixed-address). Exempel:

host Emily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.53;
}

host SkolEmily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.51;
}

host SkolEmily2 {
 hardware ethernet <mac>;
 fixed-address 10.1.1.52;
}

2. En konfigurationsfil med domäner som ska kunna blockas

Filen /var/tornevall/system/etc/resolver/iplist.conf innehåller bara hostnames/domäner, en per rad:

roblox.com
www.roblox.com
youtube.com
www.youtube.com
steamcommunity.com
store.steampowered.com

3. Resolver som gör om domäner till CIDR-ranges

Resolvern är ett separat hjälpscript som heter resolvecidr. Dess enda uppgift är att ta en lista med domäner och översätta dem till hela nätblock (CIDR-ranges).

Detta är nödvändigt eftersom stora tjänster använder många IP-adresser för redundans och lastbalansering. Att blockera en enskild IP-adress är i praktiken meningslöst; man måste blockera hela det nät som tjänsten är tilldelad.

Resolvern arbetar i tre steg:

Slår upp en eller flera IPv4-adresser för varje domän

Kör whois på varje IP-adress

Plockar ut hela CIDR-rangen från registry-datat

En förenklad version av scriptet ser ut så här:

#!/bin/bash
set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf"
OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do
 [ -z "$host" ] && continue
 [[ "$host" =~ ^# ]] && continue

 for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
 whois "$ip" | awk '/^CIDR:/ {print $2}'
 done
done < "$CONF" | tr ',' '
' | sort -u > "$tmp"

mv "$tmp" "$OUT"

Resultatet skrivs till /var/tornevall/system/etc/resolver/iplist.resolved och innehåller enbart CIDR-ranges:

128.116.0.0/17
142.250.0.0/15
172.217.0.0/16
216.58.192.0/19
23.0.0.0/12

Det är den här listan som kopieras in i personens state-fil när man aktiverar strict.

4. State per person

Varje person har en state-fil:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

Tom fil = full tillgång. Thomas = Test-state. Man bör inte blocka sig själv dock.

När man kör strict kopieras iplist.resolved in i personens state-fil.

5. Styrning med ett kommando

Scriptet kan slå av/på per person eller per enhet:

# Status
nethandle

# Stäng allt internet för Emily
nethandle emily off

# Släpp på internet men blocka valda tjänster (CIDR-listan)
nethandle emily on strict

# Bara en enhet (Antilopen) får strict, övriga kan få andra lägen
nethandle emily-antilopen on strict

# Full tillgång igen (tömmer state)
nethandle emily on

6. Apply-fasen (iptables)

En separat apply-komponent körs efter varje ändring och vid boot. Den läser state-filerna och skapar:

en kedja per person, t.ex. NH_EMILY

en JUMP-regel i FORWARD per intern IP som ska styras

DROP-regler i kedjan för varje CIDR i state-filen

Förenklat ser det ut så här:

Chain FORWARD
NH_EMILY all -- 10.1.1.23 0.0.0.0/0
NH_EMILY all -- 10.1.1.52 0.0.0.0/0
NH_EMILY all -- 10.1.1.51 0.0.0.0/0
NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY
DROP all -- 0.0.0.0/0 128.116.0.0/17
DROP all -- 0.0.0.0/0 142.250.0.0/15
...

Poängen är att blocken blir “per person” eftersom bara just de interna IP-adresserna hoppar in i kedjan.

English version
The only thing that really seems to matter in my children’s lives, apart from the times when they actually appreciate meeting friends and going out, is the internet. Because of that, for a long time I have used internet access as a clear tool for control: if you take care of your responsibilities, the internet is open. If you take care of nothing at all, the internet is completely shut off.

This works most of the time. The problem arises when arguments happen.

In those situations, claims often appear that the internet is absolutely necessary for schoolwork. That is not particularly likely in the middle of a school break, but it does in fact happen that school assignments need to be done even then. Sometimes it is not even about school, but about something as basic as someone needing to be able to fall asleep with audio in their headphones.

So how do you deal with it?

The simple solution is not to either shut everything down or let everything through. The solution is to limit internet access on a per-person basis.

The problem is that most off-the-shelf firewall solutions and parental control systems that can actually do this properly are often expensive, locked down, or far too coarse. DNS-based solutions are not sufficient either in a household where several people share the same connection. In that case, you need to be able to limit per individual, not per network.

That was where the need truly emerged. Not least because Emily actively tried to find loopholes to get internet access.

What I have actually built

I have built a system where each person in the household is handled individually at the network level. Each device has a fixed internal IP address and is tied to a person. Based on that, internet access can be controlled in three clear modes:

Full access: everything is open

Off: all traffic is completely blocked

Limited: the internet is on, but selected services are blocked

The limited mode is the interesting one. Instead of trying to filter content via DNS or apps, firewall rules are used to block entire network blocks (CIDR ranges) for specific services such as gaming platforms and streaming. This makes it significantly harder to circumvent, because it is not enough to change DNS, an app, or a domain.

To make this manageable in practice, I have built my own control script. With a single command, I can turn internet access on, off, or limit it for a specific person or even a specific device. Status is always visible, and the system survives both reboots and network changes.

The result is that arguments like “I need the internet for school” no longer automatically mean free rein. The internet can be open where it is actually needed, while what causes the conflicts is kept out.

This is not a commercial product and not a universal solution. It is a technical response to a very everyday problem in a household where the internet has become a central part of everything.

What does it look like?

Here is a simplified picture of how it works in practice. Nothing is magical: everything is based on fixed internal IPs per device, a small state file per person, and an apply loop that installs iptables rules.

1. Fixed IPs per device (DHCP)

Each relevant device gets a fixed address in DHCP (MAC -> fixed-address). Example:

host Emily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.53;
}

host SchoolEmily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.51;
}

host SchoolEmily2 {
 hardware ethernet <mac>;
 fixed-address 10.1.1.52;
}

2. A configuration file with domains that can be blocked

The file /var/tornevall/system/etc/resolver/iplist.conf contains only hostnames/domains, one per line:

roblox.com
www.roblox.com
youtube.com
www.youtube.com
steamcommunity.com
store.steampowered.com

3. Resolver that turns domains into CIDR ranges

The resolver is a separate helper script called resolvecidr. Its sole purpose is to take a list of domains and translate them into entire network blocks (CIDR ranges).

This is necessary because large services use many IP addresses for redundancy and load balancing. Blocking a single IP address is practically meaningless; you have to block the entire network that the service is assigned.

The resolver works in three steps:

Looks up one or more IPv4 addresses for each domain

Runs whois on each IP address

Extracts the full CIDR range from the registry data

A simplified version of the script looks like this:

#!/bin/bash
set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf"
OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do
 [ -z "$host" ] && continue
 [[ "$host" =~ ^# ]] && continue

 for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
 whois "$ip" | awk '/^CIDR:/ {print $2}'
 done
done < "$CONF" | tr ',' '\n' | sort -u > "$tmp"

mv "$tmp" "$OUT"

The result is written to /var/tornevall/system/etc/resolver/iplist.resolved and contains only CIDR ranges:

128.116.0.0/17
142.250.0.0/15
172.217.0.0/16
216.58.192.0/19
23.0.0.0/12

This is the list that is copied into a person’s state file when strict is activated.

4. State per person

Each person has a state file:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

An empty file means full access. Thomas = test state. You should not block yourself.

When strict is used, iplist.resolved is copied into the person’s state file.

5. Control with a single command

The script can turn access on or off per person or per device:

# Status
nethandle

# Shut down all internet for Emily
nethandle emily off

# Allow internet but block selected services (CIDR list)
nethandle emily on strict

# Only one device (Antilopen) gets strict, others can have different modes
nethandle emily-antilopen on strict

# Full access again (clears state)
nethandle emily on

6. Apply phase (iptables)

A separate apply component runs after every change and at boot. It reads the state files and creates:

one chain per person, for example NH_EMILY

a JUMP rule in FORWARD per internal IP that should be controlled

DROP rules in the chain for each CIDR in the state file

Simplified, it looks like this:

Chain FORWARD
NH_EMILY all -- 10.1.1.23 0.0.0.0/0
NH_EMILY all -- 10.1.1.52 0.0.0.0/0
NH_EMILY all -- 10.1.1.51 0.0.0.0/0
NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY
DROP all -- 0.0.0.0/0 128.116.0.0/17
DROP all -- 0.0.0.0/0 142.250.0.0/15
...

The point is that the blocks become “per person” because only those specific internal IP addresses jump into the chain.
To
TITLE:
My kids lie about the internet when they argue

DESCRIPTION:
Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.

CONTENT:
Warning! This is techy mumbo jumbo linux-howto-article!

To get a translation of this text, hide the swedish version and click on the english version.

Svensk Version

Det enda som verkligen tycks betyda något i barnens liv, bortsett från de gånger de faktiskt uppskattar att träffa vänner och gå ut, är internet. Därför har jag under lång tid använt internet som ett tydligt styrmedel: sköter man sina åtaganden är internet öppet. Sköter man inget alls är internet helt stängt.

Det fungerar för det mesta. Problemet uppstår när det blir bråk.

I de lägena dyker det ofta upp påståenden om att internet absolut behövs för skolarbete. Det är inte särskilt troligt mitt under ett lov, men det händer faktiskt att skolarbeten måste göras även då. Ibland handlar det inte ens om skola, utan om något så basalt som att någon behöver kunna somna med ljud i hörlurarna.

Table of Contents
Toggle
Så hur gör man då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner som ska kunna blockas3. Resolver som gör om domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables)
Så hur gör man då?

Den enkla lösningen är inte att antingen stänga allt eller släppa allt. Lösningen är att begränsa internet på personnivå.

Problemet är att de flesta färdiga brandväggslösningar och föräldrakontroller som klarar detta på riktigt ofta är dyra, inlåsta eller alldeles för grova. DNS-baserade lösningar räcker inte heller i ett hushåll där flera personer delar samma uppkoppling. Då måste man kunna begränsa per individ, inte per nätverk.

Det var här behovet uppstod på riktigt. Inte minst eftersom Emily aktivt försökte hitta kryphål till internet.

Vad jag faktiskt har byggt

Jag har byggt ett system där varje person i hushållet behandlas individuellt på nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. Utifrån det kan internet styras i tre tydliga lägen:

Full tillgång: allt är öppet

Avstängt: all trafik stoppas helt

Begränsat: internet är på, men utvalda tjänster blockeras

Den begränsade nivån är den intressanta. I stället för att försöka filtrera innehåll via DNS eller appar används brandväggsregler som blockerar hela nätblock (CIDR-ranges) för specifika tjänster som spelplattformar och streaming. Det gör det betydligt svårare att kringgå, eftersom det inte räcker att byta DNS, app eller domän.

För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slå på, stänga av eller begränsa internet för en specifik person eller till och med en specifik enhet. Status går alltid att se, och systemet överlever både omstarter och nätverksändringar.

Resultatet är att argumenten om “jag behöver internet till skolan” inte längre automatiskt innebär fritt spelrum. Internet kan vara öppet där det faktiskt behövs, samtidigt som det som orsakar konflikterna hålls borta.

Det här är ingen kommersiell produkt och inget universallösning. Det är ett tekniskt svar på ett väldigt vardagligt problem i ett hushåll där internet blivit en central del av allt.

Hur ser det ut?

Här är en förenklad bild av hur det fungerar i praktiken. Inget är magiskt: allt bygger på fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger iptables-regler.

1. Fasta IP per enhet (DHCP)

Varje relevant enhet får en fast adress i DHCP (MAC -> fixed-address). Exempel:

host Emily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.53;
}

host SkolEmily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.51;
}

host SkolEmily2 {
 hardware ethernet <mac>;
 fixed-address 10.1.1.52;
}

2. En konfigurationsfil med domäner som ska kunna blockas

Filen /var/tornevall/system/etc/resolver/iplist.conf innehåller bara hostnames/domäner, en per rad:

roblox.com
www.roblox.com
youtube.com
www.youtube.com
steamcommunity.com
store.steampowered.com

3. Resolver som gör om domäner till CIDR-ranges

Resolvern är ett separat hjälpscript som heter resolvecidr. Dess enda uppgift är att ta en lista med domäner och översätta dem till hela nätblock (CIDR-ranges).

Detta är nödvändigt eftersom stora tjänster använder många IP-adresser för redundans och lastbalansering. Att blockera en enskild IP-adress är i praktiken meningslöst; man måste blockera hela det nät som tjänsten är tilldelad.

Resolvern arbetar i tre steg:

Slår upp en eller flera IPv4-adresser för varje domän

Kör whois på varje IP-adress

Plockar ut hela CIDR-rangen från registry-datat

En förenklad version av scriptet ser ut så här:

#!/bin/bash
set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf"
OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do
 [ -z "$host" ] && continue
 [[ "$host" =~ ^# ]] && continue

 for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
 whois "$ip" | awk '/^CIDR:/ {print $2}'
 done
done < "$CONF" | tr ',' '
' | sort -u > "$tmp"

mv "$tmp" "$OUT"

Resultatet skrivs till /var/tornevall/system/etc/resolver/iplist.resolved och innehåller enbart CIDR-ranges:

128.116.0.0/17
142.250.0.0/15
172.217.0.0/16
216.58.192.0/19
23.0.0.0/12

Det är den här listan som kopieras in i personens state-fil när man aktiverar strict.

4. State per person

Varje person har en state-fil:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

Tom fil = full tillgång. Thomas = Test-state. Man bör inte blocka sig själv dock.

När man kör strict kopieras iplist.resolved in i personens state-fil.

5. Styrning med ett kommando

Scriptet kan slå av/på per person eller per enhet:

# Status
nethandle

# Stäng allt internet för Emily
nethandle emily off

# Släpp på internet men blocka valda tjänster (CIDR-listan)
nethandle emily on strict

# Bara en enhet (Antilopen) får strict, övriga kan få andra lägen
nethandle emily-antilopen on strict

# Full tillgång igen (tömmer state)
nethandle emily on

6. Apply-fasen (iptables)

En separat apply-komponent körs efter varje ändring och vid boot. Den läser state-filerna och skapar:

en kedja per person, t.ex. NH_EMILY

en JUMP-regel i FORWARD per intern IP som ska styras

DROP-regler i kedjan för varje CIDR i state-filen

Förenklat ser det ut så här:

Chain FORWARD
NH_EMILY all -- 10.1.1.23 0.0.0.0/0
NH_EMILY all -- 10.1.1.52 0.0.0.0/0
NH_EMILY all -- 10.1.1.51 0.0.0.0/0
NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY
DROP all -- 0.0.0.0/0 128.116.0.0/17
DROP all -- 0.0.0.0/0 142.250.0.0/15
...

Poängen är att blocken blir “per person” eftersom bara just de interna IP-adresserna hoppar in i kedjan.

English version
The only thing that really seems to matter in my children’s lives, apart from the times when they actually appreciate meeting friends and going out, is the internet. Because of that, for a long time I have used internet access as a clear tool for control: if you take care of your responsibilities, the internet is open. If you take care of nothing at all, the internet is completely shut off.

This works most of the time. The problem arises when arguments happen.

In those situations, claims often appear that the internet is absolutely necessary for schoolwork. That is not particularly likely in the middle of a school break, but it does in fact happen that school assignments need to be done even then. Sometimes it is not even about school, but about something as basic as someone needing to be able to fall asleep with audio in their headphones.

So how do you deal with it?

The simple solution is not to either shut everything down or let everything through. The solution is to limit internet access on a per-person basis.

The problem is that most off-the-shelf firewall solutions and parental control systems that can actually do this properly are often expensive, locked down, or far too coarse. DNS-based solutions are not sufficient either in a household where several people share the same connection. In that case, you need to be able to limit per individual, not per network.

That was where the need truly emerged. Not least because Emily actively tried to find loopholes to get internet access.

What I have actually built

I have built a system where each person in the household is handled individually at the network level. Each device has a fixed internal IP address and is tied to a person. Based on that, internet access can be controlled in three clear modes:

Full access: everything is open

Off: all traffic is completely blocked

Limited: the internet is on, but selected services are blocked

The limited mode is the interesting one. Instead of trying to filter content via DNS or apps, firewall rules are used to block entire network blocks (CIDR ranges) for specific services such as gaming platforms and streaming. This makes it significantly harder to circumvent, because it is not enough to change DNS, an app, or a domain.

To make this manageable in practice, I have built my own control script. With a single command, I can turn internet access on, off, or limit it for a specific person or even a specific device. Status is always visible, and the system survives both reboots and network changes.

The result is that arguments like “I need the internet for school” no longer automatically mean free rein. The internet can be open where it is actually needed, while what causes the conflicts is kept out.

This is not a commercial product and not a universal solution. It is a technical response to a very everyday problem in a household where the internet has become a central part of everything.

What does it look like?

Here is a simplified picture of how it works in practice. Nothing is magical: everything is based on fixed internal IPs per device, a small state file per person, and an apply loop that installs iptables rules.

1. Fixed IPs per device (DHCP)

Each relevant device gets a fixed address in DHCP (MAC -> fixed-address). Example:

host Emily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.53;
}

host SchoolEmily {
 hardware ethernet <mac>;
 fixed-address 10.1.1.51;
}

host SchoolEmily2 {
 hardware ethernet <mac>;
 fixed-address 10.1.1.52;
}

2. A configuration file with domains that can be blocked

The file /var/tornevall/system/etc/resolver/iplist.conf contains only hostnames/domains, one per line:

roblox.com
www.roblox.com
youtube.com
www.youtube.com
steamcommunity.com
store.steampowered.com

3. Resolver that turns domains into CIDR ranges

The resolver is a separate helper script called resolvecidr. Its sole purpose is to take a list of domains and translate them into entire network blocks (CIDR ranges).

This is necessary because large services use many IP addresses for redundancy and load balancing. Blocking a single IP address is practically meaningless; you have to block the entire network that the service is assigned.

The resolver works in three steps:

Looks up one or more IPv4 addresses for each domain

Runs whois on each IP address

Extracts the full CIDR range from the registry data

A simplified version of the script looks like this:

#!/bin/bash
set -e

CONF="/var/tornevall/system/etc/resolver/iplist.conf"
OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

tmp=$(mktemp)

while read -r host; do
 [ -z "$host" ] && continue
 [[ "$host" =~ ^# ]] && continue

 for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
 whois "$ip" | awk '/^CIDR:/ {print $2}'
 done
done < "$CONF" | tr ',' '\n' | sort -u > "$tmp"

mv "$tmp" "$OUT"

The result is written to /var/tornevall/system/etc/resolver/iplist.resolved and contains only CIDR ranges:

128.116.0.0/17
142.250.0.0/15
172.217.0.0/16
216.58.192.0/19
23.0.0.0/12

This is the list that is copied into a person’s state file when strict is activated.

4. State per person

Each person has a state file:

/var/tornevall/system/etc/resolver/state-emily

/var/tornevall/system/etc/resolver/state-max

/var/tornevall/system/etc/resolver/state-thomas

An empty file means full access. Thomas = test state. You should not block yourself.

When strict is used, iplist.resolved is copied into the person’s state file.

5. Control with a single command

The script can turn access on or off per person or per device:

# Status
nethandle

# Shut down all internet for Emily
nethandle emily off

# Allow internet but block selected services (CIDR list)
nethandle emily on strict

# Only one device (Antilopen) gets strict, others can have different modes
nethandle emily-antilopen on strict

# Full access again (clears state)
nethandle emily on

6. Apply phase (iptables)

A separate apply component runs after every change and at boot. It reads the state files and creates:

one chain per person, for example NH_EMILY

a JUMP rule in FORWARD per internal IP that should be controlled

DROP rules in the chain for each CIDR in the state file

Simplified, it looks like this:

Chain FORWARD
NH_EMILY all -- 10.1.1.23 0.0.0.0/0
NH_EMILY all -- 10.1.1.52 0.0.0.0/0
NH_EMILY all -- 10.1.1.51 0.0.0.0/0
NH_EMILY all -- 10.1.1.53 0.0.0.0/0

Chain NH_EMILY
DROP all -- 0.0.0.0/0 128.116.0.0/17
DROP all -- 0.0.0.0/0 142.250.0.0/15
...

The point is that the blocks become “per person” because only those specific internal IP addresses jump into the chain.

Versions

  1. 2025-12-30 16:30:00
    Discovered: 2026-03-19 13:50:20 Hash: 4896163eb964d9ae1c1cf87229d39be0219192dc
    Title:
    My kids lie about the internet when they argue
    Description:
    Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.
    Content
    Warning! This is techy mumbo jumbo linux-howto-article!

    To get a translation of this text, hide the swedish version and click on the english version.

    Svensk Version

    Det enda som verkligen tycks betyda något i barnens liv, bortsett från de gånger de faktiskt uppskattar att träffa vänner och gå ut, är internet. Därför har jag under lång tid använt internet som ett tydligt styrmedel: sköter man sina åtaganden är internet öppet. Sköter man inget alls är internet helt stängt.

    Det fungerar för det mesta. Problemet uppstår när det blir bråk.

    I de lägena dyker det ofta upp påståenden om att internet absolut behövs för skolarbete. Det är inte särskilt troligt mitt under ett lov, men det händer faktiskt att skolarbeten måste göras även då. Ibland handlar det inte ens om skola, utan om något så basalt som att någon behöver kunna somna med ljud i hörlurarna.

    Table of Contents
    Toggle
    Så hur gör man då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner som ska kunna blockas3. Resolver som gör om domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables)
    Så hur gör man då?

    Den enkla lösningen är inte att antingen stänga allt eller släppa allt. Lösningen är att begränsa internet på personnivå.

    Problemet är att de flesta färdiga brandväggslösningar och föräldrakontroller som klarar detta på riktigt ofta är dyra, inlåsta eller alldeles för grova. DNS-baserade lösningar räcker inte heller i ett hushåll där flera personer delar samma uppkoppling. Då måste man kunna begränsa per individ, inte per nätverk.

    Det var här behovet uppstod på riktigt. Inte minst eftersom Emily aktivt försökte hitta kryphål till internet.

    Vad jag faktiskt har byggt

    Jag har byggt ett system där varje person i hushållet behandlas individuellt på nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. Utifrån det kan internet styras i tre tydliga lägen:

    Full tillgång: allt är öppet

    Avstängt: all trafik stoppas helt

    Begränsat: internet är på, men utvalda tjänster blockeras

    Den begränsade nivån är den intressanta. I stället för att försöka filtrera innehåll via DNS eller appar används brandväggsregler som blockerar hela nätblock (CIDR-ranges) för specifika tjänster som spelplattformar och streaming. Det gör det betydligt svårare att kringgå, eftersom det inte räcker att byta DNS, app eller domän.

    För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slå på, stänga av eller begränsa internet för en specifik person eller till och med en specifik enhet. Status går alltid att se, och systemet överlever både omstarter och nätverksändringar.

    Resultatet är att argumenten om “jag behöver internet till skolan” inte längre automatiskt innebär fritt spelrum. Internet kan vara öppet där det faktiskt behövs, samtidigt som det som orsakar konflikterna hålls borta.

    Det här är ingen kommersiell produkt och inget universallösning. Det är ett tekniskt svar på ett väldigt vardagligt problem i ett hushåll där internet blivit en central del av allt.

    Hur ser det ut?

    Här är en förenklad bild av hur det fungerar i praktiken. Inget är magiskt: allt bygger på fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger iptables-regler.

    1. Fasta IP per enhet (DHCP)

    Varje relevant enhet får en fast adress i DHCP (MAC -> fixed-address). Exempel:

    host Emily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.53;
    }

    host SkolEmily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.51;
    }

    host SkolEmily2 {
    hardware ethernet <mac>;
    fixed-address 10.1.1.52;
    }

    2. En konfigurationsfil med domäner som ska kunna blockas

    Filen /var/tornevall/system/etc/resolver/iplist.conf innehåller bara hostnames/domäner, en per rad:

    roblox.com
    www.roblox.com
    youtube.com
    www.youtube.com
    steamcommunity.com
    store.steampowered.com

    3. Resolver som gör om domäner till CIDR-ranges

    Resolvern är ett separat hjälpscript som heter resolvecidr. Dess enda uppgift är att ta en lista med domäner och översätta dem till hela nätblock (CIDR-ranges).

    Detta är nödvändigt eftersom stora tjänster använder många IP-adresser för redundans och lastbalansering. Att blockera en enskild IP-adress är i praktiken meningslöst; man måste blockera hela det nät som tjänsten är tilldelad.

    Resolvern arbetar i tre steg:

    Slår upp en eller flera IPv4-adresser för varje domän

    Kör whois på varje IP-adress

    Plockar ut hela CIDR-rangen från registry-datat

    En förenklad version av scriptet ser ut så här:

    #!/bin/bash
    set -e

    CONF="/var/tornevall/system/etc/resolver/iplist.conf"
    OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

    tmp=$(mktemp)

    while read -r host; do
    [ -z "$host" ] && continue
    [[ "$host" =~ ^# ]] && continue

    for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
    whois "$ip" | awk '/^CIDR:/ {print $2}'
    done
    done < "$CONF" | tr ',' '
    ' | sort -u > "$tmp"

    mv "$tmp" "$OUT"

    Resultatet skrivs till /var/tornevall/system/etc/resolver/iplist.resolved och innehåller enbart CIDR-ranges:

    128.116.0.0/17
    142.250.0.0/15
    172.217.0.0/16
    216.58.192.0/19
    23.0.0.0/12

    Det är den här listan som kopieras in i personens state-fil när man aktiverar strict.

    4. State per person

    Varje person har en state-fil:

    /var/tornevall/system/etc/resolver/state-emily

    /var/tornevall/system/etc/resolver/state-max

    /var/tornevall/system/etc/resolver/state-thomas

    Tom fil = full tillgång. Thomas = Test-state. Man bör inte blocka sig själv dock.

    När man kör strict kopieras iplist.resolved in i personens state-fil.

    5. Styrning med ett kommando

    Scriptet kan slå av/på per person eller per enhet:

    # Status
    nethandle

    # Stäng allt internet för Emily
    nethandle emily off

    # Släpp på internet men blocka valda tjänster (CIDR-listan)
    nethandle emily on strict

    # Bara en enhet (Antilopen) får strict, övriga kan få andra lägen
    nethandle emily-antilopen on strict

    # Full tillgång igen (tömmer state)
    nethandle emily on

    6. Apply-fasen (iptables)

    En separat apply-komponent körs efter varje ändring och vid boot. Den läser state-filerna och skapar:

    en kedja per person, t.ex. NH_EMILY

    en JUMP-regel i FORWARD per intern IP som ska styras

    DROP-regler i kedjan för varje CIDR i state-filen

    Förenklat ser det ut så här:

    Chain FORWARD
    NH_EMILY all -- 10.1.1.23 0.0.0.0/0
    NH_EMILY all -- 10.1.1.52 0.0.0.0/0
    NH_EMILY all -- 10.1.1.51 0.0.0.0/0
    NH_EMILY all -- 10.1.1.53 0.0.0.0/0

    Chain NH_EMILY
    DROP all -- 0.0.0.0/0 128.116.0.0/17
    DROP all -- 0.0.0.0/0 142.250.0.0/15
    ...

    Poängen är att blocken blir “per person” eftersom bara just de interna IP-adresserna hoppar in i kedjan.

    English version
    The only thing that really seems to matter in my children’s lives, apart from the times when they actually appreciate meeting friends and going out, is the internet. Because of that, for a long time I have used internet access as a clear tool for control: if you take care of your responsibilities, the internet is open. If you take care of nothing at all, the internet is completely shut off.

    This works most of the time. The problem arises when arguments happen.

    In those situations, claims often appear that the internet is absolutely necessary for schoolwork. That is not particularly likely in the middle of a school break, but it does in fact happen that school assignments need to be done even then. Sometimes it is not even about school, but about something as basic as someone needing to be able to fall asleep with audio in their headphones.

    So how do you deal with it?

    The simple solution is not to either shut everything down or let everything through. The solution is to limit internet access on a per-person basis.

    The problem is that most off-the-shelf firewall solutions and parental control systems that can actually do this properly are often expensive, locked down, or far too coarse. DNS-based solutions are not sufficient either in a household where several people share the same connection. In that case, you need to be able to limit per individual, not per network.

    That was where the need truly emerged. Not least because Emily actively tried to find loopholes to get internet access.

    What I have actually built

    I have built a system where each person in the household is handled individually at the network level. Each device has a fixed internal IP address and is tied to a person. Based on that, internet access can be controlled in three clear modes:

    Full access: everything is open

    Off: all traffic is completely blocked

    Limited: the internet is on, but selected services are blocked

    The limited mode is the interesting one. Instead of trying to filter content via DNS or apps, firewall rules are used to block entire network blocks (CIDR ranges) for specific services such as gaming platforms and streaming. This makes it significantly harder to circumvent, because it is not enough to change DNS, an app, or a domain.

    To make this manageable in practice, I have built my own control script. With a single command, I can turn internet access on, off, or limit it for a specific person or even a specific device. Status is always visible, and the system survives both reboots and network changes.

    The result is that arguments like “I need the internet for school” no longer automatically mean free rein. The internet can be open where it is actually needed, while what causes the conflicts is kept out.

    This is not a commercial product and not a universal solution. It is a technical response to a very everyday problem in a household where the internet has become a central part of everything.

    What does it look like?

    Here is a simplified picture of how it works in practice. Nothing is magical: everything is based on fixed internal IPs per device, a small state file per person, and an apply loop that installs iptables rules.

    1. Fixed IPs per device (DHCP)

    Each relevant device gets a fixed address in DHCP (MAC -> fixed-address). Example:

    host Emily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.53;
    }

    host SchoolEmily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.51;
    }

    host SchoolEmily2 {
    hardware ethernet <mac>;
    fixed-address 10.1.1.52;
    }

    2. A configuration file with domains that can be blocked

    The file /var/tornevall/system/etc/resolver/iplist.conf contains only hostnames/domains, one per line:

    roblox.com
    www.roblox.com
    youtube.com
    www.youtube.com
    steamcommunity.com
    store.steampowered.com

    3. Resolver that turns domains into CIDR ranges

    The resolver is a separate helper script called resolvecidr. Its sole purpose is to take a list of domains and translate them into entire network blocks (CIDR ranges).

    This is necessary because large services use many IP addresses for redundancy and load balancing. Blocking a single IP address is practically meaningless; you have to block the entire network that the service is assigned.

    The resolver works in three steps:

    Looks up one or more IPv4 addresses for each domain

    Runs whois on each IP address

    Extracts the full CIDR range from the registry data

    A simplified version of the script looks like this:

    #!/bin/bash
    set -e

    CONF="/var/tornevall/system/etc/resolver/iplist.conf"
    OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

    tmp=$(mktemp)

    while read -r host; do
    [ -z "$host" ] && continue
    [[ "$host" =~ ^# ]] && continue

    for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
    whois "$ip" | awk '/^CIDR:/ {print $2}'
    done
    done < "$CONF" | tr ',' '\n' | sort -u > "$tmp"

    mv "$tmp" "$OUT"

    The result is written to /var/tornevall/system/etc/resolver/iplist.resolved and contains only CIDR ranges:

    128.116.0.0/17
    142.250.0.0/15
    172.217.0.0/16
    216.58.192.0/19
    23.0.0.0/12

    This is the list that is copied into a person’s state file when strict is activated.

    4. State per person

    Each person has a state file:

    /var/tornevall/system/etc/resolver/state-emily

    /var/tornevall/system/etc/resolver/state-max

    /var/tornevall/system/etc/resolver/state-thomas

    An empty file means full access. Thomas = test state. You should not block yourself.

    When strict is used, iplist.resolved is copied into the person’s state file.

    5. Control with a single command

    The script can turn access on or off per person or per device:

    # Status
    nethandle

    # Shut down all internet for Emily
    nethandle emily off

    # Allow internet but block selected services (CIDR list)
    nethandle emily on strict

    # Only one device (Antilopen) gets strict, others can have different modes
    nethandle emily-antilopen on strict

    # Full access again (clears state)
    nethandle emily on

    6. Apply phase (iptables)

    A separate apply component runs after every change and at boot. It reads the state files and creates:

    one chain per person, for example NH_EMILY

    a JUMP rule in FORWARD per internal IP that should be controlled

    DROP rules in the chain for each CIDR in the state file

    Simplified, it looks like this:

    Chain FORWARD
    NH_EMILY all -- 10.1.1.23 0.0.0.0/0
    NH_EMILY all -- 10.1.1.52 0.0.0.0/0
    NH_EMILY all -- 10.1.1.51 0.0.0.0/0
    NH_EMILY all -- 10.1.1.53 0.0.0.0/0

    Chain NH_EMILY
    DROP all -- 0.0.0.0/0 128.116.0.0/17
    DROP all -- 0.0.0.0/0 142.250.0.0/15
    ...

    The point is that the blocks become “per person” because only those specific internal IP addresses jump into the chain.
  2. 2025-12-30 16:30:00
    Discovered: 2026-02-05 14:24:02 Hash: 8f20e4a085f7a1980f371bb88d4b935d7346ba62
    Title:
    My kids lie about the internet when they argue
    Description:
    Warning! This is techy mumbo jumbo linux-howto-article! To get a translation of this text, hide the swedish version and click on the english version.
    Content
    Warning! This is techy mumbo jumbo linux-howto-article!

    To get a translation of this text, hide the swedish version and click on the english version.

    Svensk Version

    Det enda som verkligen tycks betyda något i barnens liv, bortsett från de gånger de faktiskt uppskattar att träffa vänner och gå ut, är internet. Därför har jag under lång tid använt internet som ett tydligt styrmedel: sköter man sina åtaganden är internet öppet. Sköter man inget alls är internet helt stängt.

    Det fungerar för det mesta. Problemet uppstår när det blir bråk.

    I de lägena dyker det ofta upp påståenden om att internet absolut behövs för skolarbete. Det är inte särskilt troligt mitt under ett lov, men det händer faktiskt att skolarbeten måste göras även då. Ibland handlar det inte ens om skola, utan om något så basalt som att någon behöver kunna somna med ljud i hörlurarna.

    Table of Contents
    Toggle
    Så hur gör man då?Vad jag faktiskt har byggtHur ser det ut?1. Fasta IP per enhet (DHCP)2. En konfigurationsfil med domäner som ska kunna blockas3. Resolver som gör om domäner till CIDR-ranges4. State per person5. Styrning med ett kommando6. Apply-fasen (iptables)So how do you deal with it?What I have actually builtWhat does it look like?1. Fixed IPs per device (DHCP)2. A configuration file with domains that can be blocked3. Resolver that turns domains into CIDR ranges4. State per person5. Control with a single command6. Apply phase (iptables)
    Så hur gör man då?

    Den enkla lösningen är inte att antingen stänga allt eller släppa allt. Lösningen är att begränsa internet på personnivå.

    Problemet är att de flesta färdiga brandväggslösningar och föräldrakontroller som klarar detta på riktigt ofta är dyra, inlåsta eller alldeles för grova. DNS-baserade lösningar räcker inte heller i ett hushåll där flera personer delar samma uppkoppling. Då måste man kunna begränsa per individ, inte per nätverk.

    Det var här behovet uppstod på riktigt. Inte minst eftersom Emily aktivt försökte hitta kryphål till internet.

    Vad jag faktiskt har byggt

    Jag har byggt ett system där varje person i hushållet behandlas individuellt på nätverksnivå. Varje enhet har ett fast internt IP och knyts till en person. Utifrån det kan internet styras i tre tydliga lägen:

    Full tillgång: allt är öppet

    Avstängt: all trafik stoppas helt

    Begränsat: internet är på, men utvalda tjänster blockeras

    Den begränsade nivån är den intressanta. I stället för att försöka filtrera innehåll via DNS eller appar används brandväggsregler som blockerar hela nätblock (CIDR-ranges) för specifika tjänster som spelplattformar och streaming. Det gör det betydligt svårare att kringgå, eftersom det inte räcker att byta DNS, app eller domän.

    För att detta ska vara hanterbart i praktiken har jag byggt ett eget styrscript. Med ett enda kommando kan jag slå på, stänga av eller begränsa internet för en specifik person eller till och med en specifik enhet. Status går alltid att se, och systemet överlever både omstarter och nätverksändringar.

    Resultatet är att argumenten om “jag behöver internet till skolan” inte längre automatiskt innebär fritt spelrum. Internet kan vara öppet där det faktiskt behövs, samtidigt som det som orsakar konflikterna hÃ¥lls borta.

    Det här är ingen kommersiell produkt och inget universallösning. Det är ett tekniskt svar på ett väldigt vardagligt problem i ett hushåll där internet blivit en central del av allt.

    Hur ser det ut?

    Här är en förenklad bild av hur det fungerar i praktiken. Inget är magiskt: allt bygger på fasta interna IP per enhet, en liten state-fil per person och en apply-slinga som lägger iptables-regler.

    1. Fasta IP per enhet (DHCP)

    Varje relevant enhet får en fast adress i DHCP (MAC -> fixed-address). Exempel:

    host Emily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.53;
    }

    host SkolEmily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.51;
    }

    host SkolEmily2 {
    hardware ethernet <mac>;
    fixed-address 10.1.1.52;
    }

    2. En konfigurationsfil med domäner som ska kunna blockas

    Filen /var/tornevall/system/etc/resolver/iplist.conf innehåller bara hostnames/domäner, en per rad:

    roblox.com
    www.roblox.com
    youtube.com
    www.youtube.com
    steamcommunity.com
    store.steampowered.com

    3. Resolver som gör om domäner till CIDR-ranges

    Resolvern är ett separat hjälpscript som heter resolvecidr. Dess enda uppgift är att ta en lista med domäner och översätta dem till hela nätblock (CIDR-ranges).

    Detta är nödvändigt eftersom stora tjänster använder många IP-adresser för redundans och lastbalansering. Att blockera en enskild IP-adress är i praktiken meningslöst; man måste blockera hela det nät som tjänsten är tilldelad.

    Resolvern arbetar i tre steg:

    Slår upp en eller flera IPv4-adresser för varje domän

    Kör whois på varje IP-adress

    Plockar ut hela CIDR-rangen från registry-datat

    En förenklad version av scriptet ser ut så här:

    #!/bin/bash
    set -e

    CONF="/var/tornevall/system/etc/resolver/iplist.conf"
    OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

    tmp=$(mktemp)

    while read -r host; do
    [ -z "$host" ] && continue
    [[ "$host" =~ ^# ]] && continue

    for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
    whois "$ip" | awk '/^CIDR:/ {print $2}'
    done
    done < "$CONF" | tr ',' '
    ' | sort -u > "$tmp"

    mv "$tmp" "$OUT"

    Resultatet skrivs till /var/tornevall/system/etc/resolver/iplist.resolved och innehåller enbart CIDR-ranges:

    128.116.0.0/17
    142.250.0.0/15
    172.217.0.0/16
    216.58.192.0/19
    23.0.0.0/12

    Det är den här listan som kopieras in i personens state-fil när man aktiverar strict.

    4. State per person

    Varje person har en state-fil:

    /var/tornevall/system/etc/resolver/state-emily

    /var/tornevall/system/etc/resolver/state-max

    /var/tornevall/system/etc/resolver/state-thomas

    Tom fil = full tillgång. Thomas = Test-state. Man bör inte blocka sig själv dock.

    När man kör strict kopieras iplist.resolved in i personens state-fil.

    5. Styrning med ett kommando

    Scriptet kan slå av/på per person eller per enhet:

    # Status
    nethandle

    # Stäng allt internet för Emily
    nethandle emily off

    # Släpp på internet men blocka valda tjänster (CIDR-listan)
    nethandle emily on strict

    # Bara en enhet (Antilopen) får strict, övriga kan få andra lägen
    nethandle emily-antilopen on strict

    # Full tillgång igen (tömmer state)
    nethandle emily on

    6. Apply-fasen (iptables)

    En separat apply-komponent körs efter varje ändring och vid boot. Den läser state-filerna och skapar:

    en kedja per person, t.ex. NH_EMILY

    en JUMP-regel i FORWARD per intern IP som ska styras

    DROP-regler i kedjan för varje CIDR i state-filen

    Förenklat ser det ut så här:

    Chain FORWARD
    NH_EMILY all -- 10.1.1.23 0.0.0.0/0
    NH_EMILY all -- 10.1.1.52 0.0.0.0/0
    NH_EMILY all -- 10.1.1.51 0.0.0.0/0
    NH_EMILY all -- 10.1.1.53 0.0.0.0/0

    Chain NH_EMILY
    DROP all -- 0.0.0.0/0 128.116.0.0/17
    DROP all -- 0.0.0.0/0 142.250.0.0/15
    ...

    Poängen är att blocken blir “per person” eftersom bara just de interna IP-adresserna hoppar in i kedjan.

    English version
    The only thing that really seems to matter in my children’s lives, apart from the times when they actually appreciate meeting friends and going out, is the internet. Because of that, for a long time I have used internet access as a clear tool for control: if you take care of your responsibilities, the internet is open. If you take care of nothing at all, the internet is completely shut off.

    This works most of the time. The problem arises when arguments happen.

    In those situations, claims often appear that the internet is absolutely necessary for schoolwork. That is not particularly likely in the middle of a school break, but it does in fact happen that school assignments need to be done even then. Sometimes it is not even about school, but about something as basic as someone needing to be able to fall asleep with audio in their headphones.

    So how do you deal with it?

    The simple solution is not to either shut everything down or let everything through. The solution is to limit internet access on a per-person basis.

    The problem is that most off-the-shelf firewall solutions and parental control systems that can actually do this properly are often expensive, locked down, or far too coarse. DNS-based solutions are not sufficient either in a household where several people share the same connection. In that case, you need to be able to limit per individual, not per network.

    That was where the need truly emerged. Not least because Emily actively tried to find loopholes to get internet access.

    What I have actually built

    I have built a system where each person in the household is handled individually at the network level. Each device has a fixed internal IP address and is tied to a person. Based on that, internet access can be controlled in three clear modes:

    Full access: everything is open

    Off: all traffic is completely blocked

    Limited: the internet is on, but selected services are blocked

    The limited mode is the interesting one. Instead of trying to filter content via DNS or apps, firewall rules are used to block entire network blocks (CIDR ranges) for specific services such as gaming platforms and streaming. This makes it significantly harder to circumvent, because it is not enough to change DNS, an app, or a domain.

    To make this manageable in practice, I have built my own control script. With a single command, I can turn internet access on, off, or limit it for a specific person or even a specific device. Status is always visible, and the system survives both reboots and network changes.

    The result is that arguments like “I need the internet for school” no longer automatically mean free rein. The internet can be open where it is actually needed, while what causes the conflicts is kept out.

    This is not a commercial product and not a universal solution. It is a technical response to a very everyday problem in a household where the internet has become a central part of everything.

    What does it look like?

    Here is a simplified picture of how it works in practice. Nothing is magical: everything is based on fixed internal IPs per device, a small state file per person, and an apply loop that installs iptables rules.

    1. Fixed IPs per device (DHCP)

    Each relevant device gets a fixed address in DHCP (MAC -> fixed-address). Example:

    host Emily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.53;
    }

    host SchoolEmily {
    hardware ethernet <mac>;
    fixed-address 10.1.1.51;
    }

    host SchoolEmily2 {
    hardware ethernet <mac>;
    fixed-address 10.1.1.52;
    }

    2. A configuration file with domains that can be blocked

    The file /var/tornevall/system/etc/resolver/iplist.conf contains only hostnames/domains, one per line:

    roblox.com
    www.roblox.com
    youtube.com
    www.youtube.com
    steamcommunity.com
    store.steampowered.com

    3. Resolver that turns domains into CIDR ranges

    The resolver is a separate helper script called resolvecidr. Its sole purpose is to take a list of domains and translate them into entire network blocks (CIDR ranges).

    This is necessary because large services use many IP addresses for redundancy and load balancing. Blocking a single IP address is practically meaningless; you have to block the entire network that the service is assigned.

    The resolver works in three steps:

    Looks up one or more IPv4 addresses for each domain

    Runs whois on each IP address

    Extracts the full CIDR range from the registry data

    A simplified version of the script looks like this:

    #!/bin/bash
    set -e

    CONF="/var/tornevall/system/etc/resolver/iplist.conf"
    OUT="/var/tornevall/system/etc/resolver/iplist.resolved"

    tmp=$(mktemp)

    while read -r host; do
    [ -z "$host" ] && continue
    [[ "$host" =~ ^# ]] && continue

    for ip in $(getent ahostsv4 "$host" | awk '{print $1}'); do
    whois "$ip" | awk '/^CIDR:/ {print $2}'
    done
    done < "$CONF" | tr ',' '\n' | sort -u > "$tmp"

    mv "$tmp" "$OUT"

    The result is written to /var/tornevall/system/etc/resolver/iplist.resolved and contains only CIDR ranges:

    128.116.0.0/17
    142.250.0.0/15
    172.217.0.0/16
    216.58.192.0/19
    23.0.0.0/12

    This is the list that is copied into a person’s state file when strict is activated.

    4. State per person

    Each person has a state file:

    /var/tornevall/system/etc/resolver/state-emily

    /var/tornevall/system/etc/resolver/state-max

    /var/tornevall/system/etc/resolver/state-thomas

    An empty file means full access. Thomas = test state. You should not block yourself.

    When strict is used, iplist.resolved is copied into the person’s state file.

    5. Control with a single command

    The script can turn access on or off per person or per device:

    # Status
    nethandle

    # Shut down all internet for Emily
    nethandle emily off

    # Allow internet but block selected services (CIDR list)
    nethandle emily on strict

    # Only one device (Antilopen) gets strict, others can have different modes
    nethandle emily-antilopen on strict

    # Full access again (clears state)
    nethandle emily on

    6. Apply phase (iptables)

    A separate apply component runs after every change and at boot. It reads the state files and creates:

    one chain per person, for example NH_EMILY

    a JUMP rule in FORWARD per internal IP that should be controlled

    DROP rules in the chain for each CIDR in the state file

    Simplified, it looks like this:

    Chain FORWARD
    NH_EMILY all -- 10.1.1.23 0.0.0.0/0
    NH_EMILY all -- 10.1.1.52 0.0.0.0/0
    NH_EMILY all -- 10.1.1.51 0.0.0.0/0
    NH_EMILY all -- 10.1.1.53 0.0.0.0/0

    Chain NH_EMILY
    DROP all -- 0.0.0.0/0 128.116.0.0/17
    DROP all -- 0.0.0.0/0 142.250.0.0/15
    ...

    The point is that the blocks become “per person” because only those specific internal IP addresses jump into the chain.

People are predicting Suno’s death – how likely is it?

Permalink
Published: 2025-12-29 10:32:07
Discovered: 2026-03-19 13:50:20
Hash: 696e004598696c9b32ec7879894bc14619881ea9
https://www.tornevalls.se/people-are-predicting-sunos-death-how-likely-is-it/
Description

Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...

Content

Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”.

That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”.

I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”.

Table of Contents Toggle What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now What is actually happening

The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs.

At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026.

Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled.

Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away.

Why the “Suno will die” narrative keeps showing up

This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story.

First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy.

Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s sense of authorship or emotional investment, and they already allow broad control over access and usage.

Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering.

The first two elements are grounded in reality. The third is usually narrative-building rather than evidence.

Latest claims I have seen in that thread

Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”

What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs.

What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist.

So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law.

Claim: “A settlement will force a ‘clean model’ and kill creativity”

What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns.

What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large.

Claim: “You don’t own anything, you are renting, and your catalog can vanish”

This is the part where people accidentally become correct, but for the wrong reasons.

Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down.

Contract reality matters: the ToS is designed to give the platform broad rights and broad control.

The practical takeaway is simple and non-dramatic:

Back up your WAVs/stems and project notes locally. Always.

Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”

Possible: yes, as a policy choice.

Inevitable: no.

Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome.

So what are the real risks for Suno?

Think in terms of business incentives.

High probability changes

When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely.

Download rules are also likely to tighten. Free tiers may lose download rights entirely, while paid tiers may face caps or stricter limits.

Pricing and credit structures are likely to change as well. Licensing is expensive, and those costs tend to be passed down to users through higher prices, fewer credits, or tighter usage limits.

Medium probability changes

It is also plausible that Suno will introduce stronger similarity or compliance checks. This would not necessarily resemble YouTube-style Content ID systems, but rather softer pressure aimed at avoiding the generation of obvious sound-alikes.

In addition, restrictions on uploads may increase. This is particularly likely when users upload audio files specifically to steer or constrain generations, as that carries higher legal and licensing risk.

Lower probability, but still worth planning for

There is also a lower-probability risk that access to some legacy outputs could be removed retroactively, or that such material could be reclassified as non-commercial or unsupported.

A complete shutdown of the service is unlikely, but it is never entirely impossible in any SaaS-based business and should not be treated as unthinkable.

What about us who actually do the work?

Here is the split that regulation will make clearer over time.

If you actually create something

If you write lyrics, arrange, edit, re-record, mix, master, and build something with intent, you can still treat Suno as a sketchpad, as a collaborator, and as a generator of stems and ideas.

At the same time, you should behave accordingly. That means keeping source files and version history, documenting what you actually did in terms of lyrics, edits, arrangement choices, and post-production, and not assuming that a paid subscription automatically equals copyright ownership.

If you do nothing and just press generate

This is where it all goes to shit, and yes, this is exactly where regulation is needed.

When people brag “I created and produced this” while doing absolutely nothing, they are not just annoying. They flood the platforms with garbage. Output turns into spam, quality drops, and the legal risk goes up. That is what forces companies to lock things down harder for everyone else.

So my position is simple and not negotiable. Regulation is welcome, not to kill AI music, but to put clear lines around licensing, consent, attribution, and responsibility. And if you want credit for a piece of music, you need to have actually contributed something. Otherwise you are not a creator, you are just occupying space in a very loud machine.

What you should do right now

This does not require panic. It does require using your head.

Read the agreement you are actually using. Not a Reddit summary, not a Facebook hot take, not even this article – but the Terms of Service as written. The copyright attorney whose video was linked in that thread has been issuing the same warnings for years, across multiple AI platforms. Her core message has always been the same: these services are built to protect the company first, and whatever rights you think you have only exist within that framework.

That does not mean Suno is about to implode, or that your music will suddenly be deleted tomorrow. It does mean that copyright pressure will eventually collide with the current free-for-all, because it always does when enough money is involved.

Whether that collision results in fines, settlements, licensing fees, tighter controls, or all of the above depends largely on how much capital Suno has set aside to absorb legal pressure, pay damages, or buy peace through licensing. None of that is visible to users, and none of it is decided by vibes on Facebook.

So the reasonable position is boring but solid. Keep local copies of anything you care about. Treat Suno as a tool, not a vault. Assume rules will tighten over time. And stop confusing convenience with ownership.


History — 2 versions shown

Changes

From 2025-12-29 10:32:07 (discovered: 2026-02-05 14:24:03) hash: e7e71a61897ed20875ea43e501419311b91b35b1
To 2025-12-29 10:32:07 (discovered: 2026-03-19 13:50:20) hash: 696e004598696c9b32ec7879894bc14619881ea9
Title
People are predicting Suno’s death – how likely is it?
Description
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...
Content
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”. That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”. I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”. Table of Contents Toggle What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now What is actually happening The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs. At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026. Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled. Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away. Why the “Suno will die” narrative keeps showing up This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story. First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy. Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s user’s sense of authorship or emotional investment, and they already allow broad control over access and usage. Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering. The first two elements are grounded in reality. The third is usually narrative-building rather than evidence. Latest claims I have seen in that thread Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music” What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs. What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist. So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law. Claim: “A settlement will force a ‘clean model’ and kill creativity” What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns. What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large. Claim: “You don’t own anything, you are renting, and your catalog can vanish” This is the part where people accidentally become correct, but for the wrong reasons. Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down. Contract reality matters: the ToS is designed to give the platform broad rights and broad control. The practical takeaway is simple and non-dramatic: Back up your WAVs/stems and project notes locally. Always. Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky” Possible: yes, as a policy choice. Inevitable: no. Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome. So what are the real risks for Suno? Think in terms of business incentives. High probability changes When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely. Download rules are also likely to tighten.
Old vs new
From
TITLE:
People are predicting Suno’s death – how likely is it?

DESCRIPTION:
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...

CONTENT:
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”.

That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”.

I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”.

Table of Contents
Toggle
What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now
What is actually happening

The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs.

At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026.

Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled.

Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away.

Why the “Suno will die” narrative keeps showing up

This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story.

First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy.

Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s sense of authorship or emotional investment, and they already allow broad control over access and usage.

Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering.

The first two elements are grounded in reality. The third is usually narrative-building rather than evidence.

Latest claims I have seen in that thread

Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”

What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs.

What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist.

So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law.

Claim: “A settlement will force a ‘clean model’ and kill creativity”

What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns.

What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large.

Claim: “You don’t own anything, you are renting, and your catalog can vanish”

This is the part where people accidentally become correct, but for the wrong reasons.

Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down.

Contract reality matters: the ToS is designed to give the platform broad rights and broad control.

The practical takeaway is simple and non-dramatic:

Back up your WAVs/stems and project notes locally. Always.

Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”

Possible: yes, as a policy choice.

Inevitable: no.

Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome.

So what are the real risks for Suno?

Think in terms of business incentives.

High probability changes

When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely.

Download rules are also likely to tighten. Free tiers may lose download rights entirely, while paid tiers may face caps or stricter limits.

Pricing and credit structures are likely to change as well. Licensing is expensive, and those costs tend to be passed down to users through higher prices, fewer credits, or tighter usage limits.

Medium probability changes

It is also plausible that Suno will introduce stronger similarity or compliance checks. This would not necessarily resemble YouTube-style Content ID systems, but rather softer pressure aimed at avoiding the generation of obvious sound-alikes.

In addition, restrictions on uploads may increase. This is particularly likely when users upload audio files specifically to steer or constrain generations, as that carries higher legal and licensing risk.

Lower probability, but still worth planning for

There is also a lower-probability risk that access to some legacy outputs could be removed retroactively, or that such material could be reclassified as non-commercial or unsupported.

A complete shutdown of the service is unlikely, but it is never entirely impossible in any SaaS-based business and should not be treated as unthinkable.

What about us who actually do the work?

Here is the split that regulation will make clearer over time.

If you actually create something

If you write lyrics, arrange, edit, re-record, mix, master, and build something with intent, you can still treat Suno as a sketchpad, as a collaborator, and as a generator of stems and ideas.

At the same time, you should behave accordingly. That means keeping source files and version history, documenting what you actually did in terms of lyrics, edits, arrangement choices, and post-production, and not assuming that a paid subscription automatically equals copyright ownership.

If you do nothing and just press generate

This is where it all goes to shit, and yes, this is exactly where regulation is needed.

When people brag “I created and produced this” while doing absolutely nothing, they are not just annoying. They flood the platforms with garbage. Output turns into spam, quality drops, and the legal risk goes up. That is what forces companies to lock things down harder for everyone else.

So my position is simple and not negotiable. Regulation is welcome, not to kill AI music, but to put clear lines around licensing, consent, attribution, and responsibility. And if you want credit for a piece of music, you need to have actually contributed something. Otherwise you are not a creator, you are just occupying space in a very loud machine.

What you should do right now

This does not require panic. It does require using your head.

Read the agreement you are actually using. Not a Reddit summary, not a Facebook hot take, not even this article – but the Terms of Service as written. The copyright attorney whose video was linked in that thread has been issuing the same warnings for years, across multiple AI platforms. Her core message has always been the same: these services are built to protect the company first, and whatever rights you think you have only exist within that framework.

That does not mean Suno is about to implode, or that your music will suddenly be deleted tomorrow. It does mean that copyright pressure will eventually collide with the current free-for-all, because it always does when enough money is involved.

Whether that collision results in fines, settlements, licensing fees, tighter controls, or all of the above depends largely on how much capital Suno has set aside to absorb legal pressure, pay damages, or buy peace through licensing. None of that is visible to users, and none of it is decided by vibes on Facebook.

So the reasonable position is boring but solid. Keep local copies of anything you care about. Treat Suno as a tool, not a vault. Assume rules will tighten over time. And stop confusing convenience with ownership.
To
TITLE:
People are predicting Suno’s death – how likely is it?

DESCRIPTION:
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...

CONTENT:
Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”.

That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”.

I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”.

Table of Contents
Toggle
What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now
What is actually happening

The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs.

At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026.

Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled.

Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away.

Why the “Suno will die” narrative keeps showing up

This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story.

First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy.

Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s sense of authorship or emotional investment, and they already allow broad control over access and usage.

Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering.

The first two elements are grounded in reality. The third is usually narrative-building rather than evidence.

Latest claims I have seen in that thread

Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”

What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs.

What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist.

So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law.

Claim: “A settlement will force a ‘clean model’ and kill creativity”

What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns.

What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large.

Claim: “You don’t own anything, you are renting, and your catalog can vanish”

This is the part where people accidentally become correct, but for the wrong reasons.

Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down.

Contract reality matters: the ToS is designed to give the platform broad rights and broad control.

The practical takeaway is simple and non-dramatic:

Back up your WAVs/stems and project notes locally. Always.

Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”

Possible: yes, as a policy choice.

Inevitable: no.

Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome.

So what are the real risks for Suno?

Think in terms of business incentives.

High probability changes

When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely.

Download rules are also likely to tighten. Free tiers may lose download rights entirely, while paid tiers may face caps or stricter limits.

Pricing and credit structures are likely to change as well. Licensing is expensive, and those costs tend to be passed down to users through higher prices, fewer credits, or tighter usage limits.

Medium probability changes

It is also plausible that Suno will introduce stronger similarity or compliance checks. This would not necessarily resemble YouTube-style Content ID systems, but rather softer pressure aimed at avoiding the generation of obvious sound-alikes.

In addition, restrictions on uploads may increase. This is particularly likely when users upload audio files specifically to steer or constrain generations, as that carries higher legal and licensing risk.

Lower probability, but still worth planning for

There is also a lower-probability risk that access to some legacy outputs could be removed retroactively, or that such material could be reclassified as non-commercial or unsupported.

A complete shutdown of the service is unlikely, but it is never entirely impossible in any SaaS-based business and should not be treated as unthinkable.

What about us who actually do the work?

Here is the split that regulation will make clearer over time.

If you actually create something

If you write lyrics, arrange, edit, re-record, mix, master, and build something with intent, you can still treat Suno as a sketchpad, as a collaborator, and as a generator of stems and ideas.

At the same time, you should behave accordingly. That means keeping source files and version history, documenting what you actually did in terms of lyrics, edits, arrangement choices, and post-production, and not assuming that a paid subscription automatically equals copyright ownership.

If you do nothing and just press generate

This is where it all goes to shit, and yes, this is exactly where regulation is needed.

When people brag “I created and produced this” while doing absolutely nothing, they are not just annoying. They flood the platforms with garbage. Output turns into spam, quality drops, and the legal risk goes up. That is what forces companies to lock things down harder for everyone else.

So my position is simple and not negotiable. Regulation is welcome, not to kill AI music, but to put clear lines around licensing, consent, attribution, and responsibility. And if you want credit for a piece of music, you need to have actually contributed something. Otherwise you are not a creator, you are just occupying space in a very loud machine.

What you should do right now

This does not require panic. It does require using your head.

Read the agreement you are actually using. Not a Reddit summary, not a Facebook hot take, not even this article – but the Terms of Service as written. The copyright attorney whose video was linked in that thread has been issuing the same warnings for years, across multiple AI platforms. Her core message has always been the same: these services are built to protect the company first, and whatever rights you think you have only exist within that framework.

That does not mean Suno is about to implode, or that your music will suddenly be deleted tomorrow. It does mean that copyright pressure will eventually collide with the current free-for-all, because it always does when enough money is involved.

Whether that collision results in fines, settlements, licensing fees, tighter controls, or all of the above depends largely on how much capital Suno has set aside to absorb legal pressure, pay damages, or buy peace through licensing. None of that is visible to users, and none of it is decided by vibes on Facebook.

So the reasonable position is boring but solid. Keep local copies of anything you care about. Treat Suno as a tool, not a vault. Assume rules will tighten over time. And stop confusing convenience with ownership.

Versions

  1. 2025-12-29 10:32:07
    Discovered: 2026-03-19 13:50:20 Hash: 696e004598696c9b32ec7879894bc14619881ea9
    Title:
    People are predicting Suno’s death – how likely is it?
    Description:
    Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...
    Content
    Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”.

    That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”.

    I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”.

    Table of Contents
    Toggle
    What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now
    What is actually happening

    The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs.

    At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026.

    Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled.

    Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away.

    Why the “Suno will die” narrative keeps showing up

    This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story.

    First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy.

    Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s sense of authorship or emotional investment, and they already allow broad control over access and usage.

    Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering.

    The first two elements are grounded in reality. The third is usually narrative-building rather than evidence.

    Latest claims I have seen in that thread

    Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”

    What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs.

    What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist.

    So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law.

    Claim: “A settlement will force a ‘clean model’ and kill creativity”

    What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns.

    What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large.

    Claim: “You don’t own anything, you are renting, and your catalog can vanish”

    This is the part where people accidentally become correct, but for the wrong reasons.

    Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down.

    Contract reality matters: the ToS is designed to give the platform broad rights and broad control.

    The practical takeaway is simple and non-dramatic:

    Back up your WAVs/stems and project notes locally. Always.

    Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”

    Possible: yes, as a policy choice.

    Inevitable: no.

    Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome.

    So what are the real risks for Suno?

    Think in terms of business incentives.

    High probability changes

    When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely.

    Download rules are also likely to tighten. Free tiers may lose download rights entirely, while paid tiers may face caps or stricter limits.

    Pricing and credit structures are likely to change as well. Licensing is expensive, and those costs tend to be passed down to users through higher prices, fewer credits, or tighter usage limits.

    Medium probability changes

    It is also plausible that Suno will introduce stronger similarity or compliance checks. This would not necessarily resemble YouTube-style Content ID systems, but rather softer pressure aimed at avoiding the generation of obvious sound-alikes.

    In addition, restrictions on uploads may increase. This is particularly likely when users upload audio files specifically to steer or constrain generations, as that carries higher legal and licensing risk.

    Lower probability, but still worth planning for

    There is also a lower-probability risk that access to some legacy outputs could be removed retroactively, or that such material could be reclassified as non-commercial or unsupported.

    A complete shutdown of the service is unlikely, but it is never entirely impossible in any SaaS-based business and should not be treated as unthinkable.

    What about us who actually do the work?

    Here is the split that regulation will make clearer over time.

    If you actually create something

    If you write lyrics, arrange, edit, re-record, mix, master, and build something with intent, you can still treat Suno as a sketchpad, as a collaborator, and as a generator of stems and ideas.

    At the same time, you should behave accordingly. That means keeping source files and version history, documenting what you actually did in terms of lyrics, edits, arrangement choices, and post-production, and not assuming that a paid subscription automatically equals copyright ownership.

    If you do nothing and just press generate

    This is where it all goes to shit, and yes, this is exactly where regulation is needed.

    When people brag “I created and produced this” while doing absolutely nothing, they are not just annoying. They flood the platforms with garbage. Output turns into spam, quality drops, and the legal risk goes up. That is what forces companies to lock things down harder for everyone else.

    So my position is simple and not negotiable. Regulation is welcome, not to kill AI music, but to put clear lines around licensing, consent, attribution, and responsibility. And if you want credit for a piece of music, you need to have actually contributed something. Otherwise you are not a creator, you are just occupying space in a very loud machine.

    What you should do right now

    This does not require panic. It does require using your head.

    Read the agreement you are actually using. Not a Reddit summary, not a Facebook hot take, not even this article – but the Terms of Service as written. The copyright attorney whose video was linked in that thread has been issuing the same warnings for years, across multiple AI platforms. Her core message has always been the same: these services are built to protect the company first, and whatever rights you think you have only exist within that framework.

    That does not mean Suno is about to implode, or that your music will suddenly be deleted tomorrow. It does mean that copyright pressure will eventually collide with the current free-for-all, because it always does when enough money is involved.

    Whether that collision results in fines, settlements, licensing fees, tighter controls, or all of the above depends largely on how much capital Suno has set aside to absorb legal pressure, pay damages, or buy peace through licensing. None of that is visible to users, and none of it is decided by vibes on Facebook.

    So the reasonable position is boring but solid. Keep local copies of anything you care about. Treat Suno as a tool, not a vault. Assume rules will tighten over time. And stop confusing convenience with ownership.
  2. 2025-12-29 10:32:07
    Discovered: 2026-02-05 14:24:03 Hash: e7e71a61897ed20875ea43e501419311b91b35b1
    Title:
    People are predicting Suno’s death – how likely is it?
    Description:
    Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main...
    Content
    Not long ago, Udio effectively took the “fine, we’ll license it” route: it reached a strategic agreement with Universal Music Group around a new licensed AI music platform planned for 2026. That came after the 2024 lawsuits became the main backdrop for the entire AI-music sector. In other words: this space is not moving toward “no regulation”. It is moving toward “pay for access, pay for rights, gate features, control the pipeline”.

    That context matters when people on Facebook start writing doom posts about Suno “going down” or getting “lobotomized”.

    I am not going to pretend the risk is zero. But the likely future is not “Suno dies”. The likely future is “Suno changes”.

    Table of Contents
    Toggle
    What is actually happeningWhy the “Suno will die” narrative keeps showing upLatest claims I have seen in that threadClaim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”Claim: “A settlement will force a ‘clean model’ and kill creativity”Claim: “You don’t own anything, you are renting, and your catalog can vanish”Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”So what are the real risks for Suno?High probability changesMedium probability changesLower probability, but still worth planning forWhat about us who actually do the work?If you actually create somethingIf you do nothing and just press generateWhat you should do right now
    What is actually happening

    The lawsuits are real. In June 2024, the major labels sued Suno and Udio for alleged copyright infringement tied to training data and generated outputs.

    At the same time, licensing deals are real as well. Udio has a publicly announced agreement with Universal Music Group aimed at building a licensed AI music creation platform, with a stated target around 2026.

    Suno is moving in the same direction. Warner Music Group has entered a licensing partnership with Suno that also points toward licensed models in 2026, along with changes to how downloads and access are handled.

    Taken together, this follows a familiar industry pattern: first comes litigation, then comes licensing, once it becomes clear that the technology itself is not going away.

    Why the “Suno will die” narrative keeps showing up

    This narrative tends to appear because many doom posts combine several different things and present them as a single, coherent story.

    First, there is a real legal problem. Lawsuits against AI-music platforms exist, and they are serious enough to affect business decisions and long-term strategy.

    Second, there is a real contract reality. Terms of Service are written to protect the platform, not the user’s sense of authorship or emotional investment, and they already allow broad control over access and usage.

    Third, a speculative causal chain is often added on top. A temporary outage is interpreted as legal panic, which then becomes secret audits, year-end reporting pressure, or a hidden rollout of copyright filtering.

    The first two elements are grounded in reality. The third is usually narrative-building rather than evidence.

    Latest claims I have seen in that thread

    Claim: “Suno was trained on all humanity’s music, therefore it will be forced into public domain and stock music”

    What holds: Licensing pressure is pushing companies toward licensed datasets and opt-in catalogs.

    What does not: “Licensed” does not automatically mean “Mozart only”. Licensed can mean modern catalogs, if the business deals exist.

    So the conclusion “it will become elevator music” is not a fact. It is a taste prediction dressed up as law.

    Claim: “A settlement will force a ‘clean model’ and kill creativity”

    What holds: Restrictions can reduce the model’s freedom to imitate specific mainstream patterns.

    What does not: Creativity is not a single knob called “trained illegally”. Plenty of music is great under constraints. Also, new licensed catalogs can still be large.

    Claim: “You don’t own anything, you are renting, and your catalog can vanish”

    This is the part where people accidentally become correct, but for the wrong reasons.

    Platform risk is real: any cloud service can change tiers, cap downloads, remove features, or even shut down.

    Contract reality matters: the ToS is designed to give the platform broad rights and broad control.

    The practical takeaway is simple and non-dramatic:

    Back up your WAVs/stems and project notes locally. Always.

    Claim: “Suno will retroactively lock or delete older songs because the old models are legally risky”

    Possible: yes, as a policy choice.

    Inevitable: no.

    Companies do sometimes quarantine “legacy” features. They also often keep them accessible to avoid user revolt. The honest position is: it is a risk, but not a guaranteed outcome.

    So what are the real risks for Suno?

    Think in terms of business incentives.

    High probability changes

    When licensed models are introduced, older models are likely to be phased out over time rather than supported indefinitely.

    Download rules are also likely to tighten. Free tiers may lose download rights entirely, while paid tiers may face caps or stricter limits.

    Pricing and credit structures are likely to change as well. Licensing is expensive, and those costs tend to be passed down to users through higher prices, fewer credits, or tighter usage limits.

    Medium probability changes

    It is also plausible that Suno will introduce stronger similarity or compliance checks. This would not necessarily resemble YouTube-style Content ID systems, but rather softer pressure aimed at avoiding the generation of obvious sound-alikes.

    In addition, restrictions on uploads may increase. This is particularly likely when users upload audio files specifically to steer or constrain generations, as that carries higher legal and licensing risk.

    Lower probability, but still worth planning for

    There is also a lower-probability risk that access to some legacy outputs could be removed retroactively, or that such material could be reclassified as non-commercial or unsupported.

    A complete shutdown of the service is unlikely, but it is never entirely impossible in any SaaS-based business and should not be treated as unthinkable.

    What about us who actually do the work?

    Here is the split that regulation will make clearer over time.

    If you actually create something

    If you write lyrics, arrange, edit, re-record, mix, master, and build something with intent, you can still treat Suno as a sketchpad, as a collaborator, and as a generator of stems and ideas.

    At the same time, you should behave accordingly. That means keeping source files and version history, documenting what you actually did in terms of lyrics, edits, arrangement choices, and post-production, and not assuming that a paid subscription automatically equals copyright ownership.

    If you do nothing and just press generate

    This is where it all goes to shit, and yes, this is exactly where regulation is needed.

    When people brag “I created and produced this” while doing absolutely nothing, they are not just annoying. They flood the platforms with garbage. Output turns into spam, quality drops, and the legal risk goes up. That is what forces companies to lock things down harder for everyone else.

    So my position is simple and not negotiable. Regulation is welcome, not to kill AI music, but to put clear lines around licensing, consent, attribution, and responsibility. And if you want credit for a piece of music, you need to have actually contributed something. Otherwise you are not a creator, you are just occupying space in a very loud machine.

    What you should do right now

    This does not require panic. It does require using your head.

    Read the agreement you are actually using. Not a Reddit summary, not a Facebook hot take, not even this article – but the Terms of Service as written. The copyright attorney whose video was linked in that thread has been issuing the same warnings for years, across multiple AI platforms. Her core message has always been the same: these services are built to protect the company first, and whatever rights you think you have only exist within that framework.

    That does not mean Suno is about to implode, or that your music will suddenly be deleted tomorrow. It does mean that copyright pressure will eventually collide with the current free-for-all, because it always does when enough money is involved.

    Whether that collision results in fines, settlements, licensing fees, tighter controls, or all of the above depends largely on how much capital Suno has set aside to absorb legal pressure, pay damages, or buy peace through licensing. None of that is visible to users, and none of it is decided by vibes on Facebook.

    So the reasonable position is boring but solid. Keep local copies of anything you care about. Treat Suno as a tool, not a vault. Assume rules will tighten over time. And stop confusing convenience with ownership.

The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060

Permalink
Published: 2025-12-23 11:26:07
Discovered: 2026-03-19 13:50:20
Hash: b0fbb9c4287dd26aa452f1adc93e224e681051e1
https://www.tornevalls.se/the-struggle-transcribe-stuff-for-free-with-whisper-and-wsl-linux-with-a-gtx-1060/
Description

I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...

Content

I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc.

I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app.

Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized.

At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re expected to pay quite a bit just to keep going.

I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself.

The end result was the following (thanks to ChatGPT):

A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well.

A Whisper runner for WSL/Linux: run whisper and get a .txt transcript generated from the audio file.

A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click.

A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names.

The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in.

WSL uses python and pip…

Table of Contents Toggle whisper.batwhisper.reg (explorer right clicks)installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself whisper.bat

@echo off setlocal EnableExtensions

REM Force UTF-8 codepage (fixes å ä ö) chcp 65001 >nul

REM File passed from Explorer set "WIN_FILE=%~1"

REM Convert Windows path to WSL path (UTF-8 safe now) for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i"

REM Run whisper on that file wsl bash -lc "/usr/local/tornevall/whisper "%WSL_FILE%""

endlocal

whisper.reg (explorer right clicks)

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT*\shell\WhisperWSL] @="Transkribera med Whisper (WSL)" "Icon"="wsl.exe"

[HKEY_CLASSES_ROOT*\shell\WhisperWSL\command] @=""F:\viktigt\Private\Linux-Scripts\Whisper.bat" "%1""

installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)

To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts.

#!/usr/bin/env bash set -euo pipefail

VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}" MODE="install"

--- Parse args ---

while getopts ":u" opt; do case "$opt" in u) MODE="uninstall" ;; *) echo "Usage: $0 [-u]" exit 1 ;; esac done

echo "==> Whisper installer (GTX 1060 compatible)" echo "==> Mode: $MODE"

--- Sanity ---

if [[ ! -d "$VENV_DIR" ]]; then echo "Error: venv not found: $VENV_DIR" exit 1 fi

shellcheck disable=SC1090

source "$VENV_DIR/bin/activate"

python -m pip install --upgrade pip setuptools wheel

==================================================

UNINSTALL MODE (-u)

==================================================

if [[ "$MODE" == "uninstall" ]]; then echo "==> Uninstalling incompatible packages ONLY (-u)"

pip uninstall -y torch torchvision torchaudio || true pip uninstall -y numpy || true

echo "" echo "Done." echo "Uninstall completed. Nothing else touched." exit 0 fi

==================================================

INSTALL MODE (DEFAULT)

==================================================

echo "==> Installing compatible stack (no forced uninstall)"

pip install
numpy==1.26.4
torch==1.13.1+cu116
torchvision==0.14.1+cu116
torchaudio==0.13.1
--extra-index-url https://download.pytorch.org/whl/cu116

--- Verify ---

echo "==> Verifying environment" python - << 'EOF' import torch, numpy print("Torch:", torch.version) print("NumPy:", numpy.version) print("CUDA available:", torch.cuda.is_available()) if torch.cuda.is_available(): print("GPU:", torch.cuda.get_device_name(0)) print("Capability:", torch.cuda.get_device_capability(0)) EOF

echo "" echo "Done." echo "Install completed without destructive actions."

The script itself

The script can run without any switches – and only with the audio file intended to be transcribed (but as you can see, it can do a bit more).

#!/usr/bin/env bash set -euo pipefail

whisper-run.sh

Usage:

whisper <input.extension> [model] [language]

Output:

.txt (same directory)

Behaviour:

- Refuses to overwrite existing .txt

- Stops execution if output exists

if [[ $# -lt 1 ]]; then echo "Usage: whisper <input.extension> [model] [language]" exit 1 fi

INPUT="$1" MODEL="${2:-small}" LANGUAGE="${3:-}"

if [[ ! -f "$INPUT" ]]; then echo "Error: Input file not found: $INPUT" exit 1 fi

BASENAME="$(basename "$INPUT")" STEM="${BASENAME%.*}" OUTDIR="$(dirname "$INPUT")" OUTPUT="$OUTDIR/$STEM.txt"

--- Refuse overwrite ---

if [[ -f "$OUTPUT" ]]; then echo "Error: Output file already exists:" echo " $OUTPUT" echo "Aborting to avoid overwrite." exit 1 fi

Prefer venv whisper if installed via install script

WHISPER_VENV="${WHISPER_VENV:-$HOME/.venvs/whisper}" WHISPER_BIN="whisper" if [[ -x "$WHISPER_VENV/bin/whisper" ]]; then WHISPER_BIN="$WHISPER_VENV/bin/whisper" fi

if [[ "$WHISPER_BIN" == "whisper" ]] && ! command -v whisper >/dev/null 2>&1; then echo "Error: whisper not found in PATH or venv." exit 1 fi

TMPDIR="$(mktemp -d)" cleanup() { rm -rf "$TMPDIR"; } trap cleanup EXIT

echo "==> Transcribing:" echo " input: $INPUT" echo " output: $OUTPUT" echo " model: $MODEL" echo " lang: ${LANGUAGE:-auto}"

ARGS=( "$INPUT" --model "$MODEL" --output_dir "$TMPDIR" --output_format txt --task transcribe --verbose False --fp16 False )

if [[ -n "$LANGUAGE" ]]; then ARGS+=( --language "$LANGUAGE" ) fi

"$WHISPER_BIN" "${ARGS[@]}"

GENERATED_TXT="$TMPDIR/$STEM.txt" if [[ ! -f "$GENERATED_TXT" ]]; then FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)" if [[ -z "${FOUND_TXT:-}" ]]; then echo "Error: No .txt output produced." exit 1 fi GENERATED_TXT="$FOUND_TXT" fi

--- Final move (no overwrite possible due to earlier check) ---

mv "$GENERATED_TXT" "$OUTPUT"

echo "==> Done:" echo " $OUTPUT"


History — 2 versions shown

Changes

From 2025-12-23 11:26:07 (discovered: 2026-02-05 14:24:03) hash: 30b1980e02b98f24cf08ff2a3b59ce922f5c1d2d
To 2025-12-23 11:26:07 (discovered: 2026-03-19 13:50:20) hash: b0fbb9c4287dd26aa452f1adc93e224e681051e1
Title
The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060
Description
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...
Content
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc. I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app. Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized. At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re you’re expected to pay quite a bit just to keep going. I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself. The end result was the following (thanks to ChatGPT): A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well. A Whisper runner for WSL/Linux: run whisper and get a .txt transcript generated from the audio file. A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click. A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names. The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in. WSL uses python and pip… Table of Contents Toggle whisper.batwhisper.reg (explorer right clicks)installer för för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself whisper.bat @echo off setlocal EnableExtensions REM Force UTF-8 codepage (fixes Ã¥ ä ö) å ä ö) chcp 65001 >nul REM File passed from Explorer set "WIN_FILE=%~1" REM Convert Windows path to WSL path (UTF-8 safe now) for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i" REM Run whisper on that file wsl bash -lc "/usr/local/tornevall/whisper \"%WSL_FILE%\"" endlocal whisper.reg (explorer right clicks) Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\WhisperWSL] @="Transkribera med Whisper (WSL)" "Icon"="wsl.exe" [HKEY_CLASSES_ROOT\*\shell\WhisperWSL\command] @="\"F:\\viktigt\\Private\\Linux-Scripts\\Whisper.bat\" \"%1\"" installer för för WSL/Linux (with 1060-compatibilty and pre-uninstaller) To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts. #!/usr/bin/env bash set -euo pipefail VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}" MODE="install" # --- Parse args --- while getopts ":u" opt; do case "$opt" in u) MODE="uninstall" ;; *) echo "Usage: $0 [-u]" exit 1 ;; esac done echo "==> Whisper installer (GTX 1060 compatible)" echo "==> Mode: $MODE" # --- Sanity --- if [[ ! -d "$VENV_DIR" ]]; then echo "Error: venv not found: $VENV_DIR" exit 1 fi # shellcheck disable=SC1090 source "$VENV_DIR/bin/activate" python -m pip install --upgrade pip setuptools wheel # ================================================== # UNINSTALL MODE (-u) # ================================================== if [[ "$MODE" == "uninstall" ]]; then echo "==> Uninstalling incompatible packages ONLY (-u)" pip uninstall -y torch torchvision torchaudio || true pip uninstall -y numpy || true echo "" echo "Done." echo "Uninstall completed. Nothing else touched." exit 0 fi # ================================================== # INSTALL MODE (DEFAULT) # ================================================== echo "==> Installing compatible stack (no forced uninstall)" pip install \ numpy==1.26.4 \ torch==1.13.1+cu116 \ torchvision==0.14.1+cu116 \ torchaudio==0.13.1 \ --extra-index-url https://download.pytorch.org/whl/cu116 # --- Verify --- echo "==> Verifying environment" python - /dev/null 2>&1; then echo "Error: whisper not found in PATH or venv." exit 1 fi TMPDIR="$(mktemp -d)" cleanup() { rm -rf "$TMPDIR"; } trap cleanup EXIT echo "==> Transcribing:" echo " input: $INPUT" echo " output: $OUTPUT" echo " model: $MODEL" echo " lang: ${LANGUAGE:-auto}" ARGS=( "$INPUT" --model "$MODEL" --output_dir "$TMPDIR" --output_format txt --task transcribe --verbose False --fp16 False ) if [[ -n "$LANGUAGE" ]]; then ARGS+=( --language "$LANGUAGE" ) fi "$WHISPER_BIN" "${ARGS[@]}" GENERATED_TXT="$TMPDIR/$STEM.txt" if [[ ! -f "$GENERATED_TXT" ]]; then FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)" if [[ -z "${FOUND_TXT:-}" ]]; then echo "Error: No .txt output produced." exit 1 fi GENERATED_TXT="$FOUND_TXT" fi # --- Final
Old vs new
From
TITLE:
The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060

DESCRIPTION:
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...

CONTENT:
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc.

I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app.

Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized.

At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re expected to pay quite a bit just to keep going.

I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself.

The end result was the following (thanks to ChatGPT):

A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well.

A Whisper runner for WSL/Linux: run whisper <input-file> and get a .txt transcript generated from the audio file.

A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click.

A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names.

The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in.

WSL uses python and pip…

Table of Contents
Toggle
whisper.batwhisper.reg (explorer right clicks)installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself
whisper.bat

@echo off
setlocal EnableExtensions

REM Force UTF-8 codepage (fixes å ä ö)
chcp 65001 >nul

REM File passed from Explorer
set "WIN_FILE=%~1"

REM Convert Windows path to WSL path (UTF-8 safe now)
for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i"

REM Run whisper on that file
wsl bash -lc "/usr/local/tornevall/whisper \"%WSL_FILE%\""

endlocal

whisper.reg (explorer right clicks)

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\WhisperWSL]
@="Transkribera med Whisper (WSL)"
"Icon"="wsl.exe"

[HKEY_CLASSES_ROOT\*\shell\WhisperWSL\command]
@="\"F:\\viktigt\\Private\\Linux-Scripts\\Whisper.bat\" \"%1\""

installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)

To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts.

#!/usr/bin/env bash
set -euo pipefail

VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}"
MODE="install"

# --- Parse args ---
while getopts ":u" opt; do
 case "$opt" in
 u) MODE="uninstall" ;;
 *)
 echo "Usage: $0 [-u]"
 exit 1
 ;;
 esac
done

echo "==> Whisper installer (GTX 1060 compatible)"
echo "==> Mode: $MODE"

# --- Sanity ---
if [[ ! -d "$VENV_DIR" ]]; then
 echo "Error: venv not found: $VENV_DIR"
 exit 1
fi

# shellcheck disable=SC1090
source "$VENV_DIR/bin/activate"

python -m pip install --upgrade pip setuptools wheel

# ==================================================
# UNINSTALL MODE (-u)
# ==================================================
if [[ "$MODE" == "uninstall" ]]; then
 echo "==> Uninstalling incompatible packages ONLY (-u)"

 pip uninstall -y torch torchvision torchaudio || true
 pip uninstall -y numpy || true

 echo ""
 echo "Done."
 echo "Uninstall completed. Nothing else touched."
 exit 0
fi

# ==================================================
# INSTALL MODE (DEFAULT)
# ==================================================

echo "==> Installing compatible stack (no forced uninstall)"

pip install \
 numpy==1.26.4 \
 torch==1.13.1+cu116 \
 torchvision==0.14.1+cu116 \
 torchaudio==0.13.1 \
 --extra-index-url https://download.pytorch.org/whl/cu116

# --- Verify ---
echo "==> Verifying environment"
python - << 'EOF'
import torch, numpy
print("Torch:", torch.__version__)
print("NumPy:", numpy.__version__)
print("CUDA available:", torch.cuda.is_available())
if torch.cuda.is_available():
 print("GPU:", torch.cuda.get_device_name(0))
 print("Capability:", torch.cuda.get_device_capability(0))
EOF

echo ""
echo "Done."
echo "Install completed without destructive actions."

The script itself

The script can run without any switches – and only with the audio file intended to be transcribed (but as you can see, it can do a bit more).

#!/usr/bin/env bash
set -euo pipefail

# whisper-run.sh
# Usage:
# whisper <input.extension> [model] [language]
#
# Output:
# <input-filename>.txt (same directory)
#
# Behaviour:
# - Refuses to overwrite existing .txt
# - Stops execution if output exists

if [[ $# -lt 1 ]]; then
 echo "Usage: whisper <input.extension> [model] [language]"
 exit 1
fi

INPUT="$1"
MODEL="${2:-small}"
LANGUAGE="${3:-}"

if [[ ! -f "$INPUT" ]]; then
 echo "Error: Input file not found: $INPUT"
 exit 1
fi

BASENAME="$(basename "$INPUT")"
STEM="${BASENAME%.*}"
OUTDIR="$(dirname "$INPUT")"
OUTPUT="$OUTDIR/$STEM.txt"

# --- Refuse overwrite ---
if [[ -f "$OUTPUT" ]]; then
 echo "Error: Output file already exists:"
 echo " $OUTPUT"
 echo "Aborting to avoid overwrite."
 exit 1
fi

# Prefer venv whisper if installed via install script
WHISPER_VENV="${WHISPER_VENV:-$HOME/.venvs/whisper}"
WHISPER_BIN="whisper"
if [[ -x "$WHISPER_VENV/bin/whisper" ]]; then
 WHISPER_BIN="$WHISPER_VENV/bin/whisper"
fi

if [[ "$WHISPER_BIN" == "whisper" ]] && ! command -v whisper >/dev/null 2>&1; then
 echo "Error: whisper not found in PATH or venv."
 exit 1
fi

TMPDIR="$(mktemp -d)"
cleanup() { rm -rf "$TMPDIR"; }
trap cleanup EXIT

echo "==> Transcribing:"
echo " input: $INPUT"
echo " output: $OUTPUT"
echo " model: $MODEL"
echo " lang: ${LANGUAGE:-auto}"

ARGS=(
 "$INPUT"
 --model "$MODEL"
 --output_dir "$TMPDIR"
 --output_format txt
 --task transcribe
 --verbose False
 --fp16 False
)

if [[ -n "$LANGUAGE" ]]; then
 ARGS+=( --language "$LANGUAGE" )
fi

"$WHISPER_BIN" "${ARGS[@]}"

GENERATED_TXT="$TMPDIR/$STEM.txt"
if [[ ! -f "$GENERATED_TXT" ]]; then
 FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)"
 if [[ -z "${FOUND_TXT:-}" ]]; then
 echo "Error: No .txt output produced."
 exit 1
 fi
 GENERATED_TXT="$FOUND_TXT"
fi

# --- Final move (no overwrite possible due to earlier check) ---
mv "$GENERATED_TXT" "$OUTPUT"

echo "==> Done:"
echo " $OUTPUT"
To
TITLE:
The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060

DESCRIPTION:
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...

CONTENT:
I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc.

I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app.

Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized.

At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re expected to pay quite a bit just to keep going.

I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself.

The end result was the following (thanks to ChatGPT):

A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well.

A Whisper runner for WSL/Linux: run whisper <input-file> and get a .txt transcript generated from the audio file.

A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click.

A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names.

The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in.

WSL uses python and pip…

Table of Contents
Toggle
whisper.batwhisper.reg (explorer right clicks)installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself
whisper.bat

@echo off
setlocal EnableExtensions

REM Force UTF-8 codepage (fixes å ä ö)
chcp 65001 >nul

REM File passed from Explorer
set "WIN_FILE=%~1"

REM Convert Windows path to WSL path (UTF-8 safe now)
for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i"

REM Run whisper on that file
wsl bash -lc "/usr/local/tornevall/whisper \"%WSL_FILE%\""

endlocal

whisper.reg (explorer right clicks)

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\WhisperWSL]
@="Transkribera med Whisper (WSL)"
"Icon"="wsl.exe"

[HKEY_CLASSES_ROOT\*\shell\WhisperWSL\command]
@="\"F:\\viktigt\\Private\\Linux-Scripts\\Whisper.bat\" \"%1\""

installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)

To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts.

#!/usr/bin/env bash
set -euo pipefail

VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}"
MODE="install"

# --- Parse args ---
while getopts ":u" opt; do
 case "$opt" in
 u) MODE="uninstall" ;;
 *)
 echo "Usage: $0 [-u]"
 exit 1
 ;;
 esac
done

echo "==> Whisper installer (GTX 1060 compatible)"
echo "==> Mode: $MODE"

# --- Sanity ---
if [[ ! -d "$VENV_DIR" ]]; then
 echo "Error: venv not found: $VENV_DIR"
 exit 1
fi

# shellcheck disable=SC1090
source "$VENV_DIR/bin/activate"

python -m pip install --upgrade pip setuptools wheel

# ==================================================
# UNINSTALL MODE (-u)
# ==================================================
if [[ "$MODE" == "uninstall" ]]; then
 echo "==> Uninstalling incompatible packages ONLY (-u)"

 pip uninstall -y torch torchvision torchaudio || true
 pip uninstall -y numpy || true

 echo ""
 echo "Done."
 echo "Uninstall completed. Nothing else touched."
 exit 0
fi

# ==================================================
# INSTALL MODE (DEFAULT)
# ==================================================

echo "==> Installing compatible stack (no forced uninstall)"

pip install \
 numpy==1.26.4 \
 torch==1.13.1+cu116 \
 torchvision==0.14.1+cu116 \
 torchaudio==0.13.1 \
 --extra-index-url https://download.pytorch.org/whl/cu116

# --- Verify ---
echo "==> Verifying environment"
python - << 'EOF'
import torch, numpy
print("Torch:", torch.__version__)
print("NumPy:", numpy.__version__)
print("CUDA available:", torch.cuda.is_available())
if torch.cuda.is_available():
 print("GPU:", torch.cuda.get_device_name(0))
 print("Capability:", torch.cuda.get_device_capability(0))
EOF

echo ""
echo "Done."
echo "Install completed without destructive actions."

The script itself

The script can run without any switches – and only with the audio file intended to be transcribed (but as you can see, it can do a bit more).

#!/usr/bin/env bash
set -euo pipefail

# whisper-run.sh
# Usage:
# whisper <input.extension> [model] [language]
#
# Output:
# <input-filename>.txt (same directory)
#
# Behaviour:
# - Refuses to overwrite existing .txt
# - Stops execution if output exists

if [[ $# -lt 1 ]]; then
 echo "Usage: whisper <input.extension> [model] [language]"
 exit 1
fi

INPUT="$1"
MODEL="${2:-small}"
LANGUAGE="${3:-}"

if [[ ! -f "$INPUT" ]]; then
 echo "Error: Input file not found: $INPUT"
 exit 1
fi

BASENAME="$(basename "$INPUT")"
STEM="${BASENAME%.*}"
OUTDIR="$(dirname "$INPUT")"
OUTPUT="$OUTDIR/$STEM.txt"

# --- Refuse overwrite ---
if [[ -f "$OUTPUT" ]]; then
 echo "Error: Output file already exists:"
 echo " $OUTPUT"
 echo "Aborting to avoid overwrite."
 exit 1
fi

# Prefer venv whisper if installed via install script
WHISPER_VENV="${WHISPER_VENV:-$HOME/.venvs/whisper}"
WHISPER_BIN="whisper"
if [[ -x "$WHISPER_VENV/bin/whisper" ]]; then
 WHISPER_BIN="$WHISPER_VENV/bin/whisper"
fi

if [[ "$WHISPER_BIN" == "whisper" ]] && ! command -v whisper >/dev/null 2>&1; then
 echo "Error: whisper not found in PATH or venv."
 exit 1
fi

TMPDIR="$(mktemp -d)"
cleanup() { rm -rf "$TMPDIR"; }
trap cleanup EXIT

echo "==> Transcribing:"
echo " input: $INPUT"
echo " output: $OUTPUT"
echo " model: $MODEL"
echo " lang: ${LANGUAGE:-auto}"

ARGS=(
 "$INPUT"
 --model "$MODEL"
 --output_dir "$TMPDIR"
 --output_format txt
 --task transcribe
 --verbose False
 --fp16 False
)

if [[ -n "$LANGUAGE" ]]; then
 ARGS+=( --language "$LANGUAGE" )
fi

"$WHISPER_BIN" "${ARGS[@]}"

GENERATED_TXT="$TMPDIR/$STEM.txt"
if [[ ! -f "$GENERATED_TXT" ]]; then
 FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)"
 if [[ -z "${FOUND_TXT:-}" ]]; then
 echo "Error: No .txt output produced."
 exit 1
 fi
 GENERATED_TXT="$FOUND_TXT"
fi

# --- Final move (no overwrite possible due to earlier check) ---
mv "$GENERATED_TXT" "$OUTPUT"

echo "==> Done:"
echo " $OUTPUT"

Versions

  1. 2025-12-23 11:26:07
    Discovered: 2026-03-19 13:50:20 Hash: b0fbb9c4287dd26aa452f1adc93e224e681051e1
    Title:
    The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060
    Description:
    I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...
    Content
    I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc.

    I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app.

    Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized.

    At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re expected to pay quite a bit just to keep going.

    I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself.

    The end result was the following (thanks to ChatGPT):

    A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well.

    A Whisper runner for WSL/Linux: run whisper <input-file> and get a .txt transcript generated from the audio file.

    A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click.

    A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names.

    The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in.

    WSL uses python and pip…

    Table of Contents
    Toggle
    whisper.batwhisper.reg (explorer right clicks)installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself
    whisper.bat

    @echo off
    setlocal EnableExtensions

    REM Force UTF-8 codepage (fixes å ä ö)
    chcp 65001 >nul

    REM File passed from Explorer
    set "WIN_FILE=%~1"

    REM Convert Windows path to WSL path (UTF-8 safe now)
    for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i"

    REM Run whisper on that file
    wsl bash -lc "/usr/local/tornevall/whisper \"%WSL_FILE%\""

    endlocal

    whisper.reg (explorer right clicks)

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\*\shell\WhisperWSL]
    @="Transkribera med Whisper (WSL)"
    "Icon"="wsl.exe"

    [HKEY_CLASSES_ROOT\*\shell\WhisperWSL\command]
    @="\"F:\\viktigt\\Private\\Linux-Scripts\\Whisper.bat\" \"%1\""

    installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)

    To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts.

    #!/usr/bin/env bash
    set -euo pipefail

    VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}"
    MODE="install"

    # --- Parse args ---
    while getopts ":u" opt; do
    case "$opt" in
    u) MODE="uninstall" ;;
    *)
    echo "Usage: $0 [-u]"
    exit 1
    ;;
    esac
    done

    echo "==> Whisper installer (GTX 1060 compatible)"
    echo "==> Mode: $MODE"

    # --- Sanity ---
    if [[ ! -d "$VENV_DIR" ]]; then
    echo "Error: venv not found: $VENV_DIR"
    exit 1
    fi

    # shellcheck disable=SC1090
    source "$VENV_DIR/bin/activate"

    python -m pip install --upgrade pip setuptools wheel

    # ==================================================
    # UNINSTALL MODE (-u)
    # ==================================================
    if [[ "$MODE" == "uninstall" ]]; then
    echo "==> Uninstalling incompatible packages ONLY (-u)"

    pip uninstall -y torch torchvision torchaudio || true
    pip uninstall -y numpy || true

    echo ""
    echo "Done."
    echo "Uninstall completed. Nothing else touched."
    exit 0
    fi

    # ==================================================
    # INSTALL MODE (DEFAULT)
    # ==================================================

    echo "==> Installing compatible stack (no forced uninstall)"

    pip install \
    numpy==1.26.4 \
    torch==1.13.1+cu116 \
    torchvision==0.14.1+cu116 \
    torchaudio==0.13.1 \
    --extra-index-url https://download.pytorch.org/whl/cu116

    # --- Verify ---
    echo "==> Verifying environment"
    python - << 'EOF'
    import torch, numpy
    print("Torch:", torch.__version__)
    print("NumPy:", numpy.__version__)
    print("CUDA available:", torch.cuda.is_available())
    if torch.cuda.is_available():
    print("GPU:", torch.cuda.get_device_name(0))
    print("Capability:", torch.cuda.get_device_capability(0))
    EOF

    echo ""
    echo "Done."
    echo "Install completed without destructive actions."

    The script itself

    The script can run without any switches – and only with the audio file intended to be transcribed (but as you can see, it can do a bit more).

    #!/usr/bin/env bash
    set -euo pipefail

    # whisper-run.sh
    # Usage:
    # whisper <input.extension> [model] [language]
    #
    # Output:
    # <input-filename>.txt (same directory)
    #
    # Behaviour:
    # - Refuses to overwrite existing .txt
    # - Stops execution if output exists

    if [[ $# -lt 1 ]]; then
    echo "Usage: whisper <input.extension> [model] [language]"
    exit 1
    fi

    INPUT="$1"
    MODEL="${2:-small}"
    LANGUAGE="${3:-}"

    if [[ ! -f "$INPUT" ]]; then
    echo "Error: Input file not found: $INPUT"
    exit 1
    fi

    BASENAME="$(basename "$INPUT")"
    STEM="${BASENAME%.*}"
    OUTDIR="$(dirname "$INPUT")"
    OUTPUT="$OUTDIR/$STEM.txt"

    # --- Refuse overwrite ---
    if [[ -f "$OUTPUT" ]]; then
    echo "Error: Output file already exists:"
    echo " $OUTPUT"
    echo "Aborting to avoid overwrite."
    exit 1
    fi

    # Prefer venv whisper if installed via install script
    WHISPER_VENV="${WHISPER_VENV:-$HOME/.venvs/whisper}"
    WHISPER_BIN="whisper"
    if [[ -x "$WHISPER_VENV/bin/whisper" ]]; then
    WHISPER_BIN="$WHISPER_VENV/bin/whisper"
    fi

    if [[ "$WHISPER_BIN" == "whisper" ]] && ! command -v whisper >/dev/null 2>&1; then
    echo "Error: whisper not found in PATH or venv."
    exit 1
    fi

    TMPDIR="$(mktemp -d)"
    cleanup() { rm -rf "$TMPDIR"; }
    trap cleanup EXIT

    echo "==> Transcribing:"
    echo " input: $INPUT"
    echo " output: $OUTPUT"
    echo " model: $MODEL"
    echo " lang: ${LANGUAGE:-auto}"

    ARGS=(
    "$INPUT"
    --model "$MODEL"
    --output_dir "$TMPDIR"
    --output_format txt
    --task transcribe
    --verbose False
    --fp16 False
    )

    if [[ -n "$LANGUAGE" ]]; then
    ARGS+=( --language "$LANGUAGE" )
    fi

    "$WHISPER_BIN" "${ARGS[@]}"

    GENERATED_TXT="$TMPDIR/$STEM.txt"
    if [[ ! -f "$GENERATED_TXT" ]]; then
    FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)"
    if [[ -z "${FOUND_TXT:-}" ]]; then
    echo "Error: No .txt output produced."
    exit 1
    fi
    GENERATED_TXT="$FOUND_TXT"
    fi

    # --- Final move (no overwrite possible due to earlier check) ---
    mv "$GENERATED_TXT" "$OUTPUT"

    echo "==> Done:"
    echo " $OUTPUT"
  2. 2025-12-23 11:26:07
    Discovered: 2026-02-05 14:24:03 Hash: 30b1980e02b98f24cf08ff2a3b59ce922f5c1d2d
    Title:
    The Struggle: Transcribe stuff for free with Whisper and WSL/Linux – With a GTX 1060
    Description:
    I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that...
    Content
    I’ve been struggling with transcription issues for quite some time, for a variety of reasons. Examples: I need a text transcribed to be pasted into Suno, that only exists as a m4a-file (i.e. music, that sometimes has hardcoded subtitles that has to be manually transcribed). Etc.

    I first found a Samsung app that could handle transcription, but it quickly became clear that it was limited to its own ecosystem. In practice, you could only transcribe audio that had been recorded inside that specific app.

    Since then, I’ve been looking around on and off, and more recently I picked it up again as the need increased – partly to get correct transcriptions, but also to be able to process any audio files I download or record. Samsung’s app is decent, but the quality varies. Right after recording, it performs a quick transcription, but the result is noticeably worse than if you re-run the transcription once the audio file is fully finalized.

    At that point I came across “Whisper Transcribe” for Windows. It works, but it requires an account and, of course, paid credits to continue transcribing. You get a small number of free credits at first, but once those run out, you’re expected to pay quite a bit just to keep going.

    I already knew that there must be software capable of doing this completely locally. I had previously discovered that Whisper exists in an open-source form as well (I’m not even sure whether the Windows application actually builds on that or not). So today I decided to finally figure out how to do it properly myself.

    The end result was the following (thanks to ChatGPT):

    A Whisper installer for WSL/Linux, with explicit support for NVIDIA GTX 1060 – something newer Python libraries clearly no longer handle well.

    A Whisper runner for WSL/Linux: run whisper <input-file> and get a .txt transcript generated from the audio file.

    A Windows Registry file that allows transcription to be executed directly from Windows Explorer via right-click.

    A batch file that bridges Windows and WSL so everything runs cleanly, including proper handling of spaces and non-ASCII characters in file names.

    The result is a fully local, offline transcription setup that works on any audio file, without accounts, credits, or vendor lock-in.

    WSL uses python and pip…

    Table of Contents
    Toggle
    whisper.batwhisper.reg (explorer right clicks)installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)The script itself
    whisper.bat

    @echo off
    setlocal EnableExtensions

    REM Force UTF-8 codepage (fixes å ä ö)
    chcp 65001 >nul

    REM File passed from Explorer
    set "WIN_FILE=%~1"

    REM Convert Windows path to WSL path (UTF-8 safe now)
    for /f "delims=" %%i in ('wsl wslpath "%WIN_FILE%"') do set "WSL_FILE=%%i"

    REM Run whisper on that file
    wsl bash -lc "/usr/local/tornevall/whisper \"%WSL_FILE%\""

    endlocal

    whisper.reg (explorer right clicks)

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\*\shell\WhisperWSL]
    @="Transkribera med Whisper (WSL)"
    "Icon"="wsl.exe"

    [HKEY_CLASSES_ROOT\*\shell\WhisperWSL\command]
    @="\"F:\\viktigt\\Private\\Linux-Scripts\\Whisper.bat\" \"%1\""

    installer för WSL/Linux (with 1060-compatibilty and pre-uninstaller)

    To make sure stuff are removed properly before reinstalling there is a -u switch for this in the script. In case you make it wrong the first time, this switch is there to make sure you can reinstall it a second time without conflicts.

    #!/usr/bin/env bash
    set -euo pipefail

    VENV_DIR="${VENV_DIR:-$HOME/.venvs/whisper}"
    MODE="install"

    # --- Parse args ---
    while getopts ":u" opt; do
    case "$opt" in
    u) MODE="uninstall" ;;
    *)
    echo "Usage: $0 [-u]"
    exit 1
    ;;
    esac
    done

    echo "==> Whisper installer (GTX 1060 compatible)"
    echo "==> Mode: $MODE"

    # --- Sanity ---
    if [[ ! -d "$VENV_DIR" ]]; then
    echo "Error: venv not found: $VENV_DIR"
    exit 1
    fi

    # shellcheck disable=SC1090
    source "$VENV_DIR/bin/activate"

    python -m pip install --upgrade pip setuptools wheel

    # ==================================================
    # UNINSTALL MODE (-u)
    # ==================================================
    if [[ "$MODE" == "uninstall" ]]; then
    echo "==> Uninstalling incompatible packages ONLY (-u)"

    pip uninstall -y torch torchvision torchaudio || true
    pip uninstall -y numpy || true

    echo ""
    echo "Done."
    echo "Uninstall completed. Nothing else touched."
    exit 0
    fi

    # ==================================================
    # INSTALL MODE (DEFAULT)
    # ==================================================

    echo "==> Installing compatible stack (no forced uninstall)"

    pip install \
    numpy==1.26.4 \
    torch==1.13.1+cu116 \
    torchvision==0.14.1+cu116 \
    torchaudio==0.13.1 \
    --extra-index-url https://download.pytorch.org/whl/cu116

    # --- Verify ---
    echo "==> Verifying environment"
    python - << 'EOF'
    import torch, numpy
    print("Torch:", torch.__version__)
    print("NumPy:", numpy.__version__)
    print("CUDA available:", torch.cuda.is_available())
    if torch.cuda.is_available():
    print("GPU:", torch.cuda.get_device_name(0))
    print("Capability:", torch.cuda.get_device_capability(0))
    EOF

    echo ""
    echo "Done."
    echo "Install completed without destructive actions."

    The script itself

    The script can run without any switches – and only with the audio file intended to be transcribed (but as you can see, it can do a bit more).

    #!/usr/bin/env bash
    set -euo pipefail

    # whisper-run.sh
    # Usage:
    # whisper <input.extension> [model] [language]
    #
    # Output:
    # <input-filename>.txt (same directory)
    #
    # Behaviour:
    # - Refuses to overwrite existing .txt
    # - Stops execution if output exists

    if [[ $# -lt 1 ]]; then
    echo "Usage: whisper <input.extension> [model] [language]"
    exit 1
    fi

    INPUT="$1"
    MODEL="${2:-small}"
    LANGUAGE="${3:-}"

    if [[ ! -f "$INPUT" ]]; then
    echo "Error: Input file not found: $INPUT"
    exit 1
    fi

    BASENAME="$(basename "$INPUT")"
    STEM="${BASENAME%.*}"
    OUTDIR="$(dirname "$INPUT")"
    OUTPUT="$OUTDIR/$STEM.txt"

    # --- Refuse overwrite ---
    if [[ -f "$OUTPUT" ]]; then
    echo "Error: Output file already exists:"
    echo " $OUTPUT"
    echo "Aborting to avoid overwrite."
    exit 1
    fi

    # Prefer venv whisper if installed via install script
    WHISPER_VENV="${WHISPER_VENV:-$HOME/.venvs/whisper}"
    WHISPER_BIN="whisper"
    if [[ -x "$WHISPER_VENV/bin/whisper" ]]; then
    WHISPER_BIN="$WHISPER_VENV/bin/whisper"
    fi

    if [[ "$WHISPER_BIN" == "whisper" ]] && ! command -v whisper >/dev/null 2>&1; then
    echo "Error: whisper not found in PATH or venv."
    exit 1
    fi

    TMPDIR="$(mktemp -d)"
    cleanup() { rm -rf "$TMPDIR"; }
    trap cleanup EXIT

    echo "==> Transcribing:"
    echo " input: $INPUT"
    echo " output: $OUTPUT"
    echo " model: $MODEL"
    echo " lang: ${LANGUAGE:-auto}"

    ARGS=(
    "$INPUT"
    --model "$MODEL"
    --output_dir "$TMPDIR"
    --output_format txt
    --task transcribe
    --verbose False
    --fp16 False
    )

    if [[ -n "$LANGUAGE" ]]; then
    ARGS+=( --language "$LANGUAGE" )
    fi

    "$WHISPER_BIN" "${ARGS[@]}"

    GENERATED_TXT="$TMPDIR/$STEM.txt"
    if [[ ! -f "$GENERATED_TXT" ]]; then
    FOUND_TXT="$(find "$TMPDIR" -maxdepth 1 -type f -name "*.txt" | head -n 1 || true)"
    if [[ -z "${FOUND_TXT:-}" ]]; then
    echo "Error: No .txt output produced."
    exit 1
    fi
    GENERATED_TXT="$FOUND_TXT"
    fi

    # --- Final move (no overwrite possible due to earlier check) ---
    mv "$GENERATED_TXT" "$OUTPUT"

    echo "==> Done:"
    echo " $OUTPUT"

The main purpose of the tech house track “Magdalena”

Permalink
Published: 2025-12-13 14:49:36
Discovered: 2026-03-19 13:50:20
Hash: eac2578c9dbd2bfb4ea9a741c22c44621e74487d
https://www.tornevalls.se/the-main-purpose-of-the-tech-house-track-magdalena/
Description

The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

Content

This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion.

Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure.

The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition.

The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions.

Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.


History — 2 versions shown

Changes

From 2025-12-13 14:49:36 (discovered: 2026-02-05 14:24:03) hash: 1985fb7d9c92a64980bccca214eb4b47382281d4
To 2025-12-13 14:49:36 (discovered: 2026-03-19 13:50:20) hash: eac2578c9dbd2bfb4ea9a741c22c44621e74487d
Title
The main purpose of the tech house track “Magdalena”
Description
The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.
Content
This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion. Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure. The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition. The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging. Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions. Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.
Old vs new
From
TITLE:
The main purpose of the tech house track “Magdalena”

DESCRIPTION:
The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

CONTENT:
This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion.

Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure.

The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition.

The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions.

Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.
To
TITLE:
The main purpose of the tech house track “Magdalena”

DESCRIPTION:
The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

CONTENT:
This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion.

Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure.

The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition.

The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions.

Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.

Versions

  1. 2025-12-13 14:49:36
    Discovered: 2026-03-19 13:50:20 Hash: eac2578c9dbd2bfb4ea9a741c22c44621e74487d
    Title:
    The main purpose of the tech house track “Magdalena”
    Description:
    The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.
    Content
    This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion.

    Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure.

    The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition.

    The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

    Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions.

    Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.
  2. 2025-12-13 14:49:36
    Discovered: 2026-02-05 14:24:03 Hash: 1985fb7d9c92a64980bccca214eb4b47382281d4
    Title:
    The main purpose of the tech house track “Magdalena”
    Description:
    The lyrics for “Magdalena” are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.
    Content
    This track was created as a response to fear-driven narratives surrounding social democracy, particularly how certain political ideas are framed through anxiety, exaggeration, and symbolic threat rather than concrete policy discussion.

    Magdalena refers to the chair of the Swedish Social Democratic Party. In Swedish political discourse, she has become a frequent target of hostility that often extends beyond specific decisions and instead focuses on what she represents. In the context of this track, Magdalena is therefore not portrayed as an individual, but used as a symbolic figure.

    The song deliberately frames her as a stabilizing presence. Repeated chants and cyclical structures emphasize continuity, direction, and resilience. Rather than engaging in debate or argumentation, the track contrasts abstract ideas of chaos and order through rhythm and repetition.

    The lyrics are intentionally written in another language to mask the literal meaning and shift focus away from local political rhetoric. This choice also supports the musical direction of the track, giving it a more exotic Latin tech house character and allowing the vocal elements to function as texture and energy rather than explicit messaging.

    Any harsher expressions in the lyrics are directed at abstract authoritarian or fear-based mindsets, not at individuals or groups. The intention is not provocation, but to challenge narratives built on demonization and simplified oppositions.

    Overall, the track operates on a symbolic level. It responds to political fear by reframing social democracy as structure rather than disorder, stability rather than threat, and continuity rather than chaos, while remaining grounded in club-oriented electronic music aesthetics rather than overt political commentary.

Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About

Permalink
Published: 2025-12-05 15:28:43
Discovered: 2026-03-19 13:50:20
Hash: c700d9cdac72c1b650d96e4c5992db0e4d20c2a1
https://www.tornevalls.se/things-prompt-pushers-thought-they-understood-about-daws-but-are-completely-utterly-wrong-about/
Description

Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...

Content

Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate.

Spoiler: they don’t. Not even close.

The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now.

This is the level we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works.

Table of Contents Toggle A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters A DAW IS NOT AI – IT WILL NEVER BE AI!

A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment.

It doesn’t think. It doesn’t predict. It doesn’t learn. It doesn’t hallucinate answers because you ask stupid questions. It doesn’t care what you want. It does exactly what you tell it to do.

AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s.

But apparently, for some people on the internet, everything becomes AI if you squint hard enough.

That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”.

The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode).

It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research.

“But VSTs Use AI!”

Yes, some do – and that still doesn’t make your DAW AI!

This was the next brilliant argument thrown at me:

“Most of the components in a DAW use AI. Are you slow?”

First: No, they don’t.

Second: Calling people slow and other random words doesn’t magically make your argument correct.

Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics.

Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t become AI if you heat a smart thermometer inside it either.

The Real Issue: AI Musicians Who Don’t Understand Music Tools

This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re supposedly replacing. There’s a growing crowd of prompt-pushers who:

have never mixed a track manually,

never aligned vocals without an AI tool,

never programmed automation by hand,

never learned gain staging,

never rendered or layered anything intentionally,

and absolutely never used a DAW beyond dragging stems into the timeline.

Yet they lecture others on “how audio production really works”.

And when someone challenges their nonsense, they fire off buzzwords like:

“you refuse to be educated”

“you’re a luddite”

“DAWs used AI for decades!”

“it’s the same thing!”

No. It’s not. And calling someone a luddite doesn’t turn confusion into expertise. It just telegraphs desperation.

Why This Matters

The problem isn’t people using AI.

The problem is people pretending that AI makes them instant audio engineers – and then attacking anyone who points out the difference between a tool and a technology.

AI is powerful. It’s useful – but it doesn’t replace understanding.

If you think a DAW is artificial intelligence, you’re not an innovator. You’re not “ahead of the curve”.You’re not misunderstood.

You’re just wrong. And loudly so.

If you want to be taken seriously as a creator in this hybrid world of AI-assisted music:

Learn what your tools are.

Learn what your tools are not.

Stop claiming everything with buttons and soundwaves is AI.

Because right now, the biggest challenge for AI-powered music isn’t the tech. It’s the users who don’t understand it.


History — 2 versions shown

Changes

From 2025-12-05 15:28:43 (discovered: 2026-02-05 14:24:03) hash: 3e81c80ea7c802eb7b125427806c792985432bbb
To 2025-12-05 15:28:43 (discovered: 2026-03-19 13:50:20) hash: c700d9cdac72c1b650d96e4c5992db0e4d20c2a1
Title
Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About
Description
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...
Content
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they don’t. Not even close. The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now. This is the level we’re we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works. Table of Contents Toggle A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters A DAW IS NOT AI – IT WILL NEVER BE AI! A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment. It doesn’t doesn’t think. It doesn’t doesn’t predict. It doesn’t doesn’t learn. It doesn’t doesn’t hallucinate answers because you ask stupid questions. It doesn’t doesn’t care what you want. It does exactly what you tell it to do. AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s. But apparently, for some people on the internet, everything becomes AI if you squint hard enough. That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”. The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode). It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research. “But VSTs Use AI!” Yes, some do – and that still doesn’t make your DAW AI! This was the next brilliant argument thrown at me: “Most of the components in a DAW use AI. Are you slow?” First: No, they don’t. don’t. Second: Calling people slow and other random words doesn’t doesn’t magically make your argument correct. Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics. Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t doesn’t become AI if you heat a smart thermometer inside it either. The Real Issue: AI Musicians Who Don’t Understand Music Tools This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re they’re supposedly replacing. There’s There’s a growing crowd of prompt-pushers who: have never mixed a track manually, never aligned vocals without an AI tool, never programmed automation by hand, never learned gain staging, never rendered or layered anything intentionally, and absolutely never used a DAW beyond dragging stems into the timeline. Yet they lecture others on “how audio production really works”. And when someone challenges their nonsense, they fire off buzzwords like: “you refuse to be educated” “you’re “you’re a luddite” “DAWs used AI for decades!” “it’s “it’s the same thing!” No. It’s It’s not. And
Old vs new
From
TITLE:
Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About

DESCRIPTION:
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...

CONTENT:
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate.

Spoiler: they don’t. Not even close.

The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now.

This is the level we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works.

Table of Contents
Toggle
A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters
A DAW IS NOT AI – IT WILL NEVER BE AI!

A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment.

It doesn’t think. It doesn’t predict. It doesn’t learn. It doesn’t hallucinate answers because you ask stupid questions. It doesn’t care what you want. It does exactly what you tell it to do.

AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s.

But apparently, for some people on the internet, everything becomes AI if you squint hard enough.

That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”.

The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode).

It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research.

“But VSTs Use AI!”

Yes, some do – and that still doesn’t make your DAW AI!

This was the next brilliant argument thrown at me:

“Most of the components in a DAW use AI. Are you slow?”

First: No, they don’t.

Second: Calling people slow and other random words doesn’t magically make your argument correct.

Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics.

Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t become AI if you heat a smart thermometer inside it either.

The Real Issue: AI Musicians Who Don’t Understand Music Tools

This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re supposedly replacing. There’s a growing crowd of prompt-pushers who:

have never mixed a track manually,

never aligned vocals without an AI tool,

never programmed automation by hand,

never learned gain staging,

never rendered or layered anything intentionally,

and absolutely never used a DAW beyond dragging stems into the timeline.

Yet they lecture others on “how audio production really works”.

And when someone challenges their nonsense, they fire off buzzwords like:

“you refuse to be educated”

“you’re a luddite”

“DAWs used AI for decades!”

“it’s the same thing!”

No. It’s not. And calling someone a luddite doesn’t turn confusion into expertise. It just telegraphs desperation.

Why This Matters

The problem isn’t people using AI.

The problem is people pretending that AI makes them instant audio engineers – and then attacking anyone who points out the difference between a tool and a technology.

AI is powerful. It’s useful – but it doesn’t replace understanding.

If you think a DAW is artificial intelligence, you’re not an innovator. You’re not “ahead of the curve”.You’re not misunderstood.

You’re just wrong. And loudly so.

If you want to be taken seriously as a creator in this hybrid world of AI-assisted music:

Learn what your tools are.

Learn what your tools are not.

Stop claiming everything with buttons and soundwaves is AI.

Because right now, the biggest challenge for AI-powered music isn’t the tech. It’s the users who don’t understand it.
To
TITLE:
Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About

DESCRIPTION:
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...

CONTENT:
Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate.

Spoiler: they don’t. Not even close.

The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now.

This is the level we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works.

Table of Contents
Toggle
A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters
A DAW IS NOT AI – IT WILL NEVER BE AI!

A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment.

It doesn’t think. It doesn’t predict. It doesn’t learn. It doesn’t hallucinate answers because you ask stupid questions. It doesn’t care what you want. It does exactly what you tell it to do.

AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s.

But apparently, for some people on the internet, everything becomes AI if you squint hard enough.

That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”.

The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode).

It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research.

“But VSTs Use AI!”

Yes, some do – and that still doesn’t make your DAW AI!

This was the next brilliant argument thrown at me:

“Most of the components in a DAW use AI. Are you slow?”

First: No, they don’t.

Second: Calling people slow and other random words doesn’t magically make your argument correct.

Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics.

Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t become AI if you heat a smart thermometer inside it either.

The Real Issue: AI Musicians Who Don’t Understand Music Tools

This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re supposedly replacing. There’s a growing crowd of prompt-pushers who:

have never mixed a track manually,

never aligned vocals without an AI tool,

never programmed automation by hand,

never learned gain staging,

never rendered or layered anything intentionally,

and absolutely never used a DAW beyond dragging stems into the timeline.

Yet they lecture others on “how audio production really works”.

And when someone challenges their nonsense, they fire off buzzwords like:

“you refuse to be educated”

“you’re a luddite”

“DAWs used AI for decades!”

“it’s the same thing!”

No. It’s not. And calling someone a luddite doesn’t turn confusion into expertise. It just telegraphs desperation.

Why This Matters

The problem isn’t people using AI.

The problem is people pretending that AI makes them instant audio engineers – and then attacking anyone who points out the difference between a tool and a technology.

AI is powerful. It’s useful – but it doesn’t replace understanding.

If you think a DAW is artificial intelligence, you’re not an innovator. You’re not “ahead of the curve”.You’re not misunderstood.

You’re just wrong. And loudly so.

If you want to be taken seriously as a creator in this hybrid world of AI-assisted music:

Learn what your tools are.

Learn what your tools are not.

Stop claiming everything with buttons and soundwaves is AI.

Because right now, the biggest challenge for AI-powered music isn’t the tech. It’s the users who don’t understand it.

Versions

  1. 2025-12-05 15:28:43
    Discovered: 2026-03-19 13:50:20 Hash: c700d9cdac72c1b650d96e4c5992db0e4d20c2a1
    Title:
    Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About
    Description:
    Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...
    Content
    Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate.

    Spoiler: they don’t. Not even close.

    The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now.

    This is the level we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works.

    Table of Contents
    Toggle
    A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters
    A DAW IS NOT AI – IT WILL NEVER BE AI!

    A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment.

    It doesn’t think. It doesn’t predict. It doesn’t learn. It doesn’t hallucinate answers because you ask stupid questions. It doesn’t care what you want. It does exactly what you tell it to do.

    AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s.

    But apparently, for some people on the internet, everything becomes AI if you squint hard enough.

    That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”.

    The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode).

    It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research.

    “But VSTs Use AI!”

    Yes, some do – and that still doesn’t make your DAW AI!

    This was the next brilliant argument thrown at me:

    “Most of the components in a DAW use AI. Are you slow?”

    First: No, they don’t.

    Second: Calling people slow and other random words doesn’t magically make your argument correct.

    Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics.

    Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t become AI if you heat a smart thermometer inside it either.

    The Real Issue: AI Musicians Who Don’t Understand Music Tools

    This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re supposedly replacing. There’s a growing crowd of prompt-pushers who:

    have never mixed a track manually,

    never aligned vocals without an AI tool,

    never programmed automation by hand,

    never learned gain staging,

    never rendered or layered anything intentionally,

    and absolutely never used a DAW beyond dragging stems into the timeline.

    Yet they lecture others on “how audio production really works”.

    And when someone challenges their nonsense, they fire off buzzwords like:

    “you refuse to be educated”

    “you’re a luddite”

    “DAWs used AI for decades!”

    “it’s the same thing!”

    No. It’s not. And calling someone a luddite doesn’t turn confusion into expertise. It just telegraphs desperation.

    Why This Matters

    The problem isn’t people using AI.

    The problem is people pretending that AI makes them instant audio engineers – and then attacking anyone who points out the difference between a tool and a technology.

    AI is powerful. It’s useful – but it doesn’t replace understanding.

    If you think a DAW is artificial intelligence, you’re not an innovator. You’re not “ahead of the curve”.You’re not misunderstood.

    You’re just wrong. And loudly so.

    If you want to be taken seriously as a creator in this hybrid world of AI-assisted music:

    Learn what your tools are.

    Learn what your tools are not.

    Stop claiming everything with buttons and soundwaves is AI.

    Because right now, the biggest challenge for AI-powered music isn’t the tech. It’s the users who don’t understand it.
  2. 2025-12-05 15:28:43
    Discovered: 2026-02-05 14:24:03 Hash: 3e81c80ea7c802eb7b125427806c792985432bbb
    Title:
    Things “Prompt Pushers” Thought They Understood About DAWs – But Are Completely, Utterly Wrong About
    Description:
    Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate. Spoiler: they...
    Content
    Every now and then, especially in groups where “AI-generated music” is the hot topic, I encounter a parade of self-declared “AI creators” who seem absolutely convinced they understand how AI, DAWs, plugins, audio engines and production workflows operate.

    Spoiler: they don’t. Not even close.

    The latest example – my personal favorite – came from an exchange with a couple of AI-wannabe musicians who tried to argue that a DAW is a type of AI. Yes. A Digital Audio Workstation. According to them, pressing Record apparently counts as machine intelligence now.

    This is the level we’re dealing with – usually among Suno-wannabes and so-called Udio-idiots when we try to explain how DAWs works.

    Table of Contents
    Toggle
    A DAW IS NOT AI – IT WILL NEVER BE AI!“But VSTs Use AI!”Yes, some do – and that still doesn’t make your DAW AI!The Real Issue: AI Musicians Who Don’t Understand Music ToolsWhy This Matters
    A DAW IS NOT AI – IT WILL NEVER BE AI!

    A DAW is a workstation – software used to record, edit and produce audio, not a “thinking” system (see any basic DAW definition). A timeline. A mixer. A routing environment.

    It doesn’t think. It doesn’t predict. It doesn’t learn. It doesn’t hallucinate answers because you ask stupid questions. It doesn’t care what you want. It does exactly what you tell it to do.

    AI, meanwhile, is defined by its capacity to generate, classify, predict or reason based on trained data – a machine based system that infers from input to generate outputs like predictions, content or decisions (see the OECD and EU definitions of AI systems). That is machine learning, which is something completely different from a sequencer that has existed since the 1980s.

    But apparently, for some people on the internet, everything becomes AI if you squint hard enough.

    That ALSO includes the Google screenshot that was used to prove me wrong saying “Yes, DAWs use AI in a variety of ways to enhance music production”.

    The text used is not a technical definition, it is an AI generated summary from Google’s experimental AI Overviews and AI Mode in Search feature, which stitches together a generic answer to the vague prompt “does a DAW use AI in some way”... That “AI researcher” is by the way extremely unreliable as it very much works as ChatGPT in “quick response mode” and guessing (since users tend to hate wait for a correct answer) what it cannot cover by itself (unless you use Thinking mode).

    It talks about using AI powered plugins and features inside a DAW, not about the DAW itself magically becoming an AI system. Google itself describes these AI Overviews as AI generated “snapshots” that simply bundle key information with links to real sources, not as authoritative definitions of anything (see their own description). Treating that blurb as proof that “a DAW is AI” is like treating an ad banner as peer reviewed research.

    “But VSTs Use AI!”

    Yes, some do – and that still doesn’t make your DAW AI!

    This was the next brilliant argument thrown at me:

    “Most of the components in a DAW use AI. Are you slow?”

    First: No, they don’t.

    Second: Calling people slow and other random words doesn’t magically make your argument correct.

    Most plugins run on traditional DSP – decades-old mathematics based on manipulating digital samples, not on “learning” from data (audio DSP is literally just signal processing code, not AI). Compression, EQ, filtering, reverb, synthesis, modulation – none of that is AI. If you think a compressor is artificial intelligence, you need to revisit the basics.

    Some plugins do use machine learning for tasks like noise reduction or stem separation – for example real time denoisers trained on speech like VoiceGate or deep learning based noise reduction projects like DeepFilterNet. Fine. But your environment does not become AI just because a plugin inside it happens to use it. Your microwave doesn’t become AI if you heat a smart thermometer inside it either.

    The Real Issue: AI Musicians Who Don’t Understand Music Tools

    This whole conversation acutally exposed something deeper, which makes this topic interesting, and that is why I choose to highlight the idiocrazy: Many AI-first creators cannot explain – or even identify – the tools they’re supposedly replacing. There’s a growing crowd of prompt-pushers who:

    have never mixed a track manually,

    never aligned vocals without an AI tool,

    never programmed automation by hand,

    never learned gain staging,

    never rendered or layered anything intentionally,

    and absolutely never used a DAW beyond dragging stems into the timeline.

    Yet they lecture others on “how audio production really works”.

    And when someone challenges their nonsense, they fire off buzzwords like:

    “you refuse to be educated”

    “you’re a luddite”

    “DAWs used AI for decades!”

    “it’s the same thing!”

    No. It’s not. And calling someone a luddite doesn’t turn confusion into expertise. It just telegraphs desperation.

    Why This Matters

    The problem isn’t people using AI.

    The problem is people pretending that AI makes them instant audio engineers – and then attacking anyone who points out the difference between a tool and a technology.

    AI is powerful. It’s useful – but it doesn’t replace understanding.

    If you think a DAW is artificial intelligence, you’re not an innovator. You’re not “ahead of the curve”.You’re not misunderstood.

    You’re just wrong. And loudly so.

    If you want to be taken seriously as a creator in this hybrid world of AI-assisted music:

    Learn what your tools are.

    Learn what your tools are not.

    Stop claiming everything with buttons and soundwaves is AI.

    Because right now, the biggest challenge for AI-powered music isn’t the tech. It’s the users who don’t understand it.

FWSC FastTracker Music – Personal History

Permalink
Published: 2025-11-30 14:17:02
Discovered: 2026-04-03 11:56:25
Hash: 317489e7b9f0101274cc4071bcd80e3b0f5ad826
https://www.tornevalls.se/fwsc-fasttracker-music-personal-history/
Description

The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

Content

The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧

#sonaar_music_68 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_68 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_68 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_68 .album .album-art img { border-radius: 0px;} #sonaar_music_68 .sonaar-grid .album { padding: 0px;} #sonaar_music_68 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_68 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_68 .sonaar-grid { justify-content: center; } #sonaar_music_68 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_68 .playlist, #sonaar_music_68 .buttons-block { width: 100%; } #sonaar_music_68 .playlist { margin: 0px; } #sonaar_music_68 .srp_tracklist { margin: 0px; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { text-align: left; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { margin-left: 0px; } #sonaar_music_68 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_68 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_68 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_68 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_68 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_68 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_68 .album-player .control { top: 0px; position: relative; } #sonaar_music_68 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_68 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_68 .srp-play-circle { border-width: 6px; } #sonaar_music_68 .srp_search_container .srp_search { padding: 15px 15px; }

4 Tracks

00:00

var srp_player_params_69cf8eb41f312 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8eb41f312 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb41f312"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb41f312"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.


History — 10 versions shown of 7025 total

Changes

From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:56:16) hash: b630ca7009e799f7be6f39a5705e2869cbbbd569
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:56:25) hash: 317489e7b9f0101274cc4071bcd80e3b0f5ad826
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_13 #sonaar_music_68 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_13 #sonaar_music_68 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_13 #sonaar_music_68 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_13 #sonaar_music_68 .album .album-art img { border-radius: 0px;} #sonaar_music_13 #sonaar_music_68 .sonaar-grid .album { padding: 0px;} #sonaar_music_13 #sonaar_music_68 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_13 #sonaar_music_68 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_13 #sonaar_music_68 .sonaar-grid { justify-content: center; } #sonaar_music_13 #sonaar_music_68 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_13 #sonaar_music_68 .playlist, #sonaar_music_13 #sonaar_music_68 .buttons-block { width: 100%; } #sonaar_music_13 #sonaar_music_68 .playlist { margin: 0px; } #sonaar_music_13 #sonaar_music_68 .srp_tracklist { margin: 0px; } #sonaar_music_13 #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_13 #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_13 #sonaar_music_68 .srp_subtitle { text-align: left; } #sonaar_music_13 #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_13 #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_13 #sonaar_music_68 .srp_subtitle { margin-left: 0px; } #sonaar_music_13 #sonaar_music_68 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_13 #sonaar_music_68 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_13 #sonaar_music_68 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_13 #sonaar_music_68 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_13 #sonaar_music_68 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_13 #sonaar_music_68 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_13 #sonaar_music_68 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_13 #sonaar_music_68 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_13 #sonaar_music_68 .album-player .control { top: 0px; position: relative; } #sonaar_music_13 #sonaar_music_68 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_13 #sonaar_music_68 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_13 #sonaar_music_68 .srp-play-circle { border-width: 6px; } #sonaar_music_13 #sonaar_music_68 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8eb4cc0ae srp_player_params_69cf8eb41f312 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8eb4cc0ae srp_player_params_args_69cf8eb41f312 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb4cc0ae"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb41f312"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb4cc0ae"); setIronAudioplayers("arbitrary-instance-69cf8eb41f312"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_13 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_13 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_13 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_13 .album .album-art img { border-radius: 0px;} #sonaar_music_13 .sonaar-grid .album { padding: 0px;} #sonaar_music_13 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_13 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_13 .sonaar-grid { justify-content: center; } #sonaar_music_13 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_13 .playlist, #sonaar_music_13 .buttons-block { width: 100%; } #sonaar_music_13 .playlist { margin: 0px; } #sonaar_music_13 .srp_tracklist { margin: 0px; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { text-align: left; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { margin-left: 0px; } #sonaar_music_13 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_13 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_13 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_13 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_13 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_13 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_13 .album-player .control { top: 0px; position: relative; } #sonaar_music_13 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_13 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_13 .srp-play-circle { border-width: 6px; } #sonaar_music_13 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8eb4cc0ae = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8eb4cc0ae = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb4cc0ae"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb4cc0ae"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_68 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_68 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_68 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_68 .album .album-art img { border-radius: 0px;} #sonaar_music_68 .sonaar-grid .album { padding: 0px;} #sonaar_music_68 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_68 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_68 .sonaar-grid { justify-content: center; } #sonaar_music_68 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_68 .playlist, #sonaar_music_68 .buttons-block { width: 100%; } #sonaar_music_68 .playlist { margin: 0px; } #sonaar_music_68 .srp_tracklist { margin: 0px; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { text-align: left; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { margin-left: 0px; } #sonaar_music_68 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_68 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_68 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_68 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_68 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_68 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_68 .album-player .control { top: 0px; position: relative; } #sonaar_music_68 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_68 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_68 .srp-play-circle { border-width: 6px; } #sonaar_music_68 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8eb41f312 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8eb41f312 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb41f312"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb41f312"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:56:05) hash: b770a50b2e4e7b2c931f4bd44739d954e169defe
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:56:16) hash: b630ca7009e799f7be6f39a5705e2869cbbbd569
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_90 #sonaar_music_13 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_90 #sonaar_music_13 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_90 #sonaar_music_13 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_90 #sonaar_music_13 .album .album-art img { border-radius: 0px;} #sonaar_music_90 #sonaar_music_13 .sonaar-grid .album { padding: 0px;} #sonaar_music_90 #sonaar_music_13 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_90 #sonaar_music_13 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_90 #sonaar_music_13 .sonaar-grid { justify-content: center; } #sonaar_music_90 #sonaar_music_13 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_90 #sonaar_music_13 .playlist, #sonaar_music_90 #sonaar_music_13 .buttons-block { width: 100%; } #sonaar_music_90 #sonaar_music_13 .playlist { margin: 0px; } #sonaar_music_90 #sonaar_music_13 .srp_tracklist { margin: 0px; } #sonaar_music_90 #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_90 #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_90 #sonaar_music_13 .srp_subtitle { text-align: left; } #sonaar_music_90 #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_90 #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_90 #sonaar_music_13 .srp_subtitle { margin-left: 0px; } #sonaar_music_90 #sonaar_music_13 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_90 #sonaar_music_13 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_90 #sonaar_music_13 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_90 #sonaar_music_13 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_90 #sonaar_music_13 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_90 #sonaar_music_13 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_90 #sonaar_music_13 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_90 #sonaar_music_13 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_90 #sonaar_music_13 .album-player .control { top: 0px; position: relative; } #sonaar_music_90 #sonaar_music_13 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_90 #sonaar_music_13 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_90 #sonaar_music_13 .srp-play-circle { border-width: 6px; } #sonaar_music_90 #sonaar_music_13 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8eb3a00a8 srp_player_params_69cf8eb4cc0ae = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8eb3a00a8 srp_player_params_args_69cf8eb4cc0ae = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb3a00a8"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb4cc0ae"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb3a00a8"); setIronAudioplayers("arbitrary-instance-69cf8eb4cc0ae"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_90 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_90 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_90 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_90 .album .album-art img { border-radius: 0px;} #sonaar_music_90 .sonaar-grid .album { padding: 0px;} #sonaar_music_90 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_90 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_90 .sonaar-grid { justify-content: center; } #sonaar_music_90 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_90 .playlist, #sonaar_music_90 .buttons-block { width: 100%; } #sonaar_music_90 .playlist { margin: 0px; } #sonaar_music_90 .srp_tracklist { margin: 0px; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { text-align: left; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { margin-left: 0px; } #sonaar_music_90 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_90 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_90 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_90 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_90 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_90 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_90 .album-player .control { top: 0px; position: relative; } #sonaar_music_90 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_90 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_90 .srp-play-circle { border-width: 6px; } #sonaar_music_90 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8eb3a00a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8eb3a00a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb3a00a8"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb3a00a8"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_13 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_13 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_13 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_13 .album .album-art img { border-radius: 0px;} #sonaar_music_13 .sonaar-grid .album { padding: 0px;} #sonaar_music_13 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_13 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_13 .sonaar-grid { justify-content: center; } #sonaar_music_13 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_13 .playlist, #sonaar_music_13 .buttons-block { width: 100%; } #sonaar_music_13 .playlist { margin: 0px; } #sonaar_music_13 .srp_tracklist { margin: 0px; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { text-align: left; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { margin-left: 0px; } #sonaar_music_13 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_13 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_13 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_13 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_13 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_13 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_13 .album-player .control { top: 0px; position: relative; } #sonaar_music_13 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_13 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_13 .srp-play-circle { border-width: 6px; } #sonaar_music_13 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8eb4cc0ae = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8eb4cc0ae = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb4cc0ae"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb4cc0ae"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:55:14) hash: e3898944cb9599cb13136046f881de832236977a
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:56:05) hash: b770a50b2e4e7b2c931f4bd44739d954e169defe
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_82 #sonaar_music_90 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 #sonaar_music_90 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 #sonaar_music_90 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 #sonaar_music_90 .album .album-art img { border-radius: 0px;} #sonaar_music_82 #sonaar_music_90 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 #sonaar_music_90 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 #sonaar_music_90 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 #sonaar_music_90 .sonaar-grid { justify-content: center; } #sonaar_music_82 #sonaar_music_90 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 #sonaar_music_90 .playlist, #sonaar_music_82 #sonaar_music_90 .buttons-block { width: 100%; } #sonaar_music_82 #sonaar_music_90 .playlist { margin: 0px; } #sonaar_music_82 #sonaar_music_90 .srp_tracklist { margin: 0px; } #sonaar_music_82 #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_82 #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_82 #sonaar_music_90 .srp_subtitle { text-align: left; } #sonaar_music_82 #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_82 #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_82 #sonaar_music_90 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 #sonaar_music_90 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 #sonaar_music_90 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 #sonaar_music_90 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 #sonaar_music_90 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 #sonaar_music_90 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 #sonaar_music_90 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 #sonaar_music_90 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 #sonaar_music_90 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 #sonaar_music_90 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 #sonaar_music_90 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 #sonaar_music_90 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 #sonaar_music_90 .srp-play-circle { border-width: 6px; } #sonaar_music_82 #sonaar_music_90 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8e770bffb srp_player_params_69cf8eb3a00a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8e770bffb srp_player_params_args_69cf8eb3a00a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e770bffb"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb3a00a8"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e770bffb"); setIronAudioplayers("arbitrary-instance-69cf8eb3a00a8"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e770bffb = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e770bffb = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e770bffb"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e770bffb"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_90 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_90 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_90 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_90 .album .album-art img { border-radius: 0px;} #sonaar_music_90 .sonaar-grid .album { padding: 0px;} #sonaar_music_90 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_90 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_90 .sonaar-grid { justify-content: center; } #sonaar_music_90 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_90 .playlist, #sonaar_music_90 .buttons-block { width: 100%; } #sonaar_music_90 .playlist { margin: 0px; } #sonaar_music_90 .srp_tracklist { margin: 0px; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { text-align: left; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { margin-left: 0px; } #sonaar_music_90 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_90 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_90 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_90 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_90 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_90 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_90 .album-player .control { top: 0px; position: relative; } #sonaar_music_90 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_90 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_90 .srp-play-circle { border-width: 6px; } #sonaar_music_90 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8eb3a00a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8eb3a00a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb3a00a8"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb3a00a8"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:54:25) hash: 5dc0c309216596bf9ed89fd2a2cc078434117db4
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:55:14) hash: e3898944cb9599cb13136046f881de832236977a
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_40 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_40 #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_40 #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_40 #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_40 #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_40 #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_40 #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_40 #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_40 #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_40 #sonaar_music_82 .playlist, #sonaar_music_40 #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_40 #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_40 #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_40 #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_40 #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_40 #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_40 #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_40 #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_40 #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_40 #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_40 #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_40 #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_40 #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_40 #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_40 #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_40 #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_40 #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_40 #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_40 #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_40 #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_40 #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_40 #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8e3ce576a srp_player_params_69cf8e770bffb = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8e3ce576a srp_player_params_args_69cf8e770bffb = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3ce576a"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e770bffb"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3ce576a"); setIronAudioplayers("arbitrary-instance-69cf8e770bffb"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_40 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_40 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_40 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_40 .album .album-art img { border-radius: 0px;} #sonaar_music_40 .sonaar-grid .album { padding: 0px;} #sonaar_music_40 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_40 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_40 .sonaar-grid { justify-content: center; } #sonaar_music_40 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_40 .playlist, #sonaar_music_40 .buttons-block { width: 100%; } #sonaar_music_40 .playlist { margin: 0px; } #sonaar_music_40 .srp_tracklist { margin: 0px; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { text-align: left; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { margin-left: 0px; } #sonaar_music_40 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_40 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_40 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_40 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_40 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_40 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_40 .album-player .control { top: 0px; position: relative; } #sonaar_music_40 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_40 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_40 .srp-play-circle { border-width: 6px; } #sonaar_music_40 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e3ce576a = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e3ce576a = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3ce576a"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3ce576a"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e770bffb = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e770bffb = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e770bffb"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e770bffb"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:54:16) hash: 7e2cc0d140c3d1dbad60faef9d21dae66dd9df88
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:54:25) hash: 5dc0c309216596bf9ed89fd2a2cc078434117db4
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_95 #sonaar_music_40 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_95 #sonaar_music_40 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_95 #sonaar_music_40 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_95 #sonaar_music_40 .album .album-art img { border-radius: 0px;} #sonaar_music_95 #sonaar_music_40 .sonaar-grid .album { padding: 0px;} #sonaar_music_95 #sonaar_music_40 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_95 #sonaar_music_40 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_95 #sonaar_music_40 .sonaar-grid { justify-content: center; } #sonaar_music_95 #sonaar_music_40 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_95 #sonaar_music_40 .playlist, #sonaar_music_95 #sonaar_music_40 .buttons-block { width: 100%; } #sonaar_music_95 #sonaar_music_40 .playlist { margin: 0px; } #sonaar_music_95 #sonaar_music_40 .srp_tracklist { margin: 0px; } #sonaar_music_95 #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_95 #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_95 #sonaar_music_40 .srp_subtitle { text-align: left; } #sonaar_music_95 #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_95 #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_95 #sonaar_music_40 .srp_subtitle { margin-left: 0px; } #sonaar_music_95 #sonaar_music_40 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_95 #sonaar_music_40 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_95 #sonaar_music_40 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_95 #sonaar_music_40 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_95 #sonaar_music_40 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_95 #sonaar_music_40 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_95 #sonaar_music_40 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_95 #sonaar_music_40 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_95 #sonaar_music_40 .album-player .control { top: 0px; position: relative; } #sonaar_music_95 #sonaar_music_40 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_95 #sonaar_music_40 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_95 #sonaar_music_40 .srp-play-circle { border-width: 6px; } #sonaar_music_95 #sonaar_music_40 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8e3b42a44 srp_player_params_69cf8e3ce576a = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8e3b42a44 srp_player_params_args_69cf8e3ce576a = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3b42a44"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3ce576a"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3b42a44"); setIronAudioplayers("arbitrary-instance-69cf8e3ce576a"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_95 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_95 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_95 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_95 .album .album-art img { border-radius: 0px;} #sonaar_music_95 .sonaar-grid .album { padding: 0px;} #sonaar_music_95 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_95 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_95 .sonaar-grid { justify-content: center; } #sonaar_music_95 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_95 .playlist, #sonaar_music_95 .buttons-block { width: 100%; } #sonaar_music_95 .playlist { margin: 0px; } #sonaar_music_95 .srp_tracklist { margin: 0px; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { text-align: left; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { margin-left: 0px; } #sonaar_music_95 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_95 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_95 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_95 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_95 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_95 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_95 .album-player .control { top: 0px; position: relative; } #sonaar_music_95 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_95 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_95 .srp-play-circle { border-width: 6px; } #sonaar_music_95 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e3b42a44 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e3b42a44 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3b42a44"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3b42a44"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_40 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_40 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_40 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_40 .album .album-art img { border-radius: 0px;} #sonaar_music_40 .sonaar-grid .album { padding: 0px;} #sonaar_music_40 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_40 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_40 .sonaar-grid { justify-content: center; } #sonaar_music_40 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_40 .playlist, #sonaar_music_40 .buttons-block { width: 100%; } #sonaar_music_40 .playlist { margin: 0px; } #sonaar_music_40 .srp_tracklist { margin: 0px; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { text-align: left; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { margin-left: 0px; } #sonaar_music_40 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_40 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_40 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_40 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_40 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_40 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_40 .album-player .control { top: 0px; position: relative; } #sonaar_music_40 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_40 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_40 .srp-play-circle { border-width: 6px; } #sonaar_music_40 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e3ce576a = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e3ce576a = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3ce576a"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3ce576a"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:53:22) hash: fa66eeb03c347559f69d48b8c6cf97704e38b7da
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:54:16) hash: 7e2cc0d140c3d1dbad60faef9d21dae66dd9df88
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_63 #sonaar_music_95 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_63 #sonaar_music_95 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_63 #sonaar_music_95 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_63 #sonaar_music_95 .album .album-art img { border-radius: 0px;} #sonaar_music_63 #sonaar_music_95 .sonaar-grid .album { padding: 0px;} #sonaar_music_63 #sonaar_music_95 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_63 #sonaar_music_95 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_63 #sonaar_music_95 .sonaar-grid { justify-content: center; } #sonaar_music_63 #sonaar_music_95 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_63 #sonaar_music_95 .playlist, #sonaar_music_63 #sonaar_music_95 .buttons-block { width: 100%; } #sonaar_music_63 #sonaar_music_95 .playlist { margin: 0px; } #sonaar_music_63 #sonaar_music_95 .srp_tracklist { margin: 0px; } #sonaar_music_63 #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_63 #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_63 #sonaar_music_95 .srp_subtitle { text-align: left; } #sonaar_music_63 #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_63 #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_63 #sonaar_music_95 .srp_subtitle { margin-left: 0px; } #sonaar_music_63 #sonaar_music_95 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_63 #sonaar_music_95 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_63 #sonaar_music_95 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_63 #sonaar_music_95 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_63 #sonaar_music_95 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_63 #sonaar_music_95 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_63 #sonaar_music_95 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_63 #sonaar_music_95 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_63 #sonaar_music_95 .album-player .control { top: 0px; position: relative; } #sonaar_music_63 #sonaar_music_95 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_63 #sonaar_music_95 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_63 #sonaar_music_95 .srp-play-circle { border-width: 6px; } #sonaar_music_63 #sonaar_music_95 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8dffdd7a8 srp_player_params_69cf8e3b42a44 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8dffdd7a8 srp_player_params_args_69cf8e3b42a44 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dffdd7a8"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3b42a44"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dffdd7a8"); setIronAudioplayers("arbitrary-instance-69cf8e3b42a44"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_63 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_63 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_63 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_63 .album .album-art img { border-radius: 0px;} #sonaar_music_63 .sonaar-grid .album { padding: 0px;} #sonaar_music_63 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_63 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_63 .sonaar-grid { justify-content: center; } #sonaar_music_63 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_63 .playlist, #sonaar_music_63 .buttons-block { width: 100%; } #sonaar_music_63 .playlist { margin: 0px; } #sonaar_music_63 .srp_tracklist { margin: 0px; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { text-align: left; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { margin-left: 0px; } #sonaar_music_63 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_63 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_63 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_63 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_63 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_63 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_63 .album-player .control { top: 0px; position: relative; } #sonaar_music_63 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_63 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_63 .srp-play-circle { border-width: 6px; } #sonaar_music_63 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8dffdd7a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8dffdd7a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dffdd7a8"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dffdd7a8"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_95 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_95 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_95 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_95 .album .album-art img { border-radius: 0px;} #sonaar_music_95 .sonaar-grid .album { padding: 0px;} #sonaar_music_95 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_95 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_95 .sonaar-grid { justify-content: center; } #sonaar_music_95 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_95 .playlist, #sonaar_music_95 .buttons-block { width: 100%; } #sonaar_music_95 .playlist { margin: 0px; } #sonaar_music_95 .srp_tracklist { margin: 0px; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { text-align: left; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { margin-left: 0px; } #sonaar_music_95 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_95 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_95 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_95 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_95 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_95 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_95 .album-player .control { top: 0px; position: relative; } #sonaar_music_95 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_95 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_95 .srp-play-circle { border-width: 6px; } #sonaar_music_95 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8e3b42a44 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8e3b42a44 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3b42a44"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3b42a44"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:53:15) hash: 0ec6ab65151af06969cfff9993ad5653fe086daf
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:53:22) hash: fa66eeb03c347559f69d48b8c6cf97704e38b7da
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_82 #sonaar_music_63 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 #sonaar_music_63 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 #sonaar_music_63 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 #sonaar_music_63 .album .album-art img { border-radius: 0px;} #sonaar_music_82 #sonaar_music_63 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 #sonaar_music_63 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 #sonaar_music_63 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 #sonaar_music_63 .sonaar-grid { justify-content: center; } #sonaar_music_82 #sonaar_music_63 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 #sonaar_music_63 .playlist, #sonaar_music_82 #sonaar_music_63 .buttons-block { width: 100%; } #sonaar_music_82 #sonaar_music_63 .playlist { margin: 0px; } #sonaar_music_82 #sonaar_music_63 .srp_tracklist { margin: 0px; } #sonaar_music_82 #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_82 #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_82 #sonaar_music_63 .srp_subtitle { text-align: left; } #sonaar_music_82 #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_82 #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_82 #sonaar_music_63 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 #sonaar_music_63 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 #sonaar_music_63 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 #sonaar_music_63 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 #sonaar_music_63 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 #sonaar_music_63 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 #sonaar_music_63 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 #sonaar_music_63 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 #sonaar_music_63 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 #sonaar_music_63 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 #sonaar_music_63 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 #sonaar_music_63 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 #sonaar_music_63 .srp-play-circle { border-width: 6px; } #sonaar_music_82 #sonaar_music_63 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8dff43aea srp_player_params_69cf8dffdd7a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8dff43aea srp_player_params_args_69cf8dffdd7a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dff43aea"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dffdd7a8"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dff43aea"); setIronAudioplayers("arbitrary-instance-69cf8dffdd7a8"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8dff43aea = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8dff43aea = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dff43aea"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dff43aea"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_63 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_63 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_63 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_63 .album .album-art img { border-radius: 0px;} #sonaar_music_63 .sonaar-grid .album { padding: 0px;} #sonaar_music_63 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_63 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_63 .sonaar-grid { justify-content: center; } #sonaar_music_63 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_63 .playlist, #sonaar_music_63 .buttons-block { width: 100%; } #sonaar_music_63 .playlist { margin: 0px; } #sonaar_music_63 .srp_tracklist { margin: 0px; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { text-align: left; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { margin-left: 0px; } #sonaar_music_63 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_63 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_63 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_63 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_63 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_63 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_63 .album-player .control { top: 0px; position: relative; } #sonaar_music_63 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_63 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_63 .srp-play-circle { border-width: 6px; } #sonaar_music_63 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8dffdd7a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8dffdd7a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dffdd7a8"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dffdd7a8"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:51:25) hash: e577c4343643482dc56046e73a08e880f5ab38e3
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:53:15) hash: 0ec6ab65151af06969cfff9993ad5653fe086daf
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_55 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_55 #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_55 #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_55 #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_55 #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_55 #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_55 #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_55 #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_55 #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_55 #sonaar_music_82 .playlist, #sonaar_music_55 #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_55 #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_55 #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_55 #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_55 #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_55 #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_55 #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_55 #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_55 #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_55 #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_55 #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_55 #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_55 #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_55 #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_55 #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_55 #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_55 #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_55 #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_55 #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_55 #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_55 #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_55 #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8d878e3a0 srp_player_params_69cf8dff43aea = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8d878e3a0 srp_player_params_args_69cf8dff43aea = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d878e3a0"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dff43aea"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d878e3a0"); setIronAudioplayers("arbitrary-instance-69cf8dff43aea"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_55 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_55 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_55 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_55 .album .album-art img { border-radius: 0px;} #sonaar_music_55 .sonaar-grid .album { padding: 0px;} #sonaar_music_55 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_55 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_55 .sonaar-grid { justify-content: center; } #sonaar_music_55 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_55 .playlist, #sonaar_music_55 .buttons-block { width: 100%; } #sonaar_music_55 .playlist { margin: 0px; } #sonaar_music_55 .srp_tracklist { margin: 0px; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { text-align: left; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { margin-left: 0px; } #sonaar_music_55 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_55 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_55 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_55 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_55 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_55 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_55 .album-player .control { top: 0px; position: relative; } #sonaar_music_55 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_55 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_55 .srp-play-circle { border-width: 6px; } #sonaar_music_55 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8d878e3a0 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8d878e3a0 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d878e3a0"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d878e3a0"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8dff43aea = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8dff43aea = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dff43aea"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dff43aea"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
From 2025-11-30 14:17:02 (discovered: 2026-04-03 11:51:14) hash: 8aa502c66f1433e788b28e919bbd61a587684795
To 2025-11-30 14:17:02 (discovered: 2026-04-03 11:51:25) hash: e577c4343643482dc56046e73a08e880f5ab38e3
Title
FWSC FastTracker Music – Personal History
Description
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
Content
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly. Table of Contents Toggle How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶 How it started 🎧 #sonaar_music_77 #sonaar_music_55 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_77 #sonaar_music_55 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_77 #sonaar_music_55 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_77 #sonaar_music_55 .album .album-art img { border-radius: 0px;} #sonaar_music_77 #sonaar_music_55 .sonaar-grid .album { padding: 0px;} #sonaar_music_77 #sonaar_music_55 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_77 #sonaar_music_55 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_77 #sonaar_music_55 .sonaar-grid { justify-content: center; } #sonaar_music_77 #sonaar_music_55 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_77 #sonaar_music_55 .playlist, #sonaar_music_77 #sonaar_music_55 .buttons-block { width: 100%; } #sonaar_music_77 #sonaar_music_55 .playlist { margin: 0px; } #sonaar_music_77 #sonaar_music_55 .srp_tracklist { margin: 0px; } #sonaar_music_77 #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_77 #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_77 #sonaar_music_55 .srp_subtitle { text-align: left; } #sonaar_music_77 #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_77 #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_77 #sonaar_music_55 .srp_subtitle { margin-left: 0px; } #sonaar_music_77 #sonaar_music_55 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_77 #sonaar_music_55 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_77 #sonaar_music_55 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_77 #sonaar_music_55 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_77 #sonaar_music_55 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_77 #sonaar_music_55 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_77 #sonaar_music_55 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_77 #sonaar_music_55 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_77 #sonaar_music_55 .album-player .control { top: 0px; position: relative; } #sonaar_music_77 #sonaar_music_55 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_77 #sonaar_music_55 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_77 #sonaar_music_55 .srp-play-circle { border-width: 6px; } #sonaar_music_77 #sonaar_music_55 .srp_search_container .srp_search { padding: 15px 15px; } 4 Tracks 00:00 var srp_player_params_69cf8d87a7666 srp_player_params_69cf8d878e3a0 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} var srp_player_params_args_69cf8d87a7666 srp_player_params_args_69cf8d878e3a0 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d87a7666"} {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d878e3a0"} if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d87a7666"); setIronAudioplayers("arbitrary-instance-69cf8d878e3a0"); } I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting. The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with. Working With Miazma 🤝 One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules. Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself. The Sound of That Time 🔊 FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was: short experiments trance and ambient ideas half-finished riffs a few working loops sometimes chaotic, sometimes surprisingly good Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today. What It Means Now ✨ Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there. Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from
Old vs new
From
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_77 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_77 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_77 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_77 .album .album-art img { border-radius: 0px;} #sonaar_music_77 .sonaar-grid .album { padding: 0px;} #sonaar_music_77 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_77 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_77 .sonaar-grid { justify-content: center; } #sonaar_music_77 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_77 .playlist, #sonaar_music_77 .buttons-block { width: 100%; } #sonaar_music_77 .playlist { margin: 0px; } #sonaar_music_77 .srp_tracklist { margin: 0px; } #sonaar_music_77 .sr_it-playlist-title, #sonaar_music_77 .sr_it-playlist-artists, #sonaar_music_77 .srp_subtitle { text-align: left; } #sonaar_music_77 .sr_it-playlist-title, #sonaar_music_77 .sr_it-playlist-artists, #sonaar_music_77 .srp_subtitle { margin-left: 0px; } #sonaar_music_77 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_77 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_77 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_77 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_77 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_77 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_77 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_77 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_77 .album-player .control { top: 0px; position: relative; } #sonaar_music_77 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_77 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_77 .srp-play-circle { border-width: 6px; } #sonaar_music_77 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8d87a7666 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8d87a7666 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d87a7666"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d87a7666"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
To
TITLE:
FWSC FastTracker Music – Personal History

DESCRIPTION:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...

CONTENT:
The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

Table of Contents
Toggle
How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
How it started 🎧

 #sonaar_music_55 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_55 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_55 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_55 .album .album-art img { border-radius: 0px;} #sonaar_music_55 .sonaar-grid .album { padding: 0px;} #sonaar_music_55 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_55 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_55 .sonaar-grid { justify-content: center; } #sonaar_music_55 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_55 .playlist, #sonaar_music_55 .buttons-block { width: 100%; } #sonaar_music_55 .playlist { margin: 0px; } #sonaar_music_55 .srp_tracklist { margin: 0px; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { text-align: left; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { margin-left: 0px; } #sonaar_music_55 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_55 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_55 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_55 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_55 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_55 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_55 .album-player .control { top: 0px; position: relative; } #sonaar_music_55 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_55 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_55 .srp-play-circle { border-width: 6px; } #sonaar_music_55 .srp_search_container .srp_search { padding: 15px 15px; }
 
 
 
 
 
 
 
 
 4 Tracks
 
 
 
 
 
 00:00
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 var srp_player_params_69cf8d878e3a0 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"} 
 var srp_player_params_args_69cf8d878e3a0 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d878e3a0"} 
 if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d878e3a0"); }

I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

Working With Miazma 🤝

One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

The Sound of That Time 🔊

FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

short experiments

trance and ambient ideas

half-finished riffs

a few working loops

sometimes chaotic, sometimes surprisingly good

Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

What It Means Now ✨

Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

That’s what FWSC music was. And, honestly, that’s enough.

Later Musical Identity 🎶

In the years that followed, I continued making music under several names beyond FWSC:

Tomas Tornevall (my own name, used for more personal or experimental work)

TMM (an early alias during the transition from tracker-based music to more refined styles)

DJ TT (used for electronic, trance and dance-oriented productions)

These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.

Versions

  1. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:56:25 Hash: 317489e7b9f0101274cc4071bcd80e3b0f5ad826
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_68 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_68 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_68 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_68 .album .album-art img { border-radius: 0px;} #sonaar_music_68 .sonaar-grid .album { padding: 0px;} #sonaar_music_68 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_68 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_68 .sonaar-grid { justify-content: center; } #sonaar_music_68 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_68 .playlist, #sonaar_music_68 .buttons-block { width: 100%; } #sonaar_music_68 .playlist { margin: 0px; } #sonaar_music_68 .srp_tracklist { margin: 0px; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { text-align: left; } #sonaar_music_68 .sr_it-playlist-title, #sonaar_music_68 .sr_it-playlist-artists, #sonaar_music_68 .srp_subtitle { margin-left: 0px; } #sonaar_music_68 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_68 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_68 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_68 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_68 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_68 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_68 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_68 .album-player .control { top: 0px; position: relative; } #sonaar_music_68 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_68 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_68 .srp-play-circle { border-width: 6px; } #sonaar_music_68 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8eb41f312 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8eb41f312 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb41f312"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb41f312"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  2. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:56:16 Hash: b630ca7009e799f7be6f39a5705e2869cbbbd569
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_13 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_13 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_13 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_13 .album .album-art img { border-radius: 0px;} #sonaar_music_13 .sonaar-grid .album { padding: 0px;} #sonaar_music_13 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_13 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_13 .sonaar-grid { justify-content: center; } #sonaar_music_13 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_13 .playlist, #sonaar_music_13 .buttons-block { width: 100%; } #sonaar_music_13 .playlist { margin: 0px; } #sonaar_music_13 .srp_tracklist { margin: 0px; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { text-align: left; } #sonaar_music_13 .sr_it-playlist-title, #sonaar_music_13 .sr_it-playlist-artists, #sonaar_music_13 .srp_subtitle { margin-left: 0px; } #sonaar_music_13 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_13 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_13 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_13 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_13 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_13 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_13 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_13 .album-player .control { top: 0px; position: relative; } #sonaar_music_13 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_13 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_13 .srp-play-circle { border-width: 6px; } #sonaar_music_13 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8eb4cc0ae = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8eb4cc0ae = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb4cc0ae"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb4cc0ae"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  3. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:56:05 Hash: b770a50b2e4e7b2c931f4bd44739d954e169defe
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_90 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_90 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_90 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_90 .album .album-art img { border-radius: 0px;} #sonaar_music_90 .sonaar-grid .album { padding: 0px;} #sonaar_music_90 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_90 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_90 .sonaar-grid { justify-content: center; } #sonaar_music_90 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_90 .playlist, #sonaar_music_90 .buttons-block { width: 100%; } #sonaar_music_90 .playlist { margin: 0px; } #sonaar_music_90 .srp_tracklist { margin: 0px; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { text-align: left; } #sonaar_music_90 .sr_it-playlist-title, #sonaar_music_90 .sr_it-playlist-artists, #sonaar_music_90 .srp_subtitle { margin-left: 0px; } #sonaar_music_90 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_90 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_90 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_90 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_90 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_90 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_90 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_90 .album-player .control { top: 0px; position: relative; } #sonaar_music_90 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_90 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_90 .srp-play-circle { border-width: 6px; } #sonaar_music_90 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8eb3a00a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8eb3a00a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8eb3a00a8"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8eb3a00a8"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  4. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:55:14 Hash: e3898944cb9599cb13136046f881de832236977a
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8e770bffb = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8e770bffb = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e770bffb"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e770bffb"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  5. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:54:25 Hash: 5dc0c309216596bf9ed89fd2a2cc078434117db4
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_40 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_40 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_40 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_40 .album .album-art img { border-radius: 0px;} #sonaar_music_40 .sonaar-grid .album { padding: 0px;} #sonaar_music_40 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_40 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_40 .sonaar-grid { justify-content: center; } #sonaar_music_40 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_40 .playlist, #sonaar_music_40 .buttons-block { width: 100%; } #sonaar_music_40 .playlist { margin: 0px; } #sonaar_music_40 .srp_tracklist { margin: 0px; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { text-align: left; } #sonaar_music_40 .sr_it-playlist-title, #sonaar_music_40 .sr_it-playlist-artists, #sonaar_music_40 .srp_subtitle { margin-left: 0px; } #sonaar_music_40 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_40 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_40 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_40 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_40 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_40 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_40 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_40 .album-player .control { top: 0px; position: relative; } #sonaar_music_40 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_40 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_40 .srp-play-circle { border-width: 6px; } #sonaar_music_40 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8e3ce576a = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8e3ce576a = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3ce576a"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3ce576a"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  6. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:54:16 Hash: 7e2cc0d140c3d1dbad60faef9d21dae66dd9df88
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_95 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_95 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_95 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_95 .album .album-art img { border-radius: 0px;} #sonaar_music_95 .sonaar-grid .album { padding: 0px;} #sonaar_music_95 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_95 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_95 .sonaar-grid { justify-content: center; } #sonaar_music_95 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_95 .playlist, #sonaar_music_95 .buttons-block { width: 100%; } #sonaar_music_95 .playlist { margin: 0px; } #sonaar_music_95 .srp_tracklist { margin: 0px; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { text-align: left; } #sonaar_music_95 .sr_it-playlist-title, #sonaar_music_95 .sr_it-playlist-artists, #sonaar_music_95 .srp_subtitle { margin-left: 0px; } #sonaar_music_95 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_95 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_95 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_95 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_95 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_95 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_95 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_95 .album-player .control { top: 0px; position: relative; } #sonaar_music_95 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_95 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_95 .srp-play-circle { border-width: 6px; } #sonaar_music_95 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8e3b42a44 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8e3b42a44 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8e3b42a44"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8e3b42a44"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  7. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:53:22 Hash: fa66eeb03c347559f69d48b8c6cf97704e38b7da
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_63 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_63 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_63 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_63 .album .album-art img { border-radius: 0px;} #sonaar_music_63 .sonaar-grid .album { padding: 0px;} #sonaar_music_63 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_63 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_63 .sonaar-grid { justify-content: center; } #sonaar_music_63 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_63 .playlist, #sonaar_music_63 .buttons-block { width: 100%; } #sonaar_music_63 .playlist { margin: 0px; } #sonaar_music_63 .srp_tracklist { margin: 0px; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { text-align: left; } #sonaar_music_63 .sr_it-playlist-title, #sonaar_music_63 .sr_it-playlist-artists, #sonaar_music_63 .srp_subtitle { margin-left: 0px; } #sonaar_music_63 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_63 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_63 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_63 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_63 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_63 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_63 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_63 .album-player .control { top: 0px; position: relative; } #sonaar_music_63 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_63 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_63 .srp-play-circle { border-width: 6px; } #sonaar_music_63 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8dffdd7a8 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8dffdd7a8 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dffdd7a8"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dffdd7a8"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  8. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:53:15 Hash: 0ec6ab65151af06969cfff9993ad5653fe086daf
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_82 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_82 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_82 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_82 .album .album-art img { border-radius: 0px;} #sonaar_music_82 .sonaar-grid .album { padding: 0px;} #sonaar_music_82 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_82 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_82 .sonaar-grid { justify-content: center; } #sonaar_music_82 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_82 .playlist, #sonaar_music_82 .buttons-block { width: 100%; } #sonaar_music_82 .playlist { margin: 0px; } #sonaar_music_82 .srp_tracklist { margin: 0px; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { text-align: left; } #sonaar_music_82 .sr_it-playlist-title, #sonaar_music_82 .sr_it-playlist-artists, #sonaar_music_82 .srp_subtitle { margin-left: 0px; } #sonaar_music_82 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_82 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_82 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_82 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_82 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_82 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_82 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_82 .album-player .control { top: 0px; position: relative; } #sonaar_music_82 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_82 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_82 .srp-play-circle { border-width: 6px; } #sonaar_music_82 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8dff43aea = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8dff43aea = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8dff43aea"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8dff43aea"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  9. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:51:25 Hash: e577c4343643482dc56046e73a08e880f5ab38e3
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_55 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_55 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_55 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_55 .album .album-art img { border-radius: 0px;} #sonaar_music_55 .sonaar-grid .album { padding: 0px;} #sonaar_music_55 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_55 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_55 .sonaar-grid { justify-content: center; } #sonaar_music_55 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_55 .playlist, #sonaar_music_55 .buttons-block { width: 100%; } #sonaar_music_55 .playlist { margin: 0px; } #sonaar_music_55 .srp_tracklist { margin: 0px; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { text-align: left; } #sonaar_music_55 .sr_it-playlist-title, #sonaar_music_55 .sr_it-playlist-artists, #sonaar_music_55 .srp_subtitle { margin-left: 0px; } #sonaar_music_55 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_55 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_55 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_55 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_55 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_55 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_55 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_55 .album-player .control { top: 0px; position: relative; } #sonaar_music_55 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_55 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_55 .srp-play-circle { border-width: 6px; } #sonaar_music_55 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8d878e3a0 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8d878e3a0 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d878e3a0"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d878e3a0"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.
  10. 2025-11-30 14:17:02
    Discovered: 2026-04-03 11:51:14 Hash: 8aa502c66f1433e788b28e919bbd61a587684795
    Title:
    FWSC FastTracker Music – Personal History
    Description:
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications. The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet...
    Content
    The musical side of FWSC was probably never planned, structured or even meant to become a “project”. It was very much about learning applications.

    The name grew naturally out of the same world as FreeWare Data and FreeWare Data/2 (FidoNet 2:200/213) – late nights at the computer, curiosity, and the feeling that anything you made was worth saving just because it existed. The BBS era was chaotic, experimental and completely unpretentious, and the music followed that logic perfectly.

    Table of Contents
    Toggle
    How it started 🎧Working With Miazma 🤝The Sound of That Time 🔊What It Means Now ✨Later Musical Identity 🎶
    How it started 🎧

    #sonaar_music_77 .iron-audioplayer:not(.sonaar-no-artwork) .srp_player_grid { grid-template-columns: 160px 1fr;} #sonaar_music_77 .srp_player_boxed .album-art { width: 160px; max-width: 160px;} #sonaar_music_77 .srp_player_boxed .sonaar-Artwort-box { min-width: 160px;} #sonaar_music_77 .album .album-art img { border-radius: 0px;} #sonaar_music_77 .sonaar-grid .album { padding: 0px;} #sonaar_music_77 .srp_player_boxed .srp-play-button-label-container { padding: 7px 7px;} #sonaar_music_77 .playlist li .sr_track_cover { width: 45px; min-width: 45px;} #sonaar_music_77 .sonaar-grid { justify-content: center; } #sonaar_music_77 .sr_playlist_below_artwork_auto .sonaar-grid { align-items: center; } #sonaar_music_77 .playlist, #sonaar_music_77 .buttons-block { width: 100%; } #sonaar_music_77 .playlist { margin: 0px; } #sonaar_music_77 .srp_tracklist { margin: 0px; } #sonaar_music_77 .sr_it-playlist-title, #sonaar_music_77 .sr_it-playlist-artists, #sonaar_music_77 .srp_subtitle { text-align: left; } #sonaar_music_77 .sr_it-playlist-title, #sonaar_music_77 .sr_it-playlist-artists, #sonaar_music_77 .srp_subtitle { margin-left: 0px; } #sonaar_music_77 .playlist li { padding-top: 8px; padding-bottom: 8px; } #sonaar_music_77 .sr-playlist-item .sricon-play:before{ font-size: 12px; } #sonaar_music_77 .track-number { padding-left: calc( 12px + 12px ); }@media (max-width: 767px){ #sonaar_music_77 .iron-audioplayer .srp_tracklist-item-date { padding-left: calc( 12px + 12px ); }} #sonaar_music_77 .ctnButton-block { justify-content: center; align-items: center; } #sonaar_music_77 .buttons-block { justify-content: center; align-items: center; } #sonaar_music_77 .buttons-block .store-list li .button { border-style: none; } #sonaar_music_77 .show-playlist .ctnButton-block { margin: 22px; } #sonaar_music_77 .album-player .control { top: 0px; position: relative; } #sonaar_music_77 .srp-play-button .sricon-play { font-size: 19px; } #sonaar_music_77 .srp-play-circle { height: 68px; width: 68px; border-radius: 68px; } #sonaar_music_77 .srp-play-circle { border-width: 6px; } #sonaar_music_77 .srp_search_container .srp_search { padding: 15px 15px; }








    4 Tracks





    00:00



























    var srp_player_params_69cf8d87a7666 = {"title":"","store_title_text":"Available now on:","albums":"37614","hide_artwork":"","sticky_player":"1","show_album_market":"1","show_track_market":"1","hide_timeline":"","titletag_soundwave":"div","titletag_playlist":"h3","show_playlist":"1","wave_color":"","wave_progress_color":"","shuffle":"","reverse_tracklist":"","searchbar":"","show_cat_description":"","track_desc_lenght":"55","strip_html_track_desc":"true","player_layout":"skin_boxed_tracklist","show_track_publish_date":"default","show_volume_bt":"default","show_miniplayer_note_bt":"default","show_speed_bt":"default","show_shuffle_bt":"default","show_repeat_bt":"default","show_skip_bt":"default","post_link":"default","cta_track_show_label":"default","show_publish_date":"default","show_tracks_count":"default","show_meta_duration":"default","hide_progressbar":"false","use_play_label":"false","use_play_label_with_icon":"false","orderby":"date","order":"DESC","main_settings":"||"}
    var srp_player_params_args_69cf8d87a7666 = {"before_widget":"","after_widget":"","before_title":"","after_title":"","widget_id":"arbitrary-instance-69cf8d87a7666"}
    if(typeof setIronAudioplayers !== "undefined"){ setIronAudioplayers("arbitrary-instance-69cf8d87a7666"); }

    I didn’t approach music as a musician. I approached it the same way I approached BASIC: try something, see what happens, break it, try again. The results weren’t tone-deaf, but they weren’t exactly polished either. FastTracker became the tool of choice simply because it worked, and because it made it possible to test ideas quickly – even when those ideas tried (and often failed) to imitate techno or rave. Kristian (Miazma) pointed out more than once that I had a habit of hammering snares way too hard, which was probably fair. Still, rhythm was already “a thing” for me back then, and that might be why genres like DnB, jungle and house eventually became so interesting.

    The FWSC prefix appeared for the same reason the name appeared in my software – it was the identity of everything I created at that time. If I wrote a program, it went under FWSC. If I made a module file, it ended up with FW- in the filename. It wasn’t branding. It was just me putting a small signature on whatever I played around with.

    Working With Miazma 🤝

    One part that stands out is the collaboration with Kristian Olofsson (Later also Miazma). We weren’t trying to make releases. We weren’t thinking about demos or charts or reputations. We were just two people creating and trading modules.

    Tracks like Tranceflash (there is no official release on this one) exist because we thought it was funny – and because the tools made it possible. Whether it became a “Hardcore Edit”, a “Hypermix” or a random experimental version didn’t matter. What mattered was the process: that feeling of the screen glowing at 2 AM, the modem humming in the background, and FastTracker patterns scrolling by faster than the music itself.

    The Sound of That Time 🔊

    FWSC music wasn’t polished. It wasn’t refined. It didn’t try to be anything. It was:

    short experiments

    trance and ambient ideas

    half-finished riffs

    a few working loops

    sometimes chaotic, sometimes surprisingly good

    Files like FW-PIANO.XM, FW-GUITA.XM, FW-AMBI.XM – these were snapshots. Little fragments from a time where every small test felt like its own project. None of them were meant for an audience, which is probably why they still feel honest today.

    What It Means Now ✨

    Looking back, the FWSC music represents the same thing as the rest of the era: a phase where creativity was effortless because there were no expectations. No plans. No goals. Just the pure joy of making something, storing it on a disk, and letting it sit there.

    Most of the tracks survived only by accident – backups, old folders, forgotten archives. But together they form a tiny musical footprint of FreeWare Data. Not a career. Not even a catalog. Just a timeline of experiments from someone who wanted to create, and who found a way to do it with the tools that existed at that exact moment in time.

    That’s what FWSC music was. And, honestly, that’s enough.

    Later Musical Identity 🎶

    In the years that followed, I continued making music under several names beyond FWSC:

    Tomas Tornevall (my own name, used for more personal or experimental work)

    TMM (an early alias during the transition from tracker-based music to more refined styles)

    DJ TT (used for electronic, trance and dance-oriented productions)

    These identities represent the evolution from small FWSC experiments into a more defined creative path, even if the early tracker era remains the foundation of it all.