Building a Computer the Google Way

I own a P180 or two, and I love it. Yes, the wierd cable channeling is a pain, but only for about 5 minutes until you get the PSU and HDD cables ran. And yes, the door is pretty worthless. But I love everything else about the case. Especially the six plus internal bays, and the most rational drive mounting setup I have ever seen.

It’s the whole Jedi build their own light saber bit. Still sometimes buying a custom built system from HP or Dell can be the best, I tend to have less hardware conflicts with those boxes as opposed to the ones I built. And there is no choice to build your own laptop :frowning:

Just some clarifications:
As noted before in the comments, the Mac Pro uses Xeon processors, not Core 2 Duos.
“Quad-core in a single socket” - the Mac Pro has 2 dual-core cpus, not 1 quad-core cpu

and an opinion: "there is a serious point of diminishing returns with additional CPUs unless you’re doing something highly specific and highly parallelizable " - The Mac Pros are targeted towards the (who’da thunk it?) Pro users, i.e. people who are willing to plunk down $2.5k for a computer to specifically do things like compiling code, using photoshop, shake, final cut, the sciences, and other highly parallelizable tasks.

“If you’re willing to factor out the cost of the operating system”

That’s the killer for me. I built all my machines from 286 to Pentium 3, because I could get more bang for the buck. But now it’s hard to justify spending about the same for a PC without Windows and Office.

My 2 cents (or points)

  1. There are more then a few shops out there that build machines to your specs. So, kind of "Dell"ish in that they do all the work. But you get to decide on everything that goes into your box. Saves you time and potential headaches but you pay a premium compared to building yourself.

  2. I do a majority of my development in the database (gasp, Oracle PL/SQL). Just being able to the any of a number of DBs running on one core while I do my damage with the other is really key to productivity.

I han’t built my own, but I keep pricing it out every couple weeks. I can’t pull the trigger because everytime I look, the prices have fallen and the hardware faster. That and I didn’t win the lottery, again!

Not sure how you got to $2039 on the XPS 710. I spec’d the same hardware and was at $2,479. The $500 GB HD puts it over the top. Starting with a 160 GB 10K drive puts it at $2179. I suspect you could buy an after market 500 GB drive cheaper than Dell is selling it.

Every time I’ve put together my own system it takes a couple of hours to get everything assembled. Then an hour or so to install the OS. Then there are operating system and driver issues. Once in a while, I get a motherboard where some built-in component (e.g., sound, ethernet, firewire, sata) doesn’t work right. I figure on average I’ll probably spend 6 hours putting together a system. Then, I’ll run a memory test overnight to make sure the memory isn’t bad. When the test fails, sometimes reseating the modules fixes it, but that requires running another test. Sometimes the memory is fine, but the motherboard is bad (poor tolerances on passive components on the memory bus). These kind of memory errors are the kind of thing that don’t affect 99% of users because they don’t run memory intensive processes like compilers.

The reason to build software is when nothing exists off the shelf that will do what you want it to do for a reasonable cost. I wouldn’t recommend the consumer-class Dell Dimension series. However, there are lots of reasonably priced workstation class machines (such as the Dell Precision 690, or the high-end HP or IBM workstations) that will work adequately for pretty much any tasks that you will throw at them. The Mac Pro’s are also workstation-class hardware (at least the CPU/Memory/Motherboard/Power Supply/Chassis). Workstation-class machines will also have things like extra CPU sockets, 8 or more memory slots, and 750 to 1000 watt power supplies.

This is very different from software, where you are almost always building something that either doesn’t exist or is impossible or not cost-effective to buy. Next time I need a spreadsheet, I’ll either buy Microsoft Excel, use Google Spreadsheets, or use some open source spreadsheet. But I definitely won’t write my own. Similarly, when I need a new workstation, I’ll buy either a Dell Precision 690 (or similar HP or IBM) or a Mac Pro. I’ll look for the best deal on a high-end machine and maybe I’ll upgrade it with a second hard drive or more memory, but I won’t build my own.

Note: For gaming machines, it’s a little different. High-end gaming machines from Dell, Alienware, VoodooPC, et cetera are very overpriced. It is quite easy to build a machine with a much better bang-to-buck ratio.

“Like Google, I demand total control over every part of my PC”

Clearly you aren’t running Vista on it then :wink:

“As noted before in the comments, the Mac Pro uses Xeon processors, not Core 2 Duos.” - They’re the same thing. So they have a different pinout and a different memory controller, work better with multisocket, there’s no difference in raw processing capability at the same speed.

““Quad-core in a single socket” - the Mac Pro has 2 dual-core cpus, not 1 quad-core cpu” - Yes, if you reread that was exactly the point Jeff was making, and that 1 socket makes more sense than 2.

Aaron, Antec has a whole line of cases, although that is their flagship. so you can get anything from vague apple resemblances to xXxtr3me g4M3r case, to something sedate and no-nonsense. They give you the most flexibility for efficient cable routing and noise-reduction of the major case brands, along with quiet, high-efficiency power supplies. What can I say, I like their stuff.

I still wish I could DIY a laptop.

You know what’s funny? I hear DIY in the music scene all the time. It’s been a community that’s been growing since the early days of the punk movement. I guess the Ramones never really realized just how far their DIY ethic was going to reach.

