Eye Are See

Read the full book on Royal Road →

1. First Contact

"Winamp, it really whips the llama's ass!"

The voice echoes through my desktop speakers, cheap plastic that came with the Gateway, followed by silence. My music library has two songs. "Under the Bridge" and "Smells Like Teen Spirit." Nine minutes and twenty-five seconds total.

I've listened to these tracks already fifty times this week. Thousands more over the years on my cassette tapes. I need more music.

My discussion with Dad at Best Buy last weekend made me think—twelve bucks for one good song and ten tracks of filler is highway robbery. But his solution—listen to the radio—isn't happening. The radio plays the same twelve songs on rotation.

There has to be a better way.

My friend Jimmy mentioned IRC when we were hanging out last week. Internet Relay Chat. "It's like AOL chat rooms," he said, "except with people who actually know things. And they share music files. Free MP3s. Free software. You just download whatever you want."

Worth a shot.

First, I need to get online.

I double-click the dial-up connection icon.

The modem springs to life.

That sound. Like a robot screaming, gargling, having a mechanical seizure. The screeching handshake between my computer and some server thousands of miles away—every beep and warble negotiating protocols I don't understand. It sounds like the future dying and being reborn simultaneously.

"Are you using the phone?" Mom yells from downstairs.

"Yeah!"

"I need to make a call in a few minutes!"

"Okay!"

She doesn't realize that "making a call" means I get kicked offline. Shared phone line. Problem for future me.

The modem screeches through its full handshake sequence. Digital negotiation. Baud rates, error correction, protocols. All of it happening in that horrible, beautiful sound.

Then silence. Connected.

I open mIRC. The icon sits on my desktop: a small window with colorful speech bubbles. Jimmy gave it to me on a 3.5" floppy disk weeks ago, but I never opened it. I have no idea how to use IRC. Don't even know what IRC really is beyond "chat thing."

The mIRC window opens—empty gray panels, buttons I don't recognize. A dialog box appears: *mIRC Setup*.

It wants information. Nickname first.

The cursor blinks in the empty field. Whatever I type here becomes who I am in this world.

Something close to Scotto. My actual last name. But online.

I think about Skäto. Sounds right when you say it. But the character field won't accept special characters. Without the umlaut: "Skate-o." Not me.

SKa.

Short. Simple. And it's music—the genre. Upbeat, high-energy, horns and drums. Fits better than I meant it to.

I type: SKa

Full name: Blank. None of their business.

Email address: I make something up.

The next screen shows a list of IRC servers. Pre-loaded. Not sure what these are, but there are dozens of them grouped into categories.

EFnet: New York, Los Angeles, London...

Undernet: Washington, Montreal, Oslo...

DALnet: RandomServer, Minnesota, Virginia...

Each network has multiple servers. I don't know the difference between networks. Jimmy didn't explain that part.

I pick DALnet because it's near the top. "RandomServer" sounds like it'll connect me to whichever one works.

I click Connect.

Text appears in the window:

* Connecting to irc.dal.net (6667)

* Connected to irc.dal.net

* -irc.dal.net- * Looking up your hostname...

* -irc.dal.net- * Checking Ident

* -irc.dal.net- * Found your hostname

* -irc.dal.net- * No Ident response

* -irc.dal.net- * Welcome to the DALnet IRC Network SKa!

I'm in.

This is different from AOL chat rooms. Those feel like toys. Training wheels. This feels raw. Like I've connected to something underneath the polished surface of the internet.

But I don't see any people yet. No conversations. Just me and server messages.

I stare at the empty window. Wasn't this supposed to be like chat rooms? Where is everyone?

I try typing in the text input at the bottom: "hello?"

The text appears in my window. But nobody responds. I'm connected to a server, but I'm not in a room yet.

AOL automatically puts you in a chat room. This doesn't.

I poke through the menu bar. File. View. Tools. Commands.

Commands has an option: "Channel List."

I click it.

"Getting channel list from server..."

Then: "There are currently 12,847 channels. This may take several minutes to retrieve."

The list populates line by line:

#warez 953 users

#mp3 487 users

#chat 234 users

#cracks 189 users

#teenhelp 156 users

#0-day 145 users

#mp3info 98 users

...

