Slashdot Mirror


Setting Up a Home Dev/Testing Environment?

An anonymous reader writes "I'm a Project Manager (hold the remarks) who recently decided that I want/need to get my dev skills more up-to-date, as more projects are looking for their PM's to be hands-on with the development. Looking around my house, I have quite the collection of older (read: real old — it's been a while) PCs — it's pretty much a PC graveyard. Nothing that would really help me set up a nice dev infrastructure for developing web/database apps. So, my question is as follows: Should I buy a number of cheaper PC's, or should I buy one monster machine and leverage (pick your favorite) virtual machine technology?"

12 of 136 comments (clear)

  1. Personally... by AltGrendel · · Score: 4, Insightful

    ...I would go with the one system with Virtualization. You can download a copy of Xen as an installable OS or install RH 5.x with Virtualization. You can then backup the instances and if you blow something up restore quickly. It's also easier on the pocketbook.

    --
    The simple truth is that interstellar distances will not fit into the human imagination

    - Douglas Adams

    1. Re:Personally... by lgarner · · Score: 3, Interesting

      ESXi is also free. That's what I'm using for Linux, FreeBSD and OpenSolaris VM's at the moment.

  2. Virtual Machines by morgan_greywolf · · Score: 4, Interesting

    Virtual Machines are GREAT for Dev/Testing. You can setup machines with several different configurations, operating systems, etc., for testing and development. Plus, for N-tier web/database apps, you often want to be able to test a variety of different infrastructure choices for scalability and performance testing.

    Nothing really beats the way you can change things around on-the-fly with virtual machines. It really gives you the ultimate in flexibility.

    1. Re:Virtual Machines by Bill,+Shooter+of+Bul · · Score: 3, Interesting

      They will probably work for what he's trying to do. I always worry about running virtual machines in tests when the timing of the action is critical. If you have more virtual machines than cores, there are a lot of scenarios that I don't feel comfortable simulating in that environment. But maybe the graveyard pc's would help alleviate the situation for those scenarios as long as they can boot Linux and live on the network.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
  3. Solution by ep32g79 · · Score: 5, Funny

    How about a beowulf cluster?

  4. One machine with virtual machines by rufus+t+firefly · · Score: 3, Insightful

    Depends what you're doing. For example, database servers virtualize poorly, but most other applications will run just fine that way. Everything besides your database machine could probably run as Xen paravirtualized servers on one or two machines.

    That has the advantage of not producing as much heat and draws less power, which is an advantage unless you own some sort of stock in your local power utility.

    --
    "He may look like an idiot, and talk like an idiot, but don't let that fool you. He really is an idiot." - Duck Soup
    1. Re:One machine with virtual machines by Bastardchyld · · Score: 3, Insightful

      This is a fairly old argument, and in a dev/test environment it is not accurate. Databases and other disk intensive operations may experience performance issues when virtualized, however there are ways around this, pass-thru disks, iscsi storage (which can be done with software on the host box), etc. All of these would allow the VM direct access to the disk instead of writing everything through the VHD or VMDK file and taking the performance hit.

      Virtualization is not some magic fix that makes everything work great, however like any solution it you take your time and properly design it, you will end up with a system that meets or exceeds your needs.

      --
      $diff terrorists hippies
      $
      $rm -rf *terrorists *hippies
  5. Tools aren't your problem by eison · · Score: 5, Insightful

    Get started with what you have now. Buying a new tool won't make you a better programmer, you already have a computer of some sort so you have all that you need to get started. Just get started. After a while, if you like it, and do well, and think a better computer would help you be more productive, then consider maybe buying hardware. But don't look at it as a prerequisite, you don't need to start off that way. If you want to buy something now, it should be a book.

    --
    is competition good, or is duplication of effort bad?
  6. What do you call old by jawtheshark · · Score: 4, Insightful

    No, really? What is old? If you've got a couple of P-III in de 600MHz++ range, or even a couple P-IVs, you're golden. This is not going to be a heavy load system. It can't be, it's for you alone. I've got a couple of servers, an AMD64 3000+/2Gig which I got from a dumpster (originally 256Meg, but I had some RAM lying around), my old desktop, a P-III 800MHz/768Meg RAM serves as my parents server and I built a Duron 800Mhz/512Meg RAM for my sisters business running Debian/postgresql/SQLLedger.

    Depending on what you call old, you have tons of options. However, if you want to talk power efficiency. In that case, buy a good (but not monster, those eat power) machine and virtualize. You'll realise soon enough how much power your virtualised "server" requires. It might be as little as 256Meg RAM running Debian-stable for your "test" servers.

    Of course, I don't know what you want to do...

    --
    Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
  7. One machine by spinkham · · Score: 3, Insightful

    One machine, at least 2 monitors, and as much ram as you can afford.
    With quad and octo core machines readily available, it's a no brainer. But go for the 64 bit version of your favorite OS and gobs of ram. A few hard drives in raid 5 or 10 always help. A great keyboard, mouse, and 3 monitors will complete the developers god box.
    Really, CPUs are ridiculously fast, and it's all about the IO devices and memory today.

    --
    Blessed are the pessimists, for they have made backups.
  8. Re:Another thought. by juiceboxfan · · Score: 3, Interesting
    I second that! Been using it on my Linux laptop for over a year to have an XP machine available for the few Windows only apps that I can't avoid.

    Even the closed source version (added USB support?) is available for free to anyone who is willing to install it themselves. From the licensing FAQ;

    Personal use is when you install the product on one or more PCs yourself and you make use of it (or even your friend, sister and grandmother). It doesn't matter whether you just use it for fun or run your multi-million euro business with it. Also, if you install it on your work PC at some large company, this is still personal use.

    I like those terms;-)

  9. Not what I've done by vux984 · · Score: 3, Interesting

    Simple... Get an Intel based Apple...

    Yeah, if you want OSX you'll need one.. but which one?

    If OSX is going to be your primary OS, and you want to mostly work in OSX and virtualize everything else on top of it... by all means get a powerful mac, ideally a pricey tower so you can get some extra hard drives inside it etc, which makes multi-booting a lot less of a hassle for when you don't want to access linux/windows in VM.

    You can setup multiple boot or VM environments for Windows, Linux, and of course Mac OS X.

    Except you can't VM OSX desktop edition, and buying an ADDITIONAL copy of OSX Server for each VM is expensive, and doesn't really help you since, as an OSX developer you want to test your software on OSX client, and probably both 10.4, and 10.5, possibly even 10.3 -- DESKTOP editions, since that's what most users use.

    So, my approach has been to buy a powerful PC, and do all the linux/solaris/bsd/windows stuff on that, and then to have an Apple laptop. You can get a very serviceable PC tower for the fraction of the price of a Mac tower, and if OSX isn't going to be your 'primary' OS its much more flexible way to go.

    The money you save by buying a PC tower instead of a Mac one can then be thrown at at a Mac Mini and a cheap KVM... or in my case, I have an Apple laptop.