Distro For Development Workstation?
I'll start by saying that I know that there is no single best answer to this and that any Linux distro can be used to develop on. What I would like to know, and from a total newbie programmer's standpoint, which qualities in a Linux distro are best suited for programming and based on that which distros seem to be better choices. I may be new to programming, but I have been using Linux a while. Is something ultra-stable like Debian or RHEL/CentOS better than something bleeding edge like Arch? Does the ultimate configurability of Gentoo make it a better choice? What about the widespread adoption of Fedora and Ubuntu? Should I be looking at distros available on multiple platforms? Thank you for any information you have.
|
It may depend on what type of programming you want to do, and which package versions are available in the distro. Obviously picking an enterprise linux (RHEL, SLES etc) will prevent you from running new versions of certain things like php etc, so make sure the one you pick has support for what you need and the release schedule is fairly often - unless you're happy to build the current version of tool-chain yourself, then the distro is irrelevant.
|
To be honest, I am pretty new to programming. I've played around with C++, Java, and Python, so I think those are the languages that I'm probably going to stick with most for now, probably focusing on Java.
|
If you're fairly new then base your distro choice on ones that provides the versions of software you want to use (gcc, ide etc).
|
Okay, so then it basically comes down to stability vs bleeding edge question mostly as pretty much every distro I was considering offers eclipse and gcc in a reasonable version.
|
From my experience most distro's are stable enough if they've been around for a few years and they have a decent following, so picking something popular should be safe enough.
|
So RHEL/CentOS would be a good bet?
|
Stability and *maintainability* is the most important factor of any workstation. So you need to use linux that you feel comfortable with. I personally always use Slackware as that avoids getting into dependency hell, if I choose to install/upgrade any program but that is just my choice. So you need to use the distro that you can trust and know that installing a single application or upgrade does not render your box unusable. You really don't want to start rebuilding your work environment in the middle of the project. Workstation must ba rocksolid and maintainable on any day.
There have been cases with Ubuntu for example that offered kernel upgrade broke the X drivers and you will end up in the command line and have to mess quite a bit to get the driver issues resolved. |
Quote:
|
Really? Fedora doesn't really have a "stable" release, so the best bet there is to use an older version, which would be similar to using Cent or RHEL. Where are you getting that about a "server OS." There really is no such thing as a "server distro" only stable distros that come packaged with server utilities. Unless someone intentionally compiled a kernel to remove desktop functionality, there should be no issue there. Ultimately, though, I take it that stable is better than new for a workstation?
|
Stable usually means old(er) and proven software so no bleeding edge stuff. Again area where Slackware has been shining from day 1 (which was somewhere back in 1992 I guess)
|
I've tried Slack on a number of occasions, and I just can't get used to the package system. I do like the RPM system, and that's why I was leaning towards something in the Red Hat family. I'm not opposed to Debian, but I really don't see the advantage there. Arch is too bleeding edge, and I don't feel like dealing with the added complications that Gentoo often brings to the table. Certianly, if they were justified by some increase in usability or performance, I would, but they don't seem to be.
|
Yes the package management is the thing that sets Slackware apart from all the rest. You either love or hate it.
|
I see no reason not to use CentOS for your intended purposes. As stated it is not bleeding edge so newer hardware may not be supported. I'm running version 6.2 with a 2.6.32 kernel on one of my PCs (An old P4).
|
Quote:
If you'll distribute only source - then develop on any distro that you like. In case you will distribute binaries too the matter complicates. If you binary supposed to run only on one distribution + version - then develop on exactly that distro. If your binary should run on a number of distribution - usually the older distro where your build your binary the batter |
Quote:
Fedora on the other hand is a development distro, running the latest kernels and therefore support for very recent hardware, the latest versions of applications etc The RHEL target audience is the business server market, Fedora is not. |
All times are GMT -5. The time now is 04:25 PM. |