HAMMERMAMMAL

Uptown Media Systems

UMS corporate information screen with the globe mark, Uptown Media Systems name, and a description of its local media services.

My wife and I have a habit of leaving the TV on while we’re doing something else. We’ll sit on the couch scrolling through our phones, working on something, or generally occupying our own little worlds while Bob’s Burgers runs in the background.

At some point I noticed that we weren’t really choosing what to watch. We kept landing on the same blocks of programming. A couple hours of Bob’s Burgers. Seinfeld in the middle of the day. Shows we liked enough that nobody felt compelled to reach for the remote.

It made me realize there was something I still liked about television: you turn it on and something is already happening.

What I didn’t like was channel surfing through a hundred channels hoping to find two or three worth leaving on. Streaming wasn’t much better. It replaced channel surfing with menus, recommendations, subscriptions, and the question I was trying to avoid in the first place: what do you want to watch?

I started wondering what television would be like if every channel was ours.

Around that time I stumbled across Shane Mason’s FieldStation42, an open-source project that turns a Linux computer or Raspberry Pi into a simulated cable television system. Instead of selecting a video, channels have schedules and programming continues whether you’re watching it or not. It can even insert commercials and station IDs between shows.

That seemed like a sign.

Building a cable company

I started collecting our favorite shows and movies and building channels around them.

The point wasn’t to recreate a giant cable package. That was exactly what I didn’t want. I wanted a small collection of channels where nearly anything we landed on would be something we were happy to leave running.

The distinction between that and a Plex library or streaming service turned out to be important.

There is nothing to choose.

The television is already on. The show is already playing. Change the channel if you don’t like it.

That’s it.

The project became BGTV, our own tiny cable network. Shows run in blocks. Movies come on at scheduled times. There are station IDs, bumps, commercials and a program guide. The channels continue running when nobody is watching.

Authentic BGTV program guide showing multiple channels, current and upcoming programs, and a playing-video preview.
BGTV's program guide, with several channels already in progress.

It recreates one of the things I miss about broadcast television without recreating most of the things I hated about it.

And once BGTV was working, I immediately started thinking about what else I could do with the idea.

What if the radio worked the same way?

My wife gravitates toward having the television running in the background. I usually prefer music.

I was also getting tired of paying monthly subscriptions for access to music when I already had a large collection of my own. Streaming services gave me practically unlimited choice, but unlimited choice wasn’t really what I wanted.

I wanted to turn something on.

So I started looking for the audio equivalent of what FieldStation42 was doing for television and found Liquidsoap, a programming language and toolkit for building audio and radio streams.

That became KMAT.

Instead of another giant music library that requires me to decide what album or artist I want to hear, KMAT is programmed like a radio station. My collection is organized into programming, and that programming follows a weekly schedule. It mixes artists I already know with music I might otherwise forget about or never think to put on.

The station is always playing.

Tune in and drop out.

Eventually I took that idea literally and added a small FM transmitter. KMAT now exists both as a stream on my network and as 88.1 FM inside the house.

Authentic KMAT interface showing the on-air 88.1 FM status, current track, stream controls, and weekly program schedule.
KMAT on air, with its current transmission and weekly programming.

At this point I had a television network and a radio station running from a Raspberry Pi.

Clearly they needed a parent company.

UMS

I didn’t initially set out to build Uptown Media Systems.

BGTV was one experiment. KMAT was another. But once both were working, they started to feel like parts of the same thing.

Both systems could have their own station IDs, interstitials and visual identities. Both were running as little always-on broadcast services. Instead of treating them as unrelated projects, I decided to invent the company that operated them.

Uptown Media Systems — UMS.

The name refers to Uptown Phoenix, where all of this lives, while conveniently containing my initials, MS. More importantly, it sounds like the kind of vaguely technological corporation that might have existed sometime around 1983.

That gave me another project entirely.

Inventing a company that doesn’t exist

I spent nearly twenty years of my career working as a designer. Graphic design, web design, mobile applications, software, branding and marketing were all parts of that life.

My current work doesn’t give me many opportunities to exercise those muscles anymore.

UMS does.

I’ve always loved mid-century corporate identity work and designers like Paul Rand, Saul Bass and Milton Glaser. I especially like the period when a company’s identity wasn’t simply a logo. It was a system: typography, grids, colors, signage, printed material, equipment labels, documentation and rules for how everything fit together.

So I decided to treat UMS as though it were a real technology and media company from another era.

That means the unnecessary stuff matters.

Station IDs matter. Equipment labels matter. The typography on a control screen matters. Naming conventions matter. A web interface that only I might ever use still gets designed as though someone handed me a corporate identity manual and told me not to screw it up.

Contact sheet of the established UMS globe mark and authentic UMS, KMAT, and PHX interface details showing shared typography and layout.
The established mark, typography, and interface details across UMS services.

There is no client.

There is no marketing department.

There is barely an audience.

That’s part of what makes it fun.

The system keeps growing

Once I had given the thing a name, new ideas started finding places inside it.

Today UMS includes BGTV, the television network, and KMAT, which broadcasts both as a network audio stream and over 88.1 FM.

Then there are the less visible parts.

UMS Wire handles information. UMS Signal handles alerts. A collection of local control pages provides interfaces for managing the system, including ums.local, system.local, kmat.local, and phx.local.

Four real UMS interfaces. Open any screen to see it at full size.

Some of these started because I needed a practical tool. Others started because I wondered whether I could make them.

That’s probably the best definition of UMS.

It isn’t really a home server, even though technically a lot of it runs on one. It isn’t quite a television network, radio station, software project, or branding exercise either.

It’s infrastructure for media that doesn’t need to exist.

And I mean that affectionately.

The original goal remains surprisingly simple: make it dead easy to find something we like without searching for it.

Turn on the television. Something is playing.

Turn on the radio. Something is playing.

If you don’t like it, change the channel.

No algorithm needs to figure out what I want. No subscription needs to recommend something based on what I watched last week. I don’t need to browse a screen containing ten thousand choices.

The system is already running.

Just tune in.