Hundreds of channels scroll past. Thousands. Channel names fly by—some make sense, some are random letter combinations, some are clearly private jokes I'm not in on.

Two minutes later: "12,847 channels retrieved."

I scroll to the top. There it is: #mp3. 487 users.

I double-click.

A new window opens:

* Now talking in #mp3

* Topic is 'Welcome to #mp3 | No Leeching | Upload:Download Ratios Enforced'

* Set by MusicLord on Sun Jun 2 14:32:19

Names appear on the right panel:

@Aimee69

@DJ_Spin

@Kaos

@MusicLord

@Splice

@Tr4nCe

+AudioFile

A-Train

acid_jazz

AlternativeRock

audiophile99

AxlRose96

BassHead

beat_freak

...

Some have @ symbols. Some have +. Most have nothing. I don't know what that means yet.

Text flows in the main window:

<bEaTmAsTeR> anyone got tool aenima?

<AudioFile> my fserv’s up, trigger’s !find

<bEaTmAsTeR> !find aenima

* MP3_Bot v1.9: 15 matches for "aenima"

* 01) tool_-_aenima_-_01_stinkfist.mp3 (5.0MB)

* 02) tool_-_aenima_-_02_eulogy.mp3 (8.1MB)

* 03) tool_-_aenima_-_03_h.mp3 (5.9MB)

...

<bEaTmAsTeR> damn you got the whole thing

<bEaTmAsTeR> !get 01

* MP3_Bot: queued 01 (slot 2/4)

People asking for music. Others responding with commands I don't understand. Bots posting file lists. Someone gets kicked—their name just disappears. The @ people have power here. They can kick. They control the channel.

Nobody notices I've joined. I'm just another name in a list of 487.

The commands menu has an option called "Whois"—shows connection info, what channels someone's in, whether they have operator status. I try it on myself.

* SKa ([user@host])

* SKa on #mp3

Dialup connection. One channel. No @ symbol next to #mp3.

No power. Just watching.

I don't type anything. Just trying to understand the language, the patterns, the rules.

This is it. This is the better way.

I just need to figure out how it works.

Then I see it:

<MP3-Bot> Serving 15,237 MP3s :: !list for catalogue :: Speeds to 10KB/s!

2. The Library

Fifteen thousand MP3s. All accessible somehow.

Another message appears:<MusicServ> 8,942 files :: Hip-Hop, Rock, Alternative :: !list for access

File server bots. The channel's full of them, announcing their collections every few minutes like street vendors hawking their wares. I've been so focused on the @ symbols and the conversations that I hadn't noticed the pattern.

I type "/msg MP3-Bot !list"

A new window pops up—a DCC Chat session. A private connection between my computer and whoever's running this bot.

Text floods in, hundreds of lines:

Welcome to MP3-Bot File Server15,237 files available---------------------------[Rock/90s] Pearl Jam - Ten (1991)[Rock/90s] Nirvana - Nevermind (1991)[Rock/90s] Nirvana - In Utero (1993)[Hip-Hop] Wu-Tang Clan - Enter the Wu-Tang (1993)[Hip-Hop] Dr. Dre - The Chronic (1992)[Hip-Hop] Nas - Illmatic (1994)[Alternative] Radiohead - The Bends (1995)[Alternative] Smashing Pumpkins - Siamese Dream (1993)

The list goes on. And on. I scroll up, trying to see where it starts, but there's too much. Albums I own. Albums I want. Albums I've never heard of but suddenly need to hear.

My pulse pounds in my ears. My hands hover over the keyboard, fingers trembling slightly.

This isn't Best Buy with their $12 CDs in locked plastic cases. This is someone's hard drive. Literally. Some person, somewhere, is running this bot from their computer—maybe California, maybe Germany, maybe down the street. Their machine is connected directly to mine right now. I'm in my room in suburban Chicago, and I can browse the contents of someone's hard drive on the other side of the world.

The music isn't physical anymore. It's not on a shelf behind a counter. It's just... data. And data moves at the speed of light.

This is the future.

I lean forward, studying the format. Each album has a folder path, file sizes listed in megabytes. A single song is about 5MB at the quality I want—128kbps, someone said earlier. Full albums are 50-70MB.