I love this blog every day, for many many reasons.

  1. It is nice to know we’re not alone.
  2. I learn something every day, and it’s not always about new technology as much as combining experience, with common sense, to pass best practices.

I think Jeff you got something real special here…

Until they bring back the AppleII+, make mine CodingHorror

:slight_smile:

No doubt you’ve coded your own compiler in machine language, and used a cross-assembler from an 8008 to build it, with your own linker? And you run on bare hardware, no commerical OS, right?

What’s that? You build .NET applications, using Visual Studio, and run them on Vista? Wow. That’s about as far from the hardware as you can get, your code doesn’t even compile natively, it runs on a CLR which exposes a virtual machine.

There’s a fundamental disconnect in there somewhere! Oh, the horror!

I’m thinking of something orange… something orange… give up? IT’S AN ORANGE!

Nice soapbox about building your own system, but a R33t’r person wouldn’t be preaching about getting the latest and fastest hardware. Instead of 1 little bang, why not build 5 fun-snaps? Do you REALLY need a quadcore?

Can anyone school me here - Is it possible these days, theoretical or otherwise, to build your own mac?? I can’t help thinking how one could cut down that $2400.

The only problem with building your own development machine comes into play when you’re developing for something other than just a computer. I write software to run large-scale printers, and the configuration of the machine makes a pretty significant difference in the performance of the final product.

As much as I wish I COULD build my own dev box, the differences in specs, which affect the print, are just too much of a pain to troubleshoot if something goes wrong. If something happens, is the problem because I coded something wrong, or because the box I built the software on uses a different chipset than the box running the software? Those problems can take ages to knuckle out, and that’s time I could be using to better end.

The other thing that comes into play is reliability. Now, with one notable exception, every box I’ve ever built has been solid as a rock. Unfortunately, even in a company as small as the one I work for (11 people), being able to get parts and service is a big deal. Most companies just can’t justify the potential cost of buying parts and spending time servicing computers when they could be doing something more profitable.

Bottom line, I agree that building your own machine is a great way to control performance, but I’m not so sure it’s a good idea in a corporate environment.

Will h:There’s a short answer and a long answer to your question. The short answer is “no”. The long answer is “really, gosh, thinking hard, no.”

Apple does their darndest to make sure you buy THEIR hardware. I’ve said it before, and I’ll say it again… Apple is first and foremost a hardware manufacturer.

Thanks Jeff!

Now I have to turn around and buy one more HD for my Big Bang machine, I just finished moving the RAID drives around to support the 10K HD boot disk… please tell me this is your final configuration.

newegg loves me.

Stephen

I see your point and would agree almost completely, were I not completely in love with OS X.

Still, I would also point out that today Ole has a good point - you say “We aren’t typical users. We’re programmers. The x86 commodity PC is the essential, ultimate tool of our craft.” However, today there isn’t just one kind of programmer - the kind who codes close to the hardware. Instead, there’s a wide range of coders - from those who code way down low in C or C++, and those who code higher up in C#, Java, Python, Ruby, etc. And of course there are many languages and platforms at all different points in between. The higher you go, the more abstracted from the hardware - and the more you want to focus on just the software, and you want the hardware to “just work”. I’m definitely in the “higher” half of that spectrum. That’s why I prefer Macs and Mac OS X.

A bunch of other people have hit on this, but I’ll say it too: for desktop use, I’m too married to portable computing these days, and that’s just not a reasonable area to do it yourself. My servers, on the other hand, are hand-me-downs that I’ve squeezed more life out of that should have been possible. I haven’t hand-built a new system in quite a while, and I’ve been all the happier for it.

Everyone should do the “roll your own” thing at least once, if this is a field you’re interested in, but it’s purely a learning experience. Pitching it as a cost saver misses the point a bit, and the time you’ll burn sourcing parts and keeping yourself up-to-date on the latest micro-specifications on video cards, motherboards/buses, and similar issues during the build will more than outweigh the savings, and you’ll be left with “spec envy” two months after you’re done building it when the next “big bang” component comes out.

(Similarly, everyone should write a simple language interpreter or shell, develop a simple web server, write in assembly for an embedded platform, think through the corner cases of version control systems, and complete several other basic building-blocks projects as learning experiences. But then, for the love of ${DEITY}, please throw them away; the world doesn’t need yet another web server. :wink:

I like the concept of building my own machines, and will continue to do it for my own personal needs. But I can’t see how it’s such a great idea if you’re say, selling to businesses. I can’t see it being very cost effective. If I take the time to factor in building 4 PCs, going through testing and deploying them, it’s already cost me a ton more than if I had gone to a vendor. Not to mention if something fails, I’ll have to replace it out of my pocket, and who knows if I’ll be able to find the same part. So when I do replace a bad part with a different one, I’ve either spent more time researching a new part, or hastily put in one that “looks good” and may not last as long. Or, I can go to a vendor spec out the needed machine(s), and if something breaks then I have a warranty and the ability to provide the user with a machine the same or next day.

But, for my own personal, in house needs, I will always build my own machine. I would even stretch that to my servers, it’s a hell of a lot easier to work on machines you see everyday, if the need should arise.