"But it's probably not the processor that accounts for most of the speed increase I've seen in my machine. The main help, I think, comes from the hard drive."
He's totally right about using an SSD as the boot disk, I can't overstate how much of a difference it makes, more than RAM, CPU or anything else. I've been using one for a while and it made my secondhand 3-4 year old macbook pro go from barely usable for design work to screaming top of the line.
I'm probably going to switch to a hybrid drive soon though, like the 500GB Momentus XT that comes with a 4GB SSD glued on. The big drawbacks of using a pure SSD as a boot disk are that you'll either 1) run out of space on the SSD and/or 2) forced to keep the data on a slower separate drive, assuming that you're going with a moderately priced one and not spending a gazillion dollars for one of the big ones with a lot of capacity. #2 might not matter to the OP because he said he upgraded his rig just for the web browsing, but designers like me routinely load up and work with large files, so I still get the beach ball every time Fireworks tries to open a file or save it. This is where I differ from the OP and the Jeff Atwood article he linked to: I'd rather put all of my data on just as fast a disk as the one with the OS and apps. The slowdown in opening large files is super annoying after you've gotten used to the near instant times for booting the OS and starting up apps.
If I had one of the newer MBPs that came with a SATA interface for the optical drive (instead of IDE like mine), I'd seriously consider splurging and going with Stammy's dual RAID SSD setup:
Even though I can't use it for RAID, I'm still going to swap out the optical drive for an older IDE-compatible MCE optibay with a generic 500GB drive just for backups with time machine and super duper. That way I can ditch the pocket drive I've been carrying around this whole year and leave it at home for nightly backups.
Not to knock the SSD, but I actually don't understand why it should help significantly in the use case that the author was primarily talking about: large numbers of tabs open in your browser. My instinct there would be that more and faster RAM, and then to a lesser extent CPU cycles would be what's important. Unless it turns out that you've got so many tabs open, and you're cycling through them enough that you're going to swap and your swap partition is on the SSD. But then, again, it seems like more RAM is at least as good a solution as an SSD.
Can someone explain to me why an SSD should be a big win for web browsing?
In my experience the browser still saves/load a lot from the Harddisk. (OS X with 4GB RAM, YMMV) So a SSD also helps when i'm only using the browser with many tabs.
Processor is hardly worth paying for top of the line.
I bought the new 15" MBP that was released this year with 2.4Ghz i5, and put 8GB plus an Intel X-25 SSD in there. Compared to my 2009 MBP w/ 2.4Ghz Core 2 Duo, 4GB and HDD, it's a bigger speed difference than I've ever gotten in any upgrade ever. Definitely worth paying 40x for the drive space.
It's not that the top speed is faster... it's just that the beach ball is gone. It's always responsive. I can be running test suites for a couple Rails apps, watching an HD movie, and browser testing IE6/7/8 in 3 Parallels VMs and it's always snappy. I'm totally spoiled for computers with the OS on an HD. Using my wife's new MacBook for 30 seconds starts to make my blood pressure rise.
I purposefully use an outdated (3-5 years off the top of the line) machine to ensure my web applications run well on anybody using a similarly outdated configuration. I've considered upgrading and using a VM to emulate this, but I'm not quite sure it'd have the same effect. I've found that what I have is "good enough" to work on, but "not good enough" to run overly demanding javascript and DOM riddled pages without noticing.
Actually, you will have a more accurate effect because most web servers are VMs. Also, the ability to do snapshots/rollbacks/clones should not be underestimated. Upgrading from a dell E630 (T8100 2GB) to an E6410 (i7 8GB) and buying a technet subscription has doubled my productivity as a web developer (not an exaggeration).
How does a much faster computer double your productivity? Other than booting up programs, I'm rarely blocked by my computer being slow. The development I do is mainly text editing with a browser to view results.
I could see this being different if I had to wait for things to compile, though. But still, double is a pretty large claim.
I think the productivity increase is more than the time saved waiting for stuff to load. That few seconds pause can be enough to interrupt my flow, at which point I think, 'hmmm, let's check out HN while I wait for that'. Of course, by the time whatever I was waiting for is done I'm deep into an interesting thread about how a faster computer will change my life...
Compile times for the tree I work on range between around 40 minutes (the build VMs at work) and 7 minutes (locally, X-25 SSD, overclocked i7 920, 12GB RAM etc.) There's a huge difference between those two; and even more, my machine is almost perfectly responsive while I'm building.
The things like ad-hoc log file analysis. The compiler I work with can spit out colossal amounts of logs depending on the settings. A bash pipeline is naturally parallelized, and being able to do grep / sed / sort / uniq etc. rollups over the data in say 4 seconds versus 12 or 20 seconds greatly reduces the chances of breaking flow. A 4 second wait doesn't really tempt you to context switch to another window. 20 or 30 seconds does.
Little things certainly matter, but only a little. In my experience, the most limiting factor in productivity is motivation and being healthy. These things are orders of magnitude more beneficial, and rarely effected by, my machine's speed. For the work I do (web development), the bottlenecks are very rarely the machine itself. At worst, I need to restart Firefox once a day, which make take up to a minute as I eat a banana.
The VMS are a big part of it. I can just go nuts on stuff because I can roll-back and/or fork entire operating systems easily. Of course, there's also things like compile time and flow interruption - but really, the VMs just let me experiment so much bettter.
Even when all my Java is already compiled, Eclipse routinely locks up for seconds at a time as it's "helping" me. I've worked in the same place for a few years, and the IT guy recently told me my laptop is part of the oldest batch in the entire company.
Reinstalling the OS (edit: from scratch. ie, format the drive + install). I make a point to do so at least once per year. OSX has aged significantly more gracefully than Windows, despite having several times as many files (approached 3 million near the end), but a two-year-old install (I slacked) is nothing like a fresh one. Especially noticeable: Spotlight actually finds what I'm looking for in less than a second again (vs upwards of a minute or more).
It also highlights the differences between the OSes: OSX handles loads and loads of applications at the same time with significantly less slowdown and zero waiting on the UI. Windows launches and handles a single application much more quickly, but it's not uncommon to wait a significant amount of time for a single click to register if I launch a couple large ones at once. Just today I've had to sit for a couple minutes because a large compile+launch decided to happen at the same time as a browser crash and an application auto-updating. Win 7 utterly stopped responding, except for my mouse cursor's movement.
edit: to all repliers suggesting Linux: yes it does, if you consider reinstalling to be "reinstalling from scratch", which was what I had meant (though not stated, apologies). Every OS slows with extensions + libraries + millions of files + hundreds of compiled applications, and I'm likely a bit of an edge case anyway. I pretty easily install 1000+ applications per year for experimenting, many of which add extra cruft that no uninstaller removes completely.
Or you can just install Linux. Probably not as pretty as OSX, but fast as hell.
After running Linux for more than 5 years now, I have never felt my system "age." I.e., it may become slower than newer computers but it never becomes slower than it used to be.
Of course I do kernel updates from time to time, but those keep all my local data and applications in place, so they are not like reinstalling the OS for Windows or OSX.
Windows has historically been pretty poor at handling concurrent I/O to the same device. I've seen circa 200M/sec sequential disk throughput fall to 10M/sec or so simply by trying to run another operation concurrently. The I/O scheduler seems heavily weighted for latency rather than throughput.
I know that you went on to talk about OSX and Windows, but you did say OS, so I thought I'll drop by and mention that reinstalling Linux will not give you a performance improvement.
My Windows XP box is pretty much dead at this point. I wonder sometimes what I could do to improve its performance if I actually knew jack shit about Windows, but I'm not that interested. I'll just back up my files and have IT reflash it. I get paid to program Linux boxes, and I'm sure as hell not going to pick up Windows as a hobby.
What this guy doesn't realize is that all the extra speed he's enjoying is probably mostly a function of his new computer having a brand new Windows 7 install on it, that hasn't been crufted up by all the various crap that eventually gets installed on it and slows everything down. If he had just reformatted and installed a fresh Windows install on his old machine, he'd be enjoying virtually the same "speed boost."
What will help even more is becoming a bit more organized. Having 200 tabs open simultaneously sounds like a lot of lost effort to me. Learn to use bookmarks, history and especially the smart bookmark & history search available in the address bars of Firefox and Chrome, and you won't need to upgrade the PC just to support messiness.
"Will I ever outgrow my speed demon of a computer? At this point it's hard for me to see how. Even at my peak usage, my processor never goes above 10 percent capacity, and most of the time I'm using just 1 or 2 percent. I'm confident this rig will last me at least five years, and probably more."
The SSD in the machine will probably need to be replaced.
It would be nice to know how much ram he had in the new vs old machine. I bet the SSD + more RAM was probably where most of the performance gain came from. He might have seen similar performance gain by just upgrading those two components.
Yes, I think for browser-heavy computing (the author mentioned opening hundreds of tabs) a ton of ram and a fast ssd cache are doing a a lot more than a fast cpu (and indeed, the author reports the cpu is usually operating at 1 or 2 %). CPUs today are so fast and cache-sensitive that hard drives basically amount to off-site backup. Unless you have a lot of ram, they'll just starve and idle in I/O for most end-user types of compute loads.
"Will I ever outgrow my speed demon of a computer? At this point it's hard for me to see how. Even at my peak usage, my processor never goes above 10 percent capacity, and most of the time I'm using just 1 or 2 percent. I'm confident this rig will last me at least five years, and probably more."
The SSD in the machine will probably need to be replaced.
Why? Here's an article estimating a 50 year lifetime for current SSDs based on writing at max speed 24x7, and claiming that the "it will wear out quickly" myth no longer applies.
What I find interesting is that the best programmers among my friends usually have very outdated systems. They can do anything with a computer and can afford top of the line stuff, and still have over 5 year old hardware.
I was like that too and then got a fairly high end laptop with a fast 7200 rpm harddrive and 4 gigs of RAM which made the concept of "swaptime" when booting up my programming environment or compiling or doing both programming, music and graphics - a mere memory.
i don't think i've ever ran out of ideas of things i wanted to do with a machine. i still have Commodore 64's Gary Kitchen's Game Maker project ideas, and i haven't messed with that in 20 years... i've always been on the software side of things perhaps, and besides doing too many different kinds of things at once which really require different, dedicated machines, i don't think i've ever used a machine to its fullest potential
not a good use of money just so you can have 200 browser tabs open -- you can only look at one at a time anyway, for example. It's a bit like noticing your house is overflowing with a trash and deciding that the solution is to buy 50 large trash cans, placing several in each room of your house. rather than, you now, create less trash in the first place and/or take it out more frequently. :)
The same thing happened to me when I bought a new laptop. I realized how terribly slow was my previous one. I also changed my priorities. Now I value bigger ram and CPU performance instead of Graphics performance. Maybe that's because now I have a constantly running VM with linux in background and don't play games anymore.
He's totally right about using an SSD as the boot disk, I can't overstate how much of a difference it makes, more than RAM, CPU or anything else. I've been using one for a while and it made my secondhand 3-4 year old macbook pro go from barely usable for design work to screaming top of the line.
I'm probably going to switch to a hybrid drive soon though, like the 500GB Momentus XT that comes with a 4GB SSD glued on. The big drawbacks of using a pure SSD as a boot disk are that you'll either 1) run out of space on the SSD and/or 2) forced to keep the data on a slower separate drive, assuming that you're going with a moderately priced one and not spending a gazillion dollars for one of the big ones with a lot of capacity. #2 might not matter to the OP because he said he upgraded his rig just for the web browsing, but designers like me routinely load up and work with large files, so I still get the beach ball every time Fireworks tries to open a file or save it. This is where I differ from the OP and the Jeff Atwood article he linked to: I'd rather put all of my data on just as fast a disk as the one with the OS and apps. The slowdown in opening large files is super annoying after you've gotten used to the near instant times for booting the OS and starting up apps.
If I had one of the newer MBPs that came with a SATA interface for the optical drive (instead of IDE like mine), I'd seriously consider splurging and going with Stammy's dual RAID SSD setup:
http://paulstamatiou.com/how-to-apple-macbook-pro-raid-0-arr...
Even though I can't use it for RAID, I'm still going to swap out the optical drive for an older IDE-compatible MCE optibay with a generic 500GB drive just for backups with time machine and super duper. That way I can ditch the pocket drive I've been carrying around this whole year and leave it at home for nightly backups.