You are wrestling with a question that I hear all too frequently. Generally speaking, you'll make yourself crazy if you're trying to ensure you have the most up to date hardware. The first thing you need to do is come to grips with the fact that whatever you buy or build is already obsolete. How close you are to the newest technology will depend on your budget, but usually as soon as you say "budget", you are thinking mainstream. However, don't consider this a bad thing. In the long run, it's much more economical for you to use proven technology that is 6-18 months old; you get the best deals, any issues are well known and/or are being resolved, and it costs half as much (or less) than being on the bleeding edge. I won't try to get into all the potential details that can come up when building your own system, but I would offer the following notes to hopefully prioritize your thinking on this project (based on my own experience and observation):
1) It's not cheaper.
Unless you have accounts or contacts with suppliers at the large business level, you can't compete on pricing. Even if you manage to be in the ballpark on hardware, you can lose large on software pricing alone.
2) It can be a huge PITA.
If you run into any issues with defective (it happens no matter what quality components you might buy), non-compatible (it's very easy to do), or otherwise non-working hardware, it can cause you long delays and large headaches. This will cost you time (which perhaps you're ok with), but invariably, it will cost you more money.
3) It's not easier.
Most systems go together pretty easily with a little know-how, but again, it takes time. My rule of thumb: it always takes longer than you want it to take.
4) It's not cheaper - part 2.
If you decide to design your own system, but not build it, then hopefully you have a friend that will do it for you, or at least with you. Time is money and these things take time (see #3 above).
5) It's not cheaper - part 3.
Unless you have compatible tools/supplies already, you may end up on the hook for additional supplies, such as thermal compound, extra cables/extenders, etc.
6) It's not cheaper - part 4.
When it breaks, you have to fix it. 'Nuff said.
7) You can (usually) build exactly what you want/need.
Depending on your budget, you can build a very attractive and functional system to your own specs. You will have to do your research though, and many vendors are not particularly helpful in this regard. My advice: start with the motherboard/CPU you want and work outwards from there. Study the capabilities of the motherboard and make decisions based on that info.
8) Planning is key.
I can't stress this enough. You need to have a very clear idea of what you need your system to do now, and what you might want it to do in the future. Not only does your current work depend on this, but future upgrades do too. I would go so far as to say you need to consider and predict what upgrades you will want to do in the future, since the components you buy now have a very large impact on this. Obviously, it's impossible to predict everything (The 2012 end-of-the-world thing could happen, right?? LOL), but purchasing the wrong component now could necessitate multiple upgrades (and more $$) in the future just to upgrade a single component or run a single piece of software.
9) When you're done and it works, it's awesome!
It looks how you want, it has what you wanted in it and you are probably a lot closer to be being an expert on how it works!
Alright, so I've gone on long enough on this topic and you get the idea. It's likely not going to be cheaper and when it hits the fan, you'll be the one cleaning up the mess (and replacing the fan). However, if you have some know-how and experience, and hopefully some friends with some as well, you can customize a beautiful system, exactly suited to your needs, that your significant other will immediately decide suits her needs much better than yours and you'll be relegated to using your trusty service laptop again in no time at all!
Note: This post was edited by its original author to add line breaks on 08/23/2012 at 1:14 PM PT