Install XBMC or Windows Media Center. Buy antenna & TV tuner for your computer. Connect antenna to TV tuner, which is plugged into your computer, and connect computer to TV. You now get to watch live TV, and you can set your computer to record TV shows as they air.
I use XBMC personally and it is awesome. The system has scrappers which basically go to various open-source websites to gather TV show titles, synopsis, genre, year, etc so you can have a quick media library that you can search through. There is a bit of setup work, but once you're done it is an awesome system that can be expanded into other things to make a smart TV (music player, email popups as you're watching a show, VoIP phone, video game emulator, the list goes on).
Seriously, install XMBC and buy a 2-3TB external hard drive (~$100) and you have a personalized DVR. Video compressed to MKV format runs about 300MB per hour of content, so a 3TB drive will let you store enough content to watch TV & movies 24/7 for a year straight, plus house every video game console & game made until ~2009.
A fully decked out system including hard drive, TV tuner, computer remote control and other convenience tools to make it more cable-box/DVR-like will run you $150 max, which is cheaper and has more capacity than most other solutions like TiVo (10,000 hours vs maybe 150 hours), and best of all requires no monthly/annual subscription.