I type cd Hip-Hop and the directory changes. Now I'm looking at just the hip-hop collection:

[Hip-Hop] 2Pac - All Eyez On Me (1996)[Hip-Hop] A Tribe Called Quest - The Low End Theory (1991)[Hip-Hop] Wu-Tang Clan - 36 Chambers (1993)

There. 2Pac. All Eyez On Me. The whole album.

I type: 'get 2Pac - All Eyez On Me' and hold my breath.

The bot responds:

Error: Insufficient creditsUpload:Download Ratio: 0:0You must upload files to earn download creditsUpload 1MB = 1 credit | Download 1MB = 1 credit

I stare at the message.

Read it again.

Then I get it. You can't just take. You have to give. It's a credit system—upload a megabyte, download a megabyte. Perfect economy. Perfectly fair.

Perfectly impossible.

My modem is 14.4k. That's 14.4 kilobits per second, which translates to maybe 1.8 kilobytes per second on a good day. To upload a single 5MB MP3 would take... I do the math in my head. Almost 48 minutes. And that's assuming the connection doesn't drop.

And that's assuming I have anything worth uploading in the first place. I've got two MP3s—"Under the Bridge" and "Smells Like Teen Spirit." Songs everyone already has.

The DCC window closes. Another bot. MusicServ.

Same system.

A third—FileCenter.

Same message: Insufficient credits. Upload to download.

I sit back in my chair, jaw tight. Every server has the same rules. It's not a bug or a trick—it's the economy of this whole world. The physics that govern it. Different from the physical world's physics, but just as real.

In the real world, scarcity comes from manufacturing and distribution—making CDs, shipping them, stocking them in stores. Here, scarcity is artificial. The files are infinite, copyable, weightless. But access? Access has rules.

Different gatekeepers. Different locks.

The #mp3 window is still scrolling with conversation:

<@DJ_Spin> anyone got the latest Presidents of the USA album?

<RaveR> yeah check my fserv

<@Aimee69> lol raver your fserv is always down

<RaveR> is not!

<xXEliteXx> ur server sux raver

<RaveR> whatever lamer

<@Kaos> keep it up and I'm kicking both of you

My eyes catch on the @ symbols again. DJ_Spin. Aimee69. Kaos.

They're not just chatting. They're not scrambling for credits. They're... above it somehow. Running things. The ones with power here.

3. The World Beyond

I keep coming back.

After school the next day. Before dinner. Late that night after my parents go to bed. The modem screech becomes familiar, almost comforting. The handshake that means I'm not stuck in my room anymore—I'm connected.

Each time I log in, I go straight to #mp3. Not to ask for files anymore. Not even to browse the file servers. Just to watch.

The channel has its rhythms. Peak hours in the evening when the user count climbs past 500. Dead zones in the afternoon when it drops to 200. Different operators cycling through—DJ_Spin during the day, Kaos and Aimee69 at night.

I start recognizing regulars. xXEliteXx who's always complaining about slow speeds. RaveR who runs a file server that apparently goes down constantly. AudioFile who only talks in commands and trigger words.

I'm learning the language. The patterns. The unwritten rules.

And I'm starting to see how power works here.

---

It happens on my fourth day in the channel.

xXEliteXx is at it again:

<xXEliteXx> this channel is dead<xXEliteXx> nobody shares anything good<xXEliteXx> all you ops do is sit here with @ and do nothing

I've seen him complain before. Usually people ignore him or tell him to shut up. But tonight he keeps going.

<xXEliteXx> seriously why are you even ops<xXEliteXx> kaos you never share files<xXEliteXx> aimee your server is always offline<xXEliteXx> bunch of posers

The channel chat slows. Other conversations stop. It's like everyone's holding their breath.

Nobody responds. The operators don't engage with him at all.

Then, suddenly:

* xXEliteXx was kicked by Kaos (attitude adjustment needed)

xXEliteXx's name vanishes from the user list.

The channel erupts.

<RaveR> lol owned

<acid_jazz> took long enough

<@Aimee69> he'll be back in 60 seconds whining

And she's right. Sixty seconds later, xXEliteXx rejoins. But this time he's quiet.

<xXEliteXx> ok ok my bad

<@Kaos> thought so

