I’ve long had a vision of the perfect computer storage device. It’s physically small, but holds an absolutely ludicrous amount of data. It’s instantly available to all my computers and other electronics, but I have full control over who can access its contents. And it’s reliable enough that, with the occasional off-site backup, I never need to worry about losing any of its contents.
Such a beast doesn’t exist. A few years ago, I’d have said it probably never would, but my opinion on that has changed. Technology has advanced far enough that I can not only see it affordably happening one day, I’ve actually put together something that approximates it now.
A couple days ago, I picked up a D-Link DNS-323 Network-Attached Storage Box (“the NAS” from here on). It’s essentially a tiny headless computer that exists solely to act as a network file server.
I used to think that RAID-5 was the be-all and end-all of storage solutions, but after hearing Joel Spolsky and Jeff Atwood discussing it on a recent Stack Overflow podcast (number 34, maybe?), I realized that it wasn’t all it was cracked up to be. So I started looking into RAID-1, which makes two identical copies of everything on different physical drives. The idea is that, if one drive fails, the system can keep working from the other one until you replace the failed drive, whereupon it copies all the data to the new drive too. This NAS supports it, which is part of the reason I decided on it.
But RAID-1 has one major drawback: you only get half the usable storage that you pay for. If you set up two 250GB drives in a RAID-1 configuration, you only get 250GB of storage out of it, not the 500GB that you would have if they were set up separately. The capacities of inexpensive hard drives have only recently gotten large enough that I felt it was worth paying for two of them to get the added protection against drive failure.
So yesterday I picked up two Western Digital 1TB hard drives (that’s one terabyte, or one thousand gigabytes, each) to pop into it. I was careful to get drives that weren’t from the same manufacturing batch (though I had to go to two different computer stores to do it), because as Joel described in the aforementioned podcast, drives from the same batch are likely to fail at about the same time. I popped them into the NAS (serial ATA drives, no tools, cables, or jumper configurations required — nice!), told it to format them as a RAID-1 array, and… that’s it. In less than ten minutes, it was done.
How does it stack up to my vision? Well, it’s physically tiny — not much larger than the pair of 3.5″ hard drives that it contains. One terabyte of storage should be enough to hold every bit of digital data I own now, several times over. My network handles both the availability and security points, and I can use TrueCrypt to make an encrypted drive container on it for things that need to be protected against physical theft of the device. And with RAID-1, hardware failure isn’t likely to be an issue, so I don’t have to be quite so anal about keeping off-site backups. Not a perfect match, but pretty close. 🙂
You may recall that I had bought a similar beast, the MyBook box, about a year and a half ago. I’ve been fairly happy with it, but the D-Link is better — it’s physically smaller, has twice the capacity, is a lot quieter and more power-efficient, and has a few other really nice features (e-mailed warnings of failed drives or other problems, firmware stored in flash memory instead of on the disks, shuts down the drives when they’re not in use, etcetera). It’s more expensive, but the added features are worth the cost, especially the silent operation.
The other question that I know some of you are thinking is, if I can put together a desktop computer so cheaply now, why didn’t I just build a new desktop system to handle this? It’s a legitimate question, and one I considered; I have enough parts on hand that I could have done it for about the same price, maybe slightly less. But I really didn’t want yet another computer here (we’ve already got three laptops, two working desktops, and three desktop carcasses waiting to be resurrected), and the NAS eliminated the need to deal with setting up the software and such.
All in all, I’m quite happy with it.
I’d be jealous except I don’t really need one. 🙂 I do keep backups using Time Machine thanks to the hard-drive you sent that I put in a cheap but decent firewire enclosure, (NexStar 3), but since I only own one computer and my roommates aren’t very demanding in their computer usage… (Though I do recommend “Mojo” rather than an iTunes server if you’re serving stuff from iTunes, it allows you to transfer stuff over if you aren’t going to always be online. Mojo works both in OS X and Windows, I don’t know if you have any need for it on a non-Linux box but it’s very handy. You also can share your creative-commons files (what else?!) over the internet with friends using Mojo as well as over a LAN.)
Time Machine is one of the few things that I envy about OSX. I’ve got a decent rsync-based script to do the same basic thing here, but it isn’t as nice. I know there are at least two Time Machine equivalents for Linux, but I prefer my own script to them.
Once Snow Leopard is released, there will be even more things for you to envy. Making all applications multi-core aware sounds great! As well as utilizing the GPU for computation on some platforms and tasks. Plus one of my few gripes about OS X, that it’s bloated in terms of disk space, is being addressed. 🙂
Seriously though, HG, when it comes to OS X, you don’t know what you’re missing. 😉 Linux is a fun hobbiest OS that’s grown-up, and is better for servers, but as a desktop, it leaves a lot to be desired. Of course, OS X does have a few flaws, I’ve griped to you many times in email about Apple’s lackadaisical security record… Of course, as long as security-via-obscurity works for OS X, I suspect Apple won’t improve all that much with regards to security updating, though at least Snow Leopard appears to be implementing more completely a lot of security features only halfway or unimplemented in Leopard that are available in other OSs, so that should help.
Making all applications multi-core aware (even ones that aren’t designed to be) sounds ridiculous, if that’s what you’re talking about. It’s a great idea, but most applications aren’t designed for that, and it can’t be efficiently imposed from outside unless Apple engineers have figured out something I haven’t heard of. But we’ll see. 🙂
As for Linux, I’m happy enough with it, mostly for the security. There are a few things that I’d don’t care for about it, but it gets the job done, and it’s getting better with every new version.
Well, the Grand Central site looks kind of like marketing, and unlike OpenCL, the GPU-processing feature of SL, isn’t (yet?) an open spec and hasn’t been published, so it’s hard to tell exactly what it is. I think you’re right though, it isn’t quite what I thought it was:
http://www.apple.com/macosx/snowleopard/
“Grand Central takes full advantage by making all of Mac OS X multicore aware and optimizing it for allocating tasks across multiple cores and processors. Grand Central also makes it much easier for developers to create programs that squeeze every last drop of power from multicore systems.”
I think I recall reading that it will make things easier for developers who want their software to be multicore aware, rather than what I thought, making all apps multicore aware.
(Of course, OS X has been multicore and SMP compatible for a long time, over time it’s gotten better at its multiple-procesor (or core) support, like most Unixes, evolving from the “big lock” in the very early days to the more sophisticated SMP/multicore support now which is similar (naturally) to today’s *BSD and Linux kernels in implementation. (Of course, most of the BSDs and Linux did the same thing, starting with a “big lock” and moving to more sophisticated multiprocessing implementations. This, however, is a new step beyond other consumer and commodity server platforms…))
I love Linux, in fact at the moment my netbook is running it (not enough space for hackintoshing). I just happen to think that OS X is a better desktop and is also getting better as time goes by… 🙂 Mark Shuttleworth has often remarked that OS X is his target as far as the desktop goes, and has challenged the Linux community to make a Unix desktop as nice as OS X. It’s nice to run what Canonical wants Linux to be at right now. 😉
Ah. That “Grand Central” stuff sounds more usable.
As for the OS wars: I’m running an office full of computers. Using Linux on some of them means that I have less to worry about when it comes to licensing restrictions. If I find a need for another machine, I can just throw some parts together, toss in a Linux install disk, and go, without worrying whether Apple or Microsoft need another pound of flesh before they’ll allow me to use their jealously-guarded property. That’s a big plus for me.
That’s not to say that I have any problem with paying for software, in general. Even my main Linux machine is running a paid-for copy of VMware Workstation, and four of my (currently five) working machines can dual-boot to some version of Windows XP. But the less I have to be concerned with licensing, the easier my life is.
I can use Linux, Windows XP (which I do in a paid-for VMWare Fusion), and OS X. So I’m not missing that flexibility, maybe OS X does cost money, but so does some of my music software that won’t run on Linux (and the Linux alternatives aren’t so good).
OS X also allows me to run the gamut of free software too, because it is Unix, a lot of free Unix software runs unmodified, some of it even is included with OS X, and the major apps all have been modified to have a better look-and-feel on OS X. (In some cases, like Admium vs. Pidgin, with a definite improvement otherwise too.) I basically can do what commercial software is good for (except some games), and do what free software is good for, all on one OS. This allows me to be more productive with my computer doing what I want to do with it… In fact, Logic Express, the music creation software I use, and Garage Band, are both only available on Macintosh…
(I only run Windows for the PalmOS SDK and some truly niche applications, unfortunately there’s not too many Talmud study apps for OS X, though I was suprised to see a good selection for PalmOS and even some for the iPod Touch/iPhone platform.)
Though I do like Linux, my other computer, a netbook, is running Linux after having tried the Hackintosh route. (OS X Leopard is a poor fit on an 8GB SSD, something I like about Linux is its lack of bloat.)
By the way, I’ve never had a need of “throwing together a machine out of parts”, if I did, maybe I’d feel differently, and would want Linux or even Windows if you want the utmost in hardware compatibility, on my machines.
You know, it wasn’t too long ago that in order to have the best Linux experience, you had to be nearly as selective of your hardware as a hackintosher today! Most modems and graphical printers and even graphics cards (in the 90s only a handful of them worked with X11, my 486 had to run in character mode for Linux as recently as 2001, my 386 of course wouldn’t do it due to hardware constraints also.) wouldn’t work until relatively recently in Linux’s history. Even today, some printers don’t work, and multifunction printers that have all of their functions working are even rarer. So “throwing together machines”, i.e. hardware compatibility, doesn’t seem to be too good a criteria to run a particular OS to me… Hence, my choice is to run the best desktop Unix experience I can find. 🙂
Of course, if Apple had killed the Mac mini, and not offered a similarly priced replacement, I might have felt differently; but they didn’t do that, much to everyone’s surprise, including myself. 😉 Now, unless they come up with a good $99 computer, I’m not paying $500 for a logo like Steve Ballmer, CEO of Microsoft, says, am I? The Mac mini is $599. 🙂
Also, most consumers don’t have the need to throw together machines out of parts, any more than they have the need to throw together cars out of parts. I guess that’s why you’re the Head Geek, and I’m not. 😉 Apple computers are built fairly well, and tend to last a while. The Mini especially is known to be pretty indestructible, which is more than you can say for the typical Dell or HP nowadays. So, if I don’t upgrade for other reasons, and if I do I could sell this for a decent price on the used Apple mac market on eBay or Craigslist, I expect to get a bit out of my (modest) investment.
If you’d had as many computers as I have (because until the last couple years, I’ve always needed more computing power), you’d quickly learn to re-use parts from older ones to make newer ones. Either that, or you’d become a common sight at your local Hazardous Waste depot. 😉 I absolutely hate waste and inefficiency, and I’ve been building PCs since I was a teenager, so throwing parts together to make a new PC out of the remains of older ones makes perfect sense to me. I save hundreds of dollars on each machine by using parts that I already have instead of going out and buying a whole new one.
You notice that I didn’t adopt Linux until it supported most common hardware. My Canon inkjet printer is the only thing I’ve ever had to replace for OS-compatibility purposes, and I was already planning to replace it before I moved to Linux anyway.
That makes plenty of sense if you can’t sell or hardly give away the old computer because it lost all of it’s value. Then it’s worthwhile to use it as scrap, because it’s not worth using it for anything else. Macs don’t have that problem, I’ve seen previous generation Macs sold for only a hundred or two less than a new one on Craigslist or eBay all the time.
As for parts, well, the hard drive and stuff like that is just as interchangeable between Macs, or even PCs since the switch to New World not to mention Intel, as it is between PCs, so one could go that route just as much really. They are standard SATA or on older Macs IDE drives, for that part example. You’d just buy one with a minimal hard drive size, and sell it back through OWC’s buy-back program or eBay it if you don’t have a use for it, at the very worst. Heck, I’m a living example of that, my mini is using one of your old hard-drives as external storage right now. 🙂