Slashdot Mirror


Ultimate Software Developer Setup?

wicked coding asks: "I'm a professional software engineer and I'm planning on building my ultimate setup for longer hours coding and hacking, but I'm kinda stuck when it comes with what to choose. What hardware would you choose to use, if money was no object? Obviously there may be some constraints on space. Leave no stone unturned, I'm looking for suggestions on desks, seating, lighting, keyboard and pointing device, monitors and even the computer system itself. Ideally it needs to be as comfortable and ergonomic as possible. What software would you choose to use, if the intended targets were Java and OO PHP5? Currently I'm using Eclipse on Gentoo. Is there a more suitable IDE that works with most popular OSS (and not so OSS) languages including XML, SQL, CSS, PHP, Perl, Java, and C/C++?"

14 of 757 comments (clear)

  1. Paper and pencil by El+Cabri · · Score: 5, Insightful

    If you think you're going to produce better code by splurging $$$ on a shiny desk, maybe you should give up programming.

    The accessories you need are a pile of paper and some good pencils, with which you can design your code nicely before you even fire up your IDE.

    1. Re:Paper and pencil by CupBeEmpty · · Score: 5, Insightful

      Well that is a little unfair. There are a lot of considerations that while they may not make your code any better, will sure make you feel a lot more comfortable while you do it. Being cursed with being the son of a hand surgeon I know a lot of useless fact about repetative stress injuries and carpal tunnel syndrome. Almost all kind of injuries like that are fixed by ergonmic improvements ranging from getting a track ball, to having the right chair.

      And what good are paper and pencils if you are crammed in some corner on a small desk. I always study/work better when I have lots of space. Its not a high $$$ solution but I have my computer/workspace on two 6' long folding tables in an L shape. That leaves plenty of room for the very useful dual monitor setup (which I find is a real boone for my productivity) and plenty of table real estate for books, notebooks, manuals, etc. etc.

      Basically I understand that as you get older and it starts to be a pain to sit in a folding chair at a cramped desk it helps a lot to have a nice setup (which is going to cost a littel extra).

      My biggest advice is plenty of space, a good chair, and a second work area like an armchair or couch if you need to take a break from the screen for a while.

    2. Re:Paper and pencil by Tony+Hoyle · · Score: 3, Insightful

      Paper? When there's a perfectly good computer on the desk?

      Fire up notepad, or even word (assuming a Windows box) and do it there.. or forget that and just prototype it - I find it a lot more efficient to write a version, junk it then write the real version (sometimes I'll write 4 or 5 versions before deciding on a solution) - since it's difficult to do the more complex cases on paper.

    3. Re:Paper and pencil by Eric+Savage · · Score: 3, Insightful

      And if you think the environment doesn't affect the quality and amount of the work, please make sure you never have a say in designing where people work. I have a nice triple monitor setup at home with an aeron and good speakers and all that, and I focus much better than when I'm onsite at a client sharing a cube with someone and coding on an underpowered laptop. What usually happens is I try all day to get something done, and then go home and redo it or at least fix it. It's also much easier to code and focus for longer periods in a comfortable environment.

      As far as pen and paper, that was all well and good 10 years ago, but there is no comparison any more to modern tools and a sketchpad. A whiteboard I would agree with because its collaborative, but if you're going solo, the only reason why pen and paper would be more productive is that the power is out or you don't know how to use the tools out there very well.

      --

      This is not the greatest sig in the world, this is just a tribute.
  2. Screen, Keyboard and Arse by TechyImmigrant · · Score: 5, Insightful

    You need to prioritize. First worry about your fingers, eyes and arse

    1) Get a slick 1600x1200 or better LCD screen
    2) Get more screens to broaden your field of view
    3) Spend $100+ on a really good keyboard. I choose Happy Hacking.
    4) Spend $500+ on a really good office chair (or $5 from a failed startup)

    With this as a starting point, you can feel physically comfortable, freeing you to address your mental confort.

    --
    Evil people are out to get you.
  3. A laptop and some sunshine by nihilogos · · Score: 4, Insightful

    Is my personal favourite.

    --
    :wq
  4. What hardware? by chris_eineke · · Score: 3, Insightful

    What hardware would you choose to use, if money was no object?

    More people on your team...

    --
    "All you have to do is be fragile and grateful. So stay the underdog." Chuck Palahniuk, Choke
  5. RAM by dubl-u · · Score: 5, Insightful

    A lot of things you mention I don't care much about. But I recommend ridiculous amounts of RAM. Even if you get more than you think you'll need, you'll find a use for it.

    My latest giant RAM sink is VMWare. I run a virtual copy of Windows for browser testing, and a couple more for virtual servers. Virtual servers are much better for testing than real ones: when you're done trying something out, you can revert the virtual disk back to a known clean configuration.

  6. G5, OSX & 30" Cinema Display, Sitting Machine by Fahrvergnuugen · · Score: 4, Insightful

    If money were no object, that's what my setup would consist of. A dual G5 and a 30" cinema display (2560 x 1600 resolution!). The apple pro keyboard is sufficient but I would upgrade to a laser mouse of some sort (Maybe one of the new 5 button bluetooth intelli laser mice...) Between OSX and Virtual PC you can test your code in both Windows and OSX. OSX also has x11 if you need it. You mention PHP so I'm guessing you're doing a lot of web development... with this setup you can test every browser Apache AND IIS, Windows AND *nix. I'd buy a license of Zend Studio for PHP development as well as a copy of BBedit (I use both, BBedit has some indispensable features). As for the physical environment, you can't go wrong with one of these: http://www.sittingmachine.com/ Pretty much the most comfortable desk chair ever.

    --
    Kiteboarding Gear Mention slashdot and get 10% off!
  7. Big-ass whiteboard by GGardner · · Score: 4, Insightful

    Paper and pencil are nice, but for some things, the big-ass whiteboard is really handy.

  8. Re:Multiple monitors, RAM, RAID array by malraid · · Score: 3, Insightful

    Repeat after me: RAID != BACKUP.

    I have a CVS machine, I backup every day the whole CVS repository, onto another server and my laptop. If you change something, and weeks later you find that it screw something else, CVS (or other versioning system) is a life-saver, I need more than the latest source code I'm working on. You cannot get this with a RAID. As for storage, I use Eclipse, which is 200 MB in my install, my source code after about one year still fits in a floppy disk (including all of the database schemas). So I wouldn't say that storage is a big need. RAM on the other hand, yes. I used to work on a two monitor set-up, then I got a Mac, and have been very comfortable with one monitor and Expose. But yes, a dual head setup can be nice.

    --
    please excuse my apathy
  9. Comfort by russellh · · Score: 3, Insightful

    I don't know... I hear you on the ergonomic things, but then I don't think comfort, in general, is conducive to good programming. Having the right desk, the right light, the right chair, the right mouse, etc. - IMHO these are all distractions. and of course if you have no injuries or other physical limitations, etc.

    When you need to do good work, you need to eat healthy, lay off the caffeine and alcohol, and get the sleep you need. and ideally, get some exercise. Get out and walk or do pullups or something while you think. That doesn't cost money. Then you can do great work anywhere.

    --
    must... stay... awake...
  10. Re:Ergo Desk, Keyboard, 1.5TB NAS by value_added · · Score: 3, Insightful

    Monitors, monitors - everybody says monitors ... Want to get some serious hacking done ... a four port KVM to one nice 20" LCD (or better.)

    I strongly doubt there is a KVM in existence that doesn't noticeably degrade video quality. The degree to which it's noticeable may vary from person to person, of course, (in the same way that some people claim a 60Hz or 75Hz CRT flicker is "just fine"), but KVMs can't be part of any ideal setup unless the noise from running multiple systems becomes an issue. In that case, I would suggest building a server room and making use of KVMs (as opposed to VNC, etc. approaches), but only in a limited context.

    Hot-key over and use the browser from another machine.

    And when the awkward hotkey combinations, beeping, screen blanking and possible confusion as to what's connected where gets to you? LOL. The guy is looking for a dream setup to do programming, not systems administration.

    Seriously, for the price of a good quality KVM, the requisite cabling and addressing any possible connection issues, purchasing an extra LCD monitor is almost always the better choice.

  11. Silence is Golden by MarkWPiper · · Score: 5, Insightful
    Having been in constant pursuit of the perfect setup, I have found that silence is golden. The importance of a very quiet computer is critical for my own concentration. I'd put it above having a good keyboard. However, I've found it frustrating to find adequate components at reasonable prices. Although sites like SilentPC do a good job of sorting out what is worthwhile, I simply wish component manufacturers would consider noise levels as a very high priority!

    The thing about this: I think our minds are distracted somewhat unconsciously. Every time the hard drive whirs back up, I'm more likely to become distracted, and more likely to let something slip, but it took me a long time before I recognized this pattern.