That's it. No discussion. No debate. Kaos apparently kicked xXEliteXx out of the channel, and xXEliteXx was gone. Then allowed back, but only on Kaos's terms.

The @ symbol isn't just decoration. It's authority. Real power. The ability to remove someone from the conversation entirely. To control who stays and who goes.

And the operators don't even have to be watching. Kaos wasn't in the conversation before xXEliteXx started complaining. But he showed up, handled it, and the problem disappeared.

They run this place.

---

The next day, I'm in #mp3 around noon—skipping lunch, eating at my desk so I can stay online. The channel is quieter. Only 234 users.

I'm half-reading a conversation about some new Radiohead bootleg when the screen goes chaotic.

Names start disappearing from the user list.

Not one at a time. Dozens at once.

* AudioFile has quit IRC (irc.dal.net mesra.dal.net)* RaveR has quit IRC (irc.dal.net mesra.dal.net)* acid_jazz has quit IRC (irc.dal.net mesra.dal.net)* AlternativeRock has quit IRC (irc.dal.net mesra.dal.net)...

The quit messages flood the channel window—twenty, thirty, fifty users all disconnecting at the same time. The message is identical for each one: two server names separated by a space.

The user list on the right side of my screen is shrinking.

234 users.

180.

120.

87.

The list that was packed with names, scrollable, crowded—suddenly has whitespace. Gaps. I can see the bottom of the list without scrolling.

The channel chat explodes with the users who remain:

<bEaTmAsTeR> netsplit

<A-Train> great

<@MusicLord> irc.dal.net split from mesra

I have no idea what that means.

The quit messages keep coming for another ten seconds, then stop. The channel stabilizes at 41 users. The nickname list looks almost empty. White space where hundreds of names were moments ago.

It's eerie. Like watching a crowded room suddenly evacuate.

<SKa> what happened

<A-Train> netsplit. servers disconnected

<@MusicLord> they'll be back in a few minutes

Servers disconnected? I thought this was one network. One IRC system. But apparently it's multiple servers connected together, and sometimes they... split apart?

I'm filing this away. Don't understand it yet. But it's clearly a thing that happens.

Three minutes later, the flood reverses.

* AudioFile ([user@host]) has joined #mp3* RaveR ([user@host]) has joined #mp3* acid_jazz ([user@host]) has joined #mp3...

The user list fills back up. Names returning, the whitespace disappearing. Within sixty seconds we're back to 231 users.

<RaveR> stupid splits

<AudioFile> thought I got banned for a second lol

The channel returns to normal like nothing happened.

But I'm still thinking about it. The network fragmented. Broke into pieces. Then reformed. Some kind of technical thing I don't understand yet.

Another layer to this world I didn't know existed.

---

Over the next few days, I keep watching. Learning.

I notice operators mention "my crew" sometimes. "Our clan." References to groups I'm not part of, teams I don't see.

There are teams here. Alliances. Groups of people working together, competing with other groups. It's not just individuals—there's infrastructure. Organization.

I see Kaos mention "our servers" once. Not "my server." Our servers. Plural. He's part of something bigger.

The operators aren't just random people with power. They're connected. They belong to something.

And I'm not part of any of it.

---

It's late. Past midnight on a Thursday. I should be asleep—school tomorrow—but I'm in #mp3, watching the usual crowd.

Kaos and d0pe are talking about some channel takeover that happened on EFNet. DJ_Spin is helping someone troubleshoot their file server. Regular users are trading files, asking for albums, the usual noise.

I'm sitting here in my room in suburban Chicago. One username in a list of 314. Nobody knows I exist.

But those operators with @? They're somebody here.

I need to talk to one of them.

The channel counter shows 487 users—peak time.

Then the net split hits.

* DJ_Spin has quit IRC (irc.dal.net glass.dal.net)* d0pe has quit IRC (irc.dal.net glass.dal.net)* Aimee69 has quit IRC (irc.dal.net glass.dal.net)* MusicLord has quit IRC (irc.dal.net glass.dal.net)...

I've seen this before, but it still feels wrong. Like the ground dropping out. One second I'm looking at nearly 500 people, the next it's just forty-seven names.

The channel gets quiet. Most people don't bother talking during splits—they just wait for the network to heal itself.

But I see one name still there: Kaos.