I got a free computer from work a couple of months ago (P4 3 GHz, 2 GB ram) and have since bought and installed a 1 TB hard drive, installed Lubuntu, and set it up on my home network as a file and media server. It's plugged into the TV, but mostly operates sans head. When I need to tinker around with it, I do so via SSH or NX (my favorite remote desktop solution) from one of the laptops. I also setup some samba shares so that it would be easily accessible from our Mac. So now our network consists of the server, an iPad, a MacBook, and my work laptop.
One annoying thing about the iPad is that it's not very convenient to import videos or music onto it. One has to use iTunes (blech!) which doesn't accept many video formats, so conversion is usually required using e.g. Handbrake. In an effort to make my media easily accessible from any device, I installed Plex on the server, and it's fantastic. I just point it to my TV and movie directories, then it automatically grabs information about the shows from the web and displays them nicely in the app. I can access my entire library over the network via a web interface and stream content to any computer in the house. I can also watch everything on the iPad with the excellent iPad app (not free, but well worth the $5). There is no need to re-encode the videos, either, because the software does that on the fly, if necessary. I haven't noticed any performance issues using an older computer as the Plex server, but that might be because I don't have much HD video content.
Plex is great for music, too. I've moved my few hundred GB music library onto the server, and can listen to the entire collection from any device. My collection was a MESS though, so first I used Picard to organize everything. Picard is a nifty tool that scans MP3s and matches them with albums in its database. It can use file names and ID3 tags to search, as well as the audio "fingerprint" from the MP3 itself. I just review what it finds, accept its suggestions, and it will fix the ID3 tags and move/rename the files for me. Their database is extremely extensive, from my experience. I have a lot of obscure stuff and I have only found a few things to be missing so far.
I also have a LOT of photos distributed between a couple of portable HDDs, my laptop, and my wife's Mac. They're totally unorganized so I never look at them and this bothers me. To remedy this I've moved all of my pics to the server, but I want to be able to manage them intelligently from afar (i.e. the other side of the apartment). For this I'm using Lightroom on the Mac to organize and edit our photos. Lightroom is really powerful as both a photo manager and a non-destructive editor. It doesn't alter pictures directly, rather it maintains a "catalog" parallel to the photo files. All edits and Lightroom specific metadata (tags, ratings, etc) are stored in the catalog, as well as a pointer to the photo. Since the catalog doesn't actually contain the image data it doesn't take up nearly as much disk space as the photo library. So I store all of the pics on the server but maintain the Lightroom catalog locally on the Mac (making sure to backup regularly).
So now I just have to worry about backing everything up. The plan is to setup some cron jobs to execute rsync commands from the laptops every day. I only need to backup a few things like the Lightroom catalog and some documents (those that aren't already on the cloud... so not many actually). As for backing up the server, I have an external HDD attached to the server at all times to make a second copy of our photos (again, backed up via a cron'd rsync command every day). I will also keep a copy of my music and videos on a separate portable HDD. Those don't need to be backed up more than once a month or so since my media library doesn't change that quickly.
So in the end, our digital content is much more secure and accessible, and that gives me a warm, fuzzy feeling inside.