As a developer, which operating system would you prefer to have on your development computer ? Actualy am thinking of separting my daily usage + gaming computer from my development computer so I thought before I make the final decision , best I ask from others also about their preferences.
What I need is a low memory consuming operating system and since this will be JUST a development computer ONLY , so I wont be needing any resource hungry graphics or animations or aero effects things on the OS . So what do you guys say ?
Muhammad Saif Asif Mirza
OCJA(5/6) OCJP(6) OCJWCD(6)
I'm OS agnostic. Work dictates Windows XP or Windows 7 and our servers are RedHat Linux. At home I have a desktop running Linux Mint and a Macbook Pro. I do development on all 3 and I can't think of a killer feature of one OS that makes it better than either of the others. I will say I like the Bash shell better than the Windows command line, so am inclined to use Linux or OS X.
Have you test driven any OS's? Are there any features you need in particular?
I myself have used all the three categories ( OSX, Linux distros and Windows ) for development and for personal use, but as per my personal experiences, I found the following issues
1. In Windows , Yes its quite easy to use, user-friendly and practically every other software is either available on windows or has an alternative windows based software. The thing that bothers me about windows environment is that it is very resources hungry . The updates and all ( I know these are not in our hands ) tend to choke up the processing power of the machine . Windows itself needs a very large memory footprint to load up the OS.
2. Linux distros ( Mint , RHEL , CentOS and Ubuntu ) , these tend to resolve the memory footprint issue but they have their software own compatibility issue ( although I do believe that myself as an open source developer doesn't face much of any issue ) . What do you think about the small memory footprint OS like Xubuntu and Lubuntu ? Anyone used them ?
3. About MAcOSX , isn't that also a resource greedy OS ? I haven't used it that much that's why I am asking.
I used to develop on Windows for deployment to Solaris, but that was employer-mandated. These days I use Linux on both sides and only boot Windows to do my taxes or run the MS Flight Simulator (Linux is supposed to have a decent simulator, just never tried it out).
If you really wanted a "small machine", I paid $35 for a Raspberry Pi and it's more powerful than many generations of computers I've used over the years, including mainframes, but then again, so is my cellphone. I wouldn't want to do Java development on it unless I had to. I've done Java development on far less powerful machines, but not using modern tools. The Raspberry can definitely handle word processing, gnucash (the open-source equivalent to Quicken), and other day-to-day utilities. Then again, so can a tablet, especially with a good external (physical) keyboard.
Realistically, today's Java IDEs are real pigs, and 1GB of RAM is about as low as you can go and get by, with 2GB being preferable. For overall development performance, up until Windows XP, Windows and Linux have been roughly comparable, but when you have an actual Windows OS developer complaining that Linux is wiping the mat with Windows these days, it's worth taking note. XP is perfectly fine for Java development, so its main problem is that in a relatively short while, Microsoft will turn the lights out on it. Although there comes a point where any OS release - including Linux ones - stops getting updated, one key difference with Windows is that it likes to "phone home", and so one Microsoft shuts it down, it may simply become non-bootable.
The primary difference between a development box and a gaming box is that a development box is typically going to want lots of storage (RAM and disk), but a gaming box is going to want a fast CPU and a faster video subsystem.
An IDE is no substitute for an Intelligent Developer.